-
-
Notifications
You must be signed in to change notification settings - Fork 8k
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
Separation of the controls dock from the main window #7278
Conversation
07947bd
to
8fe2193
Compare
f721b44
to
7fbd452
Compare
7fbd452
to
723e249
Compare
59b69d7
to
1df1307
Compare
1df1307
to
70ea22f
Compare
f5695d3
to
5d5a20e
Compare
5d5a20e
to
b401498
Compare
Remove from the milestone, because it is related to the RFC about MVC. |
ae45084
to
6d30c97
Compare
The PR has been entirely refactored, it still miss appearance/theming bits for the small buttons of the dock. |
6d30c97
to
6ec6575
Compare
8aed488
to
3165559
Compare
3bf0dd5
to
992e27a
Compare
@RytoEX, done |
9bb85c9
to
2fb32a3
Compare
Renamed |
2fb32a3
to
dd3386b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll give this a test later.
1e209d9
to
f3fa23b
Compare
149e758
to
df1641f
Compare
554cc39
to
973c9c3
Compare
After rebasing, this failed to build due to previous changes in auto setStreamText = [&](const QString &text) {
ui->streamButton->setText(text);
if (sysTrayStream)
sysTrayStream->setText(text);
}; The compiler error was:
This is obvious in hindsight because this PR moves obs-studio/UI/window-basic-main.cpp Line 7044 in 0cc357f
This does mean that the "Preparing..." text will no longer be shown on the "Start Stream" button. I'm not sure what to do about that. |
973c9c3
to
592c296
Compare
I added a commit that removes the lamdba, moreover |
Thanks for that. Will re-review shortly. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Gave a quick review and local build/run test after the recent force push. Seems fine.
Avoid using controls dock buttons for recording states. Use signals and OBSBasic member variables instead.
Avoid using controls dock buttons for streaming state. Use signals and OBSBasic member variables instead.
Avoid using controls dock buttons as a source for text for system tray elements.
Avoid tangling controls dock stream button to OBSBasic with a lambda.
Those IDs were used on buttons that were programatically added to the controls dock, now those buttons are always present inside the UI file with their own object name. The use of theme IDs can be replaced by their object names.
592c296
to
a2785b7
Compare
Description
Depends on:
Moves the controls dock UI outside of the main window UI.
And make OBSBasic no longer rely on UI element from the controls dock.
Also adds replay buffer buttons and the pause button in the UI file, those are no longer manually and programmatically created and deleted.
Motivation and Context
This PR has two purpose:
How Has This Been Tested?
I tried to test all the feature of the dock, but please test it yourself too.
Need also some testing about what 2d60c89 was fixing because we no longer rely on UI elements.
Types of changes
Checklist: