Const The previous acknowledged version.
Used to let the user acknowledge (and internally handle) any new version
A compilation to work with
An initial, non-null value must be available, otherwise the reactive system does not work
To always provide a typed object as expected, explicitly serialize to and from JSON strings
The pre-roll enabled state.
This can be set by the user, and is persisted.
A dictionary of stored media URLs, representing playable media content from local or unzipped resources.
A name for the resource is used as key, preventing duplicate files for the same content.
This is intentionally not persisted, to avoid using disposed object URL's after an app restart.
The current playback mode.
This can be set by the user, and is persisted.
The currently scheduled cue Id, if any, otherwise CompilationHandler.EmptyId. This is NOT used to determine the currently active track.
This does not control the playback itself. It is intended for display purposes. Set to CompilationHandler.EmptyId, when no cue should be considered scheduled.
An initial, non-null value must be available, otherwise the reactive system does not work
The currently selected cue Id, if any, otherwise CompilationHandler.EmptyId. This is also used to determine the currently active track.
This does not control the playback itself. It is intended for display purposes. Set to CompilationHandler.EmptyId, when no cue should be considered selected. To determine which track is active, when a cue is selected, it always takes precedence over a possibly selected track (selectedTrackId should be CompilationHandler.EmptyId in this case anyway). If no cue is selected, selectedTrackId is used to determine the active track.
An initial, non-null value must be available, otherwise the reactive system does not work
The currently selected track Id, if any, otherwise CompilationHandler.EmptyId. This is also used to determine the currently active track. This serves as alternative when no selected cue Id is set.
This does not control the playback itself. It is intended for display purposes. Set to CompilationHandler.EmptyId, when no track should be considered selected.
An initial, non-null value must be available, otherwise the reactive system does not work
A seed for the deterministic shuffling (until next shuffling is requested)
Reshuffling occurs when the PlaybackMode is toggled to ShuffleCompilation.
This allows to keep the shuffled order for the duration of the shuffle mode
Whether to use global app shortcuts
This can be used to temporarily pause global app shortcuts in favor of use within modal or other dialogs.
This is intentionally not persisted, because it's temporay only.
Implements the state of this application