diff --git a/app/src/components/mainWindow/mainWindow.js b/app/src/components/mainWindow/mainWindow.js index 907b828..132f582 100644 --- a/app/src/components/mainWindow/mainWindow.js +++ b/app/src/components/mainWindow/mainWindow.js @@ -117,7 +117,9 @@ function createMainWindow(options, onAppQuit, setDockBadge) { }; createMenu(menuOptions); - initContextMenu(mainWindow); + if (!options.disableContextMenu) { + initContextMenu(mainWindow); + } if (options.userAgent) { mainWindow.webContents.setUserAgent(options.userAgent); diff --git a/app/src/components/menu/menu.js b/app/src/components/menu/menu.js index 2302d2a..ec40631 100644 --- a/app/src/components/menu/menu.js +++ b/app/src/components/menu/menu.js @@ -44,7 +44,7 @@ function createMenu({nativefierVersion, appQuit, zoomIn, zoomOut, goBack, goForw }, { label: 'Copy Current URL', - accelerator: 'CmdOrCtrl+C', + accelerator: 'CmdOrCtrl+L', click: () => { const currentURL = getCurrentUrl(); clipboard.writeText(currentURL); diff --git a/docs/api.md b/docs/api.md index e3ee42a..62b61c0 100644 --- a/docs/api.md +++ b/docs/api.md @@ -205,7 +205,7 @@ Forces the packaged app to ignore web security errors, such as [Mixed Content](h If `--flash` is specified, Nativefier will automatically try to determine the location of your Google Chrome flash binary. Take note that the version of Chrome on your computer should be the same as the version used by the version of Electron for the Nativefied package. -Take note that if this flag is specified, the `--insecure` flag will be added automatically, to prevent the Mixed Content errors on sites such as [Twitch.tv](https://www.twitch.tv/). +Take note that if this flag is specified, the `--insecure` flag will be added automatically, to prevent the Mixed Content errors on sites such as [Twitch.tv](https://www.twitch.tv/). #### [flash-path] @@ -213,7 +213,7 @@ Take note that if this flag is specified, the `--insecure` flag will be added au --flash-path ``` -You can also specify the path to the Chrome flash plugin directly with this flag. The path can be found at [chrome://plugins](chrome://plugins), under `Adobe Flash Player` > `Location`. This flag automatically enables the `--flash` flag as well. +You can also specify the path to the Chrome flash plugin directly with this flag. The path can be found at [chrome://plugins](chrome://plugins), under `Adobe Flash Player` > `Location`. This flag automatically enables the `--flash` flag as well. #### [inject] @@ -264,6 +264,14 @@ Disable window frame and controls Shows detailed logs in the console. +#### [disable-context-menu] + +``` +--disable-context-menu +``` + +Disable the context menu + ## Programmatic API You can use the Nativefier programmatic API as well. diff --git a/src/build/buildApp.js b/src/build/buildApp.js index 580a5ec..09791ef 100644 --- a/src/build/buildApp.js +++ b/src/build/buildApp.js @@ -107,7 +107,8 @@ function selectAppArgs(options) { flashPluginDir: options.flashPluginDir, fullScreen: options.fullScreen, hideWindowFrame: options.hideWindowFrame, - maximize: options.maximize + maximize: options.maximize, + disableContextMenu: options.disableContextMenu }; } diff --git a/src/cli.js b/src/cli.js index d2a8fea..75a1d0a 100755 --- a/src/cli.js +++ b/src/cli.js @@ -43,6 +43,7 @@ if (require.main === module) { .option('--maximize', 'if the app should always be started maximized') .option('--hide-window-frame', 'disable window frame and controls') .option('--verbose', 'if verbose logs should be displayed') + .option('--disable-context-menu', 'disable the context menu') .parse(process.argv); if (!process.argv.slice(2).length) { diff --git a/src/options/optionsMain.js b/src/options/optionsMain.js index 0bd8865..d3ec0e7 100644 --- a/src/options/optionsMain.js +++ b/src/options/optionsMain.js @@ -56,7 +56,8 @@ function optionsFactory(inpOptions, callback) { fullScreen: inpOptions.fullScreen || false, maximize: inpOptions.maximize || false, hideWindowFrame: inpOptions.hideWindowFrame, - verbose: inpOptions.verbose + verbose: inpOptions.verbose, + disableContextMenu: inpOptions.disableContextMenu }; if (options.verbose) {