Browse Source

Disable scroll chaining for ScrollVIewers in popup. (#20503)

* feat: disable scroll chaining for AutoCompleteBox, ComboBox, and MenuScrollViewer.

* feat: disable scroll chaining for AutoCompleteBox, ComboBox, and MenuFlyoutPresenter

* feat: enable scroll chaining for ScrollViewer in MenuFlyoutPresenter.
pull/20529/head
Dong Bin 2 weeks ago
committed by GitHub
parent
commit
01a8042094
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 3
      src/Avalonia.Themes.Fluent/Controls/AutoCompleteBox.xaml
  2. 1
      src/Avalonia.Themes.Fluent/Controls/ComboBox.xaml
  3. 1
      src/Avalonia.Themes.Fluent/Controls/MenuScrollViewer.xaml
  4. 1
      src/Avalonia.Themes.Simple/Controls/AutoCompleteBox.xaml
  5. 3
      src/Avalonia.Themes.Simple/Controls/ComboBox.xaml
  6. 1
      src/Avalonia.Themes.Simple/Controls/ScrollViewer.xaml

3
src/Avalonia.Themes.Fluent/Controls/AutoCompleteBox.xaml

@ -66,7 +66,8 @@
BorderThickness="0"
Background="Transparent"
ItemTemplate="{TemplateBinding ItemTemplate}"
Margin="{DynamicResource AutoCompleteListPadding}" />
Margin="{DynamicResource AutoCompleteListPadding}"
ScrollViewer.IsScrollChainingEnabled="False" />
</Border>
</Popup>
</Grid>

1
src/Avalonia.Themes.Fluent/Controls/ComboBox.xaml

@ -172,6 +172,7 @@
HorizontalAlignment="Stretch"
CornerRadius="{DynamicResource OverlayCornerRadius}">
<ScrollViewer HorizontalScrollBarVisibility="{TemplateBinding ScrollViewer.HorizontalScrollBarVisibility}"
IsScrollChainingEnabled="False"
VerticalScrollBarVisibility="{TemplateBinding ScrollViewer.VerticalScrollBarVisibility}"
IsDeferredScrollingEnabled="{TemplateBinding (ScrollViewer.IsDeferredScrollingEnabled)}">
<ItemsPresenter Name="PART_ItemsPresenter"

1
src/Avalonia.Themes.Fluent/Controls/MenuScrollViewer.xaml

@ -21,6 +21,7 @@
<ControlTheme x:Key="FluentMenuScrollViewer" TargetType="ScrollViewer">
<Setter Property="Background" Value="Transparent" />
<Setter Property="IsScrollChainingEnabled" Value="False" />
<Setter Property="Template">
<ControlTemplate>
<DockPanel>

1
src/Avalonia.Themes.Simple/Controls/AutoCompleteBox.xaml

@ -38,6 +38,7 @@
BorderThickness="0"
Foreground="{TemplateBinding Foreground}"
ItemTemplate="{TemplateBinding ItemTemplate}"
ScrollViewer.IsScrollChainingEnabled="False"
ScrollViewer.HorizontalScrollBarVisibility="Auto"
ScrollViewer.VerticalScrollBarVisibility="Auto" />
</Border>

3
src/Avalonia.Themes.Simple/Controls/ComboBox.xaml

@ -87,7 +87,8 @@
BorderThickness="1">
<ScrollViewer HorizontalScrollBarVisibility="{TemplateBinding ScrollViewer.HorizontalScrollBarVisibility}"
VerticalScrollBarVisibility="{TemplateBinding ScrollViewer.VerticalScrollBarVisibility}"
IsDeferredScrollingEnabled="{TemplateBinding (ScrollViewer.IsDeferredScrollingEnabled)}">
IsDeferredScrollingEnabled="{TemplateBinding (ScrollViewer.IsDeferredScrollingEnabled)}"
ScrollViewer.IsScrollChainingEnabled="False">
<ItemsPresenter Name="PART_ItemsPresenter"
ItemsPanel="{TemplateBinding ItemsPanel}" />
</ScrollViewer>

1
src/Avalonia.Themes.Simple/Controls/ScrollViewer.xaml

@ -40,6 +40,7 @@
<ControlTheme x:Key="SimpleMenuScrollViewer"
TargetType="ScrollViewer">
<Setter Property="Background" Value="Transparent" />
<Setter Property="IsScrollChainingEnabled" Value="False" />
<Setter Property="Template">
<ControlTemplate>
<DockPanel>

Loading…
Cancel
Save