mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-02-03 22:59:14 +00:00
## Summary Fixed Vue node keybinding target element ID to enable bypass/pin/collapse hotkeys in both LiteGraph and Vue rendering modes. Also fixed a bug when starting in litegraph mode => switching to Vue nodes without reloading => `graph.onTrigger` is set to `undefined` which interferes with proper setup of node data instrumentation, among other things. ## Changes - **What**: Updated keybinding `targetElementId` from `graph-canvas` to `graph-canvas-container` for node manipulation commands (parent of both the canvas and transform pane -- vue nodes container). - **What**: Added conditional `onTrigger` handler restoration in slot layout sync to prevent Vue node manager conflicts ## Review Focus Event handler precedence between Vue nodes and LiteGraph systems during mode switching, ensuring hotkeys work consistently across rendering modes. ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-5715-fix-bypass-hotkey-in-vue-nodes-and-fix-node-data-instrumentation-setup-issue-when-switchi-2756d73d3650815c8ec8d5e4d06232e3) by [Unito](https://www.unito.io)
213 lines
3.5 KiB
TypeScript
213 lines
3.5 KiB
TypeScript
import type { Keybinding } from '@/schemas/keyBindingSchema'
|
|
|
|
export const CORE_KEYBINDINGS: Keybinding[] = [
|
|
{
|
|
combo: {
|
|
ctrl: true,
|
|
key: 'Enter'
|
|
},
|
|
commandId: 'Comfy.QueuePrompt'
|
|
},
|
|
{
|
|
combo: {
|
|
ctrl: true,
|
|
shift: true,
|
|
key: 'Enter'
|
|
},
|
|
commandId: 'Comfy.QueuePromptFront'
|
|
},
|
|
{
|
|
combo: {
|
|
ctrl: true,
|
|
alt: true,
|
|
key: 'Enter'
|
|
},
|
|
commandId: 'Comfy.Interrupt'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 'r'
|
|
},
|
|
commandId: 'Comfy.RefreshNodeDefinitions'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 'q'
|
|
},
|
|
commandId: 'Workspace.ToggleSidebarTab.queue'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 'w'
|
|
},
|
|
commandId: 'Workspace.ToggleSidebarTab.workflows'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 'n'
|
|
},
|
|
commandId: 'Workspace.ToggleSidebarTab.node-library'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 'm'
|
|
},
|
|
commandId: 'Workspace.ToggleSidebarTab.model-library'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 's',
|
|
ctrl: true
|
|
},
|
|
commandId: 'Comfy.SaveWorkflow'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 'o',
|
|
ctrl: true
|
|
},
|
|
commandId: 'Comfy.OpenWorkflow'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 'g',
|
|
ctrl: true
|
|
},
|
|
commandId: 'Comfy.Graph.GroupSelectedNodes'
|
|
},
|
|
{
|
|
combo: {
|
|
key: ',',
|
|
ctrl: true
|
|
},
|
|
commandId: 'Comfy.ShowSettingsDialog'
|
|
},
|
|
// For '=' both holding shift and not holding shift
|
|
{
|
|
combo: {
|
|
key: '=',
|
|
alt: true
|
|
},
|
|
commandId: 'Comfy.Canvas.ZoomIn',
|
|
targetElementId: 'graph-canvas'
|
|
},
|
|
{
|
|
combo: {
|
|
key: '+',
|
|
alt: true,
|
|
shift: true
|
|
},
|
|
commandId: 'Comfy.Canvas.ZoomIn',
|
|
targetElementId: 'graph-canvas'
|
|
},
|
|
// For number pad '+'
|
|
{
|
|
combo: {
|
|
key: '+',
|
|
alt: true
|
|
},
|
|
commandId: 'Comfy.Canvas.ZoomIn',
|
|
targetElementId: 'graph-canvas'
|
|
},
|
|
{
|
|
combo: {
|
|
key: '-',
|
|
alt: true
|
|
},
|
|
commandId: 'Comfy.Canvas.ZoomOut',
|
|
targetElementId: 'graph-canvas'
|
|
},
|
|
{
|
|
combo: {
|
|
key: '.'
|
|
},
|
|
commandId: 'Comfy.Canvas.FitView',
|
|
targetElementId: 'graph-canvas-container'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 'p'
|
|
},
|
|
commandId: 'Comfy.Canvas.ToggleSelected.Pin',
|
|
targetElementId: 'graph-canvas-container'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 'c',
|
|
alt: true
|
|
},
|
|
commandId: 'Comfy.Canvas.ToggleSelectedNodes.Collapse',
|
|
targetElementId: 'graph-canvas-container'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 'b',
|
|
ctrl: true
|
|
},
|
|
commandId: 'Comfy.Canvas.ToggleSelectedNodes.Bypass',
|
|
targetElementId: 'graph-canvas-container'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 'm',
|
|
ctrl: true
|
|
},
|
|
commandId: 'Comfy.Canvas.ToggleSelectedNodes.Mute',
|
|
targetElementId: 'graph-canvas-container'
|
|
},
|
|
{
|
|
combo: {
|
|
key: '`',
|
|
ctrl: true
|
|
},
|
|
commandId: 'Workspace.ToggleBottomPanelTab.logs-terminal'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 'f'
|
|
},
|
|
commandId: 'Workspace.ToggleFocusMode'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 'e',
|
|
ctrl: true,
|
|
shift: true
|
|
},
|
|
commandId: 'Comfy.Graph.ConvertToSubgraph'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 'm',
|
|
alt: true
|
|
},
|
|
commandId: 'Comfy.Canvas.ToggleMinimap'
|
|
},
|
|
{
|
|
combo: {
|
|
ctrl: true,
|
|
shift: true,
|
|
key: 'k'
|
|
},
|
|
commandId: 'Workspace.ToggleBottomPanel.Shortcuts'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 'v'
|
|
},
|
|
commandId: 'Comfy.Canvas.Unlock'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 'h'
|
|
},
|
|
commandId: 'Comfy.Canvas.Lock'
|
|
},
|
|
{
|
|
combo: {
|
|
key: 'Escape'
|
|
},
|
|
commandId: 'Comfy.Graph.ExitSubgraph'
|
|
}
|
|
]
|