mirror of
https://github.com/wwiinnddyy/LanMountainDesktop.git
synced 2026-06-20 23:54:26 +08:00
0.8.0
圆角设计更新
This commit is contained in:
@@ -62,6 +62,7 @@ dotnet test LanMountainDesktop.slnx -c Debug
|
|||||||
### UI
|
### UI
|
||||||
|
|
||||||
- 主题、资源和视觉语义优先遵守 `docs/VISUAL_SPEC.md` 与 `docs/CORNER_RADIUS_SPEC.md`
|
- 主题、资源和视觉语义优先遵守 `docs/VISUAL_SPEC.md` 与 `docs/CORNER_RADIUS_SPEC.md`
|
||||||
|
- **组件圆角**:所有内置与插件组件的根边框必须使用 `{DynamicResource DesignCornerRadiusComponent}` 资源。
|
||||||
- 设置页相关改动通常同时落在 `Views/`、`ViewModels/`、`Services/` 和 `.trae/specs/`
|
- 设置页相关改动通常同时落在 `Views/`、`ViewModels/`、`Services/` 和 `.trae/specs/`
|
||||||
- UI 启动与窗口生命周期主线在 `Program.cs` 和 `App.axaml.cs`
|
- UI 启动与窗口生命周期主线在 `Program.cs` 和 `App.axaml.cs`
|
||||||
|
|
||||||
@@ -76,6 +77,7 @@ dotnet test LanMountainDesktop.slnx -c Debug
|
|||||||
|
|
||||||
- 设置持久化和 scope 变化优先检查 `LanMountainDesktop.Settings.Core/`
|
- 设置持久化和 scope 变化优先检查 `LanMountainDesktop.Settings.Core/`
|
||||||
- 外观、圆角、主题资源优先检查 `LanMountainDesktop.Appearance/` 与专题规范
|
- 外观、圆角、主题资源优先检查 `LanMountainDesktop.Appearance/` 与专题规范
|
||||||
|
- **圆角统一**:桌面组件(Widget)必须统一使用动态资源 `DesignCornerRadiusComponent`。严禁在组件根容器使用硬编码数值或非组件级令牌(如 `Xs`, `Md` 等),以确保全局圆角缩放设置能正确应用到所有组件。
|
||||||
|
|
||||||
## 6. 权威来源
|
## 6. 权威来源
|
||||||
|
|
||||||
|
|||||||
@@ -11,12 +11,13 @@ public static class AppearanceCornerRadiusTokenFactory
|
|||||||
var normalizedScale = GlobalAppearanceSettings.NormalizeCornerRadiusScale(scale);
|
var normalizedScale = GlobalAppearanceSettings.NormalizeCornerRadiusScale(scale);
|
||||||
return new AppearanceCornerRadiusTokens(
|
return new AppearanceCornerRadiusTokens(
|
||||||
Radius(6, normalizedScale),
|
Radius(6, normalizedScale),
|
||||||
Radius(10, normalizedScale),
|
Radius(12, normalizedScale),
|
||||||
Radius(14, normalizedScale),
|
Radius(14, normalizedScale),
|
||||||
Radius(18, normalizedScale),
|
Radius(20, normalizedScale),
|
||||||
Radius(24, normalizedScale),
|
Radius(28, normalizedScale),
|
||||||
Radius(30, normalizedScale),
|
Radius(32, normalizedScale),
|
||||||
Radius(36, normalizedScale));
|
Radius(36, normalizedScale),
|
||||||
|
Radius(18, normalizedScale));
|
||||||
}
|
}
|
||||||
|
|
||||||
private static CornerRadius Radius(double value, double scale)
|
private static CornerRadius Radius(double value, double scale)
|
||||||
|
|||||||
@@ -9,5 +9,6 @@ public enum PluginCornerRadiusPreset
|
|||||||
Md = 4,
|
Md = 4,
|
||||||
Lg = 5,
|
Lg = 5,
|
||||||
Xl = 6,
|
Xl = 6,
|
||||||
Island = 7
|
Island = 7,
|
||||||
|
Component = 8
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,13 +10,14 @@ public sealed record PluginCornerRadiusTokens(
|
|||||||
double Md,
|
double Md,
|
||||||
double Lg,
|
double Lg,
|
||||||
double Xl,
|
double Xl,
|
||||||
double Island)
|
double Island,
|
||||||
|
double Component)
|
||||||
{
|
{
|
||||||
public double Get(PluginCornerRadiusPreset preset)
|
public double Get(PluginCornerRadiusPreset preset)
|
||||||
{
|
{
|
||||||
return preset switch
|
return preset switch
|
||||||
{
|
{
|
||||||
PluginCornerRadiusPreset.Default => Md,
|
PluginCornerRadiusPreset.Default => Component,
|
||||||
PluginCornerRadiusPreset.Micro => Micro,
|
PluginCornerRadiusPreset.Micro => Micro,
|
||||||
PluginCornerRadiusPreset.Xs => Xs,
|
PluginCornerRadiusPreset.Xs => Xs,
|
||||||
PluginCornerRadiusPreset.Sm => Sm,
|
PluginCornerRadiusPreset.Sm => Sm,
|
||||||
@@ -24,7 +25,8 @@ public sealed record PluginCornerRadiusTokens(
|
|||||||
PluginCornerRadiusPreset.Lg => Lg,
|
PluginCornerRadiusPreset.Lg => Lg,
|
||||||
PluginCornerRadiusPreset.Xl => Xl,
|
PluginCornerRadiusPreset.Xl => Xl,
|
||||||
PluginCornerRadiusPreset.Island => Island,
|
PluginCornerRadiusPreset.Island => Island,
|
||||||
_ => Md
|
PluginCornerRadiusPreset.Component => Component,
|
||||||
|
_ => Component
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -44,6 +46,7 @@ public sealed record PluginCornerRadiusTokens(
|
|||||||
tokens.Md.TopLeft,
|
tokens.Md.TopLeft,
|
||||||
tokens.Lg.TopLeft,
|
tokens.Lg.TopLeft,
|
||||||
tokens.Xl.TopLeft,
|
tokens.Xl.TopLeft,
|
||||||
tokens.Island.TopLeft);
|
tokens.Island.TopLeft,
|
||||||
|
tokens.Component.TopLeft);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,4 +9,5 @@ public sealed record AppearanceCornerRadiusTokens(
|
|||||||
CornerRadius Md,
|
CornerRadius Md,
|
||||||
CornerRadius Lg,
|
CornerRadius Lg,
|
||||||
CornerRadius Xl,
|
CornerRadius Xl,
|
||||||
CornerRadius Island);
|
CornerRadius Island,
|
||||||
|
CornerRadius Component);
|
||||||
|
|||||||
@@ -40,11 +40,11 @@ public sealed class CornerRadiusScaleTests
|
|||||||
GlobalCornerRadiusScale: 0d,
|
GlobalCornerRadiusScale: 0d,
|
||||||
CornerRadiusTokens: PluginCornerRadiusTokens.FromShared(new AppearanceCornerRadiusTokens(
|
CornerRadiusTokens: PluginCornerRadiusTokens.FromShared(new AppearanceCornerRadiusTokens(
|
||||||
new CornerRadius(6),
|
new CornerRadius(6),
|
||||||
new CornerRadius(10),
|
new CornerRadius(12),
|
||||||
new CornerRadius(14),
|
new CornerRadius(14),
|
||||||
new CornerRadius(18),
|
new CornerRadius(20),
|
||||||
new CornerRadius(24),
|
new CornerRadius(28),
|
||||||
new CornerRadius(30),
|
new CornerRadius(32),
|
||||||
new CornerRadius(36))),
|
new CornerRadius(36))),
|
||||||
ThemeVariant: "Unknown"));
|
ThemeVariant: "Unknown"));
|
||||||
|
|
||||||
|
|||||||
@@ -48,11 +48,11 @@ public sealed class DesktopComponentRuntimeRegistrationCornerRadiusTests
|
|||||||
GlobalCornerRadiusScale: globalScale,
|
GlobalCornerRadiusScale: globalScale,
|
||||||
CornerRadiusTokens: new AppearanceCornerRadiusTokens(
|
CornerRadiusTokens: new AppearanceCornerRadiusTokens(
|
||||||
new CornerRadius(6),
|
new CornerRadius(6),
|
||||||
new CornerRadius(10),
|
new CornerRadius(12),
|
||||||
new CornerRadius(14),
|
new CornerRadius(14),
|
||||||
new CornerRadius(18),
|
new CornerRadius(20),
|
||||||
new CornerRadius(24),
|
new CornerRadius(28),
|
||||||
new CornerRadius(30),
|
new CornerRadius(32),
|
||||||
new CornerRadius(36)));
|
new CornerRadius(36)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -53,8 +53,8 @@ public sealed class InfoRecommendationHostCornerRadiusTests
|
|||||||
var max = descriptor.ResolveCornerRadius(CreateChromeContext(componentId, cellSize, 2.5d));
|
var max = descriptor.ResolveCornerRadius(CreateChromeContext(componentId, cellSize, 2.5d));
|
||||||
|
|
||||||
Assert.Equal(0d, zero, 3);
|
Assert.Equal(0d, zero, 3);
|
||||||
Assert.Equal(24d, unit, 3);
|
Assert.Equal(28d, unit, 3);
|
||||||
Assert.Equal(60d, max, 3);
|
Assert.Equal(70d, max, 3);
|
||||||
Assert.True(zero <= unit && unit <= max);
|
Assert.True(zero <= unit && unit <= max);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -476,6 +476,7 @@ internal sealed class AppearanceThemeService : IAppearanceThemeService, IDisposa
|
|||||||
resources["DesignCornerRadiusLg"] = snapshot.CornerRadiusTokens.Lg;
|
resources["DesignCornerRadiusLg"] = snapshot.CornerRadiusTokens.Lg;
|
||||||
resources["DesignCornerRadiusXl"] = snapshot.CornerRadiusTokens.Xl;
|
resources["DesignCornerRadiusXl"] = snapshot.CornerRadiusTokens.Xl;
|
||||||
resources["DesignCornerRadiusIsland"] = snapshot.CornerRadiusTokens.Island;
|
resources["DesignCornerRadiusIsland"] = snapshot.CornerRadiusTokens.Island;
|
||||||
|
resources["DesignCornerRadiusComponent"] = snapshot.CornerRadiusTokens.Component;
|
||||||
}
|
}
|
||||||
|
|
||||||
public AppearanceMaterialSurface GetMaterialSurface(MaterialSurfaceRole role)
|
public AppearanceMaterialSurface GetMaterialSurface(MaterialSurfaceRole role)
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
<Setter Property="Background" Value="{DynamicResource EditorSelectFieldBackgroundBrush}" />
|
<Setter Property="Background" Value="{DynamicResource EditorSelectFieldBackgroundBrush}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource EditorSelectOutlineBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource EditorSelectOutlineBrush}" />
|
||||||
<Setter Property="BorderThickness" Value="1" />
|
<Setter Property="BorderThickness" Value="1" />
|
||||||
<Setter Property="CornerRadius" Value="{DynamicResource DesignCornerRadiusMd}" />
|
<Setter Property="CornerRadius" Value="{DynamicResource DesignCornerRadiusComponent}" />
|
||||||
<Setter Property="Padding" Value="16,14,12,14" />
|
<Setter Property="Padding" Value="16,14,12,14" />
|
||||||
<Setter Property="MinHeight" Value="56" />
|
<Setter Property="MinHeight" Value="56" />
|
||||||
<Setter Property="FontSize" Value="14" />
|
<Setter Property="FontSize" Value="14" />
|
||||||
@@ -40,7 +40,7 @@
|
|||||||
<Setter Property="Background" Value="{DynamicResource EditorSelectFieldBackgroundBrush}" />
|
<Setter Property="Background" Value="{DynamicResource EditorSelectFieldBackgroundBrush}" />
|
||||||
<Setter Property="BorderBrush" Value="{DynamicResource EditorSelectOutlineBrush}" />
|
<Setter Property="BorderBrush" Value="{DynamicResource EditorSelectOutlineBrush}" />
|
||||||
<Setter Property="BorderThickness" Value="1" />
|
<Setter Property="BorderThickness" Value="1" />
|
||||||
<Setter Property="CornerRadius" Value="{DynamicResource DesignCornerRadiusMd}" />
|
<Setter Property="CornerRadius" Value="{DynamicResource DesignCornerRadiusComponent}" />
|
||||||
<Setter Property="Padding" Value="16,14,12,14" />
|
<Setter Property="Padding" Value="16,14,12,14" />
|
||||||
<Setter Property="MinHeight" Value="56" />
|
<Setter Property="MinHeight" Value="56" />
|
||||||
<Setter Property="Foreground" Value="{DynamicResource ComponentEditorPrimaryTextBrush}" />
|
<Setter Property="Foreground" Value="{DynamicResource ComponentEditorPrimaryTextBrush}" />
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
<CornerRadius x:Key="DesignCornerRadiusSm">14</CornerRadius>
|
<CornerRadius x:Key="DesignCornerRadiusSm">14</CornerRadius>
|
||||||
<CornerRadius x:Key="DesignCornerRadiusXs">12</CornerRadius>
|
<CornerRadius x:Key="DesignCornerRadiusXs">12</CornerRadius>
|
||||||
<CornerRadius x:Key="DesignCornerRadiusIsland">36</CornerRadius>
|
<CornerRadius x:Key="DesignCornerRadiusIsland">36</CornerRadius>
|
||||||
|
<CornerRadius x:Key="DesignCornerRadiusComponent">18</CornerRadius>
|
||||||
</Styles.Resources>
|
</Styles.Resources>
|
||||||
|
|
||||||
<Style Selector="TextBlock">
|
<Style Selector="TextBlock">
|
||||||
|
|||||||
@@ -53,7 +53,7 @@
|
|||||||
|
|
||||||
<!-- MD3 Button Styles -->
|
<!-- MD3 Button Styles -->
|
||||||
<Style Selector="Button.component-editor-footer-button">
|
<Style Selector="Button.component-editor-footer-button">
|
||||||
<Setter Property="CornerRadius" Value="{DynamicResource DesignCornerRadiusMd}" />
|
<Setter Property="CornerRadius" Value="{DynamicResource DesignCornerRadiusComponent}" />
|
||||||
<Setter Property="Background" Value="{DynamicResource EditorPrimaryBrush}" />
|
<Setter Property="Background" Value="{DynamicResource EditorPrimaryBrush}" />
|
||||||
<Setter Property="Foreground" Value="{DynamicResource EditorOnPrimaryBrush}" />
|
<Setter Property="Foreground" Value="{DynamicResource EditorOnPrimaryBrush}" />
|
||||||
<Setter Property="Height" Value="40" />
|
<Setter Property="Height" Value="40" />
|
||||||
@@ -99,37 +99,43 @@
|
|||||||
</Grid>
|
</Grid>
|
||||||
</Border>
|
</Border>
|
||||||
|
|
||||||
<Panel Grid.Row="1">
|
<Border Grid.Row="1"
|
||||||
<ScrollViewer Classes="component-editor-scroll-host"
|
Background="{DynamicResource EditorSurfaceContainerBrush}"
|
||||||
HorizontalScrollBarVisibility="Disabled"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
VerticalScrollBarVisibility="Auto">
|
Margin="16,0,16,16"
|
||||||
<ContentControl x:Name="EditorContentHost"
|
ClipToBounds="True">
|
||||||
Margin="24,0,24,100"
|
<Panel>
|
||||||
HorizontalContentAlignment="Stretch"
|
<ScrollViewer Classes="component-editor-scroll-host"
|
||||||
VerticalContentAlignment="Stretch" />
|
HorizontalScrollBarVisibility="Disabled"
|
||||||
</ScrollViewer>
|
VerticalScrollBarVisibility="Auto">
|
||||||
|
<ContentControl x:Name="EditorContentHost"
|
||||||
|
Margin="24,0,24,100"
|
||||||
|
HorizontalContentAlignment="Stretch"
|
||||||
|
VerticalContentAlignment="Stretch" />
|
||||||
|
</ScrollViewer>
|
||||||
|
|
||||||
<!-- Floating Save Button (MD3 Style) -->
|
<!-- Floating Save Button (MD3 Style) -->
|
||||||
<Button x:Name="SaveFAB"
|
<Button x:Name="SaveFAB"
|
||||||
HorizontalAlignment="Right"
|
HorizontalAlignment="Right"
|
||||||
VerticalAlignment="Bottom"
|
VerticalAlignment="Bottom"
|
||||||
Margin="28"
|
Margin="28"
|
||||||
Width="64"
|
Width="64"
|
||||||
Height="64"
|
Height="64"
|
||||||
Background="{DynamicResource EditorPrimaryBrush}"
|
Background="{DynamicResource EditorPrimaryBrush}"
|
||||||
Foreground="{DynamicResource EditorOnPrimaryBrush}"
|
Foreground="{DynamicResource EditorOnPrimaryBrush}"
|
||||||
CornerRadius="{DynamicResource DesignCornerRadiusMd}"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
Classes="accent"
|
Classes="accent"
|
||||||
Click="OnCloseClick">
|
Click="OnCloseClick">
|
||||||
<Button.Styles>
|
<Button.Styles>
|
||||||
<Style Selector="Button:pointerover">
|
<Style Selector="Button:pointerover">
|
||||||
<Setter Property="RenderTransform" Value="scale(1.05)" />
|
<Setter Property="RenderTransform" Value="scale(1.05)" />
|
||||||
</Style>
|
</Style>
|
||||||
</Button.Styles>
|
</Button.Styles>
|
||||||
<mi:MaterialIcon Kind="Check"
|
<mi:MaterialIcon Kind="Check"
|
||||||
Width="32"
|
Width="32"
|
||||||
Height="32" />
|
Height="32" />
|
||||||
</Button>
|
</Button>
|
||||||
</Panel>
|
</Panel>
|
||||||
|
</Border>
|
||||||
</Grid>
|
</Grid>
|
||||||
</Window>
|
</Window>
|
||||||
|
|||||||
@@ -87,14 +87,14 @@
|
|||||||
<Border Width="240"
|
<Border Width="240"
|
||||||
Height="220"
|
Height="220"
|
||||||
Margin="6"
|
Margin="6"
|
||||||
CornerRadius="{DynamicResource DesignCornerRadiusLg}"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
Padding="10"
|
Padding="10"
|
||||||
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
BorderThickness="1">
|
BorderThickness="1">
|
||||||
<Grid RowDefinitions="*,Auto,Auto"
|
<Grid RowDefinitions="*,Auto,Auto"
|
||||||
RowSpacing="8">
|
RowSpacing="8">
|
||||||
<Border CornerRadius="{DynamicResource DesignCornerRadiusXs}"
|
<Border CornerRadius="{DynamicResource DesignCornerRadiusSm}"
|
||||||
Background="{DynamicResource AdaptiveGlassPanelBackgroundBrush}"
|
Background="{DynamicResource AdaptiveGlassPanelBackgroundBrush}"
|
||||||
BorderThickness="1"
|
BorderThickness="1"
|
||||||
BorderBrush="{DynamicResource AdaptiveGlassPanelBorderBrush}"
|
BorderBrush="{DynamicResource AdaptiveGlassPanelBorderBrush}"
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.BaiduHotSearchWidget">
|
x:Class="LanMountainDesktop.Views.Components.BaiduHotSearchWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="34"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
Background="Transparent"
|
Background="Transparent"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
<Grid>
|
<Grid>
|
||||||
<Border x:Name="CardBorder"
|
<Border x:Name="CardBorder"
|
||||||
Background="#FCFCFD"
|
Background="#FCFCFD"
|
||||||
CornerRadius="34"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
BorderBrush="Transparent"
|
BorderBrush="Transparent"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
Padding="16,14,16,14">
|
Padding="16,14,16,14">
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.BilibiliHotSearchWidget">
|
x:Class="LanMountainDesktop.Views.Components.BilibiliHotSearchWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="34"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
Background="Transparent"
|
Background="Transparent"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
<Grid>
|
<Grid>
|
||||||
<Border x:Name="CardBorder"
|
<Border x:Name="CardBorder"
|
||||||
Background="#FCFCFD"
|
Background="#FCFCFD"
|
||||||
CornerRadius="34"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
BorderBrush="Transparent"
|
BorderBrush="Transparent"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
Padding="16,14,16,14">
|
Padding="16,14,16,14">
|
||||||
|
|||||||
@@ -9,10 +9,12 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.BrowserWidget">
|
x:Class="LanMountainDesktop.Views.Components.BrowserWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
Background="#F4F7FC"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
CornerRadius="24"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
ClipToBounds="True"
|
BorderThickness="1"
|
||||||
Padding="10">
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
|
Padding="0"
|
||||||
|
ClipToBounds="True">
|
||||||
<Grid RowDefinitions="*,Auto"
|
<Grid RowDefinitions="*,Auto"
|
||||||
RowSpacing="8">
|
RowSpacing="8">
|
||||||
<Border x:Name="WebViewHostBorder"
|
<Border x:Name="WebViewHostBorder"
|
||||||
|
|||||||
@@ -2,9 +2,11 @@
|
|||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
x:Class="LanMountainDesktop.Views.Components.ClassScheduleWidget">
|
x:Class="LanMountainDesktop.Views.Components.ClassScheduleWidget">
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
ClipToBounds="True"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
CornerRadius="28"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
BorderThickness="1">
|
BorderThickness="1"
|
||||||
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
|
Padding="14,12">
|
||||||
<Grid x:Name="LayoutGrid"
|
<Grid x:Name="LayoutGrid"
|
||||||
RowDefinitions="Auto,*">
|
RowDefinitions="Auto,*">
|
||||||
<Grid x:Name="HeaderGrid"
|
<Grid x:Name="HeaderGrid"
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
Classes="surface-translucent-panel"
|
Classes="surface-translucent-panel"
|
||||||
Padding="0"
|
Padding="0"
|
||||||
CornerRadius="24">
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}">
|
||||||
<StackPanel Orientation="Horizontal"
|
<StackPanel Orientation="Horizontal"
|
||||||
HorizontalAlignment="Center"
|
HorizontalAlignment="Center"
|
||||||
VerticalAlignment="Center">
|
VerticalAlignment="Center">
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.CnrDailyNewsWidget">
|
x:Class="LanMountainDesktop.Views.Components.CnrDailyNewsWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="34"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
Background="Transparent"
|
Background="Transparent"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
<Grid>
|
<Grid>
|
||||||
<Border x:Name="CardBorder"
|
<Border x:Name="CardBorder"
|
||||||
Background="#FCFCFD"
|
Background="#FCFCFD"
|
||||||
CornerRadius="34"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
BorderBrush="Transparent"
|
BorderBrush="Transparent"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
Padding="16,14,16,14">
|
Padding="16,14,16,14">
|
||||||
|
|||||||
@@ -9,15 +9,15 @@ namespace LanMountainDesktop.Views.Components;
|
|||||||
|
|
||||||
internal static class ComponentChromeCornerRadiusHelper
|
internal static class ComponentChromeCornerRadiusHelper
|
||||||
{
|
{
|
||||||
public static double ResolveMainRectangleRadiusValue(ComponentChromeContext? chromeContext = null, double fallback = 24d)
|
public static double ResolveMainRectangleRadiusValue(ComponentChromeContext? chromeContext = null, double fallback = 18d)
|
||||||
{
|
{
|
||||||
if (chromeContext is not null)
|
if (chromeContext is not null)
|
||||||
{
|
{
|
||||||
return Math.Max(0d, chromeContext.CornerRadiusTokens.Lg.TopLeft);
|
return Math.Max(0d, chromeContext.CornerRadiusTokens.Component.TopLeft);
|
||||||
}
|
}
|
||||||
|
|
||||||
var snapshot = HostAppearanceThemeProvider.GetOrCreate().GetCurrent();
|
var snapshot = HostAppearanceThemeProvider.GetOrCreate().GetCurrent();
|
||||||
var resolved = snapshot.CornerRadiusTokens.Lg.TopLeft;
|
var resolved = snapshot.CornerRadiusTokens.Component.TopLeft;
|
||||||
return double.IsFinite(resolved)
|
return double.IsFinite(resolved)
|
||||||
? Math.Max(0d, resolved)
|
? Math.Max(0d, resolved)
|
||||||
: Math.Max(0d, fallback * ResolveScale(chromeContext));
|
: Math.Max(0d, fallback * ResolveScale(chromeContext));
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.DailyArtworkWidget">
|
x:Class="LanMountainDesktop.Views.Components.DailyArtworkWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="34"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
Background="#D5D5D5">
|
Background="#D5D5D5">
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.DailyPoetryWidget">
|
x:Class="LanMountainDesktop.Views.Components.DailyPoetryWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="34"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
Background="#C20A0A"
|
Background="#C20A0A"
|
||||||
|
|||||||
@@ -9,15 +9,15 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.DailyWord2x2Widget">
|
x:Class="LanMountainDesktop.Views.Components.DailyWord2x2Widget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="30"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
Background="Transparent"
|
Background="Transparent"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
Padding="0">
|
Padding="0">
|
||||||
<Grid>
|
<Grid>
|
||||||
<Border x:Name="CardBorder"
|
<Border x:Name="CardBorder"
|
||||||
Background="#FCFBFA"
|
Background="#FCFCFD"
|
||||||
CornerRadius="30"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
BorderBrush="Transparent"
|
BorderBrush="Transparent"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
Padding="12,11,12,11"
|
Padding="12,11,12,11"
|
||||||
|
|||||||
@@ -10,15 +10,15 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.DailyWordWidget">
|
x:Class="LanMountainDesktop.Views.Components.DailyWordWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="34"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
Background="Transparent"
|
Background="Transparent"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
Padding="0">
|
Padding="0">
|
||||||
<Grid>
|
<Grid>
|
||||||
<Border x:Name="CardBorder"
|
<Border x:Name="CardBorder"
|
||||||
Background="#FCFBFA"
|
Background="#FCFCFD"
|
||||||
CornerRadius="34"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
BorderBrush="Transparent"
|
BorderBrush="Transparent"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
Padding="16,14,16,14">
|
Padding="16,14,16,14">
|
||||||
|
|||||||
@@ -8,10 +8,11 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.DateWidget">
|
x:Class="LanMountainDesktop.Views.Components.DateWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
Background="{DynamicResource AdaptiveSurfaceBaseBrush}"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
CornerRadius="28"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
ClipToBounds="True"
|
BorderThickness="1"
|
||||||
Padding="12">
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
|
Padding="14,12">
|
||||||
<Viewbox Stretch="Uniform">
|
<Viewbox Stretch="Uniform">
|
||||||
<Grid x:Name="LayoutRoot"
|
<Grid x:Name="LayoutRoot"
|
||||||
Width="460"
|
Width="460"
|
||||||
|
|||||||
@@ -21,10 +21,11 @@
|
|||||||
</UserControl.Styles>
|
</UserControl.Styles>
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="34"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
ClipToBounds="True"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
Padding="12"
|
BorderThickness="1"
|
||||||
Background="#ECEDEF">
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
|
Padding="14,12">
|
||||||
<Viewbox Stretch="Uniform">
|
<Viewbox Stretch="Uniform">
|
||||||
<Grid x:Name="LayoutRoot"
|
<Grid x:Name="LayoutRoot"
|
||||||
Width="304"
|
Width="304"
|
||||||
|
|||||||
@@ -8,16 +8,16 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.ExtendedWeatherWidget">
|
x:Class="LanMountainDesktop.Views.Components.ExtendedWeatherWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="28"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
Background="#6B7B8F">
|
Background="#6B7B8F">
|
||||||
<Grid>
|
<Grid>
|
||||||
<Border x:Name="BackgroundImageLayer"
|
<Border x:Name="BackgroundImageLayer"
|
||||||
CornerRadius="28"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True" />
|
ClipToBounds="True" />
|
||||||
|
|
||||||
<Border x:Name="BackgroundMotionLayer"
|
<Border x:Name="BackgroundMotionLayer"
|
||||||
CornerRadius="28"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
Opacity="0.26"
|
Opacity="0.26"
|
||||||
RenderTransformOrigin="0.5,0.5">
|
RenderTransformOrigin="0.5,0.5">
|
||||||
|
|||||||
@@ -8,10 +8,11 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.HolidayCalendarWidget">
|
x:Class="LanMountainDesktop.Views.Components.HolidayCalendarWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
Background="#DCE7FA"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
CornerRadius="34"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
ClipToBounds="True"
|
BorderThickness="1"
|
||||||
Padding="14">
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
|
Padding="14,12">
|
||||||
<Grid x:Name="LayoutRoot"
|
<Grid x:Name="LayoutRoot"
|
||||||
RowDefinitions="1.1*,2.3*,0.62*,0.78*,0.95*"
|
RowDefinitions="1.1*,2.3*,0.62*,0.78*,0.95*"
|
||||||
RowSpacing="8">
|
RowSpacing="8">
|
||||||
|
|||||||
@@ -9,14 +9,14 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.HourlyWeatherWidget">
|
x:Class="LanMountainDesktop.Views.Components.HourlyWeatherWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="28"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
Background="#6B7B8F">
|
Background="#6B7B8F">
|
||||||
<Grid>
|
<Grid>
|
||||||
<Border x:Name="BackgroundImageLayer" CornerRadius="28" ClipToBounds="True" />
|
<Border x:Name="BackgroundImageLayer" CornerRadius="{DynamicResource DesignCornerRadiusComponent}" ClipToBounds="True" />
|
||||||
|
|
||||||
<Border x:Name="BackgroundMotionLayer"
|
<Border x:Name="BackgroundMotionLayer"
|
||||||
CornerRadius="28"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
Opacity="0.25"
|
Opacity="0.25"
|
||||||
RenderTransformOrigin="0.5,0.5">
|
RenderTransformOrigin="0.5,0.5">
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.IfengNewsWidget">
|
x:Class="LanMountainDesktop.Views.Components.IfengNewsWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="32"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
Background="Transparent"
|
Background="Transparent"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
<Grid>
|
<Grid>
|
||||||
<Border x:Name="CardBorder"
|
<Border x:Name="CardBorder"
|
||||||
Background="#FCFCFD"
|
Background="#FCFCFD"
|
||||||
CornerRadius="32"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
BorderBrush="Transparent"
|
BorderBrush="Transparent"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
Padding="14,14,14,14">
|
Padding="14,14,14,14">
|
||||||
|
|||||||
@@ -9,15 +9,15 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.JuyaNewsWidget">
|
x:Class="LanMountainDesktop.Views.Components.JuyaNewsWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="24"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
Background="Transparent"
|
Background="Transparent"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
Padding="0">
|
Padding="0">
|
||||||
<Grid>
|
<Grid>
|
||||||
<Border x:Name="CardBorder"
|
<Border x:Name="CardBorder"
|
||||||
Background="#fefefe"
|
Background="#FCFCFD"
|
||||||
CornerRadius="24"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
BorderBrush="Transparent"
|
BorderBrush="Transparent"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
Padding="16,14,16,14">
|
Padding="16,14,16,14">
|
||||||
|
|||||||
@@ -8,10 +8,11 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.LunarCalendarWidget">
|
x:Class="LanMountainDesktop.Views.Components.LunarCalendarWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
Background="#EFE6D9"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
CornerRadius="30"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
ClipToBounds="True"
|
BorderThickness="1"
|
||||||
Padding="16">
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
|
Padding="14,12">
|
||||||
<Viewbox Stretch="Uniform">
|
<Viewbox Stretch="Uniform">
|
||||||
<Grid x:Name="LayoutRoot"
|
<Grid x:Name="LayoutRoot"
|
||||||
Width="300"
|
Width="300"
|
||||||
|
|||||||
@@ -11,9 +11,8 @@
|
|||||||
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
BorderThickness="1"
|
BorderThickness="1"
|
||||||
CornerRadius="28"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True"
|
Padding="14,12">
|
||||||
Padding="14">
|
|
||||||
<Viewbox Stretch="Uniform">
|
<Viewbox Stretch="Uniform">
|
||||||
<Grid x:Name="LayoutRoot"
|
<Grid x:Name="LayoutRoot"
|
||||||
Width="280"
|
Width="280"
|
||||||
|
|||||||
@@ -9,14 +9,14 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.MultiDayWeatherWidget">
|
x:Class="LanMountainDesktop.Views.Components.MultiDayWeatherWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="28"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
Background="#6B7B8F">
|
Background="#6B7B8F">
|
||||||
<Grid>
|
<Grid>
|
||||||
<Border x:Name="BackgroundImageLayer" CornerRadius="28" ClipToBounds="True" />
|
<Border x:Name="BackgroundImageLayer" CornerRadius="{DynamicResource DesignCornerRadiusComponent}" ClipToBounds="True" />
|
||||||
|
|
||||||
<Border x:Name="BackgroundMotionLayer"
|
<Border x:Name="BackgroundMotionLayer"
|
||||||
CornerRadius="28"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
Opacity="0.25"
|
Opacity="0.25"
|
||||||
RenderTransformOrigin="0.5,0.5">
|
RenderTransformOrigin="0.5,0.5">
|
||||||
|
|||||||
@@ -66,7 +66,7 @@
|
|||||||
</UserControl.Styles>
|
</UserControl.Styles>
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="30"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
BorderThickness="1"
|
BorderThickness="1"
|
||||||
BorderBrush="#52FFFFFF"
|
BorderBrush="#52FFFFFF"
|
||||||
@@ -75,11 +75,11 @@
|
|||||||
<Grid>
|
<Grid>
|
||||||
<Grid IsHitTestVisible="False">
|
<Grid IsHitTestVisible="False">
|
||||||
<Border x:Name="DynamicBackgroundBase"
|
<Border x:Name="DynamicBackgroundBase"
|
||||||
CornerRadius="30"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
Background="#B89E7B" />
|
Background="#B89E7B" />
|
||||||
<Border x:Name="BackdropCoverHost"
|
<Border x:Name="BackdropCoverHost"
|
||||||
CornerRadius="30"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True">
|
ClipToBounds="True">
|
||||||
<Image x:Name="BackdropCoverImage"
|
<Image x:Name="BackdropCoverImage"
|
||||||
IsVisible="False"
|
IsVisible="False"
|
||||||
|
|||||||
@@ -10,11 +10,11 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.OfficeRecentDocumentsWidget">
|
x:Class="LanMountainDesktop.Views.Components.OfficeRecentDocumentsWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="{DynamicResource DesignCornerRadiusLg}"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
Background="#2D5A8E"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
ClipToBounds="True"
|
BorderThickness="1"
|
||||||
BorderThickness="0"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
Padding="0">
|
Padding="14,12">
|
||||||
<Grid>
|
<Grid>
|
||||||
<Border x:Name="AccentCorner"
|
<Border x:Name="AccentCorner"
|
||||||
Width="140"
|
Width="140"
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.RecordingWidget">
|
x:Class="LanMountainDesktop.Views.Components.RecordingWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="34"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
Padding="0"
|
Padding="0"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
Background="#ECEFF3"
|
Background="#ECEFF3"
|
||||||
|
|||||||
@@ -9,9 +9,11 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.RemovableStorageWidget">
|
x:Class="LanMountainDesktop.Views.Components.RemovableStorageWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="28"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
BorderThickness="1"
|
BorderThickness="1"
|
||||||
Padding="16"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
|
Padding="14,12"
|
||||||
ClipToBounds="True">
|
ClipToBounds="True">
|
||||||
<Grid>
|
<Grid>
|
||||||
<Border x:Name="AccentOrb"
|
<Border x:Name="AccentOrb"
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.Stcn24ForumWidget">
|
x:Class="LanMountainDesktop.Views.Components.Stcn24ForumWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="28"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
Background="Transparent"
|
Background="Transparent"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
<Grid>
|
<Grid>
|
||||||
<Border x:Name="CardBorder"
|
<Border x:Name="CardBorder"
|
||||||
Background="#FCFCFD"
|
Background="#FCFCFD"
|
||||||
CornerRadius="28"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
BorderBrush="Transparent"
|
BorderBrush="Transparent"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
Padding="12,12,12,12">
|
Padding="12,12,12,12">
|
||||||
|
|||||||
@@ -7,10 +7,11 @@
|
|||||||
d:DesignHeight="220"
|
d:DesignHeight="220"
|
||||||
x:Class="LanMountainDesktop.Views.Components.StudyDeductionReasonsWidget">
|
x:Class="LanMountainDesktop.Views.Components.StudyDeductionReasonsWidget">
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
Classes="surface-translucent-strong"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
CornerRadius="22"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
Padding="12,10"
|
BorderThickness="1"
|
||||||
ClipToBounds="True">
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
|
Padding="14,12">
|
||||||
<Grid x:Name="ContentRootGrid"
|
<Grid x:Name="ContentRootGrid"
|
||||||
RowDefinitions="Auto,*,Auto"
|
RowDefinitions="Auto,*,Auto"
|
||||||
RowSpacing="8">
|
RowSpacing="8">
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
BorderThickness="1"
|
BorderThickness="1"
|
||||||
CornerRadius="18"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
Padding="14,10">
|
Padding="14,10">
|
||||||
<Grid x:Name="LayoutGrid"
|
<Grid x:Name="LayoutGrid"
|
||||||
ColumnDefinitions="*,Auto"
|
ColumnDefinitions="*,Auto"
|
||||||
|
|||||||
@@ -7,10 +7,11 @@
|
|||||||
d:DesignHeight="220"
|
d:DesignHeight="220"
|
||||||
x:Class="LanMountainDesktop.Views.Components.StudyInterruptDensityWidget">
|
x:Class="LanMountainDesktop.Views.Components.StudyInterruptDensityWidget">
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
Classes="surface-translucent-strong"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
CornerRadius="22"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
Padding="14,10"
|
BorderThickness="1"
|
||||||
ClipToBounds="True">
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
|
Padding="14,12">
|
||||||
<Grid x:Name="ContentRootGrid"
|
<Grid x:Name="ContentRootGrid"
|
||||||
RowDefinitions="Auto,*,Auto"
|
RowDefinitions="Auto,*,Auto"
|
||||||
RowSpacing="8">
|
RowSpacing="8">
|
||||||
|
|||||||
@@ -8,10 +8,11 @@
|
|||||||
d:DesignHeight="320"
|
d:DesignHeight="320"
|
||||||
x:Class="LanMountainDesktop.Views.Components.StudyNoiseCurveWidget">
|
x:Class="LanMountainDesktop.Views.Components.StudyNoiseCurveWidget">
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
Classes="surface-translucent-strong"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
CornerRadius="24"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
Padding="14,10"
|
BorderThickness="1"
|
||||||
ClipToBounds="True">
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
|
Padding="14,12">
|
||||||
<Grid RowDefinitions="Auto,*"
|
<Grid RowDefinitions="Auto,*"
|
||||||
RowSpacing="8">
|
RowSpacing="8">
|
||||||
<Grid Grid.Row="0"
|
<Grid Grid.Row="0"
|
||||||
|
|||||||
@@ -8,10 +8,11 @@
|
|||||||
d:DesignHeight="320"
|
d:DesignHeight="320"
|
||||||
x:Class="LanMountainDesktop.Views.Components.StudyNoiseDistributionWidget">
|
x:Class="LanMountainDesktop.Views.Components.StudyNoiseDistributionWidget">
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
Classes="surface-translucent-strong"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
CornerRadius="24"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
Padding="14,10"
|
BorderThickness="1"
|
||||||
ClipToBounds="True">
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
|
Padding="14,12">
|
||||||
<Grid x:Name="ContentRootGrid"
|
<Grid x:Name="ContentRootGrid"
|
||||||
RowDefinitions="Auto,*"
|
RowDefinitions="Auto,*"
|
||||||
RowSpacing="8">
|
RowSpacing="8">
|
||||||
|
|||||||
@@ -7,10 +7,11 @@
|
|||||||
d:DesignHeight="360"
|
d:DesignHeight="360"
|
||||||
x:Class="LanMountainDesktop.Views.Components.StudyScoreOverviewWidget">
|
x:Class="LanMountainDesktop.Views.Components.StudyScoreOverviewWidget">
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
Classes="surface-translucent-strong"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
CornerRadius="24"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
Padding="16,14"
|
BorderThickness="1"
|
||||||
ClipToBounds="True">
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
|
Padding="14,12">
|
||||||
<Grid x:Name="ContentRootGrid"
|
<Grid x:Name="ContentRootGrid"
|
||||||
RowDefinitions="Auto,Auto,*,Auto"
|
RowDefinitions="Auto,Auto,*,Auto"
|
||||||
RowSpacing="8">
|
RowSpacing="8">
|
||||||
|
|||||||
@@ -8,8 +8,10 @@
|
|||||||
d:DesignHeight="150"
|
d:DesignHeight="150"
|
||||||
x:Class="LanMountainDesktop.Views.Components.StudySessionControlWidget">
|
x:Class="LanMountainDesktop.Views.Components.StudySessionControlWidget">
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
Classes="surface-translucent-strong"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
CornerRadius="18"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
|
BorderThickness="1"
|
||||||
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
Padding="14,10"
|
Padding="14,10"
|
||||||
ClipToBounds="True">
|
ClipToBounds="True">
|
||||||
<Grid x:Name="LayoutGrid"
|
<Grid x:Name="LayoutGrid"
|
||||||
|
|||||||
@@ -7,10 +7,11 @@
|
|||||||
d:DesignHeight="220"
|
d:DesignHeight="220"
|
||||||
x:Class="LanMountainDesktop.Views.Components.StudySessionHistoryWidget">
|
x:Class="LanMountainDesktop.Views.Components.StudySessionHistoryWidget">
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
Classes="surface-translucent-strong"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
CornerRadius="22"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
Padding="12,10"
|
BorderThickness="1"
|
||||||
ClipToBounds="True">
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
|
Padding="14,12">
|
||||||
<Grid>
|
<Grid>
|
||||||
<Grid x:Name="ContentRootGrid"
|
<Grid x:Name="ContentRootGrid"
|
||||||
RowDefinitions="Auto,*,Auto"
|
RowDefinitions="Auto,*,Auto"
|
||||||
|
|||||||
@@ -8,10 +8,11 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.TimerWidget">
|
x:Class="LanMountainDesktop.Views.Components.TimerWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="34"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
ClipToBounds="True"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
Padding="14"
|
BorderThickness="1"
|
||||||
Background="#E8EAEE">
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
|
Padding="14,12">
|
||||||
<Viewbox Stretch="Uniform">
|
<Viewbox Stretch="Uniform">
|
||||||
<Grid x:Name="LayoutRoot"
|
<Grid x:Name="LayoutRoot"
|
||||||
Width="300"
|
Width="300"
|
||||||
|
|||||||
@@ -8,12 +8,12 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.WeatherClockWidget">
|
x:Class="LanMountainDesktop.Views.Components.WeatherClockWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
Background="#FFFFFF"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
BorderBrush="#14000000"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
BorderThickness="1"
|
BorderThickness="1"
|
||||||
CornerRadius="22"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
Padding="12,8">
|
Padding="14,12">
|
||||||
<Grid x:Name="ContentGrid"
|
<Grid x:Name="ContentGrid"
|
||||||
ColumnDefinitions="*,Auto"
|
ColumnDefinitions="*,Auto"
|
||||||
ColumnSpacing="10">
|
ColumnSpacing="10">
|
||||||
|
|||||||
@@ -9,16 +9,16 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.WeatherWidget">
|
x:Class="LanMountainDesktop.Views.Components.WeatherWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="30"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
Background="#68A9EC">
|
Background="#6B7B8F">
|
||||||
<Grid>
|
<Grid>
|
||||||
<Border x:Name="BackgroundImageLayer"
|
<Border x:Name="BackgroundImageLayer"
|
||||||
CornerRadius="30"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True" />
|
ClipToBounds="True" />
|
||||||
|
|
||||||
<Border x:Name="BackgroundMotionLayer"
|
<Border x:Name="BackgroundMotionLayer"
|
||||||
CornerRadius="30"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
Opacity="0.20"
|
Opacity="0.20"
|
||||||
RenderTransformOrigin="0.5,0.5">
|
RenderTransformOrigin="0.5,0.5">
|
||||||
|
|||||||
@@ -11,10 +11,12 @@
|
|||||||
|
|
||||||
<Grid>
|
<Grid>
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
Background="#F1F4F9"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
CornerRadius="20"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
|
BorderThickness="1"
|
||||||
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
Padding="8">
|
Padding="12">
|
||||||
<Grid RowDefinitions="*,Auto"
|
<Grid RowDefinitions="*,Auto"
|
||||||
RowSpacing="8">
|
RowSpacing="8">
|
||||||
<Border x:Name="CanvasBorder"
|
<Border x:Name="CanvasBorder"
|
||||||
|
|||||||
@@ -8,12 +8,11 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.WorldClockWidget">
|
x:Class="LanMountainDesktop.Views.Components.WorldClockWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
Background="#F4F5F7"
|
Background="{DynamicResource AdaptiveSurfaceRaisedBrush}"
|
||||||
BorderBrush="#16000000"
|
BorderBrush="{DynamicResource AdaptiveButtonBorderBrush}"
|
||||||
BorderThickness="1"
|
BorderThickness="1"
|
||||||
CornerRadius="26"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True"
|
Padding="14,12">
|
||||||
Padding="10,8">
|
|
||||||
<Grid x:Name="ClockHostGrid"
|
<Grid x:Name="ClockHostGrid"
|
||||||
ColumnDefinitions="*,*,*,*"
|
ColumnDefinitions="*,*,*,*"
|
||||||
ColumnSpacing="8" />
|
ColumnSpacing="8" />
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
x:Class="LanMountainDesktop.Views.Components.ZhiJiaoHubWidget">
|
x:Class="LanMountainDesktop.Views.Components.ZhiJiaoHubWidget">
|
||||||
|
|
||||||
<Border x:Name="RootBorder"
|
<Border x:Name="RootBorder"
|
||||||
CornerRadius="{DynamicResource DesignCornerRadiusXs}"
|
CornerRadius="{DynamicResource DesignCornerRadiusComponent}"
|
||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
BorderThickness="0"
|
BorderThickness="0"
|
||||||
Background="#1A1A1A">
|
Background="#1A1A1A">
|
||||||
|
|||||||
@@ -340,7 +340,7 @@ public sealed class PluginLoader
|
|||||||
{
|
{
|
||||||
var defaultSnapshot = new PluginAppearanceSnapshot(
|
var defaultSnapshot = new PluginAppearanceSnapshot(
|
||||||
GlobalCornerRadiusScale: 1d,
|
GlobalCornerRadiusScale: 1d,
|
||||||
CornerRadiusTokens: new PluginCornerRadiusTokens(6, 10, 14, 18, 24, 30, 36),
|
CornerRadiusTokens: new PluginCornerRadiusTokens(6, 12, 14, 20, 28, 32, 36, 18),
|
||||||
ThemeVariant: "Unknown");
|
ThemeVariant: "Unknown");
|
||||||
|
|
||||||
if (hostServices?.GetService(typeof(IAppearanceThemeService)) is not IAppearanceThemeService appearanceThemeService)
|
if (hostServices?.GetService(typeof(IAppearanceThemeService)) is not IAppearanceThemeService appearanceThemeService)
|
||||||
|
|||||||
@@ -515,12 +515,34 @@ internal sealed class PluginMarketEmbeddedView : UserControl, IDisposable
|
|||||||
Background = isSelected ? SelectedSurfaceBrush : SurfaceBrush,
|
Background = isSelected ? SelectedSurfaceBrush : SurfaceBrush,
|
||||||
BorderBrush = isSelected ? SelectedBorderBrush : CardBorderBrush,
|
BorderBrush = isSelected ? SelectedBorderBrush : CardBorderBrush,
|
||||||
BorderThickness = new Thickness(1),
|
BorderThickness = new Thickness(1),
|
||||||
CornerRadius = ResolveCornerRadiusResource("DesignCornerRadiusMd", 18),
|
CornerRadius = ResolveCornerRadiusResource("DesignCornerRadiusComponent", 18),
|
||||||
Padding = new Thickness(14),
|
Padding = new Thickness(14),
|
||||||
Child = layoutGrid
|
Child = layoutGrid
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private Control CreateDetailInfoRow(Control icon, Control infoStack)
|
||||||
|
{
|
||||||
|
return new Border
|
||||||
|
{
|
||||||
|
Background = SurfaceBrush,
|
||||||
|
BorderBrush = CardBorderBrush,
|
||||||
|
BorderThickness = new Thickness(1),
|
||||||
|
CornerRadius = ResolveCornerRadiusResource("DesignCornerRadiusComponent", 16),
|
||||||
|
Padding = new Thickness(14, 12),
|
||||||
|
Child = new Grid
|
||||||
|
{
|
||||||
|
ColumnDefinitions = new ColumnDefinitions("Auto,*"),
|
||||||
|
ColumnSpacing = 12,
|
||||||
|
Children =
|
||||||
|
{
|
||||||
|
icon,
|
||||||
|
infoStack
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
private void BuildDetailPanel()
|
private void BuildDetailPanel()
|
||||||
{
|
{
|
||||||
if (_selectedPlugin is null)
|
if (_selectedPlugin is null)
|
||||||
@@ -617,7 +639,7 @@ internal sealed class PluginMarketEmbeddedView : UserControl, IDisposable
|
|||||||
Background = SurfaceBrush,
|
Background = SurfaceBrush,
|
||||||
BorderBrush = CardBorderBrush,
|
BorderBrush = CardBorderBrush,
|
||||||
BorderThickness = new Thickness(1),
|
BorderThickness = new Thickness(1),
|
||||||
CornerRadius = ResolveCornerRadiusResource("DesignCornerRadiusMd", 16),
|
CornerRadius = ResolveCornerRadiusResource("DesignCornerRadiusComponent", 16),
|
||||||
Padding = new Thickness(16),
|
Padding = new Thickness(16),
|
||||||
Child = new TextBlock
|
Child = new TextBlock
|
||||||
{
|
{
|
||||||
@@ -1011,7 +1033,7 @@ internal sealed class PluginMarketEmbeddedView : UserControl, IDisposable
|
|||||||
return new Border
|
return new Border
|
||||||
{
|
{
|
||||||
Background = SurfaceBrush,
|
Background = SurfaceBrush,
|
||||||
CornerRadius = ResolveCornerRadiusResource("DesignCornerRadiusMd", 18),
|
CornerRadius = ResolveCornerRadiusResource("DesignCornerRadiusComponent", 18),
|
||||||
Padding = new Thickness(padding)
|
Padding = new Thickness(padding)
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@@ -1021,7 +1043,7 @@ internal sealed class PluginMarketEmbeddedView : UserControl, IDisposable
|
|||||||
return new Border
|
return new Border
|
||||||
{
|
{
|
||||||
Background = SurfaceBrush,
|
Background = SurfaceBrush,
|
||||||
CornerRadius = ResolveCornerRadiusResource("DesignCornerRadiusMd", 16),
|
CornerRadius = ResolveCornerRadiusResource("DesignCornerRadiusComponent", 16),
|
||||||
BorderBrush = CardBorderBrush,
|
BorderBrush = CardBorderBrush,
|
||||||
BorderThickness = new Thickness(1),
|
BorderThickness = new Thickness(1),
|
||||||
Padding = new Thickness(18),
|
Padding = new Thickness(18),
|
||||||
@@ -1124,7 +1146,7 @@ internal sealed class PluginMarketEmbeddedView : UserControl, IDisposable
|
|||||||
Background = SurfaceBrush,
|
Background = SurfaceBrush,
|
||||||
BorderBrush = CardBorderBrush,
|
BorderBrush = CardBorderBrush,
|
||||||
BorderThickness = new Thickness(1),
|
BorderThickness = new Thickness(1),
|
||||||
CornerRadius = ResolveCornerRadiusResource("DesignCornerRadiusSm", 14),
|
CornerRadius = ResolveCornerRadiusResource("DesignCornerRadiusComponent", 14),
|
||||||
Padding = new Thickness(14),
|
Padding = new Thickness(14),
|
||||||
Child = new StackPanel
|
Child = new StackPanel
|
||||||
{
|
{
|
||||||
@@ -1154,7 +1176,7 @@ internal sealed class PluginMarketEmbeddedView : UserControl, IDisposable
|
|||||||
Background = SurfaceBrush,
|
Background = SurfaceBrush,
|
||||||
BorderBrush = CardBorderBrush,
|
BorderBrush = CardBorderBrush,
|
||||||
BorderThickness = new Thickness(1),
|
BorderThickness = new Thickness(1),
|
||||||
CornerRadius = ResolveCornerRadiusResource("DesignCornerRadiusSm", 14),
|
CornerRadius = ResolveCornerRadiusResource("DesignCornerRadiusComponent", 14),
|
||||||
Padding = new Thickness(14),
|
Padding = new Thickness(14),
|
||||||
Child = new StackPanel
|
Child = new StackPanel
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -10,6 +10,7 @@
|
|||||||
- Level 2:16px,小型色块和紧凑控件
|
- Level 2:16px,小型色块和紧凑控件
|
||||||
- Level 3:20px,普通按钮
|
- Level 3:20px,普通按钮
|
||||||
- Level 4:24px,输入面板和小型容器
|
- Level 4:24px,输入面板和小型容器
|
||||||
|
- Component:18px,桌面组件的标准圆角(默认值)
|
||||||
- Level 5:28px,普通玻璃面板
|
- Level 5:28px,普通玻璃面板
|
||||||
- Level 6:32px,强化容器
|
- Level 6:32px,强化容器
|
||||||
- Level 7:36px,大容器、窗口、任务栏
|
- Level 7:36px,大容器、窗口、任务栏
|
||||||
|
|||||||
Reference in New Issue
Block a user