From a536aa97b4091a304f6e6223ca2fa028005339b2 Mon Sep 17 00:00:00 2001 From: Dong Bin <14807942+rabbitism@users.noreply.github.com> Date: Fri, 23 Jan 2026 20:03:39 +0800 Subject: [PATCH] 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. --- src/Avalonia.Themes.Fluent/Controls/AutoCompleteBox.xaml | 3 ++- src/Avalonia.Themes.Fluent/Controls/ComboBox.xaml | 1 + src/Avalonia.Themes.Fluent/Controls/MenuScrollViewer.xaml | 1 + src/Avalonia.Themes.Simple/Controls/AutoCompleteBox.xaml | 1 + src/Avalonia.Themes.Simple/Controls/ComboBox.xaml | 3 ++- src/Avalonia.Themes.Simple/Controls/ScrollViewer.xaml | 1 + 6 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/Avalonia.Themes.Fluent/Controls/AutoCompleteBox.xaml b/src/Avalonia.Themes.Fluent/Controls/AutoCompleteBox.xaml index 3196d262a1..462dfe0323 100644 --- a/src/Avalonia.Themes.Fluent/Controls/AutoCompleteBox.xaml +++ b/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" /> diff --git a/src/Avalonia.Themes.Fluent/Controls/ComboBox.xaml b/src/Avalonia.Themes.Fluent/Controls/ComboBox.xaml index 255cf29133..bcba646461 100644 --- a/src/Avalonia.Themes.Fluent/Controls/ComboBox.xaml +++ b/src/Avalonia.Themes.Fluent/Controls/ComboBox.xaml @@ -172,6 +172,7 @@ HorizontalAlignment="Stretch" CornerRadius="{DynamicResource OverlayCornerRadius}"> + diff --git a/src/Avalonia.Themes.Simple/Controls/AutoCompleteBox.xaml b/src/Avalonia.Themes.Simple/Controls/AutoCompleteBox.xaml index 10b48a12f6..5b760ba14e 100644 --- a/src/Avalonia.Themes.Simple/Controls/AutoCompleteBox.xaml +++ b/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" /> diff --git a/src/Avalonia.Themes.Simple/Controls/ComboBox.xaml b/src/Avalonia.Themes.Simple/Controls/ComboBox.xaml index 54e75db0a2..5a6266af6e 100644 --- a/src/Avalonia.Themes.Simple/Controls/ComboBox.xaml +++ b/src/Avalonia.Themes.Simple/Controls/ComboBox.xaml @@ -87,7 +87,8 @@ BorderThickness="1"> + IsDeferredScrollingEnabled="{TemplateBinding (ScrollViewer.IsDeferredScrollingEnabled)}" + ScrollViewer.IsScrollChainingEnabled="False"> diff --git a/src/Avalonia.Themes.Simple/Controls/ScrollViewer.xaml b/src/Avalonia.Themes.Simple/Controls/ScrollViewer.xaml index ea62f757c5..f691ff6651 100644 --- a/src/Avalonia.Themes.Simple/Controls/ScrollViewer.xaml +++ b/src/Avalonia.Themes.Simple/Controls/ScrollViewer.xaml @@ -40,6 +40,7 @@ +