aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Ava/UI/Views/Main/MainStatusBarView.axaml.cs
diff options
context:
space:
mode:
authorAhmad Tantowi <ahmadtantowi@outlook.com>2023-10-20 21:02:12 +0700
committerGitHub <noreply@github.com>2023-10-20 16:02:12 +0200
commitb4bb22ba06f89168c948e6001c51972575ca968b (patch)
tree44e71b5fe08adcac5a04f89095be3f7ca341b965 /src/Ryujinx.Ava/UI/Views/Main/MainStatusBarView.axaml.cs
parent6fdf7748455b2b71f99885239f8dc31390de2687 (diff)
Avalonia: Make slider scrollable with mouse wheel (#5760)
* Add scrollable custom control based on TickFrequency * Use custom slider to update value when pointer wheel scrolled * Remove extra xaml file * Address formatting issues * Only scroll one element at a time * Add OnPointerWheelChanged event to VolumeStatus button Co-authored-by: Ahmad Tantowi <ahmadtantowi@outlook.com> --------- Co-authored-by: TSR Berry <20988865+TSRBerry@users.noreply.github.com>
Diffstat (limited to 'src/Ryujinx.Ava/UI/Views/Main/MainStatusBarView.axaml.cs')
-rw-r--r--src/Ryujinx.Ava/UI/Views/Main/MainStatusBarView.axaml.cs15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/Ryujinx.Ava/UI/Views/Main/MainStatusBarView.axaml.cs b/src/Ryujinx.Ava/UI/Views/Main/MainStatusBarView.axaml.cs
index 44426295..9425d7b5 100644
--- a/src/Ryujinx.Ava/UI/Views/Main/MainStatusBarView.axaml.cs
+++ b/src/Ryujinx.Ava/UI/Views/Main/MainStatusBarView.axaml.cs
@@ -53,5 +53,20 @@ namespace Ryujinx.Ava.UI.Views.Main
{
Window.LoadApplications();
}
+
+ private void VolumeStatus_OnPointerWheelChanged(object sender, PointerWheelEventArgs e)
+ {
+ // Change the volume by 5% at a time
+ float newValue = Window.ViewModel.Volume + (float)e.Delta.Y * 0.05f;
+
+ Window.ViewModel.Volume = newValue switch
+ {
+ < 0 => 0,
+ > 1 => 1,
+ _ => newValue,
+ };
+
+ e.Handled = true;
+ }
}
}