mirror of
https://github.com/quine-global/hyper.git
synced 2026-01-14 12:58:39 -09:00
60 lines
1.5 KiB
TypeScript
60 lines
1.5 KiB
TypeScript
import {BrowserWindow, MenuItemConstructorOptions} from 'electron';
|
|
|
|
export default (
|
|
commandKeys: Record<string, string>,
|
|
execCommand: (command: string, focusedWindow?: BrowserWindow) => void
|
|
): MenuItemConstructorOptions => {
|
|
const isMac = process.platform === 'darwin';
|
|
|
|
return {
|
|
label: isMac ? 'Shell' : 'File',
|
|
submenu: [
|
|
{
|
|
label: 'New Tab',
|
|
accelerator: commandKeys['tab:new'],
|
|
click(item, focusedWindow) {
|
|
execCommand('tab:new', focusedWindow);
|
|
}
|
|
},
|
|
{
|
|
label: 'New Window',
|
|
accelerator: commandKeys['window:new'],
|
|
click(item, focusedWindow) {
|
|
execCommand('window:new', focusedWindow);
|
|
}
|
|
},
|
|
{
|
|
type: 'separator'
|
|
},
|
|
{
|
|
label: 'Split Down',
|
|
accelerator: commandKeys['pane:splitDown'],
|
|
click(item, focusedWindow) {
|
|
execCommand('pane:splitDown', focusedWindow);
|
|
}
|
|
},
|
|
{
|
|
label: 'Split Right',
|
|
accelerator: commandKeys['pane:splitRight'],
|
|
click(item, focusedWindow) {
|
|
execCommand('pane:splitRight', focusedWindow);
|
|
}
|
|
},
|
|
{
|
|
type: 'separator'
|
|
},
|
|
{
|
|
label: 'Close',
|
|
accelerator: commandKeys['pane:close'],
|
|
click(item, focusedWindow) {
|
|
execCommand('pane:close', focusedWindow);
|
|
}
|
|
},
|
|
{
|
|
label: isMac ? 'Close Window' : 'Quit',
|
|
role: 'close',
|
|
accelerator: commandKeys['window:close']
|
|
}
|
|
]
|
|
};
|
|
};
|