feat: add "Edit" menu to MacOs build (#812)
This commit is contained in:
committed by
László Monda
parent
7e4b7c5c8b
commit
843b4cbf68
@@ -18,6 +18,7 @@ import { AppService } from './services/app.service';
|
||||
import { SudoService } from './services/sudo.service';
|
||||
import { UhkBlhost } from '../../uhk-usb/src';
|
||||
import * as isDev from 'electron-is-dev';
|
||||
import { setMenu } from './electron-menu';
|
||||
|
||||
const optionDefinitions = [
|
||||
{name: 'addons', type: Boolean},
|
||||
@@ -101,7 +102,7 @@ function createWindow() {
|
||||
},
|
||||
icon: path.join(__dirname, 'renderer/assets/images/agent-app-icon.png')
|
||||
});
|
||||
win.setMenuBarVisibility(false);
|
||||
setMenu(win);
|
||||
win.maximize();
|
||||
uhkHidDeviceService = new UhkHidDevice(logger, options);
|
||||
uhkBlhost = new UhkBlhost(logger, packagesDir);
|
||||
|
||||
36
packages/uhk-agent/src/electron-menu.ts
Normal file
36
packages/uhk-agent/src/electron-menu.ts
Normal file
@@ -0,0 +1,36 @@
|
||||
import { app, BrowserWindow, Menu, systemPreferences } from 'electron';
|
||||
|
||||
export const setMenu = (win: BrowserWindow): void => {
|
||||
if (process.platform !== 'darwin') {
|
||||
win.setMenuBarVisibility(false);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
const template = [
|
||||
{
|
||||
label: app.getName(),
|
||||
submenu: [
|
||||
{role: 'quit'}
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Edit',
|
||||
submenu: [
|
||||
{role: 'cut'},
|
||||
{role: 'copy'},
|
||||
{role: 'paste'},
|
||||
{role: 'delete'},
|
||||
{role: 'selectall'}
|
||||
]
|
||||
}
|
||||
];
|
||||
|
||||
// hide "Start Dictation" submenu item in Edit menu
|
||||
systemPreferences.setUserDefault('NSDisabledDictationMenuItem', 'boolean', true as any);
|
||||
// hide "Emoji & Symbols" submenu item in Edit menu
|
||||
systemPreferences.setUserDefault('NSDisabledCharacterPaletteMenuItem', 'boolean', false as any);
|
||||
|
||||
const menu = Menu.buildFromTemplate(template);
|
||||
Menu.setApplicationMenu(menu);
|
||||
};
|
||||
Reference in New Issue
Block a user