Skip to content

frontend: Make sure all scene item properties are copied#12618

Merged
RytoEX merged 1 commit intoobsproject:masterfrom
cg2121:sceneitem-duplication
Jan 9, 2026
Merged

frontend: Make sure all scene item properties are copied#12618
RytoEX merged 1 commit intoobsproject:masterfrom
cg2121:sceneitem-duplication

Conversation

@cg2121
Copy link
Copy Markdown
Contributor

@cg2121 cg2121 commented Sep 12, 2025

Description

Scale filtering, show/hide transitions and private settings (item color) were not copied when copying scene items.

Motivation and Context

Idea from @Warchamp7

How Has This Been Tested?

Copied sources and made sure all properties were copied

Types of changes

  • Tweak (non-breaking change to improve existing functionality)

Checklist:

  • My code has been run through clang-format.
  • I have read the contributing document.
  • My code is not on the master branch.
  • The code has been tested.
  • All commit messages are properly formatted and commits squashed where appropriate.
  • I have included updates to all appropriate documentation.

@cg2121 cg2121 requested a review from Warchamp7 September 12, 2025 04:16
@cg2121 cg2121 added Enhancement Improvement to existing functionality UI/UX Anything to do with changes or additions to UI/UX elements. labels Sep 12, 2025
@exeldro
Copy link
Copy Markdown
Contributor

exeldro commented Sep 12, 2025

This changes the copy paste behavior. Before this change you could copy a scene item, move it to a new position and paste on the original position. With this change all changes done on the scene item after the copy are also in the paste.

This pull request has a merge conflict with #8286, depending on which gets merged first the other pull request needs updating.

Instead of item and new_item I would call it source and destination in obs_sceneitem_duplicate

@cg2121 cg2121 force-pushed the sceneitem-duplication branch from 7502bc5 to fd867f2 Compare September 12, 2025 08:20
@cg2121
Copy link
Copy Markdown
Contributor Author

cg2121 commented Sep 12, 2025

Updated to use the original way the scene items were copied, like @exeldro suggested.

Copy link
Copy Markdown
Member

@Warchamp7 Warchamp7 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested and confirmed that scale filtering and show/hide transitions are properly copied now.

The logic for show/hide transitions will need to be adjusted though. Copying the transition UUIDs means if those transitions change between copying and pasting, the data gets lost.

Ex.

  • Set Show/Hide transitions on a source to Fade
  • Copy the scene item
  • Change the Show/Hide transitions on the source to another type
  • Paste the scene item

The pasted scene item will not have any Show/Hide transitions because the copied UUIDs will be gone now.

@cg2121 cg2121 force-pushed the sceneitem-duplication branch from fd867f2 to 53cbd76 Compare September 27, 2025 05:44
@cg2121
Copy link
Copy Markdown
Contributor Author

cg2121 commented Sep 27, 2025

Updated to fix issue @Warchamp7 brought up and also made sure private settings (item color) were copied.

@cg2121 cg2121 requested a review from Warchamp7 September 27, 2025 05:47
Scale filtering, show/hide transitions and private settings were
not copied when copying scene items.
@cg2121 cg2121 force-pushed the sceneitem-duplication branch from 53cbd76 to d977833 Compare September 27, 2025 06:29
@RytoEX RytoEX moved this from In Review to Requires Changes in OBS Studio 32.1 PR Considerations Dec 18, 2025
@Warchamp7 Warchamp7 moved this from Requires Changes to Ready For Review in OBS Studio 32.1 PR Considerations Jan 6, 2026
@RytoEX RytoEX merged commit 8c946e7 into obsproject:master Jan 9, 2026
15 checks passed
@github-project-automation github-project-automation Bot moved this from Ready For Review to Ready For Merge in OBS Studio 32.1 PR Considerations Jan 9, 2026
@RytoEX RytoEX added this to the OBS Studio 32.1 milestone Jan 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Enhancement Improvement to existing functionality UI/UX Anything to do with changes or additions to UI/UX elements.

Projects

Status: Ready For Merge

Development

Successfully merging this pull request may close these issues.

5 participants