From e66fcaa1a8d17d2edfc8e262b7e012a55c1b484b Mon Sep 17 00:00:00 2001 From: Stefan Date: Fri, 8 Mar 2019 16:45:14 +0100 Subject: fix(Windows): Fix copy & paste in service context menus Closes #1316 --- src/webview/contextMenu.js | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/webview/contextMenu.js b/src/webview/contextMenu.js index afb1d8912..a4a6ab899 100644 --- a/src/webview/contextMenu.js +++ b/src/webview/contextMenu.js @@ -33,6 +33,8 @@ const buildMenuTpl = (props, suggestions, isSpellcheckEnabled, defaultSpellcheck const canGoBack = webContents.canGoBack(); const canGoForward = webContents.canGoForward(); + // @adlk: we can't use roles here due to a bug with electron where electron.remote.webContents.getFocusedWebContents() returns the first webview in DOM instead of the focused one + // Github issue creation is pending let menuTpl = [ { type: 'separator', @@ -48,19 +50,32 @@ const buildMenuTpl = (props, suggestions, isSpellcheckEnabled, defaultSpellcheck type: 'separator', }, { id: 'cut', - role: can('Cut') ? 'cut' : '', + label: 'Cut', + click() { + if (can('Cut')) { + webContents.cut(); + } + }, enabled: can('Cut'), visible: hasText && props.isEditable, }, { id: 'copy', label: 'Copy', - role: can('Copy') ? 'copy' : '', + click() { + if (can('Copy')) { + webContents.copy(); + } + }, enabled: can('Copy'), visible: props.isEditable || hasText, }, { id: 'paste', label: 'Paste', - role: editFlags.canPaste ? 'paste' : '', + click() { + if (editFlags.canPaste) { + webContents.paste(); + } + }, enabled: editFlags.canPaste, visible: props.isEditable, }, { -- cgit v1.2.3-54-g00ecf