Auto commit (MindMachine) Mon Apr 13 08:01:01 PM CDT 2026
This commit is contained in:
@@ -175,7 +175,7 @@ class MainViewModel(
|
||||
val savedSignature = timelineProgramSignature(timeline)
|
||||
it.copy(
|
||||
selectedPreset = preset,
|
||||
config = preset.toConfig(SessionMode.AUDIO_VISUAL),
|
||||
config = preset.toConfig(SessionMode.AUDIO_VISUAL).copy(flashSequence = timeline.flashSequence),
|
||||
timeline = timeline,
|
||||
savedProgramName = displayName,
|
||||
savedTimelineSignature = savedSignature,
|
||||
@@ -237,7 +237,7 @@ class MainViewModel(
|
||||
val savedSignature = timelineProgramSignature(timeline)
|
||||
it.copy(
|
||||
selectedPreset = fallback,
|
||||
config = fallback.toConfig(SessionMode.AUDIO_VISUAL),
|
||||
config = fallback.toConfig(SessionMode.AUDIO_VISUAL).copy(flashSequence = timeline.flashSequence),
|
||||
timeline = timeline,
|
||||
savedProgramName = fallback.name,
|
||||
savedTimelineSignature = savedSignature,
|
||||
@@ -251,7 +251,7 @@ class MainViewModel(
|
||||
fun setMode(mode: SessionMode) = _ui.update { it.copy(config = it.config.copy(mode = mode), error = null) }
|
||||
|
||||
fun setDurationSec(seconds: Int) = _ui.update {
|
||||
val clamped = seconds.coerceIn(60, 8 * 60 * 60)
|
||||
val clamped = seconds.coerceIn(60, 60 * 60)
|
||||
val nextTimeline = it.timeline.setDurationSec(clamped)
|
||||
it.copy(
|
||||
config = it.config.copy(durationSec = clamped),
|
||||
@@ -273,7 +273,10 @@ class MainViewModel(
|
||||
fun updateTimeline(newState: TimelineEditorState) = _ui.update {
|
||||
it.copy(
|
||||
timeline = newState,
|
||||
config = it.config.copy(durationSec = newState.durationSec.coerceIn(60, 8 * 60 * 60)),
|
||||
config = it.config.copy(
|
||||
durationSec = newState.durationSec.coerceIn(60, 60 * 60),
|
||||
flashSequence = newState.flashSequence,
|
||||
),
|
||||
hasUnsavedChanges = isDirty(it.selectedPreset.name, newState, it.savedProgramName, it.savedTimelineSignature),
|
||||
error = null,
|
||||
)
|
||||
@@ -451,7 +454,10 @@ class MainViewModel(
|
||||
val savedSignature = timelineProgramSignature(timeline)
|
||||
it.copy(
|
||||
selectedPreset = preset,
|
||||
config = cfg.copy(durationSec = cfg.durationSec.coerceIn(60, 8 * 60 * 60)),
|
||||
config = cfg.copy(
|
||||
durationSec = cfg.durationSec.coerceIn(60, 60 * 60),
|
||||
flashSequence = timeline.flashSequence,
|
||||
),
|
||||
timeline = timeline,
|
||||
savedProgramName = preset.name,
|
||||
savedTimelineSignature = savedSignature,
|
||||
|
||||
Reference in New Issue
Block a user