From ed9a7b270ba0e30e070491ef40fd19e38aec2f70 Mon Sep 17 00:00:00 2001 From: AviPeltz Date: Sun, 18 Jan 2026 14:38:47 -0800 Subject: [PATCH 1/2] shortcut on new workspace --- .../NewWorkspaceButton.tsx | 35 +++++++++++++------ 1 file changed, 24 insertions(+), 11 deletions(-) diff --git a/apps/desktop/src/renderer/screens/main/components/WorkspaceSidebar/WorkspaceSidebarHeader/NewWorkspaceButton.tsx b/apps/desktop/src/renderer/screens/main/components/WorkspaceSidebar/WorkspaceSidebarHeader/NewWorkspaceButton.tsx index 2e3b77fe31c..d7c5d1d323b 100644 --- a/apps/desktop/src/renderer/screens/main/components/WorkspaceSidebar/WorkspaceSidebarHeader/NewWorkspaceButton.tsx +++ b/apps/desktop/src/renderer/screens/main/components/WorkspaceSidebar/WorkspaceSidebarHeader/NewWorkspaceButton.tsx @@ -1,6 +1,7 @@ import { Tooltip, TooltipContent, TooltipTrigger } from "@superset/ui/tooltip"; import { useMatchRoute } from "@tanstack/react-router"; import { LuPlus } from "react-icons/lu"; +import { HotkeyTooltipContent } from "renderer/components/HotkeyTooltipContent/HotkeyTooltipContent"; import { electronTrpc } from "renderer/lib/electron-trpc"; import { useOpenNewWorkspaceModal } from "renderer/stores/new-workspace-modal"; import { STROKE_WIDTH_THICK } from "../constants"; @@ -50,21 +51,33 @@ export function NewWorkspaceButton({ - New Workspace + + + ); } return ( - + + + + + + + + ); } From d4601d3c4272c7229da82cd5f9060c26bd73f44f Mon Sep 17 00:00:00 2001 From: AviPeltz Date: Sun, 18 Jan 2026 14:46:08 -0800 Subject: [PATCH 2/2] cmd +n on button --- .../NewWorkspaceButton.tsx | 44 +++++++++---------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/apps/desktop/src/renderer/screens/main/components/WorkspaceSidebar/WorkspaceSidebarHeader/NewWorkspaceButton.tsx b/apps/desktop/src/renderer/screens/main/components/WorkspaceSidebar/WorkspaceSidebarHeader/NewWorkspaceButton.tsx index d7c5d1d323b..f199ed9ca35 100644 --- a/apps/desktop/src/renderer/screens/main/components/WorkspaceSidebar/WorkspaceSidebarHeader/NewWorkspaceButton.tsx +++ b/apps/desktop/src/renderer/screens/main/components/WorkspaceSidebar/WorkspaceSidebarHeader/NewWorkspaceButton.tsx @@ -1,9 +1,13 @@ import { Tooltip, TooltipContent, TooltipTrigger } from "@superset/ui/tooltip"; import { useMatchRoute } from "@tanstack/react-router"; import { LuPlus } from "react-icons/lu"; -import { HotkeyTooltipContent } from "renderer/components/HotkeyTooltipContent/HotkeyTooltipContent"; import { electronTrpc } from "renderer/lib/electron-trpc"; +import { + useEffectiveHotkeysMap, + useHotkeysStore, +} from "renderer/stores/hotkeys"; import { useOpenNewWorkspaceModal } from "renderer/stores/new-workspace-modal"; +import { formatHotkeyText } from "shared/hotkeys"; import { STROKE_WIDTH_THICK } from "../constants"; interface NewWorkspaceButtonProps { @@ -14,6 +18,9 @@ export function NewWorkspaceButton({ isCollapsed = false, }: NewWorkspaceButtonProps) { const openModal = useOpenNewWorkspaceModal(); + const platform = useHotkeysStore((state) => state.platform); + const effective = useEffectiveHotkeysMap(); + const shortcutText = formatHotkeyText(effective.NEW_WORKSPACE, platform); // Derive current workspace from route to pre-select project in modal const matchRoute = useMatchRoute(); @@ -52,32 +59,25 @@ export function NewWorkspaceButton({ - + New Workspace ({shortcutText}) ); } return ( - - - - - - - - + ); }