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

add way to cancel dragging in overview waveform #13732

Open
spotlesscoder opened this issue Oct 8, 2024 · 4 comments · May be fixed by #13741
Open

add way to cancel dragging in overview waveform #13732

spotlesscoder opened this issue Oct 8, 2024 · 4 comments · May be fixed by #13741

Comments

@spotlesscoder
Copy link
Contributor

Feature Description

I tried to drag and drop from deck 1 to the deck 3 below it by clicking the waveform in the deck track overview then dragging it down to deck 3 while deck 1 was playing
But the only thing that happened is that the current play marker moved so the playing song made a jump I did not intend

I can see that it might not make sense the way I tried to do it but there should be a way to cancel that drag and drop in case you accidentally click and hold the mouse button on that waveform during a live show

@ronso0
Copy link
Member

ronso0 commented Oct 8, 2024

Dragging the playpos can be aborted with a right click. This is possible with a mouse and should be possible with most trackpads. Does that help?
However, with touch screens it's tricky --> I added the touchscreen tag so we can track this

FYI aborting the drag when the cursor leaves the overview has been dismissed to allow dragging the play pos left outside the overview to be sure to be exactly at 0:00. Same for the end.
We could however limit the outside area, ie. every drag move more than let's say 50 pixels away from the overview cancels the drag. This would help fix issue for touch screens.

FWIW listening to certain keypresses while dragging would be handy (eg. Esc cancels any drag move, not sure if this is the default on all supported OS) is also not possible right away as the overview doesn't keyboard focus. We might signal the overview from the keypress handler, but that's ... not easy I think.

Anyhow, I just noticed the info on dragging is missing in the overview tooltip. I'll add it.

@ronso0 ronso0 changed the title Allow to loose focus of clicked waveform by leaving area add way to cancel dragging in overview waveform Oct 8, 2024
@Swiftb0y
Copy link
Member

Swiftb0y commented Oct 8, 2024

FYI aborting the drag when the cursor leaves the overview has been dismissed to allow dragging the play pos left outside the overview to be sure to be exactly at 0:00. Same for the end.
We could however limit the outside area, ie. every drag move more than let's say 50 pixels away from the overview cancels the drag. This would help fix issue for touch screens.

Alternatively, this would also work:
Assuming the overview waveform is displayed horizontally, dragging past it horizontally would not cancel (instead seek to the beginning/end as it currently does). While dragging (significantly) outside the widget vertically aborts the seek. Maybe add some margin there so people can drag outside the widget so their finger doesn't obscure the waveform.

@ronso0
Copy link
Member

ronso0 commented Oct 8, 2024

For a POC I went with a simple margin:

  • drag outside (> 50px) shows a warning cursor and disables the time ruler and restores regular play pos painting
  • releasing outside simply resets the waveform.

Check #13741

@ronso0
Copy link
Member

ronso0 commented Oct 9, 2024

Assuming the overview waveform is displayed horizontally, dragging past it horizontally would not cancel (instead seek to the beginning/end as it currently does).

This wouldn't help with the "track clone" use case, but I think that's an "edge" case anyway ; )

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants