Add native menu items to renderer-side projects from the browser-side.
npm install --save electron-menus
var menus =menus
set menus.set(pathToIndexFile[, menuDefinition][, settings])
pathToIndexFile, an optional
menuDefinition to use, if not provided will default to
menus/default.js (see that file and Electron menu documentation for more on what that array should look like) and an optional
settings argument with the following defaults:
id: 'ELECTRON-menus' // The id of the script tag to inject the menu definition into,replace: false // If a script tag of the above id already exists, should it replace its contents or leave it alones
Loading a flat file web app into Electron is quite easy, you would either hardcode those files, or, better yet, include that project as a module and point your
window.loadUrl method at it.
The problem is that web app knows nothing about the native desktop context it is now in. And because basic elements like menu items, which enable Copy and Paste, must be defined on the Renderer side, your web app will feel powerless in its new environment.