fixes 854
This commit is contained in:
+7
-4
@@ -1,5 +1,5 @@
|
||||
import {RegionModifier} from "@/ui/timeline/tracks/audio-unit/regions/RegionModifier.ts"
|
||||
import {Arrays, int, Option} from "@opendaw/lib-std"
|
||||
import {Arrays, int, isNotNull, Option} from "@opendaw/lib-std"
|
||||
import {ppqn, PPQN, RegionCollection} from "@opendaw/lib-dsp"
|
||||
import {
|
||||
AnyLoopableRegionBoxAdapter,
|
||||
@@ -113,8 +113,11 @@ export class RegionLoopDurationModifier implements RegionModifier {
|
||||
|
||||
approve(): void {
|
||||
const modifiedTracks: ReadonlyArray<TrackBoxAdapter> =
|
||||
Arrays.removeDuplicates(this.#adapters.map(adapter => adapter.trackBoxAdapter.unwrap()))
|
||||
const result = this.#adapters.map<BeforeState>(region =>
|
||||
Arrays.removeDuplicates(this.#adapters
|
||||
.map(adapter => adapter.trackBoxAdapter.unwrapOrNull())
|
||||
.filter(isNotNull))
|
||||
const adapters = this.#adapters.filter(({box}) => box.isAttached())
|
||||
const result = adapters.map<BeforeState>(region =>
|
||||
({
|
||||
region,
|
||||
duration: this.#selectedModifyStrategy.readDuration(region),
|
||||
@@ -134,7 +137,7 @@ export class RegionLoopDurationModifier implements RegionModifier {
|
||||
})),
|
||||
trackSnapshots
|
||||
})
|
||||
this.#project.overlapResolver.apply(modifiedTracks, this.#adapters, this, 0, (_trackResolver) => {
|
||||
this.#project.overlapResolver.apply(modifiedTracks, adapters, this, 0, (_trackResolver) => {
|
||||
result.forEach(({region, duration, loopDuration}) => {
|
||||
region.duration = duration
|
||||
region.loopDuration = loopDuration
|
||||
|
||||
Reference in New Issue
Block a user