Skip to content

Commit 82f2db7

Browse files
authored
Suppress browser save events in webviews (microsoft#160563)
Fixes microsoft#147878 Fixes microsoft#147878
1 parent 3c5b3ab commit 82f2db7

File tree

1 file changed

+11
-2
lines changed
  • src/vs/workbench/contrib/webview/browser/pre

1 file changed

+11
-2
lines changed

src/vs/workbench/contrib/webview/browser/pre/index.html

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<meta charset="UTF-8">
66

77
<meta http-equiv="Content-Security-Policy"
8-
content="default-src 'none'; script-src 'sha256-EDTzzejMryXNJsvXPm3ha4m5Mi6h2Y//JRojh+K0+bY=' 'self'; frame-src 'self'; style-src 'unsafe-inline';">
8+
content="default-src 'none'; script-src 'sha256-j+I5FRqQBE2aQY6H/U/pjZI3buJy36yZ/upZTKZov3c=' 'self'; frame-src 'self'; style-src 'unsafe-inline';">
99

1010
<!-- Disable pinch zooming -->
1111
<meta name="viewport"
@@ -572,7 +572,7 @@
572572
// make sure we block the browser from dispatching it. Instead VS Code
573573
// handles these events and will dispatch a copy/paste back to the webview
574574
// if needed
575-
if (isUndoRedo(e) || isPrint(e) || isFindEvent(e)) {
575+
if (isUndoRedo(e) || isPrint(e) || isFindEvent(e) || isSaveEvent(e)) {
576576
e.preventDefault();
577577
} else if (isCopyPasteOrCut(e)) {
578578
if (onElectron) {
@@ -646,6 +646,15 @@
646646
return hasMeta && e.key.toLowerCase() === 'f';
647647
}
648648

649+
/**
650+
* @param {KeyboardEvent} e
651+
* @return {boolean}
652+
*/
653+
function isSaveEvent(e) {
654+
const hasMeta = e.ctrlKey || e.metaKey;
655+
return hasMeta && e.key.toLowerCase() === 's';
656+
}
657+
649658
let isHandlingScroll = false;
650659

651660
/**

0 commit comments

Comments
 (0)