Skip to content

frontend: Add new component SlidingStackedWidget#12678

Open
Warchamp7 wants to merge 1 commit intoobsproject:masterfrom
Warchamp7:sliding-stacked-widget
Open

frontend: Add new component SlidingStackedWidget#12678
Warchamp7 wants to merge 1 commit intoobsproject:masterfrom
Warchamp7:sliding-stacked-widget

Conversation

@Warchamp7
Copy link
Copy Markdown
Member

Description

Adds a new widget called SlidingStackedWidget that performs a sliding animation when switching between pages.

This is heavily based on the work in https://github.com/timschneeb/SlidingStackedWidget with a couple functionality tweaks, and adjustments to match our naming conventions. The biggest changes compared to the original widget in the repo above is to allow SlidingStackedWidget to be a completely transparent drop-in replacement for QStackedWidget. This is accomplished by overriding the normal QStackedWidget methods for changing pages, and adding handling for changing pages during the animation.

Note

This preview is for demonstration purposes only.

This PR does NOT update the settings window to use this sliding widget and there are no intentions to do so.

obs64_yDHmTWiq5v.mp4

Motivation and Context

Planning to use this in future UI updates around onboarding and certain configuration windows.

How Has This Been Tested?

Changed the settings window QStackedWidget to use this instead and ensured it behaved as expected.

Types of changes

  • New feature (non-breaking change which adds 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.

Comment thread frontend/components/SlidingStackedWidget.cpp Outdated
Comment thread frontend/components/SlidingStackedWidget.hpp Outdated
@WizardCM WizardCM added kind/feature Functionality or other elements that the project doesn't currently have. area/ui-ux Anything to do with changes or additions to UI/UX elements. labels Oct 4, 2025
@Warchamp7 Warchamp7 added this to the OBS Studio 32.2 milestone May 6, 2026
@Warchamp7 Warchamp7 force-pushed the sliding-stacked-widget branch from 029c96d to f3a70f1 Compare May 8, 2026 19:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/ui-ux Anything to do with changes or additions to UI/UX elements. kind/feature Functionality or other elements that the project doesn't currently have.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants