-
Notifications
You must be signed in to change notification settings - Fork 687
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create recursion to render scene sources in dual output mode #4643
Merged
Conversation
This file contains 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
BundleMonFiles updated (1)
Unchanged files (3)
Total files change +530B 0% Final result: ✅ View report in BundleMon website ➡️ |
michelinewu
approved these changes
Aug 11, 2023
michelinewu
added a commit
that referenced
this pull request
Aug 23, 2023
* Revert to use single studio editor and original video settings tab form. * WIP: restream dual output. * WIP: Assign correct settings to Stream and StreamSecond when going live. * Add scene nodes map and remove destroy nodes when toggling off dual output. * Refactor to use scene node map for toggles. * Refactor toggle display logic. * Refactor to use separate horizontal and vertical displays. Refactor source selector to correctly display scene item node toggles. Create or assign vertical scene nodes when collection initialized. * Second context starts after first one completes. WIP: Assigning correct info for displays. * Refactor to use context strings instead of numbers for stream settings. * Single streaming dual output works. When multistreaming horizontal display, it does not set the second stream. When multistreaming vertical display, attempts to start the stream before the previous one has completed. * Revert scene selector dropdown bar styling and base resolution. * Add subscriptions for scene and scene collection updates. * WIP: observer using EStreamStatus. * WIP: Correct subscriptions. * Code cleanup streaming service. * Disable multistream setting toggles when live. * Prevent toggle studio mode in dual output mode. Prevent toggle dual output in studio mode. Show error messages. * Revert switch input styling. * Fix subscriptions. * New repo json. * Update platform context when changing settings in multistream tab. * New repo json. * Prevent change displays when live. * Change check for dual output source selector toggles. * WIP: Multistream with one display active. Commented out logs. * WIP: Streaming refactor take 2. * undo reset * WIP: Streaming. DONE: Single stream single output both displays. Multistream single output horizontal display. * Add cannot edit settings when live warning to Multistream tab. * WIP: Multistream single displays, both contexts. * WIP: Multi/single stream both displays. * WIP before cleanup: multistream/multistream both displays working. * Add missing strings for translations. * Fix uncaught fetch safe mode settings error. * Code cleanup for multistream/multistream displays. Some logs still left. Janky fix to set twitch server to auto on SecondStream. * WIP: Drag and drop scene items. Added display prop to differentiate scene items. * Refactor to use instance variable for video contexts. * WIP: Select only scene items in own display. * Ignore scene item in opposite display. * WIP: Separate base resolutions. * Drag & drop works when toggling from horizontal display. * Set base resolutions from load function. * Add optional property indicator to source selector for null tests. * Fix glitching when moving items in the vertical display. More optional operators for null tests. * Drag and drop and scale works for both displays. * Simplify get base width and height. * Update calculate widget scale and placement. * Fix create/remove sources for undo/redo. * Added default display for base resolution for conversion. * Remove unused dual output node map property. * Refactor remove item editor command for undo/redo. * Update repo json. * Added script to run beta. * WIP: Fix missing source selector when adding first item in dual output mode. * Fix for adding first source in dual output mode. * WIP: Video settings tabs, copied from staging. * Refactor video settings form for both contexts. * Add vertical stream settings to Stream tab. * Added tabs component and added tabs to video settings. * Add tabs to Output Settings tab. * Refactor output settings tab header into single component. * Move video settings header. * Remove unnecessary properties from settings interface. * Revert output settings tab. * Added tabs for both displays to Stream settings. * Refactor to simplify display toggle logic and add default display property. * Added toggle to Multistream tab to show/hide dual output display buttons. * Moved dual output toggle to video settings tab. Conditionally show/hide display tabs. * Revert stream settings tab. * Remove dual output display label tooltips and conditionally change dual output icon tooltip text. * Fix missing vertical display data in video settings tab on first app launch. * Show horizontal display when toggling dual output. * Show horizontal display when toggling dual output. * Done: Styling for right column for dual output go live. WIP: Left column. * Added info badge. * Added info badge to dual output go live window. * Update osn version. * WIP: Dual Output Destination Switchers. * Move display selector to own component. Move platform-related typing to platform service. * Remove dual output settings from multistream tab. * WIP logs * Add additional properties to button group. * Update osn version. * Created add destination button shared component and added to dual output go live settings. * DONE: Add destination button. * Refactor to separate components for ultra and non ultra user settings. WIP: Platform selector. * WIP: Progress Bar. * Revert temporarily always show ultra. * Add font icon for Trovo and add properties to platform logo component. * Restore loading spinner to go live window. * Fix animation on dual output go live destination switchers. * Separate destination switchers for ultra and nonultra. WIP: platform selector functionality. * Platform selector code cleanup and styling fixes. * Streamline non ultra dual output get enabled platforms and removed unused import. * WIP: custom destinations. * Fix multistream vs dual output logic for streaming and go live window. Streamlined go live window components. * Update osn version. * Regenerate yarn lock. * Finish resolving merge conflicts. * Move display and video settings from settings manager service to dual output service. * Update font icons. * Update vertical resolution options and default. * Fixes for scene items when adding/removing/switching scene collections. * Fixes for source selector null error and dragging scene items into folders in dual output mode. * Fix dual output go live styling and propogation. * WIP: custom destinations in go live window. Display selector for custom destinations in progress. * Add modal and logic to prompt users to log in to enable dual output. * Fix reactivity for custom destination switchers. * Remove green service. * WIP: move scene node map to scene collection manifest. Works except for updating vertical node ids in source selector. * Fix state update for dual output source selector. * Prevent users from going live without both displays selected. * Code cleanup of logs and comments. * Fix undo/redo tests. * Fix set horizontal display settings and toggle display. * Add dual output to incremental rollout. * Update yarn lock. * Refactor remove item editor command. * Add display and context to create items when copy/paste between scene collections. * Fixes for null regressions tests. * Fixes for nulls regression test and create dual output items when toggling dual output. * Fix show common fields and advanced settings in dual output go live window. * Fix twitch protected mode test. * Fix to set settings for horizontal display on first launch and make sure video context is initiated when using auto optimizer. * Fix for setting display on new items so they can be edited in the display. * Add manage dual output link to editor. * Add mode to tiktok restream settings. * Show vertical display when toggling on dual output * Edit default vertical display settings. * Add special handling for loading twitch settings into store in dual output mode. * Fix show go live window logic. * Fix for advanced multistreaming test. * Use legacy settings instead of video settings for video settings migration. * Remove change resolution for game capture for portrait dimensions. * Revert auto config migrate settings calls. * Fix for backwards compatibility for vanilla scenes. * Refactor add and init scene node map property on scene collection manifest. * Refactor adding context anddisplay to sources when created. * Update root node schema version. * Fix for auto config settings migration. * Fix load base height and width from video logic. * Refactor to enable show hide of folders/groups in each display. * Fixes for strict nulls tests. * Position vertical nodes in upper left corner when creating vertical scene. * Fixes for strict nulls tests. * Fix for strict nulls test. * Fix select highlight, reorder sources, and undefined video property bugs. * Fixed missin video prop tests. * Fix undefined video property on app start. * Fix for loading legacy settings. * Fix create folder in dual output mode. * Source selector highlights when selecting vertical sources. * Match vertical game capture scale to horizontal game capture. * Fix for deleting a scene with undo/redo test. * Remove scene with undo/redo works with dual output. * Temporary comment out code to refactor for populating Twitch stream key in dual output mode. * New osn version for game capture and fix to position game capture in vertical display. * Fix to automatically close go live window in dual output mode. * Hide optimizer within app if user has advanced settings. * Code cleanup. * Code cleanup, editor commands. * Fix for go live error because of undefined server. * Update osn version. * Fix for applying second stream settings. * update osn. transition fix * Streamline imports from osn. * Refactor to move go live functions from components to module. * WIP: Auto game capture for vertical display. * Fix copy nodes. * WIP: fix auto game capture in vertical display. * Fix tooltip component typo. * Fix to hide auto game capture on the vertical display. * Show all vertical scene items by default when copying nodes. * Code review fixes and code cleanup. * Restore auto game capture for vertical display. * Remove unused size property from scene item, new osn version, and expand region width for resizing on vertical display. * Expanded logging for media backup error and skip WIP dual output automated tests. * Edits from code review. * Refactor to use auto progress bar for editor loader. * WIP: optimize source selector node data. * Fix for null regressions test. * Fix for vertical node id filtering and vertical source toggle. * Refactor to use callback for functions in new go live window. * Refactor to get source selector node filtering. * New osn version. * Refactor assignSceneNodes * Refactor display toggles and custom destination default confirmation for better custom destination handling. * Make sceneId a mandatory prop * Make other sceneId mandatory * Fix package version * Add mode and video properties to custom destination. * WIP: Stream custom destination to horizontal display. * New osn version. * Stream custom destination with horizontal display. * Toggle dual output mode on user logout. * Refactor dual output go live styles to reduce nested classes. * Fix vertical nodes showing after toggling off dual output mode. * Refactor comments to TSDoc standards. * Implementing toggling dual output tests. * Display toggle tests. * WIP: source selector toggle tests. * WIP: Fix drag and drop, copy nodes within scene, remove selection when toggling off dual output, remove unnecessary missing dual output node id prop. * Skip dual output tests. * Fix copy/paste nodes. * Fix for multiselect in source selector with shift key. * Add resize border width for vertical display hover. * Cannot toggle dual output in studio mode. * Add link icon to source selector when both items are selected. * Match FPS settings between displays. * Fix for video settings and contexts. * Disable vertical display for selective recording. * Revert apply fps settings to both contexts. * Toggle dual output when logging in via dual output login prompt. (#4619) * Toggle dual output when logging in via dual output login prompt. * Unsubscribe from login subscription. * Always show manage dual output settings link in header. (#4618) * Ensure Edit Transform only accepts selections from a single display (#4616) * Ensure Edit Transform only accepts selections from a single display * Get display for edit transform from click handler. * Call cleanup function on unmount. * Revert previous commit. --------- Co-authored-by: Micheline Wu <69046953+michelinewu@users.noreply.github.com> * Video fps settings apply to both displays. (#4612) * Video fps settings apply to both displays. * Remove async from functions. * Remove promise resolution returns and add video prop to Trovo start stream options. * Isolate transformation editor commands to source within one display. (#4623) * Isolate transformation editor commands to source within one display. WIP: isolate drag on display. WIP: Restore single drag handler. WIP: Drag works. WIP: isolate drag on display. Isolate transformation editor commands to sources within one display. Fix scale and crop editor commands. Highlight source selector row when working with items in vertical display. WIP: Restore single drag handler. WIP: Drag works. * Prevent user from dragging sources outside of canvas in dual output mode. * WIP: calc drag boundary. * Create drag boundaries. * For dual output scenes, remove both nodes. (#4630) * For dual output scenes, remove both nodes. * Remove unused scenes event. * Add timeouts between events in scenes events tests. * Increase scenes events test timeout. * Disable auto optimizer for dual output scenes. * Fix auto optimizer dual output tooltip and hide auto optimizer button in advanced output mode. * Persist scene node map in cloud (#4633) * WIP: Restores node map on second restart. * WIP: node map loads to state and assigns scene item contexts on load. Source selector not filtering vertical nodes. * Remove unnecessary call to obs to set video context. Context already set when loading scene item attributes. * WIP: source selector state update. * Add mutation to state service for when scene node map is set on load. * Code cleanup and filter source selector nodes by display property. * Fix error when switching scenes and scene collections. * Add default display to node model when adding sources. * Code review fixes. * Add sceneNodeMaps guard clause * Fix tests * Fix guard clause * Remove unnecessary change --------- Co-authored-by: Sean Beyer <sean.beyer@streamlabs.com> * New osn version. * Handle dual output scene items when working with scene items from apps. Remove unuser imports in apps sources service. (#4645) * Fix to use delete key shortcut in dual output mode. (#4664) * Fix to use delete key shortcut in dual output mode. * Fix remove source with delete key. * Selective recording fixes for dual output. (#4658) * Prevent toggle dual output mode with selective recording on. Remove dual output nodes from selection when toggling on selective recording. * WIP: Selective recording fix. * New osn version and hide projector context menu item if not working with horizontal scene item. * Fix vertical display logic when toggling dual output with selective recording active. * Error messages for selective recording in dual output mode. * Add missing strings to translations. * Remove logs and commented code. * Selective recording stays on in dual output mode after app restart. * Create recursion to render scene sources in dual output mode (#4643) * Create recursion to render scene sources in dual output mode * Fix strict null check * Fix more cases where scene sources are rendered * Fix infinite load * Fix drag and drop from file system in dual output (#4663) * Code cleanup. * Fix drag and drop source from file system to editor display. * WIP: investigate remove item and create item editor commands. * Revert * Fix for repeated undo/redo calls. * Fix strict nulls and addFile tests. * Fix for non ultra users going live in dual output mode. (#4670) * Update stream settings tabs to allow non ultra users to add one custom destination. * Fix logic for ultra required error. * Add icon to show/hide sources on both displays in dual output mode. (#4674) * Temporarily disable optimizer. (#4671) * Temporarily disable optimizer. * Skip auto-config in onboarding test. * Temporarily remove optimize step from onboarding flow and tests. * Fix logic to hide vertical display when selective recording is active. * Hide dual output vertical control when selective recording active. * Notification vertical display disabled with selective recording. (#4678) * Error message for toggling dual output with selective recording. * Removed unused property. * Update error message copy. --------- Co-authored-by: Vladimir Sumarov <summeroff@gmail.com> Co-authored-by: Sean Beyer <sean.beyer@streamlabs.com>
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.
No description provided.