diff --git a/src/Controls/src/Core/BoxView/BoxView.cs b/src/Controls/src/Core/BoxView/BoxView.cs index 8e802f72a35b..2b97d0903e89 100644 --- a/src/Controls/src/Core/BoxView/BoxView.cs +++ b/src/Controls/src/Core/BoxView/BoxView.cs @@ -1,6 +1,5 @@ #nullable disable using System; -using System.ComponentModel; using System.Runtime.CompilerServices; using Microsoft.Maui.Graphics; @@ -11,12 +10,33 @@ namespace Microsoft.Maui.Controls /// public partial class BoxView : View, IColorElement, ICornerElement, IElementConfiguration, IShapeView, IShape { + WeakBrushChangedProxy _fillProxy = null; + EventHandler _fillChanged; + /// Bindable property for . public static readonly BindableProperty ColorProperty = ColorElement.ColorProperty; /// Bindable property for . public static readonly BindableProperty CornerRadiusProperty = CornerElement.CornerRadiusProperty; + /// Bindable property for . + public static readonly BindableProperty FillProperty = + BindableProperty.Create(nameof(Fill), typeof(Brush), typeof(BoxView), null, + propertyChanging: (bindable, oldvalue, newvalue) => + { + if (oldvalue != null) + { + (bindable as BoxView)?.StopNotifyingFillChanges(); + } + }, + propertyChanged: (bindable, oldvalue, newvalue) => + { + if (newvalue != null) + { + (bindable as BoxView)?.NotifyFillChanges(); + } + }); + readonly Lazy> _platformConfigurationRegistry; /// @@ -27,6 +47,11 @@ public BoxView() _platformConfigurationRegistry = new Lazy>(() => new PlatformConfigurationRegistry(this)); } + ~BoxView() + { + _fillProxy?.Unsubscribe(); + } + /// /// Gets or sets the color which will fill the rectangle. This is a bindable property. /// @@ -37,6 +62,19 @@ public Color Color set => SetValue(ColorElement.ColorProperty, value); } + /// + /// Gets or sets the brush that fills the interior of the BoxView. + /// + /// + /// A object that describes how the BoxView's interior is painted. + /// The default value is . + /// + public Brush Fill + { + get => (Brush)GetValue(FillProperty); + set => SetValue(FillProperty, value); + } + /// /// Gets or sets the corner radius for the box view. /// @@ -66,6 +104,45 @@ protected override SizeRequest OnMeasure(double widthConstraint, double heightCo return new SizeRequest(new Size(40, 40)); } + void NotifyFillChanges() + { + var fill = Fill; + + if (fill is ImmutableBrush) + { + return; + } + + if (fill is not null) + { + SetInheritedBindingContext(fill, BindingContext); + _fillChanged ??= (sender, e) => OnPropertyChanged(nameof(Fill)); + _fillProxy ??= new(); + _fillProxy.Subscribe(fill, _fillChanged); + + OnParentResourcesChanged(this.GetMergedResources()); + ((IElementDefinition)this).AddResourcesChangedListener(fill.OnParentResourcesChanged); + } + } + + void StopNotifyingFillChanges() + { + var fill = Fill; + + if (fill is ImmutableBrush) + { + return; + } + + if (fill is not null) + { + ((IElementDefinition)this).RemoveResourcesChangedListener(fill.OnParentResourcesChanged); + + SetInheritedBindingContext(fill, null); + _fillProxy?.Unsubscribe(); + } + } + #nullable enable /// protected override void OnPropertyChanged([CallerMemberName] string? propertyName = null) @@ -74,17 +151,20 @@ protected override void OnPropertyChanged([CallerMemberName] string? propertyNam if (propertyName == BackgroundColorProperty.PropertyName || propertyName == ColorProperty.PropertyName || + propertyName == FillProperty.PropertyName || propertyName == IsVisibleProperty.PropertyName || propertyName == BackgroundProperty.PropertyName || propertyName == CornerRadiusProperty.PropertyName) + { Handler?.UpdateValue(nameof(IShapeView.Shape)); + } } IShape? IShapeView.Shape => this; PathAspect IShapeView.Aspect => PathAspect.None; - Paint? IShapeView.Fill => Color?.AsPaint(); + Paint? IShapeView.Fill => Fill ?? Color?.AsPaint(); Paint? IStroke.Stroke => null; diff --git a/src/Controls/src/Core/Internals/WeakEventProxy.cs b/src/Controls/src/Core/Internals/WeakEventProxy.cs index 6f0f1b0af82d..db660c92350e 100644 --- a/src/Controls/src/Core/Internals/WeakEventProxy.cs +++ b/src/Controls/src/Core/Internals/WeakEventProxy.cs @@ -152,4 +152,48 @@ public override void Unsubscribe() base.Unsubscribe(); } } + + class WeakBrushChangedProxy : WeakEventProxy + { + void OnBrushChanged(object? sender, EventArgs e) + { + if (TryGetHandler(out var handler)) + { + handler(sender, e); + } + else + { + Unsubscribe(); + } + } + + public override void Subscribe(Brush source, EventHandler handler) + { + if (TryGetSource(out var s)) + { + s.PropertyChanged -= OnBrushChanged; + + if (s is GradientBrush g) + g.InvalidateGradientBrushRequested -= OnBrushChanged; + } + + source.PropertyChanged += OnBrushChanged; + if (source is GradientBrush gradientBrush) + gradientBrush.InvalidateGradientBrushRequested += OnBrushChanged; + + base.Subscribe(source, handler); + } + + public override void Unsubscribe() + { + if (TryGetSource(out var s)) + { + s.PropertyChanged -= OnBrushChanged; + + if (s is GradientBrush g) + g.InvalidateGradientBrushRequested -= OnBrushChanged; + } + base.Unsubscribe(); + } + } } diff --git a/src/Controls/src/Core/PublicAPI/net-android/PublicAPI.Unshipped.txt b/src/Controls/src/Core/PublicAPI/net-android/PublicAPI.Unshipped.txt index 1ad4cf5fe64d..3c11c3742898 100644 --- a/src/Controls/src/Core/PublicAPI/net-android/PublicAPI.Unshipped.txt +++ b/src/Controls/src/Core/PublicAPI/net-android/PublicAPI.Unshipped.txt @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable *REMOVED*~static Microsoft.Maui.Controls.VisualStateManager.GetVisualStateGroups(Microsoft.Maui.Controls.VisualElement visualElement) -> System.Collections.Generic.IList *REMOVED*~static readonly Microsoft.Maui.Controls.Handlers.Compatibility.ShellRenderer.DefaultForegroundColor -> Microsoft.Maui.Graphics.Color *REMOVED*~static readonly Microsoft.Maui.Controls.Handlers.Compatibility.ShellRenderer.DefaultTitleColor -> Microsoft.Maui.Graphics.Color @@ -93,3 +93,7 @@ virtual Microsoft.Maui.Controls.LongPressingEventArgs.GetPosition(Microsoft.Maui ~Microsoft.Maui.Controls.Toolbar.BackButtonAccessibilityLabel.set -> void static Microsoft.Maui.Controls.Toolbar.MapBackButtonAccessibilityLabel(Microsoft.Maui.Handlers.IToolbarHandler! arg1, Microsoft.Maui.Controls.Toolbar! arg2) -> void static Microsoft.Maui.Controls.Toolbar.MapBackButtonAccessibilityLabel(Microsoft.Maui.Handlers.ToolbarHandler! arg1, Microsoft.Maui.Controls.Toolbar! arg2) -> void +Microsoft.Maui.Controls.BoxView.~BoxView() -> void +~Microsoft.Maui.Controls.BoxView.Fill.get -> Microsoft.Maui.Controls.Brush +~Microsoft.Maui.Controls.BoxView.Fill.set -> void +~static readonly Microsoft.Maui.Controls.BoxView.FillProperty -> Microsoft.Maui.Controls.BindableProperty diff --git a/src/Controls/src/Core/PublicAPI/net-ios/PublicAPI.Unshipped.txt b/src/Controls/src/Core/PublicAPI/net-ios/PublicAPI.Unshipped.txt index 005e10325c16..ccdaabf719a3 100644 --- a/src/Controls/src/Core/PublicAPI/net-ios/PublicAPI.Unshipped.txt +++ b/src/Controls/src/Core/PublicAPI/net-ios/PublicAPI.Unshipped.txt @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable *REMOVED*~override Microsoft.Maui.Controls.Platform.Compatibility.ShellSectionRootRenderer.TraitCollectionDidChange(UIKit.UITraitCollection previousTraitCollection) -> void *REMOVED*~static Microsoft.Maui.Controls.VisualStateManager.GetVisualStateGroups(Microsoft.Maui.Controls.VisualElement visualElement) -> System.Collections.Generic.IList Microsoft.Maui.Controls.AppThemeBinding @@ -87,3 +87,7 @@ virtual Microsoft.Maui.Controls.LongPressingEventArgs.GetPosition(Microsoft.Maui ~static readonly Microsoft.Maui.Controls.BackButtonBehavior.AccessibilityLabelProperty -> Microsoft.Maui.Controls.BindableProperty ~Microsoft.Maui.Controls.Toolbar.BackButtonAccessibilityLabel.get -> string ~Microsoft.Maui.Controls.Toolbar.BackButtonAccessibilityLabel.set -> void +Microsoft.Maui.Controls.BoxView.~BoxView() -> void +~Microsoft.Maui.Controls.BoxView.Fill.get -> Microsoft.Maui.Controls.Brush +~Microsoft.Maui.Controls.BoxView.Fill.set -> void +~static readonly Microsoft.Maui.Controls.BoxView.FillProperty -> Microsoft.Maui.Controls.BindableProperty diff --git a/src/Controls/src/Core/PublicAPI/net-maccatalyst/PublicAPI.Unshipped.txt b/src/Controls/src/Core/PublicAPI/net-maccatalyst/PublicAPI.Unshipped.txt index 005e10325c16..ccdaabf719a3 100644 --- a/src/Controls/src/Core/PublicAPI/net-maccatalyst/PublicAPI.Unshipped.txt +++ b/src/Controls/src/Core/PublicAPI/net-maccatalyst/PublicAPI.Unshipped.txt @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable *REMOVED*~override Microsoft.Maui.Controls.Platform.Compatibility.ShellSectionRootRenderer.TraitCollectionDidChange(UIKit.UITraitCollection previousTraitCollection) -> void *REMOVED*~static Microsoft.Maui.Controls.VisualStateManager.GetVisualStateGroups(Microsoft.Maui.Controls.VisualElement visualElement) -> System.Collections.Generic.IList Microsoft.Maui.Controls.AppThemeBinding @@ -87,3 +87,7 @@ virtual Microsoft.Maui.Controls.LongPressingEventArgs.GetPosition(Microsoft.Maui ~static readonly Microsoft.Maui.Controls.BackButtonBehavior.AccessibilityLabelProperty -> Microsoft.Maui.Controls.BindableProperty ~Microsoft.Maui.Controls.Toolbar.BackButtonAccessibilityLabel.get -> string ~Microsoft.Maui.Controls.Toolbar.BackButtonAccessibilityLabel.set -> void +Microsoft.Maui.Controls.BoxView.~BoxView() -> void +~Microsoft.Maui.Controls.BoxView.Fill.get -> Microsoft.Maui.Controls.Brush +~Microsoft.Maui.Controls.BoxView.Fill.set -> void +~static readonly Microsoft.Maui.Controls.BoxView.FillProperty -> Microsoft.Maui.Controls.BindableProperty diff --git a/src/Controls/src/Core/PublicAPI/net-tizen/PublicAPI.Unshipped.txt b/src/Controls/src/Core/PublicAPI/net-tizen/PublicAPI.Unshipped.txt index 046899884c7a..8ac73b0a3469 100644 --- a/src/Controls/src/Core/PublicAPI/net-tizen/PublicAPI.Unshipped.txt +++ b/src/Controls/src/Core/PublicAPI/net-tizen/PublicAPI.Unshipped.txt @@ -87,3 +87,7 @@ virtual Microsoft.Maui.Controls.LongPressingEventArgs.GetPosition(Microsoft.Maui ~Microsoft.Maui.Controls.Toolbar.BackButtonAccessibilityLabel.set -> void static Microsoft.Maui.Controls.Toolbar.MapBackButtonAccessibilityLabel(Microsoft.Maui.Handlers.IToolbarHandler! handler, Microsoft.Maui.Controls.Toolbar! toolbar) -> void static Microsoft.Maui.Controls.Toolbar.MapBackButtonAccessibilityLabel(Microsoft.Maui.Handlers.ToolbarHandler! handler, Microsoft.Maui.Controls.Toolbar! toolbar) -> void +Microsoft.Maui.Controls.BoxView.~BoxView() -> void +~Microsoft.Maui.Controls.BoxView.Fill.get -> Microsoft.Maui.Controls.Brush +~Microsoft.Maui.Controls.BoxView.Fill.set -> void +~static readonly Microsoft.Maui.Controls.BoxView.FillProperty -> Microsoft.Maui.Controls.BindableProperty diff --git a/src/Controls/src/Core/PublicAPI/net-windows/PublicAPI.Unshipped.txt b/src/Controls/src/Core/PublicAPI/net-windows/PublicAPI.Unshipped.txt index 33f93b532684..a0cfa2ea3b68 100644 --- a/src/Controls/src/Core/PublicAPI/net-windows/PublicAPI.Unshipped.txt +++ b/src/Controls/src/Core/PublicAPI/net-windows/PublicAPI.Unshipped.txt @@ -83,3 +83,7 @@ virtual Microsoft.Maui.Controls.LongPressingEventArgs.GetPosition(Microsoft.Maui ~Microsoft.Maui.Controls.Toolbar.BackButtonAccessibilityLabel.set -> void static Microsoft.Maui.Controls.Toolbar.MapBackButtonAccessibilityLabel(Microsoft.Maui.Handlers.IToolbarHandler! arg1, Microsoft.Maui.Controls.Toolbar! arg2) -> void static Microsoft.Maui.Controls.Toolbar.MapBackButtonAccessibilityLabel(Microsoft.Maui.Handlers.ToolbarHandler! arg1, Microsoft.Maui.Controls.Toolbar! arg2) -> void +Microsoft.Maui.Controls.BoxView.~BoxView() -> void +~Microsoft.Maui.Controls.BoxView.Fill.get -> Microsoft.Maui.Controls.Brush +~Microsoft.Maui.Controls.BoxView.Fill.set -> void +~static readonly Microsoft.Maui.Controls.BoxView.FillProperty -> Microsoft.Maui.Controls.BindableProperty diff --git a/src/Controls/src/Core/PublicAPI/net/PublicAPI.Unshipped.txt b/src/Controls/src/Core/PublicAPI/net/PublicAPI.Unshipped.txt index eb32f551745a..5ec7ba7655b9 100644 --- a/src/Controls/src/Core/PublicAPI/net/PublicAPI.Unshipped.txt +++ b/src/Controls/src/Core/PublicAPI/net/PublicAPI.Unshipped.txt @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable *REMOVED*~static Microsoft.Maui.Controls.VisualStateManager.GetVisualStateGroups(Microsoft.Maui.Controls.VisualElement visualElement) -> System.Collections.Generic.IList Microsoft.Maui.Controls.AppThemeBinding Microsoft.Maui.Controls.AppThemeBinding.AppThemeBinding() -> void @@ -81,3 +81,7 @@ virtual Microsoft.Maui.Controls.LongPressingEventArgs.GetPosition(Microsoft.Maui ~static readonly Microsoft.Maui.Controls.BackButtonBehavior.AccessibilityLabelProperty -> Microsoft.Maui.Controls.BindableProperty ~Microsoft.Maui.Controls.Toolbar.BackButtonAccessibilityLabel.get -> string ~Microsoft.Maui.Controls.Toolbar.BackButtonAccessibilityLabel.set -> void +Microsoft.Maui.Controls.BoxView.~BoxView() -> void +~Microsoft.Maui.Controls.BoxView.Fill.get -> Microsoft.Maui.Controls.Brush +~Microsoft.Maui.Controls.BoxView.Fill.set -> void +~static readonly Microsoft.Maui.Controls.BoxView.FillProperty -> Microsoft.Maui.Controls.BindableProperty diff --git a/src/Controls/src/Core/PublicAPI/netstandard/PublicAPI.Unshipped.txt b/src/Controls/src/Core/PublicAPI/netstandard/PublicAPI.Unshipped.txt index e9af3029bdcd..4fa2ea9517f6 100644 --- a/src/Controls/src/Core/PublicAPI/netstandard/PublicAPI.Unshipped.txt +++ b/src/Controls/src/Core/PublicAPI/netstandard/PublicAPI.Unshipped.txt @@ -1,4 +1,4 @@ -#nullable enable +#nullable enable *REMOVED*~static Microsoft.Maui.Controls.VisualStateManager.GetVisualStateGroups(Microsoft.Maui.Controls.VisualElement visualElement) -> System.Collections.Generic.IList Microsoft.Maui.Controls.ImageSource.InvalidateStyle() -> void Microsoft.Maui.Controls.LongPressGestureRecognizer @@ -72,3 +72,7 @@ virtual Microsoft.Maui.Controls.LongPressingEventArgs.GetPosition(Microsoft.Maui ~static readonly Microsoft.Maui.Controls.BackButtonBehavior.AccessibilityLabelProperty -> Microsoft.Maui.Controls.BindableProperty ~Microsoft.Maui.Controls.Toolbar.BackButtonAccessibilityLabel.get -> string ~Microsoft.Maui.Controls.Toolbar.BackButtonAccessibilityLabel.set -> void +Microsoft.Maui.Controls.BoxView.~BoxView() -> void +~Microsoft.Maui.Controls.BoxView.Fill.get -> Microsoft.Maui.Controls.Brush +~Microsoft.Maui.Controls.BoxView.Fill.set -> void +~static readonly Microsoft.Maui.Controls.BoxView.FillProperty -> Microsoft.Maui.Controls.BindableProperty diff --git a/src/Controls/src/Core/Shapes/Shape.cs b/src/Controls/src/Core/Shapes/Shape.cs index f7654422bfa1..f0300d177f1a 100644 --- a/src/Controls/src/Core/Shapes/Shape.cs +++ b/src/Controls/src/Core/Shapes/Shape.cs @@ -513,49 +513,5 @@ internal virtual double HeightForPathComputation return height == -1 ? _fallbackHeight : height; } } - - class WeakBrushChangedProxy : WeakEventProxy - { - void OnBrushChanged(object? sender, EventArgs e) - { - if (TryGetHandler(out var handler)) - { - handler(sender, e); - } - else - { - Unsubscribe(); - } - } - - public override void Subscribe(Brush source, EventHandler handler) - { - if (TryGetSource(out var s)) - { - s.PropertyChanged -= OnBrushChanged; - - if (s is GradientBrush g) - g.InvalidateGradientBrushRequested -= OnBrushChanged; - } - - source.PropertyChanged += OnBrushChanged; - if (source is GradientBrush gradientBrush) - gradientBrush.InvalidateGradientBrushRequested += OnBrushChanged; - - base.Subscribe(source, handler); - } - - public override void Unsubscribe() - { - if (TryGetSource(out var s)) - { - s.PropertyChanged -= OnBrushChanged; - - if (s is GradientBrush g) - g.InvalidateGradientBrushRequested -= OnBrushChanged; - } - base.Unsubscribe(); - } - } } } diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxViewColorShouldRenderCorrectly.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxViewColorShouldRenderCorrectly.png new file mode 100644 index 000000000000..442d5daf2f74 Binary files /dev/null and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxViewColorShouldRenderCorrectly.png differ diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_BlueColor.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_BlueColor.png index 06ffc1c0dcc0..71b087a54520 100644 Binary files a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_BlueColor.png and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_BlueColor.png differ diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_Color.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_Color.png index 99d958bc2c7f..d69b9bb4ace7 100644 Binary files a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_Color.png and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_Color.png differ diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_ColorWithOpacity.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_ColorWithOpacity.png index 6d31078677fc..e384570cfbbe 100644 Binary files a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_ColorWithOpacity.png and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_ColorWithOpacity.png differ diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_ColorWithOpacityAndShadow.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_ColorWithOpacityAndShadow.png index ebf9a75d9c63..dbcc38813176 100644 Binary files a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_ColorWithOpacityAndShadow.png and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_ColorWithOpacityAndShadow.png differ diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_CornerRadiusWithColor.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_CornerRadiusWithColor.png index 3d301defa2a1..fd5471f8858e 100644 Binary files a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_CornerRadiusWithColor.png and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_CornerRadiusWithColor.png differ diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_CornerRadiusWithColorAndShadow.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_CornerRadiusWithColorAndShadow.png index df723f311886..5c066b4f64b2 100644 Binary files a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_CornerRadiusWithColorAndShadow.png and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_CornerRadiusWithColorAndShadow.png differ diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_CornerRadiusWithFlowDirection.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_CornerRadiusWithFlowDirection.png index f9f555daacef..61904025abf7 100644 Binary files a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_CornerRadiusWithFlowDirection.png and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_CornerRadiusWithFlowDirection.png differ diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_CornerRadiusWithOpacityAndShadow.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_CornerRadiusWithOpacityAndShadow.png index 29e834d85faf..cac0a9fea6e0 100644 Binary files a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_CornerRadiusWithOpacityAndShadow.png and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_CornerRadiusWithOpacityAndShadow.png differ diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_FillWithLinearGradient.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_FillWithLinearGradient.png new file mode 100644 index 000000000000..fdf85d9d8053 Binary files /dev/null and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_FillWithLinearGradient.png differ diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_FillWithRadialGradient.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_FillWithRadialGradient.png new file mode 100644 index 000000000000..585208420141 Binary files /dev/null and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_FillWithRadialGradient.png differ diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_FillWithSolidColor.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_FillWithSolidColor.png new file mode 100644 index 000000000000..b6b9546d02de Binary files /dev/null and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_FillWithSolidColor.png differ diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_GreenColor.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_GreenColor.png index 09b9012fa289..60fdbd04cfb1 100644 Binary files a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_GreenColor.png and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_GreenColor.png differ diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_IsVisible.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_IsVisible.png index f01b3a8716f0..e83266095a30 100644 Binary files a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_IsVisible.png and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_IsVisible.png differ diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_OpacityZero.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_OpacityZero.png index 80108d1d6f5e..69c2bb1bd98e 100644 Binary files a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_OpacityZero.png and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_OpacityZero.png differ diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_Reset.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_Reset.png index 3c8156ea8adc..1c8314d8ce7e 100644 Binary files a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_Reset.png and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_Reset.png differ diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_UniformCornerRadius.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_UniformCornerRadius.png index 910b631ac32e..4ea6e0387caf 100644 Binary files a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_UniformCornerRadius.png and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_UniformCornerRadius.png differ diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_WidthAndHeight.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_WidthAndHeight.png index aecc6bb1a8af..d4e251d8310b 100644 Binary files a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_WidthAndHeight.png and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/BoxView_WidthAndHeight.png differ diff --git a/src/Controls/tests/TestCases.HostApp/FeatureMatrix/BoxView/BoxViewControlPage.xaml b/src/Controls/tests/TestCases.HostApp/FeatureMatrix/BoxView/BoxViewControlPage.xaml index db8540b13e1e..af0ee4864ceb 100644 --- a/src/Controls/tests/TestCases.HostApp/FeatureMatrix/BoxView/BoxViewControlPage.xaml +++ b/src/Controls/tests/TestCases.HostApp/FeatureMatrix/BoxView/BoxViewControlPage.xaml @@ -16,6 +16,7 @@