diff --git a/src/components/onboarding/module-tour-trigger.tsx b/src/components/onboarding/module-tour-trigger.tsx index a502cbf16..717a3fa01 100644 --- a/src/components/onboarding/module-tour-trigger.tsx +++ b/src/components/onboarding/module-tour-trigger.tsx @@ -9,7 +9,7 @@ * opens the spotlight narrowed to that single module card on the * current page (no cross-page navigation, no completion flip). * - * Anchors to the page's `data-tour="<…>-hero"` element via the launcher + * Anchors to the page's `data-tour-id="<…>-hero"` element via the launcher * → overlay path. The button itself carries no anchor — it only fires * the event. */ diff --git a/src/components/settings/section-nav-heading-spacer.tsx b/src/components/settings/section-nav-heading-spacer.tsx index 5a5bcf962..e8d7c13e6 100644 --- a/src/components/settings/section-nav-heading-spacer.tsx +++ b/src/components/settings/section-nav-heading-spacer.tsx @@ -14,11 +14,18 @@ * * It is only rendered on `md+` (the desktop sticky sidebar); the mobile chip * strip has no heading-to-align-with. + * + * v1.18.6 (L11) — pass the active section's resolved `title` so the h1 line + * wraps identically when a locale's title runs to two lines, rather than + * reserving a single ` ` line. The subtitle copy lives per-page in the + * section frame and is not threaded up here, so the spacer reserves one + * subtitle line; a subtitle that wraps to two lines in a given locale is the + * residual known limitation the original comment called out. */ -export function SectionNavHeadingSpacer() { +export function SectionNavHeadingSpacer({ title }: { title?: string }) { return (
); diff --git a/src/components/settings/settings-shell.tsx b/src/components/settings/settings-shell.tsx index f99b74e2f..fd6c3464e 100644 --- a/src/components/settings/settings-shell.tsx +++ b/src/components/settings/settings-shell.tsx @@ -262,6 +262,9 @@ export function SettingsShell({ active, children }: SettingsShellProps) { const visibleSections = SETTINGS_SECTIONS.filter( (section) => !section.moduleGate || modules?.[section.moduleGate] !== false, ); + const activeSection = visibleSections.find( + (section) => section.slug === activeSlug, + ); // v1.4.33 IW4 — keep the active chip in view inside the horizontal // mobile strip. On a 393 CSS px viewport the strip is wider than the @@ -360,8 +363,13 @@ export function SettingsShell({ active, children }: SettingsShellProps) {