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

[MU4 Issue] X and Y offset values cannot be managed separately when multiple items are selected #15452

Open
oktophonie opened this issue Dec 20, 2022 · 4 comments · May be fixed by #15772
Open
Assignees
Labels
P1 Priority: High

Comments

@oktophonie
Copy link
Contributor

oktophonie commented Dec 20, 2022

Describe the bug
Bear with me on this one...

If I select two items and they have the same X and Y offset, then those values will be shown in the Appearance popup, as one might expect:
issue-1

Let's say I change the X offset of one of these items:
issue-2

Now, if I select the two items, the X and Y boxes both show "--", which normally indicates 'there are multiple values':
issue-3
This is technically only true for the X offset, because the Y offset is the same for both. It would, therefore, be nice that even if only one of the values is consistent for all the selected items, then this value be displayed.

The real problem, though, is that it's impossible in this situation to apply the same X or Y offset to all the selected items at once (which is not a particularly unusual thing to want to do; and to have to do it for a whole load of items one by one is very tedious), without affecting the other offset. For example:

Let's say I wanted to set the Y offset of both the selected items to 3, but preserve the different X offsets that each one has. The first oddness is that when I select the value in the box it changes from '--' to '0':
issue-4

And if I then change this value to 3, it will apply a Y offset of 3 to both items as expected, but also will reset the X offset of all the items to 0!
issue-5

Expected behaviour
Ideally,

  • when multiple items are selected, if all items have the same X offset, or the same Y offset, then this value should be shown in the box
  • editing such a value should affect only that offset (X or Y), and have no influence on the other one, for any of the selected items.

Platform information

  • 4.0 release, tested on Linux (Arch) and Win 11
@cbjeukendrup
Copy link
Contributor

For what it's worth, the underlying problem is that X and Y offset are represented by a single property of type "Point". I think that's generally okay, but causes some difficulties since we want to allow the user to edit the X and Y value separately.

@Tantacrul
Copy link
Contributor

For what it's worth, the underlying problem is that X and Y offset are represented by a single property of type "Point". I think that's generally okay, but causes some difficulties since we want to allow the user to edit the X and Y value separately.

Well, that there is the problem. Thanks @cbjeukendrup

@Tantacrul Tantacrul added the P0 Priority: Critical label Dec 20, 2022
@Tantacrul Tantacrul added this to To do in 4.x SHORTLIST via automation Dec 20, 2022
@Tantacrul Tantacrul added the needs design Design is needed label Dec 20, 2022
@bkunda
Copy link

bkunda commented Jan 3, 2023

Hi all,

I'm not 100% clear on the extent to which this requires design, beyond outlining the expected behaviour as @oktophonie has done above.

On testing this though, I too come across this bug, which seems connected with this issue, and which was also raised in #13261. I thought its effect on dynamics was worth sharing:

offset-issue.mov

If it at all helps, I would simply reformulate the rules to govern the user's experience of changing x- and y-offsets as:

  1. Where more than one element is selected, the ‘--‘ indicator should only apply to a property that contains multiple values; I.e. where a property contains the same values for all selected elements, that value should still be shown.
  2. Where more than one element is selected, and at least one of the properties contains multiple values, the user should be able to change the value of any single property without affecting the other.

@oktophonie
Copy link
Contributor Author

The minimum distance issue exists separately here: #13261

@cbjeukendrup cbjeukendrup self-assigned this Jan 3, 2023
@cbjeukendrup cbjeukendrup removed the needs design Design is needed label Jan 3, 2023
cbjeukendrup added a commit to cbjeukendrup/MuseScore that referenced this issue Jan 8, 2023
In 6ded409, we had made offset properties a single PropertyItem to fix some problems with applying to style. This turns out to cause other problems, because we want to be able to edit x and y values separately, also when multiple items are selected, see musescore#15452.
@cbjeukendrup cbjeukendrup added this to Needs Triage in [MU4.0.2 PATCH-RELEASE] via automation Jan 16, 2023
@cbjeukendrup cbjeukendrup moved this from Needs Triage to Nice to have in [MU4.0.2 PATCH-RELEASE] Jan 16, 2023
@Tantacrul Tantacrul moved this from Medium Priority to Important in [MU4.0.2 PATCH-RELEASE] Jan 30, 2023
@RomanPudashkin RomanPudashkin moved this from To do to In progress in [MU4.0.2 PATCH-RELEASE] Jan 30, 2023
@Tantacrul Tantacrul added this to To triage in MuseScore 4.1 via automation Feb 22, 2023
@Tantacrul Tantacrul removed this from In progress in [MU4.0.2 PATCH-RELEASE] Feb 22, 2023
@cbjeukendrup cbjeukendrup moved this from To triage to In Progress in MuseScore 4.1 Feb 25, 2023
@oktophonie oktophonie removed this from To do in 4.x SHORTLIST Feb 27, 2023
cbjeukendrup added a commit to cbjeukendrup/MuseScore that referenced this issue Nov 5, 2023
In 6ded409, we had made offset properties a single PropertyItem to fix some problems with applying to style. This turns out to cause other problems, because we want to be able to edit x and y values separately, also when multiple items are selected, see musescore#15452.
@oktophonie oktophonie added P1 Priority: High and removed P0 Priority: Critical labels Dec 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P1 Priority: High
Projects
Status: In progress
MuseScore 4.1
  
In Progress
4 participants