From 5eb56ab814a465e0ef52daaeb40b59a626bc4dae Mon Sep 17 00:00:00 2001 From: Dean Herbert Date: Wed, 15 Jun 2022 15:41:38 +0900 Subject: [PATCH] Ensure `Master` volume is updated when scrolling on toolbar button --- osu.Game/Overlays/Toolbar/ToolbarMusicButton.cs | 1 + osu.Game/Overlays/VolumeOverlay.cs | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/osu.Game/Overlays/Toolbar/ToolbarMusicButton.cs b/osu.Game/Overlays/Toolbar/ToolbarMusicButton.cs index 34dc3b4080..0c948990a0 100644 --- a/osu.Game/Overlays/Toolbar/ToolbarMusicButton.cs +++ b/osu.Game/Overlays/Toolbar/ToolbarMusicButton.cs @@ -77,6 +77,7 @@ namespace osu.Game.Overlays.Toolbar protected override bool OnScroll(ScrollEvent e) { + volume?.FocusMasterVolume(); volume?.Adjust(GlobalAction.IncreaseVolume, e.ScrollDelta.Y, e.IsPrecise); return true; } diff --git a/osu.Game/Overlays/VolumeOverlay.cs b/osu.Game/Overlays/VolumeOverlay.cs index 9d2ed3f837..46ea45491e 100644 --- a/osu.Game/Overlays/VolumeOverlay.cs +++ b/osu.Game/Overlays/VolumeOverlay.cs @@ -140,11 +140,16 @@ namespace osu.Game.Overlays private ScheduledDelegate popOutDelegate; + public void FocusMasterVolume() + { + volumeMeters.Select(volumeMeterMaster); + } + public override void Show() { // Focus on the master meter as a default if previously hidden if (State.Value == Visibility.Hidden) - volumeMeters.Select(volumeMeterMaster); + FocusMasterVolume(); if (State.Value == Visibility.Visible) schedulePopOut();