Mixer panel (not) showing

• Feb 1, 2019 - 15:47
Reported version
3.0
Priority
P1 - High
Type
Graphical (UI)
Frequency
Many
Severity
S2 - Critical
Reproducibility
Always
Status
closed
Regression
No
Workaround
Yes
Project

Playbacked a score a number of times, partially, with the mixer panel open. Switched to another score, noticed the mixed panel gone. Going back to the first score, still gone.
Pressing F10 a number of times, no effect. Same with View/Mixer menu.

Closed down MuseScore, restarted and loaded a score. Now the mixer panel appeared without me activating it. The View menu has Mixer unchecked:

Schermafdruk 2019-02-01 16.40.26.png

OS: macOS 10.14, Arch.: x86_64, MuseScore version (64-bit): 3.0.2.20666, revision: 8ca4d2c

Attachment Size
A93-Ecce-Novum.mscz 29.27 KB

Comments

Could you maybe give some more information on this? I'm unable to get the mixer to disappear, although I am able to get the second issue to show up.

Frequency Few Many

I'm getting this on a regular basis, and each time have to Revert to Factory Settings, redo desired startup options, and reconfigure half a dozen keyboard shortcuts. This last time, I tried saving my shortcuts before reverting, then loading them from the saved file after. The shortcuts were not restored!

Still hard to identify anything that reliably produces the vanishment. Usually I have the Mixer and Inspector both open in overlaying tabs docked at the right of the screen, with sometimes the Player window open below them both. This will be the state when I close Musescore, usually with one or more open, but saved, files. Next time I open Musescore, there's no Mixer; the Mixer option in unchecked; and checking it won't bring it back.

Status active needs info

I'm still unable to get this issue to show up with the current version of MuseScore. Do you think you could try and come up with steps to create the issue? When you revert to factory settings and reconfigure, do you only change keyboard shortcuts?

In reply to by Peter Hieu Vu

The mixer disappear easily in following the differents hint of each user, I have do that in the French forum and I can reproduce each time.
I have produce little step by step with sreenshot to help understanding.

  • Version tested 3.0.5 under Windows 7 SP1 OS: Windows 7 SP 1 (6.1), Arch.: x86_64, MuseScore version (64-bit): 3.0.5.5992, revision: 58dd23d
  • Locale has been switched in US for the ease of not French speaking people.

1) Verify you are in Advanced Workspace

Mixer-01.png

2) Create a new Workspace.

Mixer-02.png

3) Name it as you want and check all checboxes.
4) Your works^pace is created and active

Mixer-03.png

5) Close and restart MuseScore
6) At restart you will see that your worspace has been loaded with its default parameters, Background an foreground changed, and Anialiased checkbox unchecked

Mixer-04.png

7) Change to your colors and check Draw antialiased.
8) Close and restart MuseScore
9) At restart open any score
10) Open Mixer

Mixer-05.png

11) With mouse, move the mixer to dock with the Palettes, after docking you see the 2 tabs Palettes and Mixer

Mixer-06.png

12) Close and restart MuseScore
13) At restart, open any score, you will notice that Mixer is no more docked with the palettes

Mixer-07.png

14) Open the menu view, check Mixer

Mixer-08.png

Results : The mixer does not open, you can change workspace, delete your personalized one, close and restart MuseScore, Mixer never open.
The lonly things you have to do is Restore to defaults parameters, in the best case.

I wish this step by step method help you to find this annoying bug.

Workaround No Yes

Thank you. I took a look at this, but I'm not experienced enough in Qt to pin point the issue. This is definitely a pretty big issue though so I hope someone else can. I actually have gotten it to crash because of this, but I'm not really sure exactly how to reproduce it. There is a setting called "mixerVisible" that tells (of course :)) if the mixer is visible. On open, when that setting is true, the mixer is is created and set to visible without checking the toggle-mixer action. This is an easy fix and just requires a line to set that on creation of the mixer object.

The more difficult issue is the one that makes the mixer invisible and isn't fixed by toggling the mixer again. If you have different workspaces, I have found that switching workspaces actually can fix this and get the mixer to show again. What's strange is this caused a crash a couple of times. A couple times that I reproduced the issue, I switched from Advanced to Basic and that caused a crash. Doing the same thing again caused the same crash, but just opening it and doing something else first and then restarting MuseScore resolved this. I got the same crashing issue to show up another time, but now that I am trying to investigate the crash more I'm unable to reproduce the crash. The crash was because of a seg fault I think that happened when trying to restore the state of the program on workspace switch.

It seems to have to do something with the saving of the state/geometry of the Mixer when it is docked versus when the widget is floating. If the widget is floating there are no problems when MuseScore is opened and closed (or at least after the above fix). With the widget docked, everything seems to go bad. This is all I've found out so far.

Status active fixed

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._

Status PR created fixed

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:

  • Play Panel
  • Palettes
  • Inspector
  • Selection Filter
  • Piano Keyboard (when dockable, only dockable in footer)
  • Time Line (when dockable, only dockable in footer)
  • Score Comparison Tool
  • Mixer

2) Addresses some issues with the mixer (#283258) being converted from
an independent window to a dock widget:

  • add code to ensure the show/hide menu is in sync with the mixer being
    shown
  • removed inappropriate widget configuration on setup_
Fix version
3.2.0