mirror of
https://github.com/wwiinnddyy/LanMountainDesktop.git
synced 2026-06-22 09:14:25 +08:00
Add CODE_WIKI and update localization
Add a comprehensive CODE_WIKI.md documenting project architecture, modules, startup flow, plugin system, testing and developer workflows. Update localization resources (en-US.json, zh-CN.json) with new/translated keys for wallpaper controls (custom color UI), material & color settings (semantic roles, surfaces, refresh/polling state), appearance (corner radius), status bar font size options, privacy policy text, component library labels, clock settings, and new language entry (Korean). Also modify settings-related ViewModels and Settings page views to surface these new features and texts (MaterialColorSettingsPageViewModel.cs, SettingsViewModels.cs, WallpaperSettingsPageViewModel.cs, MainWindow.SettingsHardCut.Stubs.cs, ComponentsSettingsPage.axaml, WallpaperSettingsPage.axaml).
This commit is contained in:
@@ -57,6 +57,8 @@
|
||||
"settings.wallpaper.refresh.12h": "12 hours",
|
||||
"settings.wallpaper.refresh.24h": "24 hours",
|
||||
"settings.wallpaper.color_label": "Wallpaper Color",
|
||||
"settings.wallpaper.custom_color_tooltip": "Custom color",
|
||||
"settings.wallpaper.custom_color_apply": "Apply",
|
||||
"settings.wallpaper.placement_label": "Placement",
|
||||
"settings.wallpaper.placement_desc": "Adjust how the image fills the desktop.",
|
||||
"settings.wallpaper.pick_button": "Browse Files",
|
||||
@@ -332,6 +334,7 @@
|
||||
"settings.region.language_zh": "Chinese",
|
||||
"settings.region.language_en": "English",
|
||||
"settings.region.language_ja": "Japanese",
|
||||
"settings.region.language_ko": "Korean",
|
||||
"settings.region.timezone_header": "Time Zone",
|
||||
"settings.region.timezone_desc": "Select a time zone. Clock and calendar widgets will follow this zone.",
|
||||
"settings.region.applied_format": "Language switched to: {0}",
|
||||
@@ -370,8 +373,11 @@
|
||||
"settings.appearance.theme_color_preview.app": "Currently previewing colors extracted from the app wallpaper.",
|
||||
"settings.appearance.theme_color_preview.system": "Currently previewing colors extracted from the system wallpaper.",
|
||||
"settings.appearance.theme_color_preview.fallback": "No usable wallpaper was found. The app is using a fallback accent.",
|
||||
"settings.appearance.corner_radius.label": "Global corner radius style",
|
||||
"settings.appearance.corner_radius.description": "Select a fixed corner radius style inspired by Xiaomi HyperOS.",
|
||||
"component.color_scheme.follow_system": "Follow system color scheme",
|
||||
"component.color_scheme.native": "Use component custom color scheme",
|
||||
"component.settings.color_scheme": "Color Scheme",
|
||||
"settings.appearance.system_material.auto": "Auto (recommended)",
|
||||
"settings.appearance.system_material.none": "None",
|
||||
"settings.appearance.system_material.mica": "Mica",
|
||||
@@ -398,6 +404,37 @@
|
||||
"settings.material_color.system_material.none": "None",
|
||||
"settings.material_color.system_material.mica": "Mica",
|
||||
"settings.material_color.system_material.acrylic": "Acrylic",
|
||||
"settings.material_color.source.fallback": "Fallback",
|
||||
"settings.material_color.role.accent": "Accent",
|
||||
"settings.material_color.role.primary": "Primary",
|
||||
"settings.material_color.role.secondary": "Secondary",
|
||||
"settings.material_color.role.surface": "Surface",
|
||||
"settings.material_color.role.text": "Text",
|
||||
"settings.material_color.role.toggle": "Toggle",
|
||||
"settings.material_color.surface.detail_format": "A={0:X2} Blur={1:0}",
|
||||
"settings.material_color.title": "Material & Color",
|
||||
"settings.material_color.description": "Unify Monet, wallpaper colors, semantic roles, and material surfaces.",
|
||||
"settings.material_color.source.label": "Color source",
|
||||
"settings.material_color.source.description": "Choose the single source used by app surfaces, components, and plugins.",
|
||||
"settings.material_color.custom_seed.label": "Custom Monet seed",
|
||||
"settings.material_color.wallpaper_source.label": "Wallpaper color source",
|
||||
"settings.material_color.wallpaper_seed.label": "Seed",
|
||||
"settings.material_color.system_material.label": "System material",
|
||||
"settings.material_color.system_material.description": "Apply the selected material mode to windows and host surfaces.",
|
||||
"settings.material_color.native_events.label": "Native wallpaper change events",
|
||||
"settings.material_color.native_events.description": "Use OS wallpaper notifications first and keep polling as fallback.",
|
||||
"settings.material_color.native_events.active": "Native wallpaper events active",
|
||||
"settings.material_color.native_events.polling": "Polling fallback active",
|
||||
"settings.material_color.native_events.inactive": "Wallpaper monitoring inactive",
|
||||
"settings.material_color.refresh_interval.label": "Polling interval",
|
||||
"settings.material_color.refresh_now": "Refresh colors",
|
||||
"settings.material_color.preview.header": "Unified preview",
|
||||
"settings.material_color.source_status.header": "Resolved source",
|
||||
"settings.material_color.semantic.header": "Semantic colors",
|
||||
"settings.material_color.surfaces.header": "Material surfaces",
|
||||
"settings.material_color.wallpaper_source.auto": "Auto",
|
||||
"settings.material_color.wallpaper_source.app": "App wallpaper",
|
||||
"settings.material_color.wallpaper_source.system": "System wallpaper",
|
||||
"settings.wallpaper.placement.fill": "Fill",
|
||||
"settings.wallpaper.placement.fit": "Fit",
|
||||
"settings.wallpaper.placement.stretch": "Stretch",
|
||||
@@ -430,6 +467,11 @@
|
||||
"settings.status_bar.network_speed_mode.download": "Download only",
|
||||
"settings.status_bar.network_speed_transparent_background_label": "Transparent background",
|
||||
"settings.status_bar.show_network_type_icon_label": "Show network type icon",
|
||||
"settings.status_bar.clock_font_size_label": "Clock font size",
|
||||
"settings.status_bar.network_speed_font_size_label": "Network speed font size",
|
||||
"settings.status_bar.font_size.small": "Small",
|
||||
"settings.status_bar.font_size.medium": "Medium",
|
||||
"settings.status_bar.font_size.large": "Large",
|
||||
"settings.status_bar.shadow_header": "Status Bar Shadow",
|
||||
"settings.status_bar.shadow_desc": "Add shadow effect to the status bar for better visibility of transparent components.",
|
||||
"settings.status_bar.shadow_enabled_label": "Enable shadow",
|
||||
@@ -453,6 +495,7 @@
|
||||
"settings.components.corner_radius.header": "Corner Design",
|
||||
"settings.components.corner_radius.label": "Component Corner Radius",
|
||||
"settings.components.corner_radius.description": "Adjust the shared corner radius from a square edge to a capsule-like shape, and expand the internal safe area with it.",
|
||||
"settings.components.corner_radius.spec_tooltip": "View Corner Radius Specification",
|
||||
"settings.update.title": "Update",
|
||||
"settings.update.current_version_label": "Current Version",
|
||||
"settings.update.latest_version_label": "Latest Release",
|
||||
@@ -597,6 +640,11 @@
|
||||
"settings.notifications.test.message_error": "Something went wrong. Please try again.",
|
||||
"settings.notifications.test.title_default": "Test notification",
|
||||
"settings.notifications.test.message_default": "This is a test notification.",
|
||||
"settings.privacy.policy_title": "Privacy Policy",
|
||||
"settings.privacy.policy_description": "LanMountainDesktop values your privacy. We do not collect personal data without your consent.",
|
||||
"settings.privacy.policy_loading": "Loading privacy policy...",
|
||||
"settings.privacy.policy_error": "Failed to load privacy policy.",
|
||||
"settings.privacy.telemetry_id_title": "Telemetry ID",
|
||||
"settings.dev.title": "Developer",
|
||||
"settings.dev.description": "Debugging, diagnostics, and local plugin development options.",
|
||||
"settings.dev.infobar.title": "Preview and developer features",
|
||||
@@ -813,9 +861,13 @@
|
||||
"tooltip.component_library": "Edit Desktop",
|
||||
"component_library.title": "Widgets",
|
||||
"component_library.empty": "Swipe to pick a category, tap to open, then drag a widget onto the desktop.",
|
||||
"component_library.components_none": "No components.",
|
||||
"component_library.drag_hint": "Drag to place",
|
||||
"component_library.preview_unavailable": "Preview unavailable",
|
||||
"component.delete": "Delete",
|
||||
"component.edit": "Edit",
|
||||
"component.move": "Move",
|
||||
"component.resize": "Resize",
|
||||
"component.editor.instance_scope": "Changes apply to this component instance only.",
|
||||
"component.editor.info_header": "Component Info",
|
||||
"component.editor.id_label": "Component ID",
|
||||
@@ -886,6 +938,9 @@
|
||||
"desktop_clock.settings.desc": "Choose the time zone for the single clock.",
|
||||
"desktop_clock.settings.timezone_label": "Time Zone",
|
||||
"desktop_clock.settings.second_mode_label": "Second Hand",
|
||||
"clock.settings.desc": "Configure the time zone and second hand animation.",
|
||||
"clock.settings.timezone": "Time Zone",
|
||||
"clock.settings.second_mode_label": "Second Hand",
|
||||
"clock.second_mode.tick": "Tick",
|
||||
"clock.second_mode.sweep": "Sweep",
|
||||
"poetry.widget.loading_content": "Loading poetry...",
|
||||
|
||||
@@ -72,6 +72,7 @@
|
||||
"settings.wallpaper.video_not_found": "未找到视频壁纸文件。",
|
||||
"settings.wallpaper.video_player_unavailable": "视频播放器不可用。",
|
||||
"settings.wallpaper.video_play_failed_format": "播放视频壁纸失败:{0}",
|
||||
"settings.wallpaper.video_mode": "视频壁纸使用自动填充模式。",
|
||||
"settings.wallpaper.unsupported_file": "所选文件类型不受支持。",
|
||||
"settings.wallpaper.apply_failed_format": "应用壁纸失败:{0}",
|
||||
"settings.wallpaper.mode_format": "壁纸模式:{0}。",
|
||||
@@ -333,6 +334,7 @@
|
||||
"settings.region.language_zh": "中文",
|
||||
"settings.region.language_en": "英文",
|
||||
"settings.region.language_ja": "日文",
|
||||
"settings.region.language_ko": "韩文",
|
||||
"settings.region.timezone_header": "时区",
|
||||
"settings.region.timezone_desc": "选择时区。时钟与日历组件会使用该时区。",
|
||||
"settings.region.applied_format": "语言已切换为:{0}",
|
||||
@@ -371,12 +373,15 @@
|
||||
"settings.appearance.theme_color_preview.app": "当前正在预览从应用壁纸提取的颜色。",
|
||||
"settings.appearance.theme_color_preview.system": "当前正在预览从系统壁纸提取的颜色。",
|
||||
"settings.appearance.theme_color_preview.fallback": "没有可用壁纸,当前使用回退强调色。",
|
||||
"settings.appearance.corner_radius.label": "全局圆角样式",
|
||||
"settings.appearance.corner_radius.description": "选择固定的全局圆角样式,受 HyperOS 启发。",
|
||||
"component.color_scheme.follow_system": "跟随系统配色",
|
||||
"component.color_scheme.native": "使用组件自定义配色",
|
||||
"component.settings.color_scheme": "配色方案",
|
||||
"settings.appearance.system_material.auto": "自动(推荐)",
|
||||
"settings.appearance.system_material.none": "无",
|
||||
"settings.appearance.system_material.mica": "Mica",
|
||||
"settings.appearance.system_material.acrylic": "Acrylic",
|
||||
"settings.appearance.system_material.mica": "云母",
|
||||
"settings.appearance.system_material.acrylic": "亚克力",
|
||||
"settings.appearance.system_material_desc.switchable": "将所选材质应用到窗口、Dock、状态栏和组件宿主背板。",
|
||||
"settings.appearance.system_material_desc.fixed": "当前系统仅提供这里列出的材质模式。",
|
||||
"settings.appearance.system_material_desc.auto": "自动模式会在 Windows 11 优先使用 Mica,在 Windows 10 优先使用 Acrylic,不可用时回退到无材质。",
|
||||
@@ -391,14 +396,46 @@
|
||||
"settings.appearance.preview.apply_seed": "应用",
|
||||
"settings.appearance.preview.wallpaper_candidates": "壁纸候选主题色",
|
||||
"settings.appearance.preview.wallpaper_current": "当前",
|
||||
"settings.material_color.preview.wallpaper_current": "Current",
|
||||
"settings.material_color.theme_color_mode.neutral": "Default neutral",
|
||||
"settings.material_color.theme_color_mode.user": "User theme color Monet",
|
||||
"settings.material_color.theme_color_mode.wallpaper": "Wallpaper Monet",
|
||||
"settings.material_color.system_material.auto": "Auto (recommended)",
|
||||
"settings.material_color.system_material.none": "None",
|
||||
"settings.material_color.preview.wallpaper_current": "当前",
|
||||
"settings.material_color.theme_color_mode.neutral": "默认中性",
|
||||
"settings.material_color.theme_color_mode.user": "用户主题色 Monet",
|
||||
"settings.material_color.theme_color_mode.wallpaper": "壁纸 Monet",
|
||||
"settings.material_color.system_material.auto": "自动(推荐)",
|
||||
"settings.material_color.system_material.none": "无",
|
||||
"settings.material_color.system_material.mica": "Mica",
|
||||
"settings.material_color.system_material.acrylic": "Acrylic", "settings.wallpaper.placement.fill": "填充",
|
||||
"settings.material_color.system_material.acrylic": "亚克力",
|
||||
"settings.material_color.source.fallback": "回退",
|
||||
"settings.material_color.role.accent": "强调色",
|
||||
"settings.material_color.role.primary": "主色",
|
||||
"settings.material_color.role.secondary": "次色",
|
||||
"settings.material_color.role.surface": "表面",
|
||||
"settings.material_color.role.text": "文字",
|
||||
"settings.material_color.role.toggle": "开关",
|
||||
"settings.material_color.surface.detail_format": "Alpha={0:X2} 模糊={1:0}",
|
||||
"settings.material_color.title": "材质与颜色",
|
||||
"settings.material_color.description": "统一莫奈色、壁纸颜色、语义角色和材质表面。",
|
||||
"settings.material_color.source.label": "颜色来源",
|
||||
"settings.material_color.source.description": "选择应用表面、组件和插件使用的单一来源。",
|
||||
"settings.material_color.custom_seed.label": "自定义莫奈种子色",
|
||||
"settings.material_color.wallpaper_source.label": "壁纸颜色来源",
|
||||
"settings.material_color.wallpaper_seed.label": "种子色",
|
||||
"settings.material_color.system_material.label": "系统材质",
|
||||
"settings.material_color.system_material.description": "将所选材质模式应用到窗口和宿主表面。",
|
||||
"settings.material_color.native_events.label": "原生壁纸变更事件",
|
||||
"settings.material_color.native_events.description": "优先使用操作系统壁纸通知,并保持轮询作为回退。",
|
||||
"settings.material_color.native_events.active": "原生壁纸事件已激活",
|
||||
"settings.material_color.native_events.polling": "轮询回退已激活",
|
||||
"settings.material_color.native_events.inactive": "壁纸监控未激活",
|
||||
"settings.material_color.refresh_interval.label": "轮询间隔",
|
||||
"settings.material_color.refresh_now": "刷新颜色",
|
||||
"settings.material_color.preview.header": "统一预览",
|
||||
"settings.material_color.source_status.header": "已解析来源",
|
||||
"settings.material_color.semantic.header": "语义颜色",
|
||||
"settings.material_color.surfaces.header": "材质表面",
|
||||
"settings.material_color.wallpaper_source.auto": "自动",
|
||||
"settings.material_color.wallpaper_source.app": "应用壁纸",
|
||||
"settings.material_color.wallpaper_source.system": "系统壁纸",
|
||||
"settings.wallpaper.placement.fill": "填充",
|
||||
"settings.wallpaper.placement.fit": "适应",
|
||||
"settings.wallpaper.placement.stretch": "拉伸",
|
||||
"settings.wallpaper.placement.center": "居中",
|
||||
@@ -430,6 +467,11 @@
|
||||
"settings.status_bar.network_speed_mode.download": "仅下载",
|
||||
"settings.status_bar.network_speed_transparent_background_label": "透明背景",
|
||||
"settings.status_bar.show_network_type_icon_label": "显示网络类型图标",
|
||||
"settings.status_bar.clock_font_size_label": "时钟字号",
|
||||
"settings.status_bar.network_speed_font_size_label": "网速字号",
|
||||
"settings.status_bar.font_size.small": "小",
|
||||
"settings.status_bar.font_size.medium": "中",
|
||||
"settings.status_bar.font_size.large": "大",
|
||||
"settings.status_bar.shadow_header": "状态栏阴影",
|
||||
"settings.status_bar.shadow_desc": "为状态栏添加阴影效果,使透明背景的组件更清晰。",
|
||||
"settings.status_bar.shadow_enabled_label": "启用阴影",
|
||||
@@ -453,6 +495,7 @@
|
||||
"settings.components.corner_radius.header": "圆角设计",
|
||||
"settings.components.corner_radius.label": "组件圆角",
|
||||
"settings.components.corner_radius.description": "将组件容器圆角从直角连续调到接近胶囊的形态,并随圆角增大同步扩展内部安全区。",
|
||||
"settings.components.corner_radius.spec_tooltip": "查看圆角规范",
|
||||
"settings.update.title": "更新",
|
||||
"settings.update.current_version_label": "当前版本",
|
||||
"settings.update.latest_version_label": "最新发布",
|
||||
@@ -605,6 +648,11 @@
|
||||
"settings.notifications.test.message_error": "操作失败,请重试。",
|
||||
"settings.notifications.test.title_default": "测试通知",
|
||||
"settings.notifications.test.message_default": "这是一条测试通知。",
|
||||
"settings.privacy.policy_title": "隐私政策",
|
||||
"settings.privacy.policy_description": "阑山桌面尊重您的隐私。未经您的同意,我们不会收集个人数据。",
|
||||
"settings.privacy.policy_loading": "正在加载隐私政策...",
|
||||
"settings.privacy.policy_error": "加载隐私政策失败。",
|
||||
"settings.privacy.telemetry_id_title": "遥测 ID",
|
||||
"settings.dev.title": "开发者",
|
||||
"settings.dev.description": "调试、诊断与本地插件开发相关选项。",
|
||||
"settings.dev.infobar.title": "预览与开发者功能",
|
||||
@@ -813,9 +861,13 @@
|
||||
"tooltip.component_library": "桌面编辑",
|
||||
"component_library.title": "桌面编辑",
|
||||
"component_library.empty": "左右滑动选择类别,点击进入,然后拖动组件到桌面放置。",
|
||||
"component_library.components_none": "暂无组件",
|
||||
"component_library.drag_hint": "拖动放置",
|
||||
"component_library.preview_unavailable": "预览不可用",
|
||||
"component.delete": "删除",
|
||||
"component.edit": "编辑",
|
||||
"component.move": "移动",
|
||||
"component.resize": "调整大小",
|
||||
"component.editor.instance_scope": "设置仅对当前组件实例生效。",
|
||||
"component.editor.info_header": "组件信息",
|
||||
"component.editor.id_label": "组件 ID",
|
||||
@@ -885,6 +937,9 @@
|
||||
"desktop_clock.settings.desc": "为单时钟选择时区。",
|
||||
"desktop_clock.settings.timezone_label": "时区",
|
||||
"desktop_clock.settings.second_mode_label": "秒针方式",
|
||||
"clock.settings.desc": "配置时钟组件的时区和秒针动画。",
|
||||
"clock.settings.timezone": "时区",
|
||||
"clock.settings.second_mode_label": "秒针方式",
|
||||
"clock.second_mode.tick": "跳针",
|
||||
"clock.second_mode.sweep": "扫针",
|
||||
"poetry.widget.loading_content": "正在加载诗词",
|
||||
|
||||
@@ -13,12 +13,12 @@ namespace LanMountainDesktop.ViewModels;
|
||||
|
||||
public sealed class MaterialSurfacePreviewOption
|
||||
{
|
||||
public MaterialSurfacePreviewOption(string label, MaterialSurfaceSnapshot surface)
|
||||
public MaterialSurfacePreviewOption(string label, MaterialSurfaceSnapshot surface, string detailFormat)
|
||||
{
|
||||
Label = label;
|
||||
BackgroundBrush = new SolidColorBrush(surface.BackgroundColor);
|
||||
BorderBrush = new SolidColorBrush(surface.BorderColor);
|
||||
Detail = $"A={surface.BackgroundColor.A:X2} Blur={surface.BlurRadius:0}";
|
||||
Detail = string.Format(CultureInfo.CurrentCulture, detailFormat, surface.BackgroundColor.A, surface.BlurRadius);
|
||||
}
|
||||
|
||||
public string Label { get; }
|
||||
@@ -232,6 +232,30 @@ public sealed partial class MaterialColorSettingsPageViewModel : ViewModelBase
|
||||
[ObservableProperty]
|
||||
private string _materialAcrylicText = string.Empty;
|
||||
|
||||
[ObservableProperty]
|
||||
private string _sourceFallbackText = string.Empty;
|
||||
|
||||
[ObservableProperty]
|
||||
private string _colorRoleAccentText = string.Empty;
|
||||
|
||||
[ObservableProperty]
|
||||
private string _colorRolePrimaryText = string.Empty;
|
||||
|
||||
[ObservableProperty]
|
||||
private string _colorRoleSecondaryText = string.Empty;
|
||||
|
||||
[ObservableProperty]
|
||||
private string _colorRoleSurfaceText = string.Empty;
|
||||
|
||||
[ObservableProperty]
|
||||
private string _colorRoleTextText = string.Empty;
|
||||
|
||||
[ObservableProperty]
|
||||
private string _colorRoleToggleText = string.Empty;
|
||||
|
||||
[ObservableProperty]
|
||||
private string _surfaceDetailFormat = string.Empty;
|
||||
|
||||
public void Load()
|
||||
{
|
||||
var theme = _settingsFacade.Theme.Get();
|
||||
@@ -401,12 +425,12 @@ public sealed partial class MaterialColorSettingsPageViewModel : ViewModelBase
|
||||
|
||||
ColorRolePreviews =
|
||||
[
|
||||
new MaterialColorRolePreviewOption("Accent", snapshot.Palette.Accent),
|
||||
new MaterialColorRolePreviewOption("Primary", snapshot.Palette.Primary),
|
||||
new MaterialColorRolePreviewOption("Secondary", snapshot.Palette.Secondary),
|
||||
new MaterialColorRolePreviewOption("Surface", snapshot.Palette.SurfaceRaised),
|
||||
new MaterialColorRolePreviewOption("Text", snapshot.Palette.TextPrimary),
|
||||
new MaterialColorRolePreviewOption("Toggle", snapshot.Palette.ToggleOn)
|
||||
new MaterialColorRolePreviewOption(ColorRoleAccentText, snapshot.Palette.Accent),
|
||||
new MaterialColorRolePreviewOption(ColorRolePrimaryText, snapshot.Palette.Primary),
|
||||
new MaterialColorRolePreviewOption(ColorRoleSecondaryText, snapshot.Palette.Secondary),
|
||||
new MaterialColorRolePreviewOption(ColorRoleSurfaceText, snapshot.Palette.SurfaceRaised),
|
||||
new MaterialColorRolePreviewOption(ColorRoleTextText, snapshot.Palette.TextPrimary),
|
||||
new MaterialColorRolePreviewOption(ColorRoleToggleText, snapshot.Palette.ToggleOn)
|
||||
];
|
||||
|
||||
SurfacePreviews = snapshot.Surfaces.Values
|
||||
@@ -415,7 +439,7 @@ public sealed partial class MaterialColorSettingsPageViewModel : ViewModelBase
|
||||
MaterialSurfaceRole.DockBackground or
|
||||
MaterialSurfaceRole.DesktopComponentHost or
|
||||
MaterialSurfaceRole.OverlayPanel)
|
||||
.Select(surface => new MaterialSurfacePreviewOption(surface.Role.ToString(), surface))
|
||||
.Select(surface => new MaterialSurfacePreviewOption(surface.Role.ToString(), surface, SurfaceDetailFormat))
|
||||
.ToArray();
|
||||
}
|
||||
|
||||
@@ -449,7 +473,7 @@ public sealed partial class MaterialColorSettingsPageViewModel : ViewModelBase
|
||||
MaterialColorSourceKind.AppWallpaper => WallpaperSourceAppText,
|
||||
MaterialColorSourceKind.SystemWallpaper => WallpaperSourceSystemText,
|
||||
MaterialColorSourceKind.WallpaperAuto => WallpaperSourceAutoText,
|
||||
_ => L("settings.material_color.source.fallback", "Fallback")
|
||||
_ => SourceFallbackText
|
||||
};
|
||||
}
|
||||
|
||||
@@ -550,9 +574,17 @@ public sealed partial class MaterialColorSettingsPageViewModel : ViewModelBase
|
||||
WallpaperSourceAppText = L("settings.material_color.wallpaper_source.app", "App wallpaper");
|
||||
WallpaperSourceSystemText = L("settings.material_color.wallpaper_source.system", "System wallpaper");
|
||||
MaterialNoneText = L("settings.material_color.system_material.none", "None");
|
||||
MaterialAutoText = L("settings.material_color.system_material.auto", "Auto");
|
||||
MaterialAutoText = L("settings.material_color.system_material.auto", "Auto (recommended)");
|
||||
MaterialMicaText = L("settings.material_color.system_material.mica", "Mica");
|
||||
MaterialAcrylicText = L("settings.material_color.system_material.acrylic", "Acrylic");
|
||||
SourceFallbackText = L("settings.material_color.source.fallback", "Fallback");
|
||||
ColorRoleAccentText = L("settings.material_color.role.accent", "Accent");
|
||||
ColorRolePrimaryText = L("settings.material_color.role.primary", "Primary");
|
||||
ColorRoleSecondaryText = L("settings.material_color.role.secondary", "Secondary");
|
||||
ColorRoleSurfaceText = L("settings.material_color.role.surface", "Surface");
|
||||
ColorRoleTextText = L("settings.material_color.role.text", "Text");
|
||||
ColorRoleToggleText = L("settings.material_color.role.toggle", "Toggle");
|
||||
SurfaceDetailFormat = L("settings.material_color.surface.detail_format", "A={0:X2} Blur={1:0}");
|
||||
}
|
||||
|
||||
private string L(string key, string fallback)
|
||||
|
||||
@@ -929,6 +929,9 @@ public sealed partial class ComponentsSettingsPageViewModel : ViewModelBase
|
||||
[ObservableProperty]
|
||||
private string _cornerRadiusStyleDescription = string.Empty;
|
||||
|
||||
[ObservableProperty]
|
||||
private string _cornerRadiusSpecTooltip = string.Empty;
|
||||
|
||||
public void Load()
|
||||
{
|
||||
var state = _settingsFacade.Grid.Get();
|
||||
@@ -1026,6 +1029,8 @@ public sealed partial class ComponentsSettingsPageViewModel : ViewModelBase
|
||||
CornerRadiusStyleDescription = L(
|
||||
"settings.components.corner_radius.description",
|
||||
"Select a fixed corner radius style (inspired by Xiaomi HyperOS) to ensure consistency across all components.");
|
||||
CornerRadiusSpecTooltip = L("settings.components.corner_radius.spec_tooltip", "View Corner Radius Specification");
|
||||
|
||||
|
||||
CornerRadiusStyleOptions = GlobalAppearanceSettings.AllCornerRadiusStyles
|
||||
.Select(style => new SelectionOption(style, L($"settings.appearance.corner_radius.style_{style.ToLower()}", style)))
|
||||
|
||||
@@ -103,6 +103,9 @@ public sealed partial class WallpaperSettingsPageViewModel : ViewModelBase
|
||||
[ObservableProperty]
|
||||
private IBrush _customColorBrush = new SolidColorBrush(Colors.White);
|
||||
|
||||
[ObservableProperty]
|
||||
private string _customColorTooltip = string.Empty;
|
||||
|
||||
public void Load()
|
||||
{
|
||||
var wallpaper = _settingsFacade.Wallpaper.Get();
|
||||
@@ -338,6 +341,7 @@ public sealed partial class WallpaperSettingsPageViewModel : ViewModelBase
|
||||
WallpaperPlacementDescription = L("settings.wallpaper.placement_desc", "Adjust how the image fills the desktop.");
|
||||
ImportWallpaperButtonText = L("settings.wallpaper.pick_button", "Import Wallpaper");
|
||||
FilePickerTitle = L("filepicker.title", "Select wallpaper");
|
||||
CustomColorTooltip = L("settings.wallpaper.custom_color_tooltip", "Custom color");
|
||||
}
|
||||
|
||||
private string L(string key, string fallback)
|
||||
|
||||
@@ -146,6 +146,7 @@ public partial class MainWindow : Window
|
||||
BackToWindowsTextBlock.Text = Lf("button.back_to_platform", "Back to {0}", platformName);
|
||||
ToolTip.SetTip(BackToWindowsButton, Lf("tooltip.back_to_platform", "Back to {0}", platformName));
|
||||
ComponentLibraryTitleTextBlock.Text = L("component_library.title", "Widgets");
|
||||
ComponentLibraryEmptyTextBlock.Text = L("component_library.components_none", "No components.");
|
||||
LauncherTitleTextBlock.Text = L("launcher.title", "App Launcher");
|
||||
LauncherSubtitleTextBlock.Text = OperatingSystem.IsLinux()
|
||||
? L("launcher.subtitle_linux", "Displays installed apps discovered from Linux desktop entries.")
|
||||
|
||||
@@ -89,7 +89,7 @@
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
<Button Classes="AppBarButton" ToolTip.Tip="View Corner Radius Specification" Command="{Binding $parent[Window].((vm:MainWindowViewModel)DataContext).OpenDesignSpecCommand}" CommandParameter="CORNER_RADIUS_SPEC.md">
|
||||
<Button Classes="AppBarButton" ToolTip.Tip="{Binding CornerRadiusSpecTooltip}" Command="{Binding $parent[Window].((vm:MainWindowViewModel)DataContext).OpenDesignSpecCommand}" CommandParameter="CORNER_RADIUS_SPEC.md">
|
||||
<fi:SymbolIcon Symbol="QuestionCircle" />
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
@@ -167,7 +167,7 @@
|
||||
Background="{Binding CustomColorBrush}"
|
||||
BorderThickness="0"
|
||||
CornerRadius="6"
|
||||
ToolTip.Tip="Custom color">
|
||||
ToolTip.Tip="{Binding CustomColorTooltip}">
|
||||
<Button.Flyout>
|
||||
<Flyout Placement="BottomEdgeAlignedLeft">
|
||||
<StackPanel Width="260"
|
||||
|
||||
Reference in New Issue
Block a user