Skip to content

Conversation

@Ash-86
Copy link
Contributor

@Ash-86 Ash-86 commented Mar 30, 2025

Proposal to add a "extend to next note" action.

  • notes within range selection extend up to next note.
  • last note continues to be extended beyond selection box until next note is found. in this case, selection box extended too.
  • if there isn't any note till end of score, the selected note will be extended to end of score

bug: Applying on triplets seems to erase the triplet number and bracket above the notes. While execution seems correct, undoing displays strange behaviour.

demo11.mp4

triplets example with undoing going bad:

demo2.mp4

@Ash-86 Ash-86 force-pushed the extend-to-next-note branch 2 times, most recently from 45224d6 to 2a4eac6 Compare March 30, 2025 17:54
@Ash-86 Ash-86 force-pushed the extend-to-next-note branch 5 times, most recently from e88b2d9 to ff5cf4b Compare March 31, 2025 19:16
@XiaoMigros
Copy link
Contributor

Seems very out of place in the tools menu. Perhaps better as a configurable shortcut? And maybe add an option to extend to previous notes as well as next ones

@Ash-86 Ash-86 force-pushed the extend-to-next-note branch from ff5cf4b to 58aa13d Compare April 14, 2025 15:27
@Ash-86
Copy link
Contributor Author

Ash-86 commented Apr 30, 2025

@cbjeukendrup any chance i could get some feedback on this?

Copy link
Member

@cbjeukendrup cbjeukendrup left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A couple of comments:

Comment on lines 3331 to 3332
if (el->isNote() || el->isChord()) {
Note* on = toNote(el);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is an error if !el->isNote() but el->isChord()

@Tantacrul
Copy link
Contributor

Tantacrul commented May 1, 2025

This is a very interesting little idea. For sure, it would not be a capability found in the main menu bar... but I assume that's placement is placeholder for now.

Potential places it could go:

  • It could be a single-action tool placed in the 'Customise Toolbar' popover, which means users could potentially add it to their top bar if they like. We could create a little icon for it if @bkunda and others agreed it is nice to have. (It would definitely need a shortcut too.)

  • Since it's not a new function, it could simply only live in the context menu (for selected notes) and also as a new shortcut.

FWIW: It should definitely not exist in the properties panel because it's a notation action and not a property.

@Ash-86 Ash-86 force-pushed the extend-to-next-note branch from 651b568 to 0ab770a Compare May 1, 2025 23:50
@Tantacrul
Copy link
Contributor

@Ash-86 - I'm happy to test this and suggest the best UX. Can you fix the issue with the MacOS build and then I can provide any needed assets and perhaps a very small little design spec too? Once we're happy with it, we'll merge.

Cheers!

@Jojo-Schmitz
Copy link
Contributor

Seems the macOS build failure is outside to what @Ash-86 can fix

@cbjeukendrup
Copy link
Member

Yes, that's the same macOS failure as we're seeing all the time these days. I have a PR to fix it, waiting for review. #27910

@Tantacrul
Copy link
Contributor

Ah, OK. cool. We'll await the fix on our end.

@Ash-86
Copy link
Contributor Author

Ash-86 commented May 2, 2025

@Tantacrul great! I'll be waiting for your input. It looks like the macOS build test has passed.

@Ash-86 Ash-86 force-pushed the extend-to-next-note branch from f50e6ed to 5047c02 Compare May 4, 2025 00:20
@Ash-86
Copy link
Contributor Author

Ash-86 commented May 4, 2025

I fixed a few issues with selecting extended notes in list selection, as well as the last measure issue. I also removed the menu item, so anyone who wants to test this can now use the shortcut Alt+W (though you might have a better one).
The triplet issue is still present, however. Could someone point out how to add a chord to a tuplet in a way that ensures undoing doesn't corrupt the score?

@sammik
Copy link
Contributor

sammik commented May 4, 2025

Could someone point out how to add a chord to a tuplet in a way that ensures undoing doesn't corrupt the score?

I would look, how it is done by "Tie" command in note input mode.

@sammik
Copy link
Contributor

sammik commented May 4, 2025

One thing, which one is intended, upper one?

image2

@Ash-86
Copy link
Contributor Author

Ash-86 commented May 4, 2025

One thing, which one is intended, upper one?

The function uses changeCRlen, so upper one.

@zacjansheski
Copy link
Contributor

On a range selection with a grace note it skips a measure

video1267587921.mp4

@Ash-86
Copy link
Contributor Author

Ash-86 commented Dec 23, 2025

@zacjansheski The grace notes issue should be resolved now. Would you mind giving it another try?

@Ash-86 Ash-86 force-pushed the extend-to-next-note branch from 11b8c80 to 6fc0050 Compare December 24, 2025 00:02
@zacjansheski
Copy link
Contributor

Tested on MacOS 15, Windows 11, Ubuntu 22.04.3. Approved

@Ash-86
Copy link
Contributor Author

Ash-86 commented Jan 3, 2026

@zacjansheski @cbjeukendrup Before we merge, I wanted to suggest a feature: extending notes from partially selected chords individually instead of always extending the whole chord. This would align with the behavior of R (and soon T) on list selection. I've already made the changes and can push them next week. What are your thoughts?"

@cbjeukendrup
Copy link
Member

To me that sounds sensible (especially considering that if the user does want the entire chord to be affected, that's now perhaps easy enough with the "double click to select whole chord" feature).

It turns out GitHub wants you to do another rebase... (it should be trivial because I did not much more than moving files which Git usually handles well).

@Jojo-Schmitz
Copy link
Contributor

Jojo-Schmitz commented Jan 7, 2026

rebase indeed is dead easy, no conflicts to resolve at all

Jojo@DodekaCore MINGW64 ~/Documents/GitHub/MuseScore (pr/27456)
$ git pull --rebase upstream master
From https://github.com/musescore/MuseScore
 * branch                  master     -> FETCH_HEAD
Successfully rebased and updated refs/heads/pr/27456.

Additional step needed is git push -f (which I can't do)

@Ash-86 Ash-86 force-pushed the extend-to-next-note branch from 6fc0050 to e193767 Compare January 8, 2026 18:25
@Ash-86 Ash-86 force-pushed the extend-to-next-note branch from e193767 to 476f2a3 Compare January 8, 2026 18:28
@Ash-86
Copy link
Contributor Author

Ash-86 commented Jan 8, 2026

Cool @cbjeukendrup, rebased and pushed new commit with the new changes.

@zacjansheski
Copy link
Contributor

zacjansheski commented Jan 9, 2026

Found a crash when using extend to next note on a note with a laissez vibrer

video1670667244.mp4

MacOS crash log:

Untitled-1.txt

@Ash-86 Ash-86 force-pushed the extend-to-next-note branch 2 times, most recently from 1346530 to ecf6420 Compare January 9, 2026 23:42
@Ash-86 Ash-86 force-pushed the extend-to-next-note branch 2 times, most recently from 0d806d7 to 8362b68 Compare January 10, 2026 14:31
@Ash-86 Ash-86 force-pushed the extend-to-next-note branch from 8362b68 to 6d3300d Compare January 10, 2026 14:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

7 participants