Skip to content
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

For horizontal panels, show tab bar instead of title bar #22050

Merged
merged 8 commits into from
Jan 6, 2025

Conversation

cbjeukendrup
Copy link
Contributor

@cbjeukendrup cbjeukendrup commented Mar 24, 2024

And add a proof-of-concept mixer toolbar button (not functional yet).

Somewhat related to #22016 and #11335
Or actually the most to #16722

Resolves #11335

@cbjeukendrup cbjeukendrup requested a review from Eism March 24, 2024 17:53
@Eism
Copy link
Contributor

Eism commented Mar 26, 2024

Looks good!
Make sure that auto ordering for navigation works with tabs for panels. see #17439

@jessjwilliamson
Copy link
Contributor

Nice!!

Something odd going on with the drop shadow when undocked :) Think it's not feathered
image

@jessjwilliamson
Copy link
Contributor

And for some reason, opening the Mixer the 2nd time, crashes the app. No other MS4's were open.

Screen.Recording.2024-03-26.at.10.48.21.720.mov

@cbjeukendrup
Copy link
Contributor Author

@jessjwilliamson Drop shadow will be back in #22046! (Was a Qt 6 regression.)

I can reproduce a crash sometimes, but not reliably. I'm having difficulties finding out what's causing it. @Eism Could you perhaps take a look?

I fixed the navigation order of the panels, and temporarily hid the "Customise Mixer" button until it's fully implemented.

@Eism
Copy link
Contributor

Eism commented Aug 8, 2024

@cbjeukendrup @jessjwilliamson I fixed the crash, please review

@cbjeukendrup
Copy link
Contributor Author

@Eism The crash fix works indeed, and I rebased! But just now I found another regression: when opening the Mixer while another panel is already open, it does not become the active tab. So I'll need to fix that. Not sure if that will be before 4.4 (probably better to delay this, as it might be a bit too risky at this stage)

Add new components to Muse/Dock/qmldir

Turns out to be necessary after rebase
KDDockWidgets requires using two MouseAreas: one for dragging the title bar (which will drag the whole floating window when it's undocked) and one for dragging individual tabs (this will drag the tabs out of the floating window, which gives a strange effect when there is only one tab in the floating window.

The design specifies that we want tabs instead of a title bar for horizontal panels even when there is only one tab. In this case, we need to make the tabs visible, but make their MouseArea disabled, and instead use the title bar MouseArea.
cbjeukendrup and others added 4 commits December 31, 2024 01:54
Old situation: you tell the docking system a navigation panel for each dock panel, and the docking system will mess with the order of this panel.

Problems: if a dock panel contains multiple navigation panels, you need to chain those other panels to the first one. And if the first panel is not really available, as in the case of the mixer toolbar, you can't tell the docking system about it.

New situation: you tell the docking system about the navigation section directly, instead of the navigation panel. The docking system will give you a `contentNavigationPanelOrderStart` property back, which you can use to correctly set the order of all navigation panels in your dock panel.
reset toolbarComponent when destroying panel
It doesn't look like this bug has had any noticeable consequences though.
@cbjeukendrup
Copy link
Contributor Author

@mathesoncalum @Eism Rebased!

@zacjansheski
Copy link
Contributor

Tested on MacOS 14, Windows 11, Ubuntu 22.04.3. Approved
#11335 FIXED

@cbjeukendrup cbjeukendrup merged commit 2048dd1 into musescore:master Jan 6, 2025
11 checks passed
@cbjeukendrup cbjeukendrup deleted the mixer_toolbar branch January 6, 2025 22:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[MU4 Issue] Mixer - Auto-resizing issues when docked with tabs
5 participants