MuseScore icon indicating copy to clipboard operation
MuseScore copied to clipboard

After restoring the default layout, part of the UI moves to the right

Open FrancRos31 opened this issue 1 year ago • 7 comments

Issue type

UX/Interaction bug (incorrect behaviour)

Description with steps to reproduce

  1. open a score
  2. View ---> Restore the default layout

Actual behavior: status bar, playback toolbar, "Parts" and "Mixer" buttons move to the right. Expected behaviour: status bar, playback toolbar, "Parts" and "Mixer" buttons don't move.

Supporting files, videos and screenshots

https://github.com/user-attachments/assets/dca058bb-38c2-47c6-947c-09bb3e97d543

What is the latest version of MuseScore Studio where this issue is present?

OS: Windows 10 Version 2009 or later, Arch.: x86_64, MuseScore Studio version (64-bit): 4.5.0-250650404, revision: github-musescore-musescore-128003d

Regression

I was unable to check

Operating system

Windows 10 Pro

Additional context

No response

Checklist

  • [x] This report follows the guidelines for reporting bugs and issues
  • [x] I have verified that this issue has not been logged before, by searching the issue tracker for similar issues
  • [x] I have attached all requested files and information to this report
  • [x] I have attempted to identify the root problem as concisely as possible, and have used minimal reproducible examples where possible

FrancRos31 avatar Mar 06 '25 23:03 FrancRos31

Hi, I’d like to give this a go. Would you mind assigning it to me?

devmanels avatar Mar 24 '25 12:03 devmanels

Hi, I have some updates. I believe I’m almost done with this, just need to test a few more things.

I realized that although the status bar, playback toolbar, "Parts," and "Mixer" buttons are no longer moving, there is a bar (similar to the one separating the settings icon and the time counter) next to the playback toolbar and "Mixer" that flickers and disappears for a single frame when reloading the page. It happens so quickly that when I tried recording my screen to show it, it didn’t appear in the recording. (I could try recording my screen with my phone if you want to see it.)

I’m not sure if this is something you’d like me to look into and try to fix, so let me know.

Thank you!

devmanels avatar Mar 25 '25 15:03 devmanels

@devmanels It would be awesome if you could create a PR already! Then we'll have a look ourselves. It's always possible to adjust an existing PR, and the earlier you open it, the earlier we can start giving feedback.

cbjeukendrup avatar Mar 25 '25 15:03 cbjeukendrup

@cbjeukendrup I haven’t had time yet to run your tests to make sure everything is working. I was just running the program and checking it myself. I believe it is, but I wanted to confirm before creating a PR. However, if you want me to, I can create one.

devmanels avatar Mar 25 '25 19:03 devmanels

@devmanels Yes, don't hesitate to create a PR, or, in cases where you still feel unsure, you could mark the PR as draft. The unit tests are most likely not really applicable to the code that you need to change for this issue, so don't worry too much about those.

cbjeukendrup avatar Mar 25 '25 20:03 cbjeukendrup

I had missed this issue but I have been experiencing it for some time now every time. It actually happens for me even when I start MuseScore without restoring the default layout. I am not sure exactly what's going on but it must be related to the center alignment of the Parts/Mixer toolbar. Change that alignment to Left or Right, and the issue goes away. Keeping the center alignment, I have found the following two workarounds:

  1. In src\notation\view\notationtoolbarmodel.cpp on line 50 do not call load(); (inside context()->currentMasterNotationChanged().onNotify). This call to load() is not very clean anyway because it binds context()->currentMasterNotationChanged().onNotify) every time the master notation changes. Is this needed anyway? Does this toolbar change in any way with the current master notation? Anyway, something goes wrong when this toolbar is updated as load() gets called.

  2. Wrapping NotationToolBar { ... } in a Row { } in NotationPage.qml also makes the issue go away.

@cbjeukendrup All that being said, perhaps you could take a look and try and see what's going on?

krasko78 avatar Jun 05 '25 18:06 krasko78

This issue no longer occurs for me. P.S. Actually it does, when restoring the layout...

krasko78 avatar Nov 27 '25 03:11 krasko78