Remove dual output mode toggles - #6047
Open
michelinewu wants to merge 7 commits into
Open
Conversation
BundleMonFiles updated (1)
Unchanged files (3)
Total files change -16.46KB -0.11% Final result: ✅ View report in BundleMon website ➡️ |
wesrupert
approved these changes
Jul 23, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Remove Dual Output as a separate mode
Part of a series to completely remove all of the special handling for dual output mode so that it is always available to logged in users.
Summary
Dual output is no longer a separate mode. Single output scene collections are automatically converted to dual output on load. The vertical display is hidden on logout to prevent dual output from being used when logged out.
Changes
Note: to limit the number of changes in this PR, some things that should be refactored will be coming in later PRs.
Services
dual-output.tsdualOutputModegetter returnstrueunconditionally. This getter will be entirely removed in a later PR.defaultState.dualOutputModeset totruecollectionSwitchedhandler no longer checksdualOutputMode— always converts or validatessetDualOutputMode,setDualOutputModeIfPossible,toggleDualOutputModemarked@deprecatedas no-ops. Will be removes in a later PR.userLogouthides the vertical display instead of toggling off dual output modesceneSwitchedloading state handler (unnecessary with always-on) and the scene collection validated on collection loadconvertSingleOutputToDualOutputCollectionandvalidateDualOutputCollectionnow callsave()+flushManifestFile()to persist changes to disk immediately following conversion/validationstreaming-view.tsstreaming.tstransitions.tssettings.tsscene-collections.tssceneNodeMapsclearing on load (handled by conversion/validation)scenes.tsmakeSceneActivedual output conditionalrestream.tsComponents
Go Live window (
GoLiveWindow.tsx,GoLiveSettings.tsx,DestinationSwitchers.tsx,PlatformSettings.tsx, etc.)AdvancedSettingsSwitch.tsx(was the dual output toggle in go-live)CustomFieldsCheckbox.tsxandSwitcherCard.tsxfor cleaner layoutSourceSelector.tsxDisplaySelector.tsxStudioEditor.tsxStartStreamingButton.tsxVideo.tsx(settings)Tests
test/helpers/modules/scene-collections.ts(new)copyFile,confirmIsCollectionType,confirmDualOutputSources,confirmVerticalSceneItem,validateSceneNodeMapsAndNodestest/regular/streaming/dual-output.tstest/regular/api/dual-output.tsconfirmDualOutputSourcesandconfirmVerticalSceneItemto shared helpertest/regular/services/scene-collections/scene-collections.tsRemoved dual output toggle calls from:
test/regular/recording.tstest/regular/streaming/dual-output-end-stream.tstest/regular/streaming/youtube.tstest/regular/settings/hotkeys.tstest/helpers/modules/dual-output.ts(removedsetDualOutputModehelper)Performance Implications
None. The conversion and validation that previously ran conditionally now always runs on collection load, but this was already the case for any user who had dual output enabled.