Skip to content

Docking shell menu strings come from the app's Strings.axaml (#8) - #229

Merged
kjmikkel merged 1 commit into
mainfrom
feat/8-localise-dock-strings
Oct 16, 2026
Merged

kjmikkel merged 1 commit into
mainfrom
feat/8-localise-dock-strings

Conversation

@kjmikkel

Copy link
Copy Markdown
Owner

Closes #8.

Change

  • Dock's strings live in named resources. Dock.Avalonia 11.3.12.1 keeps its menu text in Dock.Avalonia.Themes.Fluent/Controls/ControlStrings.axaml, for example ToolChromeControlAutoHideString and DocumentTabStripItemCloseString.
  • The app redefines them. All 36 user-facing keys now sit in DialogEditor.Avalonia/Resources/Strings.axaml, with Dock's English defaults and _ access keys. They cover drag preview, the document and tool tab-strip menus, tool chrome and pinned tools.
  • No fork needed. Application resources are searched before the Dock theme's styles, so menus show the app's copy. A UI translation overlay of Strings.axaml (Author a UI translation overlay (mechanism done, no content yet) #7) therefore translates the docking shell too.
  • Left alone: the RootDockDebug* strings, which belong to Dock's developer debug picker that users never see. A comment in Strings.axaml says so.

Tests

DockStringsTests:

  • loads Dock's own ControlStrings.axaml at runtime and fails if any user-facing key is missing from Strings.axaml, so a Dock upgrade that adds a menu string can't slip through untranslated;
  • checks that the app resolves a Dock key to the app's own value.

Full headless suite passes.

🤖 Generated with Claude Code

Dock.Avalonia's user-facing strings (Float, Dock, Auto Hide, Close, the
document/tool tab-strip menus, drag preview) are redefined under their
own keys in Strings.axaml, which the app resolves before the Dock theme,
so a UI translation overlay covers the docking shell too. A test loads
Dock's ControlStrings.axaml and fails if an upgrade adds a key missing
here. Developer-only RootDockDebug* strings are left to Dock.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kjmikkel
kjmikkel merged commit f751d84 into main Oct 16, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Localise Dock.Avalonia built-in menu strings

1 participant