Skip to content

Commit 3b8f2b8

Browse files
committed
fix:shortcut for changing hand and cursor mode
1 parent db47da5 commit 3b8f2b8

2 files changed

Lines changed: 33 additions & 3 deletions

File tree

apps/sim/app/workspace/[workspaceId]/utils/commands-utils.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ export type CommandId =
1717
| 'clear-terminal-console'
1818
| 'focus-toolbar-search'
1919
| 'fit-to-view'
20+
| 'set-canvas-mode-pointer'
21+
| 'set-canvas-mode-mover'
2022

2123
/**
2224
* Static metadata for a global command.
@@ -92,6 +94,16 @@ export const COMMAND_DEFINITIONS: Record<CommandId, CommandDefinition> = {
9294
shortcut: 'Mod+Shift+F',
9395
allowInEditable: false,
9496
},
97+
'set-canvas-mode-pointer': {
98+
id: 'set-canvas-mode-pointer',
99+
shortcut: 'Shift+P',
100+
allowInEditable: false,
101+
},
102+
'set-canvas-mode-mover': {
103+
id: 'set-canvas-mode-mover',
104+
shortcut: 'Shift+M',
105+
allowInEditable: false,
106+
},
95107
}
96108

97109
/**

apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/workflow-controls/workflow-controls.tsx

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,14 @@ export const WorkflowControls = memo(function WorkflowControls() {
6161
id: 'fit-to-view',
6262
handler: handleFitToView,
6363
}),
64+
createCommand({
65+
id: 'set-canvas-mode-pointer',
66+
handler: () => setMode('cursor'),
67+
}),
68+
createCommand({
69+
id: 'set-canvas-mode-mover',
70+
handler: () => setMode('hand'),
71+
}),
6472
])
6573

6674
const [contextMenu, setContextMenu] = useState<{ x: number; y: number } | null>(null)
@@ -118,7 +126,11 @@ export const WorkflowControls = memo(function WorkflowControls() {
118126
</Button>
119127
</div>
120128
</PopoverTrigger>
121-
<Tooltip.Content side='top'>{mode === 'hand' ? 'Mover' : 'Pointer'}</Tooltip.Content>
129+
<Tooltip.Content side='top'>
130+
<Tooltip.Shortcut keys={mode === 'hand' ? 'M' : 'P'}>
131+
{mode === 'hand' ? 'Mover' : 'Pointer'}
132+
</Tooltip.Shortcut>
133+
</Tooltip.Content>
122134
</Tooltip.Root>
123135
<PopoverContent side='top' sideOffset={8} maxWidth={100} minWidth={100}>
124136
<PopoverItem
@@ -128,7 +140,10 @@ export const WorkflowControls = memo(function WorkflowControls() {
128140
}}
129141
>
130142
<Hand className='size-3' />
131-
<span>Mover</span>
143+
<div className='flex items-center gap-2 '>
144+
<span>Mover</span>
145+
<span className='opacity-70'>M</span>
146+
</div>
132147
</PopoverItem>
133148
<PopoverItem
134149
onClick={() => {
@@ -137,7 +152,10 @@ export const WorkflowControls = memo(function WorkflowControls() {
137152
}}
138153
>
139154
<Cursor className='size-3' />
140-
<span>Pointer</span>
155+
<div className=' flex items-center gap-2 '>
156+
<span>Pointer</span>
157+
<span className='opacity-70'>P</span>
158+
</div>
141159
</PopoverItem>
142160
</PopoverContent>
143161
</Popover>

0 commit comments

Comments
 (0)