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

Shortcut for Preferences>Note Input>Play Notes When Editing #22382

Closed
scorster opened this issue Apr 13, 2024 · 34 comments · Fixed by Jojo-Schmitz/MuseScore#423 or #25671
Closed

Shortcut for Preferences>Note Input>Play Notes When Editing #22382

scorster opened this issue Apr 13, 2024 · 34 comments · Fixed by Jojo-Schmitz/MuseScore#423 or #25671
Assignees
Labels
community Issues particularly suitable for community contributors to work on feature request Used to suggest improvements or new capabilities needs design Design is needed

Comments

@scorster
Copy link

scorster commented Apr 13, 2024

Your idea

Regarding: Preferences>Note Input>Play Notes When Editing

I have not found an Action for Preferences>Note Input>Play Notes When Editing in MuseScore 4 Preferences, so I'm requesting the addition of one if one does not currently exist. (Rationale and use case below ... in the Problem to be Solved section of this post.)

Additionally, I advocate for a toggle button that the user can add to MuseScore 4's main toolbar, for ease of access.

One could argue that such a toggle is readily accomplished via a "mute" button on a QWERTY keyboard, but:

  • I don't think it's safe to assume that all keyboards have such a key
  • we won't attain versatile solution even with keyboards that have a "mute" key

Further considerations:

First: A QWERTY or an AZERTY mute button likely only mutes sound routed to the "System Output", or directly routed to Internal Speakers or headphones. Thus it won't mute sound sent to an audio interface, which may be central to a user's audio configuration.

Second: Muting all sound output would be undesirable in a context where I just want to toggle Play Notes When Editing Off, such as:

a) when I want to hear MuseScore's playback—just not MuseScore note entry or note selection
b) when I want to hear sound emanating from another music/audio app
c) when I want to hear sound emanating from another music/audio app and from MuseScore's playback. And this is frequently true!
d) when I need to hear MuseScore's playback and audio from a Zoom session—again, the goal is to specifically omit sound only of MuseScore note entry or note selection
e) In my studio, when a student it playing or a person is talking, there's no reason to distract the person by my editing. And I may have the student practicing along with another recording or MuseScore file, thus simply muting all sound is not a solution.

Problem to be solved

Sometimes I need a way to quickly and temporarily silence the sounds MuseScore makes on input or selection.

Here's a use case: In my studio (or on a music lesson Zoom call) a student is practicing with a hardcopy of a score I've created. I notice something I want to edit or add to the score. While he or she practices I want to quickly and easily toggle off Play Notes When Editing so I can silently make changes. (The requested MuseScore shortcut would make all this readily possible. )

In contrast, if I mute all sound output I'm effectively muting anyone on the Zoom call. Muting a private student on Zoom is rarely advisable as it can lead to an uncomfortable disconnect if they are trying to communicate with me.

@pacebes
Copy link
Contributor

pacebes commented Oct 31, 2024

To clarify what this is about:

  • We ask for an "action" for "Preferences>Note Input>Play Notes When Editing"
  • A toggle button... Next to "Parts" row or next to "notes" row ?
    image
  • The toggle button... should also change the behavior (Play/don't play) for the next session (as in Preferences Window) or should only change the value of the current session ?.
  • If it should only change the behavior during the current session... shall it prevail over the "Preferences ...".??

@pacebes
Copy link
Contributor

pacebes commented Nov 2, 2024

I don't know if adding an action for ""Preferences>Note Input>Play Notes When Editing" makes sense because the "OK" button will change modified properties.

@scorster
Copy link
Author

scorster commented Nov 2, 2024

To clarify what this is about:

  • an "action" for "Preferences>Note Input>Play Notes When Editing [has been requested]"

Correct. And thanks for your interest.

  • A toggle button... Next to "Parts" row or next to "notes" row?

I think the best position for the requested toggle button would be in the Play Panel ...near or within the Play Panel's Gear menu.

  • The toggle button... should also change the behavior (Play/don't play) for the next session (as in Preferences Window) or should only change the value of the current session ?

I imagined the preference setting persisting between MuseScore sessions. Once I set it I'd be happy with that, and toggling is just a click away. Though I can envision a user wondering why they have no sound in note entry. So maybe a session-persistence is better.

  • If it should only change the behavior during the current session... shall it prevail over the "Preferences ..."??

Sorry. I'm not sure what preferences it would prevail over.

Thanks again, scorster

@pacebes
Copy link
Contributor

pacebes commented Nov 3, 2024

(Edited)
Ok
I am digging into the code to figure out a way to deal with this issue.

  • The "toggle button" will be synchronized with " Preferences>Note Input>Play Notes When Editing".
  • The idea is to be near the Play Panel (may be between the Play Panel and the Undo icon). I think that including the button within the Play Panel could be confusing because this new button will mute or unmute the play when editing and not when playing unless it is placed within the gear menu as you suggest. It would be the easiest way adding an additional line (at the bottom?)

image

  • We could add an icon checked or unchecked with the text "Play Notes When Editing""
  • I would like you to choose the icon. I have attached the list of the available icons:
    MuseScoreIconsList.odt

Could you please choose which one should be used ?

@pacebes
Copy link
Contributor

pacebes commented Nov 3, 2024

HI @scorster

I figured out a way to make both options work:

  • We can have an icon between Play panel and undo buttons: See:

image

We could change the icon between
image
and
image
if playing when editing is active or not

  • We could also add an option within the gear menu within the play gear menu as you suggested:
    image

We could use any icon you like and the "tick" would display if the mute is active or not.

Please, choose which one you find better and assign the issue to me to continue working on it (there is still some work to be done before I can create the pull request.

@cbjeukendrup
Copy link
Contributor

@avvvvve Could you please advise about the above?

@cbjeukendrup cbjeukendrup added the needs design Design is needed label Nov 3, 2024
@scorster
Copy link
Author

scorster commented Nov 3, 2024

@pacebes

Nice progress!

Placement of the icon in the toolbar

Everything to the right of the Gear icon is non-interactive, aside from the superfluous Undo / Redo icons. So I'm still leaning toward placing the icon immediately before or after the Gear icon.

I know that toolbar real estate is a precious commodity, so there's likely to be push back on adding an icon. So we could fall back on only placing the option in Gear menu. But I think this editing option is more important than displaying the Undo and Redo icons. (I don't think I ever even noticed them out there in right field—and in 2024 most people know the keystrokes or use the Edit>Undo or Edit>Redo. BUT we can be grateful there's not a floppy disk icon for saving!)

Icon design

Was unable to open your .odt file ...

I think a simple speaker icon could be confusing, as it implies muting all playback.

At some point I submitted candidate icons (perhaps in a different discussion.) I'm not attached to them, but here they are:

     Pencil-Speaker icons for Sound on Edit
     Pencil-Speaker icons for Sound on Edit - Sm

And some revisions that will look clearer at a small size:

          Pencil-Speaker icons for Sound on Edit 02 - xSm
          Pencil-Speaker icons for Sound on Edit 03 - xSm

When you're ready I can attach as PNG or SVG.

The Gear menu

Nice that you added the toggle to the Gear menu! I'm going to think on wording.

Indeed the tick/checkmark means only one icon required in the menu.

@scorster
Copy link
Author

scorster commented Nov 4, 2024

BTW, at the opening of this thread my second request was for a toolbar control that toggles

My first request was for an Action, so I could assign a shortcut:

I have not found an Action for Preferences>Note Input>Play Notes When Editing in MuseScore 4 Preferences, so I'm requesting one be added if one does not currently exist.

That may be the simplest solution and it something that users can toggle with a shortcut of their choice. Wait, now I'm wondering.

Can Actions be toggles??

@pacebes
Copy link
Contributor

pacebes commented Nov 4, 2024

@pacebes

Nice progress!

Placement of the icon in the toolbar

Everything to the right of the Gear icon is non-interactive, aside from the superfluous Undo / Redo icons. So I'm still leaning toward placing the icon immediately before or after the Gear icon.

I know that toolbar real estate is a precious commodity, so there's likely to be push back on adding an icon. So we could fall back on only placing the option in Gear menu. But I think this editing option is more important than displaying the Undo and Redo icons. (I don't think I ever even noticed them out there in right field—and in 2024 most people know the keystrokes or use the Edit>Undo or Edit>Redo. BUT we can be grateful there's not a floppy disk icon for saving!)

Icon design

Was unable to open your .odt file ...

I think a simple speaker icon could be confusing, as it implies muting all playback.

At some point I submitted candidate icons (perhaps in a different discussion.) I'm not attached to them, but here they are:

When you're ready I can attach as PNG or SVG.

The Gear menu

Nice that you added the toggle to the Gear menu! I'm going to think on wording.

Indeed the tick/checkmark means only one icon required in the menu.

I have attached now a PDF with the icon list so you could choose one: MuseScoreIconsList.pdf

I presume that adding icons is something "global" (an address should be assigned) that should be reviewed by MuseScore team. There may even be a user interface design group responsible for reviewing the user icon design. Am I right @cbjeukendrup ?. If there is no need to review the icon I would appreciate any help about how to add the icon and which address should be given to them. I have created the attached PDF with https://tophix.com/font-tools/iconfont-viewer and uploading the MusescoreIcon.ttf file.

So, what we would like to do now is:

  • Create an Action (Its name for the time being is "play-notes-when-input"). I am open to suggestions
  • Include a "toggle" within the gear menu. I am also waiting for a label name... please
  • Icon: I would like you to choose an existent icon (attached PDF) unless we can add a new one

Is that OK ?

@pacebes
Copy link
Contributor

pacebes commented Nov 4, 2024

BTW, at the opening of this thread my second request was for a toolbar control that toggles

My first request was for an Action, so I could assign a shortcut:

I have not found an Action for Preferences>Note Input>Play Notes When Editing in MuseScore 4 Preferences, so I'm requesting one be added if one does not currently exist.

That may be the simplest solution and it something that users can toggle with a shortcut of their choice. Wait, now I'm wondering.

Can Actions be toggles??

Yes, as far as I know. The Action is a function that can change the value of a property (true if false and false if true)

@pacebes
Copy link
Contributor

pacebes commented Nov 4, 2024

I have a working version with:

  • Action code: toggle-play-notes-when-editing
  • Synchronization between Preferences Window "Play notes when editing" option and this "Play notes when editing" toggle Menu Option
  • This is the current version:
    image

image

  • We can change the icon and the text. It's up to you @scorster

So, what should we do now ?

  • Are we going to have a different icon or a new icon icon for this menu option ?
  • Should I create the Pull request when both decisions are made ?

@cbjeukendrup
Copy link
Contributor

Let's wait for @avvvvve's opinion, he is one of the designers in the team, so he can definitely help!

@pacebes
Copy link
Contributor

pacebes commented Nov 4, 2024

Ok.
Just remember than we could also hace this menu option without icon

@pacebes
Copy link
Contributor

pacebes commented Nov 13, 2024

I have checked again this issue and I have found that, although it is still open it appears as: "Fixed by Jojo-Schmitz#423"

imagen

Is it already fixed or it is up to @avvvvve to decide what should be done ?

@cbjeukendrup
Copy link
Contributor

"Fixed by Jojo-Schmitz#423" means that Jojo ported some fix to his 3.7 repo.
But for the master branch, there is no decision or solution yet.

@scorster
Copy link
Author

scorster commented Nov 13, 2024

Here's a related preference I wanted today: the option to hear clicked notes in tracks that are muted in the Mixer.

At first I thought I'd always want that functionality ON.

Interestingly though when it's OFF it (like the current default behavior) it would suffice for the original request in this thread!

@pacebes
Copy link
Contributor

pacebes commented Nov 14, 2024

So. This issue asks for two different things:
1.- The one I have already implemented: a toggle option to activate-deactivate playing notes when editing synchronized with Preferences Window "Play notes when editing" option
imagen

2.- An additional option (I presume next to "Play notes when editing") which could be called "Ignore mixer mute when editing". If this option is "on":
2.1. If "play notes when editing" is "on": ignore instrument Mute settings in Mixer and play notes when editing for every instrument:
imagen

2.2. If "play notes when editing" is "off": current behavior.

Am I right?. Which icon should we use for this "Ignore mixer mute when editing"?

@scorster
Copy link
Author

So. This issue asks for two different things: 1.- The one I have already implemented: a toggle option to activate-deactivate playing notes when editing synchronized with Preferences Window "Play notes when editing" option imagen

2.- An additional option (I presume next to "Play notes when editing") which could be called "Ignore mixer mute when editing". If this option is "on": 2.1. If "play notes when editing" is "on": ignore instrument Mute settings in Mixer and play notes when editing for every instrument: imagen

2.2. If "play notes when editing" is "off": current behavior.

Am I right?.

Yes, this all sounds good to me.

Which icon should we use for this "Ignore mixer mute when editing"?

I'm going to have to think on that!

@scorster
Copy link
Author

scorster commented Nov 15, 2024

First thoughts this morning regarding icon ideas for Override Mixer Mute on Note Selection

Override Mixer Mute

@pacebes
Copy link
Contributor

pacebes commented Nov 16, 2024

Hi
I have just found a way to deal with the "Override Mixer Mute on Note Selection" option.

@cbjeukendrup , I need to know if
1.- I can deliver these changes or they have to be reviewed by @avvvvve ,
2.- If I can deliver these changes, what about the new icons?. Are they to be integrated by @avvvvve ( and providing me with a new MusescoreIcon.ttf file or should I integrate them (and assign them an address within the ttf file and delivering the new file )?

@pacebes
Copy link
Contributor

pacebes commented Nov 16, 2024

By the way @scorster , I presume this "Override Mixer Mute on Note Selection" doesn't need to be kept between sessions. The option state will be lost if you exit from MuseScore and start it again

@scorster
Copy link
Author

scorster commented Nov 16, 2024

By the way @scorster , I presume this "Override Mixer Mute on Note Selection" doesn't need to be kept between sessions. The option state will be lost if you exit from MuseScore and start it again.

Right. We don't want people tripping over persistent settings. BUT personally I would want this ON and always ON, as in a preference. I can't imagine people being confused by the behavior ... though the current default confused me initially ... because I heard nothing on clicking a note in a muted track. I thought something went wrong with my audio settings. Dare we assume that"silent editing" on muted tracks was by design?

Lastly, if you want to use either of my icons I can attach them and save you a few minutes of time.

@avvvvve
Copy link

avvvvve commented Nov 26, 2024

@scorster @pacebes Sorry for the delayed response! The Note input page in Preferences has become a moving target via several community and internal projects so it's taken some time to step back and bring it all together.

So there are two separate requests here:

1. Add a shortcut to toggle on/off the existing "Play notes when editing" preference in Preferences > Note input

As mentioned above, we redesigned the Note input Preferences page to accommodate this new feature: #24352. As shown in the spec I posted there, we're changing the wording of "Play notes when editing" to "Hear playback when adding, editing, and selecting notes". When turned off, everything immediately beneath this toggle gets disabled.

So here's what I'd like to do:

  • Yes, add this to the Playback toolbar context menu (from the gear icon) but use the existing pencil icon (U+EF63 in the MusescoreIcon font) since it's already associated with note input. Note: We may come back with a new icon as a follow-up. Combining the speaker and pencil might be the right direction.
  • Change the title to "Hear playback when editing" and place it after "Pan score automatically".
    image
  • Add an action in Preferences > Shortcuts to toggle it, titled "Toggle hear playback when editing" (and include the pencil icon)

2. Add a new preference to control whether, when the above preference is ON, you hear notes added/clicked/selected on instruments that are muted in the mixer.

This indeed should be added as a preference, and should not reset every session. It should be a child item of the above "Hear playback..." preference in the Note input page.

However, it should not be included as a toggle in the Playback toolbar menu, because:

  • There is not an obvious utility in needing to toggle this often, especially given the general shortcut for "Hear playback..." we're adding above
  • Since it's one of several child settings of "Hear playback..." it doesn't make sense to elevate only this option to the context menu and not the others (and we shouldn't elevate ALL of them either—at that point, just open Preferences!)

So, this is what should be implemented:

  • Add a checkbox "Play notes on muted tracks" to Preferences > Note input as pictured below in the new design. It should be off by default to retain the current behavior.
    image
  • Since this new design hasn't been implemented yet, feel free to just add it as a sub-checkbox of the existing "Play notes when editing" preference underneath "Play chord symbol when editing"

A note about icons: As you can probably tell, we have a defined icon style that we adhere to, so we (the MuseScore Studio design team) will handle creating these ourselves. No harm in suggesting ideas but (for now) it's up to us to draw and add them to the font.

@pacebes
Copy link
Contributor

pacebes commented Nov 27, 2024

Ok @avvvvve .

You are now assigned to this issue. Could you please assign it alto to me to continue working on it?

Thanks

@pacebes
Copy link
Contributor

pacebes commented Nov 27, 2024

I will create two pull requests. One for each request

  1. Add a shortcut to toggle on/off the existing

Gear menu:
image

Shortcut

image

@pacebes
Copy link
Contributor

pacebes commented Nov 27, 2024

The pull request #25671 implements the first part of the functionality: Add a shortcut to toggle on/off the existing "Play notes when editing" preference in Preferences > Note input

pacebes added a commit to pacebes/MuseScore that referenced this issue Nov 28, 2024
pacebes added a commit to pacebes/MuseScore that referenced this issue Nov 28, 2024
pacebes added a commit to pacebes/MuseScore that referenced this issue Nov 28, 2024
pacebes added a commit to pacebes/MuseScore that referenced this issue Nov 28, 2024
pacebes added a commit to pacebes/MuseScore that referenced this issue Nov 29, 2024
@pacebes
Copy link
Contributor

pacebes commented Nov 29, 2024

I have created the second Pull request (#25683) to implement the Part 2: 2. Add a new preference to control whether, when the above preference is ON, you hear notes added/clicked/selected on instruments that are muted in the mixer.

It is built OK in Linux and Windows, but building fails in MacOs with an error that doesn't seem to have nothing to do with the pull request itself:


In file included from src/framework/audio/CMakeFiles/muse_audio.dir/Unity/unity_0_cxx.cxx:10:
In file included from /Users/runner/work/MuseScore/MuseScore/src/framework/audio/audiomodule.cpp:75:
In file included from ../src/framework/audio/internal/platform/osx/osxaudiodriver.h:29:
/Applications/Xcode_15.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk/usr/include/MacTypes.h:548:16: error: reference to 'Point' is ambiguous
typedef struct Point                    Point;
               ^
/Applications/Xcode_15.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk/usr/include/MacTypes.h:544:8: note: candidate found by name lookup is 'Point'
struct Point {
       ^
../src/framework/draw/types/geometry.h:154:7: note: candidate found by name lookup is 'muse::Point'
using Point = PointX<int>;
      ^

does anyone know someone I can talk to about this problem?

Thanks in advance

pacebes added a commit to pacebes/MuseScore that referenced this issue Nov 29, 2024
pacebes added a commit to pacebes/MuseScore that referenced this issue Nov 30, 2024
pacebes added a commit to pacebes/MuseScore that referenced this issue Nov 30, 2024
pacebes added a commit to pacebes/MuseScore that referenced this issue Nov 30, 2024
pacebes added a commit to pacebes/MuseScore that referenced this issue Nov 30, 2024
pacebes added a commit to pacebes/MuseScore that referenced this issue Nov 30, 2024
pacebes added a commit to pacebes/MuseScore that referenced this issue Dec 1, 2024
@cbjeukendrup cbjeukendrup moved this from Available to In progress in Community Projects Dec 2, 2024
cbjeukendrup added a commit that referenced this issue Dec 4, 2024
…laybackWhenEditing

Fix #22382 Part 1: Add a shortcut to toggle hear when playing editing
@github-project-automation github-project-automation bot moved this from In progress to Done in Community Projects Dec 4, 2024
@cbjeukendrup
Copy link
Contributor

This has been closed automatically because the first PR corresponding to it was merged; but of course, the second problem that came up in this thread (playback preview for muted channels) has not yet been resolved. I could of course reopen this issue, but it seems better to open a dedicated issue for that, and then edit the description of #25683 to refer to that new issue. @scorster May I ask you to open such issue?

@pacebes
Copy link
Contributor

pacebes commented Dec 5, 2024

I presume I should create a new Pull Request once this issue is open.
Should I also delete the previous one I created to deal with it ( #25683 ) a iterate over the new Pull request created

@cbjeukendrup
Copy link
Contributor

@pacebes No, you can just edit the description of the existing pull request; then everything will be fine (or actually, I can help with that, once the new issue is open)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
community Issues particularly suitable for community contributors to work on feature request Used to suggest improvements or new capabilities needs design Design is needed
Projects
Status: Done
6 participants