diff options
| author | Ahmad Tantowi <ahmadtantowi@outlook.com> | 2023-10-20 21:02:12 +0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-10-20 16:02:12 +0200 |
| commit | b4bb22ba06f89168c948e6001c51972575ca968b (patch) | |
| tree | 44e71b5fe08adcac5a04f89095be3f7ca341b965 /src/Ryujinx.Ava/UI/Views/Main/MainStatusBarView.axaml.cs | |
| parent | 6fdf7748455b2b71f99885239f8dc31390de2687 (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.cs | 15 |
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; + } } } |
