Skip to content

Add slider velocity control to toolbox#37746

Open
bdach wants to merge 1 commit into
ppy:masterfrom
bdach:slider-velocity-control
Open

Add slider velocity control to toolbox#37746
bdach wants to merge 1 commit into
ppy:masterfrom
bdach:slider-velocity-control

Conversation

@bdach
Copy link
Copy Markdown
Collaborator

@bdach bdach commented May 14, 2026

Screen.Recording.2026-05-14.at.12.01.20.mov

This implements a rather opinionated UX that's designed to be a middle ground between the previous lazer behaviour of unconditionally inheriting the last slider's velocity and just a textbox that you'd need to manually fiddle with every time.

As to what that means, precisely:

  • By default, the control follows the last slider's velocity (updates on seeks as well as changes to existing objects).
  • When the slider control in the toolbox is manually adjusted, the control decouples from the last slider's velocity and instead uses the last manually-specified value.
  • There is a button that allows the user to couple back to the last slider's velocity if they consider to have made a mistake in adjusting it.
  • Upon successful placement of a slider, the control reverts to following the last slider's velocity.

Of note, this control only interacts with and affects the next placed slider. It is in no way coupled to any selected objects. This may be confusing to users but was an intentional choice to limit complexity (what if there are multiple selected objects with multiple velocities?)

For adjusting existing objects you can use the green pieces on the timeline, which notably do support changing multiple selected objects at once.


This implements a rather opinionated UX that's designed to be a middle
ground between the previous lazer behaviour of unconditionally
inheriting the last slider's velocity and just a textbox that you'd need
to manually fiddle with every time.

As to what that means, precisely:

- By default, the control follows the last slider's velocity (updates on
  seeks as well as changes to existing objects).
- When the slider control in the toolbox is manually adjusted,
  the control decouples from the last slider's velocity and instead
  uses the last manually-specified value.
- There is a button that allows the user to couple back to the last
  slider's velocity if they consider to have made a mistake in adjusting
  it.
- Upon successful placement of a slider, the control reverts to
  following the last slider's velocity.

Of note, this control *only interacts with and affects the next placed
slider*. It is in no way coupled to any selected objects. This may be
confusing to users but was an intentional choice to limit complexity
(what if there are multiple selected objects with multiple velocities?)

For adjusting existing objects you can use the green pieces on
the timeline, which notably do support changing multiple selected
objects at once.

---

- Closes ppy#36844
- Supersedes / closes ppy#33707
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Pending Review

Development

Successfully merging this pull request may close these issues.

Add slider velocity control to toolbox

1 participant