Browse Source
bugfix: ScrollBar will be hidden when ScrollBarVisibility is specified as Visible (#17718)
* test:A unittest for debug MenuScrollingVisibilityConverter
* bugfix: ScrollBar will be hidden when ScrollBarVisibility is specified as Visible
pull/17439/head
metaone01
1 year ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with
14 additions and
0 deletions
-
src/Avalonia.Controls/Converters/MenuScrollingVisibilityConverter.cs
-
tests/Avalonia.Controls.UnitTests/ScrollViewerTests.cs
|
|
|
@ -57,6 +57,11 @@ namespace Avalonia.Controls.Converters |
|
|
|
return true; |
|
|
|
} |
|
|
|
|
|
|
|
if (visibility == ScrollBarVisibility.Visible) |
|
|
|
{ |
|
|
|
return true; |
|
|
|
} |
|
|
|
|
|
|
|
return false; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
@ -469,6 +469,15 @@ namespace Avalonia.Controls.UnitTests |
|
|
|
Assert.Equal(new Vector(0, 0), target.Offset); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
public void MenuScrollBar_Should_Be_Visible_When_Specified_Visible() |
|
|
|
{ |
|
|
|
Converters.MenuScrollingVisibilityConverter converter = Converters.MenuScrollingVisibilityConverter.Instance; |
|
|
|
IList<object> args = new List<object> {ScrollBarVisibility.Visible,400d,1800d,500d}; |
|
|
|
var result = converter.Convert(args, typeof(ScrollBarVisibility), "0", System.Globalization.CultureInfo.CurrentCulture); |
|
|
|
Assert.Equal(true, result); |
|
|
|
} |
|
|
|
|
|
|
|
private Point GetRootPoint(Visual control, Point p) |
|
|
|
{ |
|
|
|
if (control.GetVisualRoot() is Visual root && |
|
|
|
|