From eccf82f7064f16fc75a8ff7dd9fad350d447dae6 Mon Sep 17 00:00:00 2001 From: rabbitism Date: Mon, 30 Jan 2023 01:08:23 +0800 Subject: [PATCH] feat: Add CaptionButtons --- .../Semi.Avalonia.Demo/Views/MainWindow.axaml | 2 + .../Controls/CaptionButtons.axaml | 98 +++++++++++++++++++ src/Semi.Avalonia/Controls/TitleBar.axaml | 47 +++++++++ .../Themes/Light/CaptionButtons.axaml | 14 +++ src/Semi.Avalonia/Themes/Light/Light.axaml | 1 + 5 files changed, 162 insertions(+) create mode 100644 src/Semi.Avalonia/Themes/Light/CaptionButtons.axaml diff --git a/demo/Semi.Avalonia.Demo/Views/MainWindow.axaml b/demo/Semi.Avalonia.Demo/Views/MainWindow.axaml index dd78df4..d635818 100644 --- a/demo/Semi.Avalonia.Demo/Views/MainWindow.axaml +++ b/demo/Semi.Avalonia.Demo/Views/MainWindow.axaml @@ -8,6 +8,8 @@ Title="Semi.Avalonia.Demo" d:DesignHeight="450" d:DesignWidth="800" + ExtendClientAreaChromeHints="Default" + ExtendClientAreaToDecorationsHint="True" Icon="/Assets/avalonia-logo.ico" mc:Ignorable="d"> diff --git a/src/Semi.Avalonia/Controls/CaptionButtons.axaml b/src/Semi.Avalonia/Controls/CaptionButtons.axaml index 9017e8d..3fc34a8 100644 --- a/src/Semi.Avalonia/Controls/CaptionButtons.axaml +++ b/src/Semi.Avalonia/Controls/CaptionButtons.axaml @@ -1,3 +1,101 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/Semi.Avalonia/Controls/TitleBar.axaml b/src/Semi.Avalonia/Controls/TitleBar.axaml index 9017e8d..097fe0b 100644 --- a/src/Semi.Avalonia/Controls/TitleBar.axaml +++ b/src/Semi.Avalonia/Controls/TitleBar.axaml @@ -1,3 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/Semi.Avalonia/Themes/Light/CaptionButtons.axaml b/src/Semi.Avalonia/Themes/Light/CaptionButtons.axaml new file mode 100644 index 0000000..b73f10b --- /dev/null +++ b/src/Semi.Avalonia/Themes/Light/CaptionButtons.axaml @@ -0,0 +1,14 @@ + + + M13.46,12L19,17.54V19H17.54L12,13.46L6.46,19H5V17.54L10.54,12L5,6.46V5H6.46L12,10.54L17.54,5H19V6.46L13.46,12Z + M4,4H20V20H4V4M6,8V18H18V8H6Z + M20,14H4V10H20 + M4,8H8V4H20V16H16V20H4V8M16,8V14H18V6H10V8H16M6,12V18H14V12H6Z + M10,21V19H6.41L10.91,14.5L9.5,13.09L5,17.59V14H3V21H10M14.5,10.91L19,6.41V10H21V3H14V5H17.59L13.09,9.5L14.5,10.91Z + M19.5,3.09L15,7.59V4H13V11H20V9H16.41L20.91,4.5L19.5,3.09M4,13V15H7.59L3.09,19.5L4.5,20.91L9,16.41V20H11V13H4Z + + + + + + diff --git a/src/Semi.Avalonia/Themes/Light/Light.axaml b/src/Semi.Avalonia/Themes/Light/Light.axaml index dd9a3f1..784b7f5 100644 --- a/src/Semi.Avalonia/Themes/Light/Light.axaml +++ b/src/Semi.Avalonia/Themes/Light/Light.axaml @@ -8,6 +8,7 @@ +