From 6a2bedc442868d4b0fe6dd419074e09884276fcb Mon Sep 17 00:00:00 2001 From: Linus Rath <139418639+rathlinus@users.noreply.github.com> Date: Wed, 4 Nov 2026 13:10:26 +0100 Subject: [PATCH] fix: name Ctrl+N and Ctrl+K in the desktop app's welcome tips instead of single keys --- components/ui/__tests__/welcome-banner.test.tsx | 13 +++++++++++++ components/ui/welcome-banner.tsx | 7 ++++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/components/ui/__tests__/welcome-banner.test.tsx b/components/ui/__tests__/welcome-banner.test.tsx index 2ff6b50fb..3af02db83 100644 --- a/components/ui/__tests__/welcome-banner.test.tsx +++ b/components/ui/__tests__/welcome-banner.test.tsx @@ -27,6 +27,19 @@ describe('WelcomeBanner tips', () => { expect(screen.getByText('tip_shortcuts')).toBeInTheDocument(); }); + it('in the desktop app, names the keys it answers: Ctrl+N and Ctrl+K, not c', () => { + device.isMobile = false; + (window as unknown as { bulwarkDesktop: unknown }).bulwarkDesktop = { version: 1, platform: 'win32' }; + try { + render(); + expect(screen.getByText('tip_compose_keys')).toBeInTheDocument(); + expect(screen.getByText('tip_palette_keys')).toBeInTheDocument(); + expect(screen.queryByText('tip_compose')).toBeNull(); + } finally { + delete (window as unknown as { bulwarkDesktop?: unknown }).bulwarkDesktop; + } + }); + it('gives touch tips on a phone', () => { device.isMobile = true; render(); diff --git a/components/ui/welcome-banner.tsx b/components/ui/welcome-banner.tsx index 1b2a9b5cb..3c135ce11 100644 --- a/components/ui/welcome-banner.tsx +++ b/components/ui/welcome-banner.tsx @@ -9,6 +9,8 @@ import { useRouter } from "@/i18n/navigation"; import { useTour } from "@/components/tour/tour-provider"; import { useSettingsStore } from "@/stores/settings-store"; import { useDeviceDetection } from "@/hooks/use-media-query"; +import { isDesktopApp } from "@/lib/desktop/bridge"; +import { formatShortcutCombo } from "@/lib/shortcut-keys"; const ONBOARDING_KEY = "onboarding_completed"; @@ -38,6 +40,7 @@ export function useWelcomeBannerDue(): boolean { */ export function WelcomeBanner({ variant = "list" }: { variant?: "list" | "pane" }) { const t = useTranslations("welcome"); + const tDesktop = useTranslations("uxp2_desktop"); const router = useRouter(); const { startTour } = useTour(); const onboardingCompleted = useSettingsStore((s) => s.onboardingCompleted); @@ -113,7 +116,9 @@ export function WelcomeBanner({ variant = "list" }: { variant?: "list" | "pane" {t("title")}