mirror of
https://github.com/osukey/osukey.git
synced 2025-05-29 17:37:23 +09:00
Make zoom sensitivity relative to containers max zoom
This commit is contained in:
parent
5db4d9437a
commit
a4f071fe53
@ -20,6 +20,8 @@ namespace osu.Game.Screens.Edit.Compose.Components.Timeline
|
|||||||
|
|
||||||
private readonly Drawable userContent;
|
private readonly Drawable userContent;
|
||||||
|
|
||||||
|
private const float zoom_button_sensitivity = 0.02f;
|
||||||
|
|
||||||
public TimelineArea(Drawable content = null)
|
public TimelineArea(Drawable content = null)
|
||||||
{
|
{
|
||||||
RelativeSizeAxes = Axes.X;
|
RelativeSizeAxes = Axes.X;
|
||||||
@ -154,6 +156,6 @@ namespace osu.Game.Screens.Edit.Compose.Components.Timeline
|
|||||||
Timeline.TicksVisible.BindTo(ticksCheckbox.Current);
|
Timeline.TicksVisible.BindTo(ticksCheckbox.Current);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void changeZoom(float change) => Timeline.Zoom += change;
|
private void changeZoom(float change) => Timeline.Zoom += change * Timeline.MaxZoom * zoom_button_sensitivity;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -104,6 +104,8 @@ namespace osu.Game.Screens.Edit.Compose.Components.Timeline
|
|||||||
set => updateZoom(value);
|
set => updateZoom(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private const float zoom_scroll_sensitivity = 0.02f;
|
||||||
|
|
||||||
private void updateZoom(float? value = null)
|
private void updateZoom(float? value = null)
|
||||||
{
|
{
|
||||||
float newZoom = Math.Clamp(value ?? Zoom, MinZoom, MaxZoom);
|
float newZoom = Math.Clamp(value ?? Zoom, MinZoom, MaxZoom);
|
||||||
@ -127,7 +129,7 @@ namespace osu.Game.Screens.Edit.Compose.Components.Timeline
|
|||||||
if (e.AltPressed)
|
if (e.AltPressed)
|
||||||
{
|
{
|
||||||
// zoom when holding alt.
|
// zoom when holding alt.
|
||||||
setZoomTarget(zoomTarget + e.ScrollDelta.Y, zoomedContent.ToLocalSpace(e.ScreenSpaceMousePosition).X);
|
setZoomTarget(zoomTarget + e.ScrollDelta.Y * MaxZoom * zoom_scroll_sensitivity, zoomedContent.ToLocalSpace(e.ScreenSpaceMousePosition).X);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user