MCPcopy
hub / github.com/wavetermdev/waveterm / handleCtrlShiftState

Function handleCtrlShiftState

emain/emain-util.ts:69–98  ·  view source on GitHub ↗
(sender: Electron.WebContents, waveEvent: WaveKeyboardEvent)

Source from the content-addressed store, hash-verified

67}
68
69export function handleCtrlShiftState(sender: Electron.WebContents, waveEvent: WaveKeyboardEvent) {
70 if (waveEvent.type == "keyup") {
71 if (waveEvent.key === "Control" || waveEvent.key === "Shift") {
72 setCtrlShift(sender, false);
73 }
74 if (waveEvent.key == "Meta") {
75 if (waveEvent.control && waveEvent.shift) {
76 setCtrlShift(sender, true);
77 }
78 }
79 if (lastCtrlShiftSate) {
80 if (!waveEvent.control || !waveEvent.shift) {
81 setCtrlShift(sender, false);
82 }
83 }
84 return;
85 }
86 if (waveEvent.type == "keydown") {
87 if (waveEvent.key === "Control" || waveEvent.key === "Shift" || waveEvent.key === "Meta") {
88 if (waveEvent.control && waveEvent.shift && !waveEvent.meta) {
89 // Set the control and shift without the Meta key
90 setCtrlShift(sender, true);
91 } else {
92 // Unset if Meta is pressed
93 setCtrlShift(sender, false);
94 }
95 }
96 return;
97 }
98}
99
100export function shNavHandler(event: Electron.Event<Electron.WebContentsWillNavigateEventParams>, url: string) {
101 const isDev = !electron.app.isPackaged;

Callers 2

getOrCreateWebViewForTabFunction · 0.90
initIpcHandlersFunction · 0.90

Calls 1

setCtrlShiftFunction · 0.85

Tested by

no test coverage detected