@@ -6,10 +6,18 @@ const {
66 powerMonitor,
77 shell
88} = require ( "electron" ) ;
9+ const Store = require ( "electron-store" ) ;
10+ const isDev = require ( "electron-is-dev" ) ;
911
1012const path = require ( "path" ) ;
1113const { version } = require ( "../package.json" ) ;
12- const isDev = require ( "electron-is-dev" ) ;
14+
15+ const store = new Store ( ) ;
16+
17+ global . notificationSettings = {
18+ resetNotification : store . get ( "reset" ) || true ,
19+ reminderNotification : store . get ( "reminder" ) || "hour"
20+ } ;
1321
1422let mainWindow = {
1523 show : ( ) => {
@@ -65,13 +73,13 @@ function menuSetup() {
6573 {
6674 type : "separator"
6775 } ,
68- {
69- /* For debugging */
70- label : "Dev tools" ,
71- click : ( ) => {
72- mainWindow . webContents . openDevTools ( ) ;
73- }
74- } ,
76+ // {
77+ // /* For debugging */
78+ // label: "Dev tools",
79+ // click: () => {
80+ // mainWindow.webContents.openDevTools();
81+ // }
82+ // },
7583 {
7684 label : "Quit" ,
7785 accelerator : "CommandOrControl+Q" ,
@@ -96,6 +104,17 @@ function menuSetup() {
96104 {
97105 label : "View" ,
98106 submenu : [
107+ // {
108+ // label: "Light mode",
109+ // type: "checkbox",
110+ // checked: false,
111+ // click: e => {
112+ // mainWindow.isLightMode = e.checked;
113+ // }
114+ // },
115+ {
116+ type : "separator"
117+ } ,
99118 { role : "reload" } ,
100119 { role : "togglefullscreen" } ,
101120 { role : "minimize" } ,
@@ -108,9 +127,10 @@ function menuSetup() {
108127 {
109128 label : "Enable reset notification" ,
110129 type : "checkbox" ,
111- checked : true ,
130+ checked : store . get ( "reset" ) ,
112131 click : e => {
113- mainWindow . showResetNotification = e . checked ;
132+ mainWindow . resetNotification = e . checked ;
133+ store . set ( "reset" , e . checked ) ;
114134 }
115135 } ,
116136 {
@@ -119,37 +139,44 @@ function menuSetup() {
119139 {
120140 label : "Never" ,
121141 type : "radio" ,
142+ checked : store . get ( "reminder" ) === "never" ,
122143 click : e => {
123144 if ( e . checked ) {
124- mainWindow . resetNotification = "never" ;
145+ mainWindow . reminderNotification = "never" ;
146+ store . set ( "reminder" , "never" ) ;
125147 }
126148 }
127149 } ,
128150 {
129151 label : "Every 15 minutes" ,
130152 type : "radio" ,
153+ checked : store . get ( "reminder" ) === "quarterhour" ,
131154 click : e => {
132155 if ( e . checked ) {
133- mainWindow . resetNotification = "quarterhour" ;
156+ mainWindow . reminderNotification = "quarterhour" ;
157+ store . set ( "reminder" , "quarterhour" ) ;
134158 }
135159 }
136160 } ,
137161 {
138162 label : "Every 30 minutes" ,
139163 type : "radio" ,
164+ checked : store . get ( "reminder" ) === "halfhour" ,
140165 click : e => {
141166 if ( e . checked ) {
142- mainWindow . resetNotification = "halfhour" ;
167+ mainWindow . reminderNotification = "halfhour" ;
168+ store . set ( "reminder" , "halfhour" ) ;
143169 }
144170 }
145171 } ,
146172 {
147173 label : "Every hour" ,
148174 type : "radio" ,
149- checked : true ,
175+ checked : store . get ( "reminder" ) === "hour" ,
150176 click : e => {
151177 if ( e . checked ) {
152- mainWindow . resetNotification = "hour" ;
178+ mainWindow . reminderNotification = "hour" ;
179+ store . set ( "reminder" , "hour" ) ;
153180 }
154181 }
155182 }
0 commit comments