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/Input | |
| 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/Input')
| -rw-r--r-- | src/Ryujinx.Ava/UI/Views/Input/ControllerInputView.axaml | 13 | ||||
| -rw-r--r-- | src/Ryujinx.Ava/UI/Views/Input/MotionInputView.axaml | 11 | ||||
| -rw-r--r-- | src/Ryujinx.Ava/UI/Views/Input/RumbleInputView.axaml | 7 |
3 files changed, 17 insertions, 14 deletions
diff --git a/src/Ryujinx.Ava/UI/Views/Input/ControllerInputView.axaml b/src/Ryujinx.Ava/UI/Views/Input/ControllerInputView.axaml index 2ab42e6e..d636873a 100644 --- a/src/Ryujinx.Ava/UI/Views/Input/ControllerInputView.axaml +++ b/src/Ryujinx.Ava/UI/Views/Input/ControllerInputView.axaml @@ -5,6 +5,7 @@ xmlns:locale="clr-namespace:Ryujinx.Ava.Common.Locale" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" + xmlns:controls="clr-namespace:Ryujinx.Ava.UI.Controls" xmlns:models="clr-namespace:Ryujinx.Ava.UI.Models" xmlns:viewModels="clr-namespace:Ryujinx.Ava.UI.ViewModels" xmlns:helpers="clr-namespace:Ryujinx.Ava.UI.Helpers" @@ -460,7 +461,7 @@ HorizontalAlignment="Center" VerticalAlignment="Center" Orientation="Horizontal"> - <Slider + <controls:SliderScroll Width="130" Maximum="1" TickFrequency="0.01" @@ -480,7 +481,7 @@ HorizontalAlignment="Center" VerticalAlignment="Center" Orientation="Horizontal"> - <Slider + <controls:SliderScroll Width="130" Maximum="2" TickFrequency="0.01" @@ -604,7 +605,7 @@ <StackPanel HorizontalAlignment="Center" Orientation="Horizontal"> - <Slider + <controls:SliderScroll Width="130" Maximum="1" TickFrequency="0.01" @@ -1083,7 +1084,7 @@ HorizontalAlignment="Center" VerticalAlignment="Center" Orientation="Horizontal"> - <Slider + <controls:SliderScroll Width="130" Maximum="1" TickFrequency="0.01" @@ -1105,7 +1106,7 @@ HorizontalAlignment="Center" VerticalAlignment="Center" Orientation="Horizontal"> - <Slider + <controls:SliderScroll Width="130" Maximum="2" TickFrequency="0.01" @@ -1125,4 +1126,4 @@ </StackPanel> </Grid> </StackPanel> -</UserControl>
\ No newline at end of file +</UserControl> diff --git a/src/Ryujinx.Ava/UI/Views/Input/MotionInputView.axaml b/src/Ryujinx.Ava/UI/Views/Input/MotionInputView.axaml index a98f0882..a6b587f6 100644 --- a/src/Ryujinx.Ava/UI/Views/Input/MotionInputView.axaml +++ b/src/Ryujinx.Ava/UI/Views/Input/MotionInputView.axaml @@ -3,6 +3,7 @@ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" + xmlns:controls="clr-namespace:Ryujinx.Ava.UI.Controls" xmlns:ui="clr-namespace:FluentAvalonia.UI.Controls;assembly=FluentAvalonia" xmlns:locale="clr-namespace:Ryujinx.Ava.Common.Locale" xmlns:viewModels="clr-namespace:Ryujinx.Ava.UI.ViewModels" @@ -23,11 +24,11 @@ Margin="0" HorizontalAlignment="Center" Text="{locale:Locale ControllerSettingsMotionGyroSensitivity}" /> - <Slider + <controls:SliderScroll Margin="0,-5,0,-5" Width="150" MaxWidth="150" - TickFrequency="0.01" + TickFrequency="1" IsSnapToTickEnabled="True" SmallChange="0.01" Maximum="100" @@ -45,11 +46,11 @@ Margin="0" HorizontalAlignment="Center" Text="{locale:Locale ControllerSettingsMotionGyroDeadzone}" /> - <Slider + <controls:SliderScroll Margin="0,-5,0,-5" Width="150" MaxWidth="150" - TickFrequency="0.01" + TickFrequency="1" IsSnapToTickEnabled="True" SmallChange="0.01" Maximum="100" @@ -167,4 +168,4 @@ </Grid> </Border> </Grid> -</UserControl>
\ No newline at end of file +</UserControl> diff --git a/src/Ryujinx.Ava/UI/Views/Input/RumbleInputView.axaml b/src/Ryujinx.Ava/UI/Views/Input/RumbleInputView.axaml index f633c0ed..5b7087a4 100644 --- a/src/Ryujinx.Ava/UI/Views/Input/RumbleInputView.axaml +++ b/src/Ryujinx.Ava/UI/Views/Input/RumbleInputView.axaml @@ -1,6 +1,7 @@ <UserControl xmlns="https://github.com/avaloniaui" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" + xmlns:controls="clr-namespace:Ryujinx.Ava.UI.Controls" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:locale="clr-namespace:Ryujinx.Ava.Common.Locale" @@ -21,7 +22,7 @@ TextWrapping="WrapWithOverflow" HorizontalAlignment="Center" Text="{locale:Locale ControllerSettingsRumbleStrongMultiplier}" /> - <Slider + <controls:SliderScroll Margin="0,-5,0,-5" Width="200" TickFrequency="0.01" @@ -41,7 +42,7 @@ TextWrapping="WrapWithOverflow" HorizontalAlignment="Center" Text="{locale:Locale ControllerSettingsRumbleWeakMultiplier}" /> - <Slider + <controls:SliderScroll Margin="0,-5,0,-5" Width="200" MaxWidth="200" @@ -58,4 +59,4 @@ </StackPanel> </StackPanel> </Grid> -</UserControl>
\ No newline at end of file +</UserControl> |
