diff --git a/src/AtomUI.Desktop.Controls/Avatar/Themes/AvatarTheme.axaml b/src/AtomUI.Desktop.Controls/Avatar/Themes/AvatarTheme.axaml
index c00951c2a..c8635c82c 100644
--- a/src/AtomUI.Desktop.Controls/Avatar/Themes/AvatarTheme.axaml
+++ b/src/AtomUI.Desktop.Controls/Avatar/Themes/AvatarTheme.axaml
@@ -20,20 +20,34 @@
IsVisible="False"
HorizontalAlignment="Center"
VerticalAlignment="Center" />
-
-
+
+
+
+
+
+
-
\ No newline at end of file
+
diff --git a/tests/AtomUI.Desktop.Controls.Tests/Avatar/AvatarGroupFoldInfoTests.cs b/tests/AtomUI.Desktop.Controls.Tests/Avatar/AvatarGroupFoldInfoTests.cs
index 4d0dbad12..6f272a6ca 100644
--- a/tests/AtomUI.Desktop.Controls.Tests/Avatar/AvatarGroupFoldInfoTests.cs
+++ b/tests/AtomUI.Desktop.Controls.Tests/Avatar/AvatarGroupFoldInfoTests.cs
@@ -3,7 +3,9 @@ using AtomUI.Controls;
using Avalonia;
using Avalonia.Controls;
using Avalonia.LogicalTree;
+using Avalonia.Media.Imaging;
using Avalonia.Threading;
+using Avalonia.VisualTree;
using Shouldly;
using Xunit;
@@ -212,6 +214,37 @@ public class AvatarGroupFoldInfoTests
avatar.SizeType.ShouldBe(CustomizableSizeType.Large);
}
+ [Fact]
+ public void Avatar_BitmapSrc_Content_Is_Clipped_By_Circle_Shape()
+ {
+ using var bitmap = new RenderTargetBitmap(new PixelSize(4, 4), new Vector(96, 96));
+ var avatar = new DesktopAvatar
+ {
+ Size = 64,
+ Shape = AvatarShape.Circle,
+ BitmapSrc = bitmap
+ };
+
+ ShowInWindow(avatar, () =>
+ {
+ var imagePresenter = avatar.GetVisualDescendants()
+ .OfType()
+ .Single(image => image.Name == "ImagePresenter");
+
+ imagePresenter.IsVisible.ShouldBeTrue();
+
+ var clippingFrame = imagePresenter.GetVisualAncestors()
+ .OfType()
+ .FirstOrDefault(border => border.ClipToBounds);
+
+ clippingFrame.ShouldNotBeNull();
+ clippingFrame.CornerRadius.TopLeft.ShouldBe(32);
+ clippingFrame.CornerRadius.TopRight.ShouldBe(32);
+ clippingFrame.CornerRadius.BottomRight.ShouldBe(32);
+ clippingFrame.CornerRadius.BottomLeft.ShouldBe(32);
+ });
+ }
+
private static AvatarGroup CreateFoldedGroup()
{
return new AvatarGroup