合并对设置系统的更新 (#11)
* Add Windows system chrome patchers (Harmony)
Introduce support for toggling the system chrome on Windows using Harmony patchers. Adds Lib.Harmony.Thin to package props and project, new patcher infrastructure (ChromePatchState, PatcherEntrance) and two Harmony patches that disable FluentAvalonia's Windows chrome when configured. Program.cs now loads the chrome setting and installs patchers conditionally on Windows/x86-x64. Settings viewmodel and view updated: expose IsWindowsOs, require restart on appearance changes, migrate SettingsWindow to FAAppWindow and adapt titlebar/layout (include Windows caption placeholder and footer menu items). Also add a .gitkeep and a build log file.
* Refactor settings window UI and theming
Improve theming and layout for the Settings window and related services.
- MaterialSurfaceService: add special material parameters for SettingsWindowBackground (lower alpha, no blur) and avoid hot-switching real backdrops for non-settings windows.
- GlassEffectService: add AdaptiveSettingsWindowTintBrush + ResolveSettingsWindowTintAlpha to provide optional content tinting tied to system material mode.
- SettingsWindowService: refactor theme application into ApplyThemeVariantAndResources, ensure settings window material is applied at show/activate times, and tidy theme/resource application flow.
- SettingsWindow.axaml / .axaml.cs: restructure title bar (separate Grid.Row=0 border) and FANavigationView host, add pane-footer toggle button for :minimal layout, use dynamic corner radius resource, and update toggle/visibility/icon logic and responsive layout code.
- SettingsPages: remove some IconText usages and adjust margins; use DesignCornerRadiusLg for update card corner radius.
- Add NuGet.Config to set local globalPackagesFolder and ignore .nuget/packages in .gitignore.
These changes aim to improve visuals, avoid backdrop overdraw, and make the settings window behavior consistent across themes and layouts.
* Add localization and localize settings pages
Add many new localization keys (en-US and zh-CN) for notifications, developer tools, about page, status bar, and video wallpaper. Update Notification, Dev, About and StatusBar view models to use LocalizationService, expose localized ObservableProperties, and refresh localized text at construction. Localize selection options and test notification texts, and fix notification severity handling. Wire up XAML to the new localized properties (About/Dev/StatusBar pages) and update the settings page title for notifications. Also adjust copyright line generation and replace hardcoded placeholders with bound Watermark properties.
* Redesign settings window with fluent shell & search
Rebuild the settings window as a Fluent shell: adds a custom 48-DIP titlebar with Back, pane toggle, icon/title, search box, restart/more menu, and caption-button spacer; moves compact pane toggle into the titlebar and preserves FANavigationView as the primary navigation surface. Introduces a SettingsSearchService (with UI AutoComplete integration, search indexing, navigation-by-result, and search result highlighting) plus focused tests for search filtering and theme material normalization. Adds navigation history/back stack, updates SettingsViewModels for new bindings and localization keys, and updates General/Apearance pages to expose new strings and options. Implements an "auto" system material mode: default in AppSettingsSnapshot, new MaterialAuto constants and normalization/resolution logic in ThemeAppearanceValues, WindowMaterialService and MaterialSurfaceService adjustments to prefer Mica on Win11 and Acrylic on Win10 using TransparencyLevelHint. GlassEffectService and AppearanceThemeService updated to use effective material mode and to track live theme state changes. Adds localization entries (en-US, zh-CN), spec/tasks docs, and other UI/style tweaks to support the redesign.
* fix.修折叠与展开按钮
* Add OOBE startup presentation and settings merge
Introduce a new OOBE step for "Startup & Presentation" that exposes startup and UI preferences in OobeWindow (toggles for taskbar, slide/fade transitions, fused popup, and autostart). Add HostAppSettingsOobeMerger to read/write Host settings.json (PascalCase fields) and MergeStartupPresentation behavior, plus LauncherWindowsStartupService to sync the current Launcher into the Windows Run key on Windows. Wire UI handlers, persist choices on Next, and load defaults when entering the step. Include unit tests for the merger, adjust SettingsWindow navigation pane/toggle handling, and update docs/LAUNCHER.md to describe the new OOBE step and implementation files.
* Move whiteboard persistence to file storage
Switch whiteboard note storage from legacy DB rows to per-note JSON files and add migration support. Update WhiteboardNoteSnapshot schema (version bump, viewport, canvas, expires, PathSvgData) and change IWhiteboardNotePersistenceService.SaveNote to return bool to surface write failures (e.g. read-only files). Implement file-based WhiteboardNotePersistenceService with legacy DB migration/cleanup, retention handling, and logging. Add comprehensive unit tests for persistence, stroke path builder, SVG import and viewport helper. Also add ThirdParty/DotNetCampus.InkCanvas project and reference it in the main csproj, and bump PostHog package to 2.6.0.
* Introduce render gate and chart caching
Replace UI DispatcherTimer polling with a StudySnapshotRenderGate across multiple widgets to queue and apply only the latest analytics snapshot; components updated include StudyDeductionReasonsWidget, StudyEnvironmentWidget, StudyInterruptDensityWidget, StudyNoiseCurveWidget. Add StudySnapshotRenderGate implementation to coordinate rendering and monitoring leases and update subscription/lease lifecycle handling (subscribe/unsubscribe, Acquire/Dispose leases, Clear/Dispose gate). Rewrite chart controls (StudyNoiseCurveChartControl and StudyNoiseDistributionScatterChartControl) to use stable logical-time origins, split series into static vs dynamic tails, add geometry/sample caching, stable jitter/coordinate mapping helpers, and expose internal helpers & counts for testing. Add unit tests (StudyComponentRenderingTests) covering the render gate and chart behaviors (layer counts, logical X mapping, stable jitter, cache rebuild). These changes improve rendering correctness and performance by avoiding redundant renders and enabling deterministic chart layout.
* Use MaterialColorSnapshot in appearance flow
Introduce unified material/color spec and tests, and refactor appearance plumbing to use MaterialColorSnapshot as the single source of truth. Add .trae material-color-service spec/checklist/tasks and integration/unit tests for plugin mapping and appearance VM behavior. AppearanceChangedEvent extended with new appearance change flags and HasChanged logic. ComponentEditorMaterialThemeAdapter rewritten to accept MaterialColorSnapshot and derive palette from snapshot data. Simplify AppearanceSettingsPageViewModel and related view code: remove legacy preview/custom-seed UI logic, preserve material/color fields when updating theme or corner radius, and update save calls to use with-expressions. Update ComponentEditorWindow to use adapter-provided OnPrimary brush and minor docs updates.
* Add material color services, plugin DTOs, and tests
Introduce IPC wire-format appearance DTOs (PluginIsolation.Contracts) and clarify they are distinct from the runtime PluginSdk snapshot. Update PluginSdk comments to document the runtime-facing snapshot shape. Change ComponentColorSchemeHelper to use the HostMaterialColorProvider and add an overload that accepts a MaterialColorSnapshot. Add new services and pipelines (MaterialColorService, MaterialSurfaceService, WindowMaterialService, WallpaperColorPipeline) and refactor AppearanceThemeService to depend on MaterialColorService while removing legacy internal implementations. Add multiple unit tests (ComponentColorSchemeHelper, PluginAppearanceBoundary, SettingsCatalogService, WallpaperSettingsPageViewModel) and update localization resources with new material_color and wallpaper keys.
* 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).
* Add Data settings page and storage scanner
Introduce a new "Data" settings page to visualize and manage local app storage. Adds DataStorageService (scanning, disk info, clean operations), DataSettingsPageViewModel, XAML view and code-behind, and HexToColor/HexToBrush converters; registers converters in App.axaml. Also update localization strings for the new page and add icon mapping so the settings entry uses the Database icon. Enables per-category and global cleaning workflows and formatted size display.
* Add IPC backoff/retries and safer disposal
Introduce exponential backoff, jitter and retry logic across IPC components to improve robustness and avoid tight retry loops; make disposal idempotent and add connection guards. Key changes:
- LauncherCoordinatorIpcServer / LauncherIpcServer: add backoff constants, ComputeBackoff(), consecutive error tracking and delayed retries with jitter.
- LanMountainDesktopIpcClient / LauncherIpcClient: add connect retry loops, timeouts, delayed retries, improved error logging, and use ArrayPool for buffered async writes; ensure proper cleanup on failures.
- PublicIpcHostService: add disposed flag, guard OnPeerConnected and Dispose, and clear connected peers on dispose.
- Add many auto-generated commit analysis docs under docs/auto_commit_md and new scripts for analyzing/generating commit docs.
These changes aim to make IPC connection handling more resilient and resource-safe.
* Add preview controls and settings UI tweaks
Introduce GridPreviewControl and CornerRadiusPreviewControl for visual previews and wire them into the Components settings (add ScreenAspectRatio, CornerRadiusPreviewValue, and screen aspect init). Refactor ComponentsSettingsPage UI to show live previews. Improve DataSettingsPage layout and storage bar logic (use item percentages directly, include remaining segment, adjust visuals and visibility triggers). Simplify LauncherSettingsPage header/appearance layout. Add SECURITY_AUDIT_REPORT.md, analysis summary, mockup HTML, and a local .claude settings file.
* Add install checkpoint/resume and DDSS workflows
Introduce install checkpoint support and resume logic for updates, plus related locking and validation. Adds InstallCheckpoint model, AppJsonContext serialization, and UpdatePaths helpers for deployment lock, apply-in-progress lock and install-checkpoint path. UpdateEngineService gains checkpoint load/save/delete, incoming-state validation, resume logic for PLONDS and legacy updates, apply lock handling, and safer cleanup; ApplyPendingPlondsUpdateAsync and ApplyPendingUpdate flow updated accordingly. Add DeploymentLock contract and extend UpdateState with pause/resume/cancel helpers. Tests updated to cover stale/valid checkpoint resume and legacy/PLONDS flows. CI: enhance ddss-publish to detect release channel, validate S3 assets, prepare and atomically publish channel pointer; add ddss-rollback workflow to publish rollbacks; adjust plonds-build concurrency and release events.
* changed.更了好多
* fix.消息盒子媒体播放器组件服务修复
* change.重做天气,为回到系统提供自定义功能。
* feat.airapp与融合桌面
* feat.动画优化与更新界面
* feat.数字时钟,白板功能修复
* feat.完善了时钟轻应用,为启动器提供了多语言支持
* feat.发布与打包优化
* changed.天气选项卡更新
2026-05-19 07:55:21 +08:00
|
|
|
using System.Globalization;
|
|
|
|
|
using System.Resources;
|
|
|
|
|
using System.Threading;
|
|
|
|
|
|
|
|
|
|
namespace LanMountainDesktop.Launcher.Resources;
|
|
|
|
|
|
|
|
|
|
public static class Strings
|
|
|
|
|
{
|
|
|
|
|
private static readonly ResourceManager ResourceManager =
|
|
|
|
|
new("LanMountainDesktop.Launcher.Resources.Strings", typeof(Strings).Assembly);
|
|
|
|
|
|
|
|
|
|
public static string Splash_Title => ResourceManager.GetString(nameof(Splash_Title), Culture)!;
|
|
|
|
|
public static string Splash_AppName => ResourceManager.GetString(nameof(Splash_AppName), Culture)!;
|
|
|
|
|
public static string Splash_StatusInitializing => ResourceManager.GetString(nameof(Splash_StatusInitializing), Culture)!;
|
|
|
|
|
public static string Splash_DebugPreview => ResourceManager.GetString(nameof(Splash_DebugPreview), Culture)!;
|
|
|
|
|
public static string Error_Title => ResourceManager.GetString(nameof(Error_Title), Culture)!;
|
|
|
|
|
public static string Error_TitleCannotConfirm => ResourceManager.GetString(nameof(Error_TitleCannotConfirm), Culture)!;
|
|
|
|
|
public static string Error_MessageNotReached => ResourceManager.GetString(nameof(Error_MessageNotReached), Culture)!;
|
|
|
|
|
public static string Error_SuggestionTitle => ResourceManager.GetString(nameof(Error_SuggestionTitle), Culture)!;
|
|
|
|
|
public static string Error_SuggestionMessage => ResourceManager.GetString(nameof(Error_SuggestionMessage), Culture)!;
|
|
|
|
|
public static string Error_DiagnosticHeader => ResourceManager.GetString(nameof(Error_DiagnosticHeader), Culture)!;
|
|
|
|
|
public static string Error_ButtonOpenLogs => ResourceManager.GetString(nameof(Error_ButtonOpenLogs), Culture)!;
|
|
|
|
|
public static string Error_ButtonCopy => ResourceManager.GetString(nameof(Error_ButtonCopy), Culture)!;
|
|
|
|
|
public static string Error_ButtonWait => ResourceManager.GetString(nameof(Error_ButtonWait), Culture)!;
|
|
|
|
|
public static string Error_ButtonExit => ResourceManager.GetString(nameof(Error_ButtonExit), Culture)!;
|
|
|
|
|
public static string Error_ButtonRetry => ResourceManager.GetString(nameof(Error_ButtonRetry), Culture)!;
|
|
|
|
|
public static string Error_ButtonActivate => ResourceManager.GetString(nameof(Error_ButtonActivate), Culture)!;
|
|
|
|
|
public static string Error_DebugTitle => ResourceManager.GetString(nameof(Error_DebugTitle), Culture)!;
|
|
|
|
|
public static string Error_HostNotFoundTitle => ResourceManager.GetString(nameof(Error_HostNotFoundTitle), Culture)!;
|
|
|
|
|
public static string Error_HostNotFoundMessage => ResourceManager.GetString(nameof(Error_HostNotFoundMessage), Culture)!;
|
|
|
|
|
public static string Error_GenericRetryMessage => ResourceManager.GetString(nameof(Error_GenericRetryMessage), Culture)!;
|
|
|
|
|
public static string Error_GenericNoRetryMessage => ResourceManager.GetString(nameof(Error_GenericNoRetryMessage), Culture)!;
|
|
|
|
|
public static string Error_PendingTitle => ResourceManager.GetString(nameof(Error_PendingTitle), Culture)!;
|
|
|
|
|
public static string Error_PendingMessage => ResourceManager.GetString(nameof(Error_PendingMessage), Culture)!;
|
|
|
|
|
public static string Error_PendingMessageWithPid => ResourceManager.GetString(nameof(Error_PendingMessageWithPid), Culture)!;
|
|
|
|
|
public static string MultiInstance_Title => ResourceManager.GetString(nameof(MultiInstance_Title), Culture)!;
|
|
|
|
|
public static string MultiInstance_AlreadyRunning => ResourceManager.GetString(nameof(MultiInstance_AlreadyRunning), Culture)!;
|
|
|
|
|
public static string MultiInstance_AlreadyRunningMessage => ResourceManager.GetString(nameof(MultiInstance_AlreadyRunningMessage), Culture)!;
|
|
|
|
|
public static string MultiInstance_RepeatedLaunchTitle => ResourceManager.GetString(nameof(MultiInstance_RepeatedLaunchTitle), Culture)!;
|
|
|
|
|
public static string MultiInstance_RepeatedLaunchMessage => ResourceManager.GetString(nameof(MultiInstance_RepeatedLaunchMessage), Culture)!;
|
|
|
|
|
public static string MultiInstance_NoSecondProcess => ResourceManager.GetString(nameof(MultiInstance_NoSecondProcess), Culture)!;
|
|
|
|
|
public static string MultiInstance_ButtonCopy => ResourceManager.GetString(nameof(MultiInstance_ButtonCopy), Culture)!;
|
|
|
|
|
public static string MultiInstance_ButtonClose => ResourceManager.GetString(nameof(MultiInstance_ButtonClose), Culture)!;
|
|
|
|
|
public static string MultiInstance_ButtonOpenDesktop => ResourceManager.GetString(nameof(MultiInstance_ButtonOpenDesktop), Culture)!;
|
|
|
|
|
public static string MultiInstance_DetailsFormat => ResourceManager.GetString(nameof(MultiInstance_DetailsFormat), Culture)!;
|
|
|
|
|
public static string DataLocation_Title => ResourceManager.GetString(nameof(DataLocation_Title), Culture)!;
|
|
|
|
|
public static string DataLocation_ChooseLocation => ResourceManager.GetString(nameof(DataLocation_ChooseLocation), Culture)!;
|
|
|
|
|
public static string DataLocation_ChooseLocationDesc => ResourceManager.GetString(nameof(DataLocation_ChooseLocationDesc), Culture)!;
|
|
|
|
|
public static string DataLocation_NotWritable => ResourceManager.GetString(nameof(DataLocation_NotWritable), Culture)!;
|
|
|
|
|
public static string DataLocation_NotWritableDesc => ResourceManager.GetString(nameof(DataLocation_NotWritableDesc), Culture)!;
|
|
|
|
|
public static string DataLocation_SystemProfile => ResourceManager.GetString(nameof(DataLocation_SystemProfile), Culture)!;
|
|
|
|
|
public static string DataLocation_SystemProfileDesc => ResourceManager.GetString(nameof(DataLocation_SystemProfileDesc), Culture)!;
|
|
|
|
|
public static string DataLocation_Portable => ResourceManager.GetString(nameof(DataLocation_Portable), Culture)!;
|
|
|
|
|
public static string DataLocation_PortableDesc => ResourceManager.GetString(nameof(DataLocation_PortableDesc), Culture)!;
|
|
|
|
|
public static string DataLocation_ButtonCancel => ResourceManager.GetString(nameof(DataLocation_ButtonCancel), Culture)!;
|
|
|
|
|
public static string DataLocation_ButtonConfirm => ResourceManager.GetString(nameof(DataLocation_ButtonConfirm), Culture)!;
|
|
|
|
|
public static string DataLocation_MigrateWarning => ResourceManager.GetString(nameof(DataLocation_MigrateWarning), Culture)!;
|
|
|
|
|
public static string Loading_Title => ResourceManager.GetString(nameof(Loading_Title), Culture)!;
|
|
|
|
|
public static string Loading_StartingDesktop => ResourceManager.GetString(nameof(Loading_StartingDesktop), Culture)!;
|
|
|
|
|
public static string Loading_StatusInitializing => ResourceManager.GetString(nameof(Loading_StatusInitializing), Culture)!;
|
|
|
|
|
public static string Loading_StatusPreparing => ResourceManager.GetString(nameof(Loading_StatusPreparing), Culture)!;
|
|
|
|
|
public static string Loading_LoadingItems => ResourceManager.GetString(nameof(Loading_LoadingItems), Culture)!;
|
|
|
|
|
public static string Loading_Done => ResourceManager.GetString(nameof(Loading_Done), Culture)!;
|
|
|
|
|
public static string Loading_ErrorOccurred => ResourceManager.GetString(nameof(Loading_ErrorOccurred), Culture)!;
|
|
|
|
|
public static string Loading_ButtonDetails => ResourceManager.GetString(nameof(Loading_ButtonDetails), Culture)!;
|
|
|
|
|
public static string Loading_ButtonCancel => ResourceManager.GetString(nameof(Loading_ButtonCancel), Culture)!;
|
|
|
|
|
public static string Loading_StageReady => ResourceManager.GetString(nameof(Loading_StageReady), Culture)!;
|
|
|
|
|
public static string Loading_ItemPlugin => ResourceManager.GetString(nameof(Loading_ItemPlugin), Culture)!;
|
|
|
|
|
public static string Loading_ItemComponent => ResourceManager.GetString(nameof(Loading_ItemComponent), Culture)!;
|
|
|
|
|
public static string Loading_ItemResource => ResourceManager.GetString(nameof(Loading_ItemResource), Culture)!;
|
|
|
|
|
public static string Loading_ItemData => ResourceManager.GetString(nameof(Loading_ItemData), Culture)!;
|
|
|
|
|
public static string Loading_ItemDownload => ResourceManager.GetString(nameof(Loading_ItemDownload), Culture)!;
|
|
|
|
|
public static string Loading_ItemProcess => ResourceManager.GetString(nameof(Loading_ItemProcess), Culture)!;
|
|
|
|
|
public static string Loading_ItemComplete => ResourceManager.GetString(nameof(Loading_ItemComplete), Culture)!;
|
|
|
|
|
public static string Loading_TypePlugin => ResourceManager.GetString(nameof(Loading_TypePlugin), Culture)!;
|
|
|
|
|
public static string Loading_TypeComponent => ResourceManager.GetString(nameof(Loading_TypeComponent), Culture)!;
|
|
|
|
|
public static string Loading_TypeResource => ResourceManager.GetString(nameof(Loading_TypeResource), Culture)!;
|
|
|
|
|
public static string Loading_TypeData => ResourceManager.GetString(nameof(Loading_TypeData), Culture)!;
|
|
|
|
|
public static string Loading_TypeNetwork => ResourceManager.GetString(nameof(Loading_TypeNetwork), Culture)!;
|
|
|
|
|
public static string Loading_TypeSettings => ResourceManager.GetString(nameof(Loading_TypeSettings), Culture)!;
|
|
|
|
|
public static string Loading_TypeSystem => ResourceManager.GetString(nameof(Loading_TypeSystem), Culture)!;
|
|
|
|
|
public static string Loading_TypeOther => ResourceManager.GetString(nameof(Loading_TypeOther), Culture)!;
|
|
|
|
|
public static string Update_Title => ResourceManager.GetString(nameof(Update_Title), Culture)!;
|
|
|
|
|
public static string Update_AppName => ResourceManager.GetString(nameof(Update_AppName), Culture)!;
|
|
|
|
|
public static string Update_StatusUpdate => ResourceManager.GetString(nameof(Update_StatusUpdate), Culture)!;
|
|
|
|
|
public static string Update_StatusUpdating => ResourceManager.GetString(nameof(Update_StatusUpdating), Culture)!;
|
|
|
|
|
public static string Update_Complete => ResourceManager.GetString(nameof(Update_Complete), Culture)!;
|
|
|
|
|
public static string Update_Failed => ResourceManager.GetString(nameof(Update_Failed), Culture)!;
|
|
|
|
|
public static string Update_FailedMessage => ResourceManager.GetString(nameof(Update_FailedMessage), Culture)!;
|
|
|
|
|
public static string Update_DebugTitle => ResourceManager.GetString(nameof(Update_DebugTitle), Culture)!;
|
|
|
|
|
public static string Update_DebugMessage => ResourceManager.GetString(nameof(Update_DebugMessage), Culture)!;
|
|
|
|
|
public static string Update_Verifying => ResourceManager.GetString(nameof(Update_Verifying), Culture)!;
|
|
|
|
|
public static string Update_ApplyingPlugins => ResourceManager.GetString(nameof(Update_ApplyingPlugins), Culture)!;
|
|
|
|
|
public static string Update_CleaningUp => ResourceManager.GetString(nameof(Update_CleaningUp), Culture)!;
|
|
|
|
|
public static string DebugDebug_Title => ResourceManager.GetString(nameof(DebugDebug_Title), Culture)!;
|
|
|
|
|
public static string DebugDebug_SettingsTitle => ResourceManager.GetString(nameof(DebugDebug_SettingsTitle), Culture)!;
|
|
|
|
|
public static string DebugDebug_DevMode => ResourceManager.GetString(nameof(DebugDebug_DevMode), Culture)!;
|
|
|
|
|
public static string DebugDebug_DevModeDesc => ResourceManager.GetString(nameof(DebugDebug_DevModeDesc), Culture)!;
|
|
|
|
|
public static string DebugDebug_On => ResourceManager.GetString(nameof(DebugDebug_On), Culture)!;
|
|
|
|
|
public static string DebugDebug_Off => ResourceManager.GetString(nameof(DebugDebug_Off), Culture)!;
|
|
|
|
|
public static string DebugDebug_AppPath => ResourceManager.GetString(nameof(DebugDebug_AppPath), Culture)!;
|
|
|
|
|
public static string DebugDebug_NotSelected => ResourceManager.GetString(nameof(DebugDebug_NotSelected), Culture)!;
|
|
|
|
|
public static string DebugDebug_Browse => ResourceManager.GetString(nameof(DebugDebug_Browse), Culture)!;
|
|
|
|
|
public static string DebugDebug_Warning => ResourceManager.GetString(nameof(DebugDebug_Warning), Culture)!;
|
|
|
|
|
public static string DebugDebug_ButtonCancel => ResourceManager.GetString(nameof(DebugDebug_ButtonCancel), Culture)!;
|
|
|
|
|
public static string DebugDebug_ButtonOk => ResourceManager.GetString(nameof(DebugDebug_ButtonOk), Culture)!;
|
|
|
|
|
public static string DebugDebug_SelectExeDialog => ResourceManager.GetString(nameof(DebugDebug_SelectExeDialog), Culture)!;
|
2026-06-05 23:38:32 +08:00
|
|
|
public static string DebugDebug_BackgroundImage => ResourceManager.GetString(nameof(DebugDebug_BackgroundImage), Culture)!;
|
|
|
|
|
public static string DebugDebug_BackgroundImageDesc => ResourceManager.GetString(nameof(DebugDebug_BackgroundImageDesc), Culture)!;
|
|
|
|
|
public static string DebugDebug_BackgroundImageNotSet => ResourceManager.GetString(nameof(DebugDebug_BackgroundImageNotSet), Culture)!;
|
|
|
|
|
public static string DebugDebug_BackgroundImageSaved => ResourceManager.GetString(nameof(DebugDebug_BackgroundImageSaved), Culture)!;
|
|
|
|
|
public static string DebugDebug_BackgroundImageCleared => ResourceManager.GetString(nameof(DebugDebug_BackgroundImageCleared), Culture)!;
|
|
|
|
|
public static string DebugDebug_BackgroundImageSaveFailedFormat => ResourceManager.GetString(nameof(DebugDebug_BackgroundImageSaveFailedFormat), Culture)!;
|
|
|
|
|
public static string DebugDebug_BackgroundImageReadyFormat => ResourceManager.GetString(nameof(DebugDebug_BackgroundImageReadyFormat), Culture)!;
|
|
|
|
|
public static string DebugDebug_BackgroundImageInvalidFormat => ResourceManager.GetString(nameof(DebugDebug_BackgroundImageInvalidFormat), Culture)!;
|
|
|
|
|
public static string DebugDebug_Clear => ResourceManager.GetString(nameof(DebugDebug_Clear), Culture)!;
|
|
|
|
|
public static string DebugDebug_SelectImageDialog => ResourceManager.GetString(nameof(DebugDebug_SelectImageDialog), Culture)!;
|
|
|
|
|
public static string DebugDebug_ImageFiles => ResourceManager.GetString(nameof(DebugDebug_ImageFiles), Culture)!;
|
合并对设置系统的更新 (#11)
* Add Windows system chrome patchers (Harmony)
Introduce support for toggling the system chrome on Windows using Harmony patchers. Adds Lib.Harmony.Thin to package props and project, new patcher infrastructure (ChromePatchState, PatcherEntrance) and two Harmony patches that disable FluentAvalonia's Windows chrome when configured. Program.cs now loads the chrome setting and installs patchers conditionally on Windows/x86-x64. Settings viewmodel and view updated: expose IsWindowsOs, require restart on appearance changes, migrate SettingsWindow to FAAppWindow and adapt titlebar/layout (include Windows caption placeholder and footer menu items). Also add a .gitkeep and a build log file.
* Refactor settings window UI and theming
Improve theming and layout for the Settings window and related services.
- MaterialSurfaceService: add special material parameters for SettingsWindowBackground (lower alpha, no blur) and avoid hot-switching real backdrops for non-settings windows.
- GlassEffectService: add AdaptiveSettingsWindowTintBrush + ResolveSettingsWindowTintAlpha to provide optional content tinting tied to system material mode.
- SettingsWindowService: refactor theme application into ApplyThemeVariantAndResources, ensure settings window material is applied at show/activate times, and tidy theme/resource application flow.
- SettingsWindow.axaml / .axaml.cs: restructure title bar (separate Grid.Row=0 border) and FANavigationView host, add pane-footer toggle button for :minimal layout, use dynamic corner radius resource, and update toggle/visibility/icon logic and responsive layout code.
- SettingsPages: remove some IconText usages and adjust margins; use DesignCornerRadiusLg for update card corner radius.
- Add NuGet.Config to set local globalPackagesFolder and ignore .nuget/packages in .gitignore.
These changes aim to improve visuals, avoid backdrop overdraw, and make the settings window behavior consistent across themes and layouts.
* Add localization and localize settings pages
Add many new localization keys (en-US and zh-CN) for notifications, developer tools, about page, status bar, and video wallpaper. Update Notification, Dev, About and StatusBar view models to use LocalizationService, expose localized ObservableProperties, and refresh localized text at construction. Localize selection options and test notification texts, and fix notification severity handling. Wire up XAML to the new localized properties (About/Dev/StatusBar pages) and update the settings page title for notifications. Also adjust copyright line generation and replace hardcoded placeholders with bound Watermark properties.
* Redesign settings window with fluent shell & search
Rebuild the settings window as a Fluent shell: adds a custom 48-DIP titlebar with Back, pane toggle, icon/title, search box, restart/more menu, and caption-button spacer; moves compact pane toggle into the titlebar and preserves FANavigationView as the primary navigation surface. Introduces a SettingsSearchService (with UI AutoComplete integration, search indexing, navigation-by-result, and search result highlighting) plus focused tests for search filtering and theme material normalization. Adds navigation history/back stack, updates SettingsViewModels for new bindings and localization keys, and updates General/Apearance pages to expose new strings and options. Implements an "auto" system material mode: default in AppSettingsSnapshot, new MaterialAuto constants and normalization/resolution logic in ThemeAppearanceValues, WindowMaterialService and MaterialSurfaceService adjustments to prefer Mica on Win11 and Acrylic on Win10 using TransparencyLevelHint. GlassEffectService and AppearanceThemeService updated to use effective material mode and to track live theme state changes. Adds localization entries (en-US, zh-CN), spec/tasks docs, and other UI/style tweaks to support the redesign.
* fix.修折叠与展开按钮
* Add OOBE startup presentation and settings merge
Introduce a new OOBE step for "Startup & Presentation" that exposes startup and UI preferences in OobeWindow (toggles for taskbar, slide/fade transitions, fused popup, and autostart). Add HostAppSettingsOobeMerger to read/write Host settings.json (PascalCase fields) and MergeStartupPresentation behavior, plus LauncherWindowsStartupService to sync the current Launcher into the Windows Run key on Windows. Wire UI handlers, persist choices on Next, and load defaults when entering the step. Include unit tests for the merger, adjust SettingsWindow navigation pane/toggle handling, and update docs/LAUNCHER.md to describe the new OOBE step and implementation files.
* Move whiteboard persistence to file storage
Switch whiteboard note storage from legacy DB rows to per-note JSON files and add migration support. Update WhiteboardNoteSnapshot schema (version bump, viewport, canvas, expires, PathSvgData) and change IWhiteboardNotePersistenceService.SaveNote to return bool to surface write failures (e.g. read-only files). Implement file-based WhiteboardNotePersistenceService with legacy DB migration/cleanup, retention handling, and logging. Add comprehensive unit tests for persistence, stroke path builder, SVG import and viewport helper. Also add ThirdParty/DotNetCampus.InkCanvas project and reference it in the main csproj, and bump PostHog package to 2.6.0.
* Introduce render gate and chart caching
Replace UI DispatcherTimer polling with a StudySnapshotRenderGate across multiple widgets to queue and apply only the latest analytics snapshot; components updated include StudyDeductionReasonsWidget, StudyEnvironmentWidget, StudyInterruptDensityWidget, StudyNoiseCurveWidget. Add StudySnapshotRenderGate implementation to coordinate rendering and monitoring leases and update subscription/lease lifecycle handling (subscribe/unsubscribe, Acquire/Dispose leases, Clear/Dispose gate). Rewrite chart controls (StudyNoiseCurveChartControl and StudyNoiseDistributionScatterChartControl) to use stable logical-time origins, split series into static vs dynamic tails, add geometry/sample caching, stable jitter/coordinate mapping helpers, and expose internal helpers & counts for testing. Add unit tests (StudyComponentRenderingTests) covering the render gate and chart behaviors (layer counts, logical X mapping, stable jitter, cache rebuild). These changes improve rendering correctness and performance by avoiding redundant renders and enabling deterministic chart layout.
* Use MaterialColorSnapshot in appearance flow
Introduce unified material/color spec and tests, and refactor appearance plumbing to use MaterialColorSnapshot as the single source of truth. Add .trae material-color-service spec/checklist/tasks and integration/unit tests for plugin mapping and appearance VM behavior. AppearanceChangedEvent extended with new appearance change flags and HasChanged logic. ComponentEditorMaterialThemeAdapter rewritten to accept MaterialColorSnapshot and derive palette from snapshot data. Simplify AppearanceSettingsPageViewModel and related view code: remove legacy preview/custom-seed UI logic, preserve material/color fields when updating theme or corner radius, and update save calls to use with-expressions. Update ComponentEditorWindow to use adapter-provided OnPrimary brush and minor docs updates.
* Add material color services, plugin DTOs, and tests
Introduce IPC wire-format appearance DTOs (PluginIsolation.Contracts) and clarify they are distinct from the runtime PluginSdk snapshot. Update PluginSdk comments to document the runtime-facing snapshot shape. Change ComponentColorSchemeHelper to use the HostMaterialColorProvider and add an overload that accepts a MaterialColorSnapshot. Add new services and pipelines (MaterialColorService, MaterialSurfaceService, WindowMaterialService, WallpaperColorPipeline) and refactor AppearanceThemeService to depend on MaterialColorService while removing legacy internal implementations. Add multiple unit tests (ComponentColorSchemeHelper, PluginAppearanceBoundary, SettingsCatalogService, WallpaperSettingsPageViewModel) and update localization resources with new material_color and wallpaper keys.
* 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).
* Add Data settings page and storage scanner
Introduce a new "Data" settings page to visualize and manage local app storage. Adds DataStorageService (scanning, disk info, clean operations), DataSettingsPageViewModel, XAML view and code-behind, and HexToColor/HexToBrush converters; registers converters in App.axaml. Also update localization strings for the new page and add icon mapping so the settings entry uses the Database icon. Enables per-category and global cleaning workflows and formatted size display.
* Add IPC backoff/retries and safer disposal
Introduce exponential backoff, jitter and retry logic across IPC components to improve robustness and avoid tight retry loops; make disposal idempotent and add connection guards. Key changes:
- LauncherCoordinatorIpcServer / LauncherIpcServer: add backoff constants, ComputeBackoff(), consecutive error tracking and delayed retries with jitter.
- LanMountainDesktopIpcClient / LauncherIpcClient: add connect retry loops, timeouts, delayed retries, improved error logging, and use ArrayPool for buffered async writes; ensure proper cleanup on failures.
- PublicIpcHostService: add disposed flag, guard OnPeerConnected and Dispose, and clear connected peers on dispose.
- Add many auto-generated commit analysis docs under docs/auto_commit_md and new scripts for analyzing/generating commit docs.
These changes aim to make IPC connection handling more resilient and resource-safe.
* Add preview controls and settings UI tweaks
Introduce GridPreviewControl and CornerRadiusPreviewControl for visual previews and wire them into the Components settings (add ScreenAspectRatio, CornerRadiusPreviewValue, and screen aspect init). Refactor ComponentsSettingsPage UI to show live previews. Improve DataSettingsPage layout and storage bar logic (use item percentages directly, include remaining segment, adjust visuals and visibility triggers). Simplify LauncherSettingsPage header/appearance layout. Add SECURITY_AUDIT_REPORT.md, analysis summary, mockup HTML, and a local .claude settings file.
* Add install checkpoint/resume and DDSS workflows
Introduce install checkpoint support and resume logic for updates, plus related locking and validation. Adds InstallCheckpoint model, AppJsonContext serialization, and UpdatePaths helpers for deployment lock, apply-in-progress lock and install-checkpoint path. UpdateEngineService gains checkpoint load/save/delete, incoming-state validation, resume logic for PLONDS and legacy updates, apply lock handling, and safer cleanup; ApplyPendingPlondsUpdateAsync and ApplyPendingUpdate flow updated accordingly. Add DeploymentLock contract and extend UpdateState with pause/resume/cancel helpers. Tests updated to cover stale/valid checkpoint resume and legacy/PLONDS flows. CI: enhance ddss-publish to detect release channel, validate S3 assets, prepare and atomically publish channel pointer; add ddss-rollback workflow to publish rollbacks; adjust plonds-build concurrency and release events.
* changed.更了好多
* fix.消息盒子媒体播放器组件服务修复
* change.重做天气,为回到系统提供自定义功能。
* feat.airapp与融合桌面
* feat.动画优化与更新界面
* feat.数字时钟,白板功能修复
* feat.完善了时钟轻应用,为启动器提供了多语言支持
* feat.发布与打包优化
* changed.天气选项卡更新
2026-05-19 07:55:21 +08:00
|
|
|
public static string Oobe_Title => ResourceManager.GetString(nameof(Oobe_Title), Culture)!;
|
|
|
|
|
public static string Oobe_WelcomeTitle => ResourceManager.GetString(nameof(Oobe_WelcomeTitle), Culture)!;
|
|
|
|
|
public static string Oobe_WelcomeSubtitle => ResourceManager.GetString(nameof(Oobe_WelcomeSubtitle), Culture)!;
|
|
|
|
|
public static string Oobe_ButtonGetStarted => ResourceManager.GetString(nameof(Oobe_ButtonGetStarted), Culture)!;
|
|
|
|
|
public static string Oobe_AppearanceTitle => ResourceManager.GetString(nameof(Oobe_AppearanceTitle), Culture)!;
|
|
|
|
|
public static string Oobe_AppearanceDesc => ResourceManager.GetString(nameof(Oobe_AppearanceDesc), Culture)!;
|
|
|
|
|
public static string Oobe_AppearanceMode => ResourceManager.GetString(nameof(Oobe_AppearanceMode), Culture)!;
|
|
|
|
|
public static string Oobe_LightMode => ResourceManager.GetString(nameof(Oobe_LightMode), Culture)!;
|
|
|
|
|
public static string Oobe_DarkMode => ResourceManager.GetString(nameof(Oobe_DarkMode), Culture)!;
|
|
|
|
|
public static string Oobe_ThemeColor => ResourceManager.GetString(nameof(Oobe_ThemeColor), Culture)!;
|
|
|
|
|
public static string Oobe_MonetSource => ResourceManager.GetString(nameof(Oobe_MonetSource), Culture)!;
|
|
|
|
|
public static string Oobe_MonetFromWallpaper => ResourceManager.GetString(nameof(Oobe_MonetFromWallpaper), Culture)!;
|
|
|
|
|
public static string Oobe_MonetFromCustomImage => ResourceManager.GetString(nameof(Oobe_MonetFromCustomImage), Culture)!;
|
|
|
|
|
public static string Oobe_MonetDisabled => ResourceManager.GetString(nameof(Oobe_MonetDisabled), Culture)!;
|
|
|
|
|
public static string Oobe_DataLocationTitle => ResourceManager.GetString(nameof(Oobe_DataLocationTitle), Culture)!;
|
|
|
|
|
public static string Oobe_SystemProfile => ResourceManager.GetString(nameof(Oobe_SystemProfile), Culture)!;
|
|
|
|
|
public static string Oobe_SystemProfileDesc => ResourceManager.GetString(nameof(Oobe_SystemProfileDesc), Culture)!;
|
|
|
|
|
public static string Oobe_Portable => ResourceManager.GetString(nameof(Oobe_Portable), Culture)!;
|
|
|
|
|
public static string Oobe_PortableDesc => ResourceManager.GetString(nameof(Oobe_PortableDesc), Culture)!;
|
|
|
|
|
public static string Oobe_NotWritable => ResourceManager.GetString(nameof(Oobe_NotWritable), Culture)!;
|
|
|
|
|
public static string Oobe_NotWritableDesc => ResourceManager.GetString(nameof(Oobe_NotWritableDesc), Culture)!;
|
|
|
|
|
public static string Oobe_StartupTitle => ResourceManager.GetString(nameof(Oobe_StartupTitle), Culture)!;
|
|
|
|
|
public static string Oobe_ShowInTaskbar => ResourceManager.GetString(nameof(Oobe_ShowInTaskbar), Culture)!;
|
|
|
|
|
public static string Oobe_SlideTransition => ResourceManager.GetString(nameof(Oobe_SlideTransition), Culture)!;
|
|
|
|
|
public static string Oobe_FadeTransition => ResourceManager.GetString(nameof(Oobe_FadeTransition), Culture)!;
|
|
|
|
|
public static string Oobe_FusedDesktop => ResourceManager.GetString(nameof(Oobe_FusedDesktop), Culture)!;
|
|
|
|
|
public static string Oobe_AutoStart => ResourceManager.GetString(nameof(Oobe_AutoStart), Culture)!;
|
|
|
|
|
public static string Oobe_PrivacyTitle => ResourceManager.GetString(nameof(Oobe_PrivacyTitle), Culture)!;
|
|
|
|
|
public static string Oobe_CrashReports => ResourceManager.GetString(nameof(Oobe_CrashReports), Culture)!;
|
|
|
|
|
public static string Oobe_UsageStats => ResourceManager.GetString(nameof(Oobe_UsageStats), Culture)!;
|
|
|
|
|
public static string Oobe_PrivacyTrackingId => ResourceManager.GetString(nameof(Oobe_PrivacyTrackingId), Culture)!;
|
|
|
|
|
public static string Oobe_Agree => ResourceManager.GetString(nameof(Oobe_Agree), Culture)!;
|
|
|
|
|
public static string Oobe_PrivacyPolicyLink => ResourceManager.GetString(nameof(Oobe_PrivacyPolicyLink), Culture)!;
|
|
|
|
|
public static string Oobe_ButtonBack => ResourceManager.GetString(nameof(Oobe_ButtonBack), Culture)!;
|
|
|
|
|
public static string Oobe_ButtonNext => ResourceManager.GetString(nameof(Oobe_ButtonNext), Culture)!;
|
|
|
|
|
public static string Oobe_CompleteTitle => ResourceManager.GetString(nameof(Oobe_CompleteTitle), Culture)!;
|
|
|
|
|
public static string Oobe_CompleteSubtitle => ResourceManager.GetString(nameof(Oobe_CompleteSubtitle), Culture)!;
|
|
|
|
|
public static string Oobe_MonetDesc => ResourceManager.GetString(nameof(Oobe_MonetDesc), Culture)!;
|
|
|
|
|
public static string Oobe_MonetFromWallpaperDesc => ResourceManager.GetString(nameof(Oobe_MonetFromWallpaperDesc), Culture)!;
|
|
|
|
|
public static string Oobe_MonetFromCustomImageDesc => ResourceManager.GetString(nameof(Oobe_MonetFromCustomImageDesc), Culture)!;
|
|
|
|
|
public static string Oobe_MonetDisabledDesc => ResourceManager.GetString(nameof(Oobe_MonetDisabledDesc), Culture)!;
|
|
|
|
|
public static string Oobe_DataLocationDesc => ResourceManager.GetString(nameof(Oobe_DataLocationDesc), Culture)!;
|
|
|
|
|
public static string Oobe_StartupDesc => ResourceManager.GetString(nameof(Oobe_StartupDesc), Culture)!;
|
|
|
|
|
public static string Oobe_ShowInTaskbarDesc => ResourceManager.GetString(nameof(Oobe_ShowInTaskbarDesc), Culture)!;
|
|
|
|
|
public static string Oobe_SlideTransitionDesc => ResourceManager.GetString(nameof(Oobe_SlideTransitionDesc), Culture)!;
|
|
|
|
|
public static string Oobe_FadeTransitionDesc => ResourceManager.GetString(nameof(Oobe_FadeTransitionDesc), Culture)!;
|
|
|
|
|
public static string Oobe_FusedDesktopDesc => ResourceManager.GetString(nameof(Oobe_FusedDesktopDesc), Culture)!;
|
|
|
|
|
public static string Oobe_AutoStartDesc => ResourceManager.GetString(nameof(Oobe_AutoStartDesc), Culture)!;
|
|
|
|
|
public static string Oobe_AutoStartDescNonWindows => ResourceManager.GetString(nameof(Oobe_AutoStartDescNonWindows), Culture)!;
|
|
|
|
|
public static string Oobe_PrivacyDesc => ResourceManager.GetString(nameof(Oobe_PrivacyDesc), Culture)!;
|
|
|
|
|
public static string Oobe_CrashReportsDesc => ResourceManager.GetString(nameof(Oobe_CrashReportsDesc), Culture)!;
|
|
|
|
|
public static string Oobe_UsageStatsDesc => ResourceManager.GetString(nameof(Oobe_UsageStatsDesc), Culture)!;
|
|
|
|
|
public static string Oobe_PrivacyTrackingIdDesc => ResourceManager.GetString(nameof(Oobe_PrivacyTrackingIdDesc), Culture)!;
|
|
|
|
|
public static string Oobe_PrivacyAgreementNote => ResourceManager.GetString(nameof(Oobe_PrivacyAgreementNote), Culture)!;
|
|
|
|
|
public static string Oobe_TypingAppName => ResourceManager.GetString(nameof(Oobe_TypingAppName), Culture)!;
|
|
|
|
|
public static string Oobe_TypingNextGen => ResourceManager.GetString(nameof(Oobe_TypingNextGen), Culture)!;
|
|
|
|
|
public static string Oobe_TypingDashboard => ResourceManager.GetString(nameof(Oobe_TypingDashboard), Culture)!;
|
|
|
|
|
public static string Oobe_MigrationDetected => ResourceManager.GetString(nameof(Oobe_MigrationDetected), Culture)!;
|
|
|
|
|
public static string Migration_Title => ResourceManager.GetString(nameof(Migration_Title), Culture)!;
|
|
|
|
|
public static string Migration_DetectedOldVersion => ResourceManager.GetString(nameof(Migration_DetectedOldVersion), Culture)!;
|
|
|
|
|
public static string Migration_DetectedDesc => ResourceManager.GetString(nameof(Migration_DetectedDesc), Culture)!;
|
|
|
|
|
public static string Migration_Version => ResourceManager.GetString(nameof(Migration_Version), Culture)!;
|
|
|
|
|
public static string Migration_Location => ResourceManager.GetString(nameof(Migration_Location), Culture)!;
|
|
|
|
|
public static string Migration_Type => ResourceManager.GetString(nameof(Migration_Type), Culture)!;
|
|
|
|
|
public static string Migration_Installed => ResourceManager.GetString(nameof(Migration_Installed), Culture)!;
|
|
|
|
|
public static string Migration_UninstallNote => ResourceManager.GetString(nameof(Migration_UninstallNote), Culture)!;
|
|
|
|
|
public static string Migration_ButtonViewLocation => ResourceManager.GetString(nameof(Migration_ButtonViewLocation), Culture)!;
|
|
|
|
|
public static string Migration_ButtonSkip => ResourceManager.GetString(nameof(Migration_ButtonSkip), Culture)!;
|
|
|
|
|
public static string Migration_ButtonUninstall => ResourceManager.GetString(nameof(Migration_ButtonUninstall), Culture)!;
|
|
|
|
|
public static string Migration_Portable => ResourceManager.GetString(nameof(Migration_Portable), Culture)!;
|
|
|
|
|
public static string Migration_Unknown => ResourceManager.GetString(nameof(Migration_Unknown), Culture)!;
|
|
|
|
|
public static string Migration_DetectedDescFormat => ResourceManager.GetString(nameof(Migration_DetectedDescFormat), Culture)!;
|
|
|
|
|
public static string Privacy_Title => ResourceManager.GetString(nameof(Privacy_Title), Culture)!;
|
|
|
|
|
public static string Privacy_Header => ResourceManager.GetString(nameof(Privacy_Header), Culture)!;
|
|
|
|
|
public static string Privacy_Description => ResourceManager.GetString(nameof(Privacy_Description), Culture)!;
|
|
|
|
|
public static string Privacy_ButtonClose => ResourceManager.GetString(nameof(Privacy_ButtonClose), Culture)!;
|
|
|
|
|
public static string DevDebug_Title => ResourceManager.GetString(nameof(DevDebug_Title), Culture)!;
|
|
|
|
|
public static string DevDebug_Splash => ResourceManager.GetString(nameof(DevDebug_Splash), Culture)!;
|
|
|
|
|
public static string DevDebug_Error => ResourceManager.GetString(nameof(DevDebug_Error), Culture)!;
|
|
|
|
|
public static string DevDebug_Update => ResourceManager.GetString(nameof(DevDebug_Update), Culture)!;
|
|
|
|
|
public static string DevDebug_Oobe => ResourceManager.GetString(nameof(DevDebug_Oobe), Culture)!;
|
|
|
|
|
public static string DevDebug_DataLocation => ResourceManager.GetString(nameof(DevDebug_DataLocation), Culture)!;
|
|
|
|
|
public static string DevDebug_EnableFeature => ResourceManager.GetString(nameof(DevDebug_EnableFeature), Culture)!;
|
|
|
|
|
public static string DevDebug_Open => ResourceManager.GetString(nameof(DevDebug_Open), Culture)!;
|
|
|
|
|
public static string DevDebug_SetAllViewMode => ResourceManager.GetString(nameof(DevDebug_SetAllViewMode), Culture)!;
|
|
|
|
|
public static string DevDebug_SetAllFunctionMode => ResourceManager.GetString(nameof(DevDebug_SetAllFunctionMode), Culture)!;
|
|
|
|
|
public static string DevDebug_Close => ResourceManager.GetString(nameof(DevDebug_Close), Culture)!;
|
|
|
|
|
public static string Coordinator_SlowDeviceMessage => ResourceManager.GetString(nameof(Coordinator_SlowDeviceMessage), Culture)!;
|
|
|
|
|
public static string Coordinator_RunningHostMessage => ResourceManager.GetString(nameof(Coordinator_RunningHostMessage), Culture)!;
|
|
|
|
|
public static string Preview_SplashInitializing => ResourceManager.GetString(nameof(Preview_SplashInitializing), Culture)!;
|
|
|
|
|
public static string Preview_SplashCheckingUpdates => ResourceManager.GetString(nameof(Preview_SplashCheckingUpdates), Culture)!;
|
|
|
|
|
public static string Preview_SplashCheckingPlugins => ResourceManager.GetString(nameof(Preview_SplashCheckingPlugins), Culture)!;
|
|
|
|
|
public static string Preview_SplashLaunchingHost => ResourceManager.GetString(nameof(Preview_SplashLaunchingHost), Culture)!;
|
|
|
|
|
public static string Preview_SplashReady => ResourceManager.GetString(nameof(Preview_SplashReady), Culture)!;
|
|
|
|
|
public static string Preview_ErrorMessage => ResourceManager.GetString(nameof(Preview_ErrorMessage), Culture)!;
|
|
|
|
|
public static string Preview_UpdateProcessing => ResourceManager.GetString(nameof(Preview_UpdateProcessing), Culture)!;
|
|
|
|
|
public static string Preview_ActivationConnecting => ResourceManager.GetString(nameof(Preview_ActivationConnecting), Culture)!;
|
|
|
|
|
|
|
|
|
|
private static CultureInfo? Culture => CultureInfo.CurrentUICulture;
|
|
|
|
|
}
|