diff --git a/src/vs/workbench/contrib/webview/browser/pre/index-no-csp.html b/src/vs/workbench/contrib/webview/browser/pre/index-no-csp.html index 70c85003ce21f..8b22da1420429 100644 --- a/src/vs/workbench/contrib/webview/browser/pre/index-no-csp.html +++ b/src/vs/workbench/contrib/webview/browser/pre/index-no-csp.html @@ -596,7 +596,7 @@ } else { return; // let the browser handle this } - } else if (!onElectron && (isCloseTab(e) || isNewWindow(e))) { + } else if (!onElectron && (isCloseTab(e) || isNewWindow(e) || isHelp(e) || isRefresh(e))) { // Prevent Ctrl+W closing window / Ctrl+N opening new window in PWA. // (No effect in a regular browser tab.) e.preventDefault(); @@ -701,6 +701,24 @@ return hasMeta && e.keyCode === 78; } + /** + * @param {KeyboardEvent} e + * @return {boolean} + */ + function isHelp(e) { + // 112: keyCode of "F1" + return e.keyCode === 112; + } + + /** + * @param {KeyboardEvent} e + * @return {boolean} + */ + function isRefresh(e) { + // 116: keyCode of "F5" + return e.keyCode === 116; + } + let isHandlingScroll = false; /** diff --git a/src/vs/workbench/contrib/webview/browser/pre/index.html b/src/vs/workbench/contrib/webview/browser/pre/index.html index 3d4b24036e01f..277a619ddc7a0 100644 --- a/src/vs/workbench/contrib/webview/browser/pre/index.html +++ b/src/vs/workbench/contrib/webview/browser/pre/index.html @@ -5,7 +5,7 @@ + content="default-src 'none'; script-src 'sha256-MbYFw/X6HjRtVlnfFTL3ylPDt3RsDzWrYVjfrzKJbMA=' 'self'; frame-src 'self'; style-src 'unsafe-inline';">