Skip to content

Fix: side navigation labels do not update on locale change - #563

Open
serhiihordiichuk wants to merge 2 commits into
kanbn:mainfrom
serhiihordiichuk:fix-sidenav-locale
Open

Fix: side navigation labels do not update on locale change#563
serhiihordiichuk wants to merge 2 commits into
kanbn:mainfrom
serhiihordiichuk:fix-sidenav-locale

Conversation

@serhiihordiichuk

@serhiihordiichuk serhiihordiichuk commented Aug 27, 2026

Copy link
Copy Markdown

Problem

The side navigation labels (Boards, Templates, Members, Settings) stay in the locale that was active at first render. When a user switches the language, the rest of the interface updates, but the sidebar does not. A hard reload does not help either, because the saved locale activates after the first render.

Cause

SideNavigation.tsx builds the navigation items inside a useMemo with [isDarkMode] as its only dependency. The t macro values are computed once and cached, so a locale change never recomputes them.

Fix

Read the active locale from the existing useLocalisation hook and add it to the dependency array. The memo now recomputes when the language changes.

This affects every language, not one specific locale. Related to #562 (where the issue was found while testing the Ukrainian translation).

🤖 Generated with Claude Code

Serhii Hordiichuk and others added 2 commits August 27, 2026 13:54
The navigation useMemo only recomputed on theme change, so the
labels kept the locale that was active at first render.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TavbPaXhouNDFXLwR6hTHy
The previous fix used the context locale, which changes before the
message catalog loads. Subscribe with useLingui and depend on
i18n.locale so the memo recomputes after activation.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TavbPaXhouNDFXLwR6hTHy
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.

1 participant