feat(tracker/gioui): ctrl+drag changes knob value faster

Slow down the normal dragging 4 x slower.
This commit is contained in:
5684185+vsariola@users.noreply.github.com
2025-07-08 22:33:19 +03:00
parent 5841848813
commit 452a4cf04f

View File

@ -177,7 +177,11 @@ func (s *ParamState) update(gtx C, param tracker.Parameter, scroll bool) {
// update the value based on the drag amount // update the value based on the drag amount
m := param.Range() m := param.Range()
d := p.Position.Sub(s.dragStartPt) d := p.Position.Sub(s.dragStartPt)
amount := float32(d.X-d.Y) / float32(gtx.Dp(128)) speed := gtx.Dp(512)
if p.Modifiers.Contain(key.ModCtrl) {
speed = gtx.Dp(128)
}
amount := float32(d.X-d.Y) / float32(speed)
newValue := int(float32(s.dragStartVal) + amount*float32(m.Max-m.Min)) newValue := int(float32(s.dragStartVal) + amount*float32(m.Max-m.Min))
param.SetValue(newValue) param.SetValue(newValue)
s.tipArea.Appear(gtx.Now) s.tipArea.Appear(gtx.Now)