musescore / MuseScore

MuseScore is an open source and free music notation software. For support, contribution, bug reports, visit MuseScore.org. Fork and make pull requests!
https://musescore.org
Other
12.22k stars 2.65k forks source link

Wrap mouse around edges when panning the score #25263

Open ShawkMusic opened 2 days ago

ShawkMusic commented 2 days ago

Your idea

When panning the score, the mouse should "wrap around" the boundaries. In other words, if the mouse reaches the edge, it should teleport to the other side.

Problem to be solved

When I'm panning the score, every time my mouse reaches the edge of the score boundaries, I have to release the mouse button, move the mouse to the other edge, and then start panning again. Repeat every time I reach the edge of the screen over and over again. This can get very annoying

https://github.com/user-attachments/assets/d2c8dd88-a729-4d51-a16f-2b587a28dec3

Prior art

In Blender, when you pan your mouse beyond the boundaries, it will teleport the mouse to the other edge, Pacman-style. This makes for a much smoother feeling and let's me just keep moving my mouse until I reach wherever I want to reach, without having to think about releasing and moving and dragging my mouse over and over again.

https://github.com/user-attachments/assets/2b2b5935-b21c-4bf0-aa55-f62e47a3124a

Additional context

No response

Checklist

cbjeukendrup commented 2 days ago

It seems quite a scary idea that the operating system apparently allows applications to change the position of the mouse cursor. That could easily be abused to make users click on things they don't want to click on...

FrancRos31 commented 2 days ago

Maybe some shortcut would be better?

jeetee commented 2 days ago

It's an interesting idea; but would confuse me a lot first time I encounter it. Then again, from some POV one might call it "consistency" with how the scroll wheel operates (which is what I'd recommend for panning anyway)

SteveBlower commented 2 days ago

Some other applications have a frame around the window (e.g. Excel). If during scrolling the mouse cursor moves into the frame area the contents of the window continue to scroll towards the mouse cursor as long as the mouse button is held down, The drawback is that the frame reduces the area available for displaying the window contents of course.

ShawkMusic commented 2 days ago

It seems quite a scary idea that the operating system apparently allows applications to change the position of the mouse cursor. That could easily be abused to make users click on things they don't want to click on...

I'm pretty sure programs that are installed in the computer can do a lot worse things then move the users mouse lol.

It's an interesting idea; but would confuse me a lot first time I encounter it.

The first time I encountered it in Blender I was confused for like 5 seconds and then was like "ooooh, that's cool" and now every time I use a program that doesn't have it I get annoyed :P

Then again, from some POV one might call it "consistency" with how the scroll wheel operates (which is what I'd recommend for panning anyway)

The scroll wheel can't scroll horizontally, which I really need since I use continuous view

FrancRos31 commented 2 days ago

The scroll wheel can't scroll horizontally, which I really need since I use continuous view

I just discovered that Ctrl + mouse wheel changes the zoom, so why not make a shortcut like Shift + mouse wheel to scroll horizontally?

EDIT: Amazing, I just discovered that Shift + mouse wheel DOES moves the score horizontally, LMAO.

https://github.com/user-attachments/assets/0a47a594-85e6-4f54-b100-82cb6029479f

MarcSabatella commented 2 days ago

For the record, that gesture (Shift+scroll for horizontal scroll) is built into most systems independently of MuseScore. meaning it works on pretty much all devices, all applications.

cbjeukendrup commented 2 days ago

As an alternative to teleporting the mouse to the other side of the screen, how would it be if the mouse stayed at the same spot all the time while dragging the score view? I could imagine that being even more convenient, because then, after you finish dragging, the mouse is at the spot where you most likely need it.