Side panels not dockable after being undocked and closed once
Reported version
3.0
Type
Functional
Frequency
Many
Severity
S4 - Minor
Reproducibility
Always
Status
closed
Regression
No
Workaround
Yes
Project
1) Undock a panel (such as Palettes or the Piano Keyboard).
2) Close the now floating panel window.
3) Re-open the closed (floating) panel window.
4) It is now not possible to re-dock this panel window, neither by dragging it into the desired position or double-clicking on it.
The only way to get the panel back into docked position is to reset MuseScore 3 to factory settings.
Windows 10, 64-bit.
Attachment | Size |
---|---|
Untitled.png | 81.74 KB |
Fix version
3.2.0
Comments
I, too, have encountered this problem.
The workaround I came up with:
- close Musescore
- open Musescore without specifying an existing score
- with the "Untitled" blank score showing, click "View" | "Palette" (for example)
- drag the Palette panel outside the Musescore window
- drag the Palette panel back into the Musescore window (this should push aside the score window, and dock the Palette panel beside it without overlaying the score window.)
- click "File" | "Open Recent" to re-open the score you're working on
Also mentioned at https://musescore.org/en/node/284970#comment-913319 with steps to reproduce, albeit just for the play panel.
In reply to Also mentioned [https:/… by RobFog
The steps to reproduce on Play panel also apply to:
* Palettes
* Inspector
* Selection Filter
* Piano Keyboard (when dockable, only dockable in footer)
* Time Line (when dockable, only dockable in footer)
* Score Comparison Tool
i.e. all of these if un-docked, closed, and then re-opened (via View Menu) can no longer be docked until after MuseScore is quit and re-started. (All this, tested on MacOS.)
In reply to The steps to reproduce on… by Startled Bee
Thank you very much. :-)
In reply to The steps to reproduce on… by Startled Bee
I've submitted a pull request that addresses this issue. It adds some code to test whether the window was FLOATING when it was last closed and then applies some extra steps in this case. In my tests it seems to be working fine. https://github.com/musescore/MuseScore/pull/5011
Fixed in branch master, commit c9025ac241
_Fix #287528 & Fix #283258 - Side panels not dockable after being undocked and closed once
+ related issue with mixer panel
1) Adds a function that tests if widget is in the floating state and,
if so, cycles the floating state through off and on again to ensure
widget is re-dockable.
2) Addresses issues with Mixer QDockWidget behaving erratically reported
in https://musescore.org/en/node/283258. A key issue here was that the
QDockWidget had the Qt:Tool window flag set (setWindowFlags(Qt::Tool);).
In addition, this fix moves the point at which the mixer gets displayed
(if required) on start up so it's in line with other dockable widgets.
The move was out of main() and into MuseScore::readSettings(). The
mixer issues may have been caused by the conversion of the mixer from a
QWidget to a QDockWidget (which happened at 88c75a1)
Adds a function that tests if widget is in the floating state and,
if so, cycles the floating state through off and on again to ensure
widget is re-dockable._
Fixed in branch master, commit 19f51cf21d
_Merge pull request #5011 from Obliquely/palette-docking-issue
Fix #287528 - Side panels not dockable after undock and close_
This is a known Qt bug since Qt 5.11 version (https://bugreports.qt.io/browse/QTBUG-69922).
The way the recently merged PR (5011) fixes the issue causes another issue to happen (#289773: Mixer changes width of inspector when undocked.).
So maybe it would be better to revert that PR and wait for a fix in Qt.
Also some sort of a workaround: after reopening MuseScore it becomes possible to dock a widget until it isn't closed again.
PR got reverted
Personally, I'd also be happy if changing the mixer to just default undocked fixed the issue. Or make it not dockable at all - to me it's not really useful that way anyhow.
New pull request: https://github.com/musescore/MuseScore/pull/5086
Fixed in branch master, commit 86a3476509
_fix #287528, fix #283258 & fix #289773: Panels not dockable after undock & close
1) Adds a function that tests if widget is both not-shown (!isVisible) AND
in the floating state. If so, it cycles the floating state through off
and on again to ensure widget is re-dockable. This is a workaround for
QT-69922. The !isVisible() test avoids side effect of dock being resized,
e.g. made wider, even when the widget won't be landing on it (#289773).
Function used to the fix issue for:
2) Addresses some issues with the mixer (#283258) being converted from
an independent window to a dock widget:
shown
Fixed in branch master, commit 91ae302441
_Merge pull request #5086 from Obliquely/palette-docking-2nd-go
fix #287528, fix #283258 & fix #289773: panels not dockable after undock & close_
Automatically closed -- issue fixed for 2 weeks with no activity.