File tree 3 files changed +107
-1
lines changed
3 files changed +107
-1
lines changed Original file line number Diff line number Diff line change @@ -21,6 +21,7 @@ If you feel this tool provides functionality against Guild Wars 2's policy, don'
21
21
Install required dependencies
22
22
23
23
- ` npm i ` to download the latest
24
+ - Copy ` .env-example ` to ` .env `
24
25
25
26
Build RobotJS (https://github.com/octalmage/robotjs/issues/466#issuecomment-600197990 )
26
27
Original file line number Diff line number Diff line change 1
- const { app, BrowserWindow, ipcMain } = require ( 'electron' ) ;
1
+ const { app, BrowserWindow, Menu , ipcMain } = require ( 'electron' ) ;
2
2
const path = require ( 'path' ) ;
3
3
const url = require ( 'url' ) ;
4
4
const Store = require ( 'electron-store' ) ;
5
5
const robot = require ( 'robotjs' ) ;
6
6
7
7
const { channels } = require ( '../src/shared/constants' ) ;
8
+ const { menuTemplate } = require ( './menuTemplate' ) ;
8
9
9
10
robot . setKeyboardDelay ( 0 ) ;
10
11
@@ -106,4 +107,7 @@ function createWindow() {
106
107
mainWindow . on ( 'closed' , function ( ) {
107
108
mainWindow = null ;
108
109
} ) ;
110
+
111
+ const menu = Menu . buildFromTemplate ( menuTemplate ) ;
112
+ Menu . setApplicationMenu ( menu ) ;
109
113
}
Original file line number Diff line number Diff line change
1
+ const { app } = require ( 'electron' ) ;
2
+
3
+ const isMac = process . platform === 'darwin' ;
4
+
5
+ const template = [
6
+ // { role: 'appMenu' }
7
+ ...( isMac
8
+ ? [
9
+ {
10
+ label : app . name ,
11
+ submenu : [
12
+ { role : 'about' } ,
13
+ { type : 'separator' } ,
14
+ { role : 'services' } ,
15
+ { type : 'separator' } ,
16
+ { role : 'hide' } ,
17
+ { role : 'hideothers' } ,
18
+ { role : 'unhide' } ,
19
+ { type : 'separator' } ,
20
+ { role : 'quit' } ,
21
+ ] ,
22
+ } ,
23
+ ]
24
+ : [ ] ) ,
25
+ // { role: 'fileMenu' }
26
+ {
27
+ label : 'File' ,
28
+ submenu : [ isMac ? { role : 'close' } : { role : 'quit' } ] ,
29
+ } ,
30
+ // { role: 'editMenu' }
31
+ {
32
+ label : 'Edit' ,
33
+ submenu : [
34
+ { role : 'undo' } ,
35
+ { role : 'redo' } ,
36
+ { type : 'separator' } ,
37
+ { role : 'cut' } ,
38
+ { role : 'copy' } ,
39
+ { role : 'paste' } ,
40
+ ...( isMac
41
+ ? [
42
+ { role : 'pasteAndMatchStyle' } ,
43
+ { role : 'delete' } ,
44
+ { role : 'selectAll' } ,
45
+ { type : 'separator' } ,
46
+ {
47
+ label : 'Speech' ,
48
+ submenu : [ { role : 'startspeaking' } , { role : 'stopspeaking' } ] ,
49
+ } ,
50
+ ]
51
+ : [ { role : 'delete' } , { type : 'separator' } , { role : 'selectAll' } ] ) ,
52
+ ] ,
53
+ } ,
54
+ // { role: 'viewMenu' }
55
+ {
56
+ label : 'View' ,
57
+ submenu : [
58
+ { role : 'reload' } ,
59
+ { role : 'forcereload' } ,
60
+ { role : 'toggledevtools' } ,
61
+ { type : 'separator' } ,
62
+ { role : 'resetzoom' } ,
63
+ { role : 'zoomin' } ,
64
+ { role : 'zoomout' } ,
65
+ { type : 'separator' } ,
66
+ { role : 'togglefullscreen' } ,
67
+ ] ,
68
+ } ,
69
+ // { role: 'windowMenu' }
70
+ {
71
+ label : 'Window' ,
72
+ submenu : [
73
+ { role : 'minimize' } ,
74
+ { role : 'zoom' } ,
75
+ ...( isMac
76
+ ? [
77
+ { type : 'separator' } ,
78
+ { role : 'front' } ,
79
+ { type : 'separator' } ,
80
+ { role : 'window' } ,
81
+ ]
82
+ : [ { role : 'close' } ] ) ,
83
+ ] ,
84
+ } ,
85
+ {
86
+ role : 'help' ,
87
+ submenu : [
88
+ {
89
+ label : 'Learn More' ,
90
+ click : async ( ) => {
91
+ const { shell } = require ( 'electron' ) ;
92
+ await shell . openExternal (
93
+ 'https://github.com/davidlukerice/midi-to-keypress'
94
+ ) ;
95
+ } ,
96
+ } ,
97
+ ] ,
98
+ } ,
99
+ ] ;
100
+
101
+ module . exports = { menuTemplate : template } ;
You can’t perform that action at this time.
0 commit comments