First Impressions with MS4 - UI Papercuts

• Dec 21, 2022 - 14:35

Finally got around to installing and having a play around with MS 4 tonight. Some first impressions from someone who's spent a lot of time with MS 2, moving to MS 3 in the last year or so (after MS 2 crashed on startup trying to restore too many open tabs).

The Good

  • The polish in the new QML-based UI is commendable. Feels nice and slick now. The new score dialog has a lot of good stuff. (Minor gripe: Didn't realise the first time that a tempo marking isn't included by default, and has to be turned on manually via a checkbox in a popup when clicking on that thing. Would be better to have it always on, particularly if that thing is so prominent in that dialog)

The Bad - Highest Priority

Muscle-Memory Breaking UX Gripe from Long-Time MS user (who uses the computer keyboard for note entry exclusively):

The behaviour of the Q/W keys now is infuriating! Is there any way to get back the old behaviour (or an "improved version" of it - see below), where you can quickly change the duration of the just added note? Currently, I'm forced to keep changing the input mode (using a combination of Escape-key + clicking on the dropdown - there doesn't even seem to be any hotkey option possible for toggling that), which is quite a bit slower + quite annoying.

What I'd ideally like to be able to do:
* Enter a run of notes, caring only about the pitches, until something needs to be different
* Then, hitting Q/W to change the duration to half/double the duration of the last entered note (i.e. old behaviour),
* OR, changing the note to a dotted one when hitting period (i.e. a new "improved" behaviour over the old),
* AND/OR even better, being able to turn the note into part of a triplet/etc. (i.e. keep current duration, with the n-let occupying "current-duration x 2").
* Also, for extra brownie points, hitting Q/W with a whole tuplet/n-let selected should change the duration of the whole thing, then adjust the durations inside to fit. (e.g. triplet of quavers over 1 crotchet --[W (doubled)] --> triplet of crotchets over a minim)

The Bad - Would be Nice to Finally Fix (Long-Time Hangover stuff)

  • Playback Looping: It's cool that there's now the set start/end looping marker things for controlling the region to loop. What's not so cool, is that I'd have to keep adjusting the end marker every time I add new stuff to the end of the non-blank measures.

    How I'd like it to work:

    • 1) Have option to always reset playhead to start marker / start of first measure whenever playback is stopped, OR when it reaches the last non-blank measure.
    • 2) Have some way of getting the end marker to automatically be set to the last non-blank measure.
    • 3) Have a "Quick Navigation" list / popup, that displays all the Rehearsal Marks, where clicking on an entry jumps to that rehearsal mark (in the UI / viewport, + setting the playhead / start marker to that point too)

The Bad - Would be Nice to Fix / Improve (MS 4 new stuff)

  • The website should have been a bit clearer that the download link was for "MuseHub", a helper application from which you'd then download and manage the MuseScore / Audacity / MuseSounds / etc. installs.

  • It really needs a "UI Scale" setting on startup, probably as part of the startup / first time wizard.
    Qt/QML really messes up trying to guess the font scaling on my machine, so much so that MS 3 was the reason I have the QT_AUTO_SCREEN_SCALE_FACTOR=0 environment variable applied globally to stop it making the fonts too big, while MS 4 has the opposite problem of making everything too small.

    For reference, this is Windows 10, with 150% DPI scaling applied. (On an old machine, I used to use 1.25, but that isn't really an option on Win 10).

    As an aside, with the QML codebase I'm building at work, the only reliable fix for fontsize scaling wackiness across platforms was to forcibly do the following before initialising the QML engine:

     auto f = app.font(); 
     f.setPointSize(8);   /* or similar explicit size */
     app.setFont(f);
    
  • The font-size setting is ignored by the top menubar labels. They're still tiny, even when the menus fortunately aren't.

  • Would be nice to have an easier way to set default fonts (music symbols + score text placeholder fonts) that will be applied to all future scores and/or the current.

  • There is always a 2-3 second lag getting the "Style" dialog to show up. Needs some optimisation work. Not sure if it's still using a QWidgets layout, or is just some QML that needs optimising (e.g. lazy-loading all the layouts via Loaders, instead of initialising everything on component loading). Haven't gotten around to checking the code for this part to see which one is the likely culprit.

Do you still have an unanswered question? Please log in first to post your question.