diff options
author | 2020-04-18 09:31:59 +0200 | |
---|---|---|
committer | 2020-04-18 09:31:59 +0200 | |
commit | c579c6bbac7390115970d65109a1d1d4f500d920 (patch) | |
tree | 4b5b449cd3e04fb830ec299b3028fbfe4dc20c97 /src | |
parent | Add 5.5.0-gm and 5.5.0 changelog (#574) (diff) | |
download | ferdium-app-c579c6bbac7390115970d65109a1d1d4f500d920.tar.gz ferdium-app-c579c6bbac7390115970d65109a1d1d4f500d920.tar.zst ferdium-app-c579c6bbac7390115970d65109a1d1d4f500d920.zip |
* Add setting to hibernate on startup
* Implement service hibernation on startup
* Fix lint
* Clarify comment
Diffstat (limited to 'src')
-rw-r--r-- | src/components/settings/settings/EditSettingsForm.js | 5 | ||||
-rw-r--r-- | src/config.js | 1 | ||||
-rw-r--r-- | src/containers/settings/EditSettingsScreen.js | 10 | ||||
-rw-r--r-- | src/i18n/locales/en-US.json | 5 | ||||
-rw-r--r-- | src/i18n/messages/src/containers/settings/EditSettingsScreen.json | 117 | ||||
-rw-r--r-- | src/models/Service.js | 11 |
6 files changed, 96 insertions, 53 deletions
diff --git a/src/components/settings/settings/EditSettingsForm.js b/src/components/settings/settings/EditSettingsForm.js index e1c2a2d4f..5cd8bdb36 100644 --- a/src/components/settings/settings/EditSettingsForm.js +++ b/src/components/settings/settings/EditSettingsForm.js | |||
@@ -251,7 +251,10 @@ export default @observer class EditSettingsForm extends Component { | |||
251 | 251 | ||
252 | <Toggle field={form.$('hibernate')} /> | 252 | <Toggle field={form.$('hibernate')} /> |
253 | {hibernationEnabled && ( | 253 | {hibernationEnabled && ( |
254 | <Select field={form.$('hibernationStrategy')} /> | 254 | <> |
255 | <Select field={form.$('hibernationStrategy')} /> | ||
256 | <Toggle field={form.$('hibernateOnStartup')} /> | ||
257 | </> | ||
255 | )} | 258 | )} |
256 | <p | 259 | <p |
257 | className="settings__message" | 260 | className="settings__message" |
diff --git a/src/config.js b/src/config.js index 45b840b0a..2467ab706 100644 --- a/src/config.js +++ b/src/config.js | |||
@@ -118,6 +118,7 @@ export const DEFAULT_APP_SETTINGS = { | |||
118 | scheduledDNDStart: '17:00', | 118 | scheduledDNDStart: '17:00', |
119 | scheduledDNDEnd: '09:00', | 119 | scheduledDNDEnd: '09:00', |
120 | hibernate: false, | 120 | hibernate: false, |
121 | hibernateOnStartup: true, | ||
121 | hibernationStrategy: 300, | 122 | hibernationStrategy: 300, |
122 | inactivityLock: 0, | 123 | inactivityLock: 0, |
123 | automaticUpdates: true, | 124 | automaticUpdates: true, |
diff --git a/src/containers/settings/EditSettingsScreen.js b/src/containers/settings/EditSettingsScreen.js index 74ec1909e..f6c2d4360 100644 --- a/src/containers/settings/EditSettingsScreen.js +++ b/src/containers/settings/EditSettingsScreen.js | |||
@@ -70,6 +70,10 @@ const messages = defineMessages({ | |||
70 | id: 'settings.app.form.hibernate', | 70 | id: 'settings.app.form.hibernate', |
71 | defaultMessage: '!!!Enable service hibernation', | 71 | defaultMessage: '!!!Enable service hibernation', |
72 | }, | 72 | }, |
73 | hibernateOnStartup: { | ||
74 | id: 'settings.app.form.hibernateOnStartup', | ||
75 | defaultMessage: '!!!Keep services in hibernation on startup', | ||
76 | }, | ||
73 | hibernationStrategy: { | 77 | hibernationStrategy: { |
74 | id: 'settings.app.form.hibernationStrategy', | 78 | id: 'settings.app.form.hibernationStrategy', |
75 | defaultMessage: '!!!Hibernation strategy', | 79 | defaultMessage: '!!!Hibernation strategy', |
@@ -208,6 +212,7 @@ export default @inject('stores', 'actions') @observer class EditSettingsScreen e | |||
208 | navigationBarBehaviour: settingsData.navigationBarBehaviour, | 212 | navigationBarBehaviour: settingsData.navigationBarBehaviour, |
209 | sentry: settingsData.sentry, | 213 | sentry: settingsData.sentry, |
210 | hibernate: settingsData.hibernate, | 214 | hibernate: settingsData.hibernate, |
215 | hibernateOnStartup: settingsData.hibernateOnStartup, | ||
211 | hibernationStrategy: settingsData.hibernationStrategy, | 216 | hibernationStrategy: settingsData.hibernationStrategy, |
212 | predefinedTodoServer: settingsData.predefinedTodoServer, | 217 | predefinedTodoServer: settingsData.predefinedTodoServer, |
213 | customTodoServer: settingsData.customTodoServer, | 218 | customTodoServer: settingsData.customTodoServer, |
@@ -361,6 +366,11 @@ export default @inject('stores', 'actions') @observer class EditSettingsScreen e | |||
361 | value: settings.all.app.hibernate, | 366 | value: settings.all.app.hibernate, |
362 | default: DEFAULT_APP_SETTINGS.hibernate, | 367 | default: DEFAULT_APP_SETTINGS.hibernate, |
363 | }, | 368 | }, |
369 | hibernateOnStartup: { | ||
370 | label: intl.formatMessage(messages.hibernateOnStartup), | ||
371 | value: settings.all.app.hibernateOnStartup, | ||
372 | default: DEFAULT_APP_SETTINGS.hibernateOnStartup, | ||
373 | }, | ||
364 | hibernationStrategy: { | 374 | hibernationStrategy: { |
365 | label: intl.formatMessage(messages.hibernationStrategy), | 375 | label: intl.formatMessage(messages.hibernationStrategy), |
366 | value: settings.all.app.hibernationStrategy, | 376 | value: settings.all.app.hibernationStrategy, |
diff --git a/src/i18n/locales/en-US.json b/src/i18n/locales/en-US.json index d1b01f884..b9c00fd73 100644 --- a/src/i18n/locales/en-US.json +++ b/src/i18n/locales/en-US.json | |||
@@ -291,6 +291,7 @@ | |||
291 | "settings.app.form.enableSystemTray": "Show Ferdi in system tray", | 291 | "settings.app.form.enableSystemTray": "Show Ferdi in system tray", |
292 | "settings.app.form.enableTodos": "Enable Ferdi Todos", | 292 | "settings.app.form.enableTodos": "Enable Ferdi Todos", |
293 | "settings.app.form.hibernate": "Enable service hibernation", | 293 | "settings.app.form.hibernate": "Enable service hibernation", |
294 | "settings.app.form.hibernateOnStartup": "Keep services in hibernation on startup", | ||
294 | "settings.app.form.hibernationStrategy": "Hibernation strategy", | 295 | "settings.app.form.hibernationStrategy": "Hibernation strategy", |
295 | "settings.app.form.iconSize": "Service icon size", | 296 | "settings.app.form.iconSize": "Service icon size", |
296 | "settings.app.form.inactivityLock": "Lock after inactivity", | 297 | "settings.app.form.inactivityLock": "Lock after inactivity", |
@@ -369,6 +370,9 @@ | |||
369 | "settings.service.form.customUrlPremiumInfo": "To add self hosted services, you need a Ferdi Premium Supporter Account.", | 370 | "settings.service.form.customUrlPremiumInfo": "To add self hosted services, you need a Ferdi Premium Supporter Account.", |
370 | "settings.service.form.customUrlUpgradeAccount": "Upgrade your account", | 371 | "settings.service.form.customUrlUpgradeAccount": "Upgrade your account", |
371 | "settings.service.form.customUrlValidationError": "Could not validate custom {name} server.", | 372 | "settings.service.form.customUrlValidationError": "Could not validate custom {name} server.", |
373 | "settings.service.form.darkReaderBrightness": "Brightness", | ||
374 | "settings.service.form.darkReaderContrast": "Contrast", | ||
375 | "settings.service.form.darkReaderSepia": "Sepia", | ||
372 | "settings.service.form.deleteButton": "Delete service", | 376 | "settings.service.form.deleteButton": "Delete service", |
373 | "settings.service.form.disableHibernation": "Disable hibernation", | 377 | "settings.service.form.disableHibernation": "Disable hibernation", |
374 | "settings.service.form.disableHibernationInfo": "You currently have hibernation enabled but you can disable hibernation for individual services using this option.", | 378 | "settings.service.form.disableHibernationInfo": "You currently have hibernation enabled but you can disable hibernation for individual services using this option.", |
@@ -379,6 +383,7 @@ | |||
379 | "settings.service.form.enableNotification": "Enable notifications", | 383 | "settings.service.form.enableNotification": "Enable notifications", |
380 | "settings.service.form.enableService": "Enable service", | 384 | "settings.service.form.enableService": "Enable service", |
381 | "settings.service.form.headlineBadges": "Unread message badges", | 385 | "settings.service.form.headlineBadges": "Unread message badges", |
386 | "settings.service.form.headlineDarkReaderSettings": "Dark Reader Settings", | ||
382 | "settings.service.form.headlineGeneral": "General", | 387 | "settings.service.form.headlineGeneral": "General", |
383 | "settings.service.form.headlineNotifications": "Notifications", | 388 | "settings.service.form.headlineNotifications": "Notifications", |
384 | "settings.service.form.icon": "Custom icon", | 389 | "settings.service.form.icon": "Custom icon", |
diff --git a/src/i18n/messages/src/containers/settings/EditSettingsScreen.json b/src/i18n/messages/src/containers/settings/EditSettingsScreen.json index 42199503b..f6afe5246 100644 --- a/src/i18n/messages/src/containers/settings/EditSettingsScreen.json +++ b/src/i18n/messages/src/containers/settings/EditSettingsScreen.json | |||
@@ -143,15 +143,28 @@ | |||
143 | } | 143 | } |
144 | }, | 144 | }, |
145 | { | 145 | { |
146 | "id": "settings.app.form.hibernateOnStartup", | ||
147 | "defaultMessage": "!!!Keep services in hibernation on startup", | ||
148 | "file": "src/containers/settings/EditSettingsScreen.js", | ||
149 | "start": { | ||
150 | "line": 73, | ||
151 | "column": 22 | ||
152 | }, | ||
153 | "end": { | ||
154 | "line": 76, | ||
155 | "column": 3 | ||
156 | } | ||
157 | }, | ||
158 | { | ||
146 | "id": "settings.app.form.hibernationStrategy", | 159 | "id": "settings.app.form.hibernationStrategy", |
147 | "defaultMessage": "!!!Hibernation strategy", | 160 | "defaultMessage": "!!!Hibernation strategy", |
148 | "file": "src/containers/settings/EditSettingsScreen.js", | 161 | "file": "src/containers/settings/EditSettingsScreen.js", |
149 | "start": { | 162 | "start": { |
150 | "line": 73, | 163 | "line": 77, |
151 | "column": 23 | 164 | "column": 23 |
152 | }, | 165 | }, |
153 | "end": { | 166 | "end": { |
154 | "line": 76, | 167 | "line": 80, |
155 | "column": 3 | 168 | "column": 3 |
156 | } | 169 | } |
157 | }, | 170 | }, |
@@ -160,11 +173,11 @@ | |||
160 | "defaultMessage": "!!!Todo Server", | 173 | "defaultMessage": "!!!Todo Server", |
161 | "file": "src/containers/settings/EditSettingsScreen.js", | 174 | "file": "src/containers/settings/EditSettingsScreen.js", |
162 | "start": { | 175 | "start": { |
163 | "line": 77, | 176 | "line": 81, |
164 | "column": 24 | 177 | "column": 24 |
165 | }, | 178 | }, |
166 | "end": { | 179 | "end": { |
167 | "line": 80, | 180 | "line": 84, |
168 | "column": 3 | 181 | "column": 3 |
169 | } | 182 | } |
170 | }, | 183 | }, |
@@ -173,11 +186,11 @@ | |||
173 | "defaultMessage": "!!!Custom TodoServer", | 186 | "defaultMessage": "!!!Custom TodoServer", |
174 | "file": "src/containers/settings/EditSettingsScreen.js", | 187 | "file": "src/containers/settings/EditSettingsScreen.js", |
175 | "start": { | 188 | "start": { |
176 | "line": 81, | 189 | "line": 85, |
177 | "column": 20 | 190 | "column": 20 |
178 | }, | 191 | }, |
179 | "end": { | 192 | "end": { |
180 | "line": 84, | 193 | "line": 88, |
181 | "column": 3 | 194 | "column": 3 |
182 | } | 195 | } |
183 | }, | 196 | }, |
@@ -186,11 +199,11 @@ | |||
186 | "defaultMessage": "!!!Enable Password Lock", | 199 | "defaultMessage": "!!!Enable Password Lock", |
187 | "file": "src/containers/settings/EditSettingsScreen.js", | 200 | "file": "src/containers/settings/EditSettingsScreen.js", |
188 | "start": { | 201 | "start": { |
189 | "line": 85, | 202 | "line": 89, |
190 | "column": 14 | 203 | "column": 14 |
191 | }, | 204 | }, |
192 | "end": { | 205 | "end": { |
193 | "line": 88, | 206 | "line": 92, |
194 | "column": 3 | 207 | "column": 3 |
195 | } | 208 | } |
196 | }, | 209 | }, |
@@ -199,11 +212,11 @@ | |||
199 | "defaultMessage": "!!!Password", | 212 | "defaultMessage": "!!!Password", |
200 | "file": "src/containers/settings/EditSettingsScreen.js", | 213 | "file": "src/containers/settings/EditSettingsScreen.js", |
201 | "start": { | 214 | "start": { |
202 | "line": 89, | 215 | "line": 93, |
203 | "column": 16 | 216 | "column": 16 |
204 | }, | 217 | }, |
205 | "end": { | 218 | "end": { |
206 | "line": 92, | 219 | "line": 96, |
207 | "column": 3 | 220 | "column": 3 |
208 | } | 221 | } |
209 | }, | 222 | }, |
@@ -212,11 +225,11 @@ | |||
212 | "defaultMessage": "!!!Allow using Touch ID to unlock", | 225 | "defaultMessage": "!!!Allow using Touch ID to unlock", |
213 | "file": "src/containers/settings/EditSettingsScreen.js", | 226 | "file": "src/containers/settings/EditSettingsScreen.js", |
214 | "start": { | 227 | "start": { |
215 | "line": 93, | 228 | "line": 97, |
216 | "column": 22 | 229 | "column": 22 |
217 | }, | 230 | }, |
218 | "end": { | 231 | "end": { |
219 | "line": 96, | 232 | "line": 100, |
220 | "column": 3 | 233 | "column": 3 |
221 | } | 234 | } |
222 | }, | 235 | }, |
@@ -225,11 +238,11 @@ | |||
225 | "defaultMessage": "!!!Lock after inactivity", | 238 | "defaultMessage": "!!!Lock after inactivity", |
226 | "file": "src/containers/settings/EditSettingsScreen.js", | 239 | "file": "src/containers/settings/EditSettingsScreen.js", |
227 | "start": { | 240 | "start": { |
228 | "line": 97, | 241 | "line": 101, |
229 | "column": 18 | 242 | "column": 18 |
230 | }, | 243 | }, |
231 | "end": { | 244 | "end": { |
232 | "line": 100, | 245 | "line": 104, |
233 | "column": 3 | 246 | "column": 3 |
234 | } | 247 | } |
235 | }, | 248 | }, |
@@ -238,11 +251,11 @@ | |||
238 | "defaultMessage": "!!!Enable scheduled Do-not-Disturb", | 251 | "defaultMessage": "!!!Enable scheduled Do-not-Disturb", |
239 | "file": "src/containers/settings/EditSettingsScreen.js", | 252 | "file": "src/containers/settings/EditSettingsScreen.js", |
240 | "start": { | 253 | "start": { |
241 | "line": 101, | 254 | "line": 105, |
242 | "column": 23 | 255 | "column": 23 |
243 | }, | 256 | }, |
244 | "end": { | 257 | "end": { |
245 | "line": 104, | 258 | "line": 108, |
246 | "column": 3 | 259 | "column": 3 |
247 | } | 260 | } |
248 | }, | 261 | }, |
@@ -251,11 +264,11 @@ | |||
251 | "defaultMessage": "!!!From", | 264 | "defaultMessage": "!!!From", |
252 | "file": "src/containers/settings/EditSettingsScreen.js", | 265 | "file": "src/containers/settings/EditSettingsScreen.js", |
253 | "start": { | 266 | "start": { |
254 | "line": 105, | 267 | "line": 109, |
255 | "column": 21 | 268 | "column": 21 |
256 | }, | 269 | }, |
257 | "end": { | 270 | "end": { |
258 | "line": 108, | 271 | "line": 112, |
259 | "column": 3 | 272 | "column": 3 |
260 | } | 273 | } |
261 | }, | 274 | }, |
@@ -264,11 +277,11 @@ | |||
264 | "defaultMessage": "!!!To", | 277 | "defaultMessage": "!!!To", |
265 | "file": "src/containers/settings/EditSettingsScreen.js", | 278 | "file": "src/containers/settings/EditSettingsScreen.js", |
266 | "start": { | 279 | "start": { |
267 | "line": 109, | 280 | "line": 113, |
268 | "column": 19 | 281 | "column": 19 |
269 | }, | 282 | }, |
270 | "end": { | 283 | "end": { |
271 | "line": 112, | 284 | "line": 116, |
272 | "column": 3 | 285 | "column": 3 |
273 | } | 286 | } |
274 | }, | 287 | }, |
@@ -277,11 +290,11 @@ | |||
277 | "defaultMessage": "!!!Language", | 290 | "defaultMessage": "!!!Language", |
278 | "file": "src/containers/settings/EditSettingsScreen.js", | 291 | "file": "src/containers/settings/EditSettingsScreen.js", |
279 | "start": { | 292 | "start": { |
280 | "line": 113, | 293 | "line": 117, |
281 | "column": 12 | 294 | "column": 12 |
282 | }, | 295 | }, |
283 | "end": { | 296 | "end": { |
284 | "line": 116, | 297 | "line": 120, |
285 | "column": 3 | 298 | "column": 3 |
286 | } | 299 | } |
287 | }, | 300 | }, |
@@ -290,11 +303,11 @@ | |||
290 | "defaultMessage": "!!!Dark Mode", | 303 | "defaultMessage": "!!!Dark Mode", |
291 | "file": "src/containers/settings/EditSettingsScreen.js", | 304 | "file": "src/containers/settings/EditSettingsScreen.js", |
292 | "start": { | 305 | "start": { |
293 | "line": 117, | 306 | "line": 121, |
294 | "column": 12 | 307 | "column": 12 |
295 | }, | 308 | }, |
296 | "end": { | 309 | "end": { |
297 | "line": 120, | 310 | "line": 124, |
298 | "column": 3 | 311 | "column": 3 |
299 | } | 312 | } |
300 | }, | 313 | }, |
@@ -303,11 +316,11 @@ | |||
303 | "defaultMessage": "!!!Synchronize dark mode with my OS's dark mode setting", | 316 | "defaultMessage": "!!!Synchronize dark mode with my OS's dark mode setting", |
304 | "file": "src/containers/settings/EditSettingsScreen.js", | 317 | "file": "src/containers/settings/EditSettingsScreen.js", |
305 | "start": { | 318 | "start": { |
306 | "line": 121, | 319 | "line": 125, |
307 | "column": 21 | 320 | "column": 21 |
308 | }, | 321 | }, |
309 | "end": { | 322 | "end": { |
310 | "line": 124, | 323 | "line": 128, |
311 | "column": 3 | 324 | "column": 3 |
312 | } | 325 | } |
313 | }, | 326 | }, |
@@ -316,11 +329,11 @@ | |||
316 | "defaultMessage": "!!!Enable universal Dark Mode", | 329 | "defaultMessage": "!!!Enable universal Dark Mode", |
317 | "file": "src/containers/settings/EditSettingsScreen.js", | 330 | "file": "src/containers/settings/EditSettingsScreen.js", |
318 | "start": { | 331 | "start": { |
319 | "line": 125, | 332 | "line": 129, |
320 | "column": 21 | 333 | "column": 21 |
321 | }, | 334 | }, |
322 | "end": { | 335 | "end": { |
323 | "line": 128, | 336 | "line": 132, |
324 | "column": 3 | 337 | "column": 3 |
325 | } | 338 | } |
326 | }, | 339 | }, |
@@ -329,11 +342,11 @@ | |||
329 | "defaultMessage": "!!!Sidebar width", | 342 | "defaultMessage": "!!!Sidebar width", |
330 | "file": "src/containers/settings/EditSettingsScreen.js", | 343 | "file": "src/containers/settings/EditSettingsScreen.js", |
331 | "start": { | 344 | "start": { |
332 | "line": 129, | 345 | "line": 133, |
333 | "column": 22 | 346 | "column": 22 |
334 | }, | 347 | }, |
335 | "end": { | 348 | "end": { |
336 | "line": 132, | 349 | "line": 136, |
337 | "column": 3 | 350 | "column": 3 |
338 | } | 351 | } |
339 | }, | 352 | }, |
@@ -342,11 +355,11 @@ | |||
342 | "defaultMessage": "!!!Service icon size", | 355 | "defaultMessage": "!!!Service icon size", |
343 | "file": "src/containers/settings/EditSettingsScreen.js", | 356 | "file": "src/containers/settings/EditSettingsScreen.js", |
344 | "start": { | 357 | "start": { |
345 | "line": 133, | 358 | "line": 137, |
346 | "column": 12 | 359 | "column": 12 |
347 | }, | 360 | }, |
348 | "end": { | 361 | "end": { |
349 | "line": 136, | 362 | "line": 140, |
350 | "column": 3 | 363 | "column": 3 |
351 | } | 364 | } |
352 | }, | 365 | }, |
@@ -355,11 +368,11 @@ | |||
355 | "defaultMessage": "!!!Accent color", | 368 | "defaultMessage": "!!!Accent color", |
356 | "file": "src/containers/settings/EditSettingsScreen.js", | 369 | "file": "src/containers/settings/EditSettingsScreen.js", |
357 | "start": { | 370 | "start": { |
358 | "line": 137, | 371 | "line": 141, |
359 | "column": 15 | 372 | "column": 15 |
360 | }, | 373 | }, |
361 | "end": { | 374 | "end": { |
362 | "line": 140, | 375 | "line": 144, |
363 | "column": 3 | 376 | "column": 3 |
364 | } | 377 | } |
365 | }, | 378 | }, |
@@ -368,11 +381,11 @@ | |||
368 | "defaultMessage": "!!!Display disabled services tabs", | 381 | "defaultMessage": "!!!Display disabled services tabs", |
369 | "file": "src/containers/settings/EditSettingsScreen.js", | 382 | "file": "src/containers/settings/EditSettingsScreen.js", |
370 | "start": { | 383 | "start": { |
371 | "line": 141, | 384 | "line": 145, |
372 | "column": 24 | 385 | "column": 24 |
373 | }, | 386 | }, |
374 | "end": { | 387 | "end": { |
375 | "line": 144, | 388 | "line": 148, |
376 | "column": 3 | 389 | "column": 3 |
377 | } | 390 | } |
378 | }, | 391 | }, |
@@ -381,11 +394,11 @@ | |||
381 | "defaultMessage": "!!!Show unread message badge when notifications are disabled", | 394 | "defaultMessage": "!!!Show unread message badge when notifications are disabled", |
382 | "file": "src/containers/settings/EditSettingsScreen.js", | 395 | "file": "src/containers/settings/EditSettingsScreen.js", |
383 | "start": { | 396 | "start": { |
384 | "line": 145, | 397 | "line": 149, |
385 | "column": 29 | 398 | "column": 29 |
386 | }, | 399 | }, |
387 | "end": { | 400 | "end": { |
388 | "line": 148, | 401 | "line": 152, |
389 | "column": 3 | 402 | "column": 3 |
390 | } | 403 | } |
391 | }, | 404 | }, |
@@ -394,11 +407,11 @@ | |||
394 | "defaultMessage": "!!!Show draggable area on window", | 407 | "defaultMessage": "!!!Show draggable area on window", |
395 | "file": "src/containers/settings/EditSettingsScreen.js", | 408 | "file": "src/containers/settings/EditSettingsScreen.js", |
396 | "start": { | 409 | "start": { |
397 | "line": 149, | 410 | "line": 153, |
398 | "column": 16 | 411 | "column": 16 |
399 | }, | 412 | }, |
400 | "end": { | 413 | "end": { |
401 | "line": 152, | 414 | "line": 156, |
402 | "column": 3 | 415 | "column": 3 |
403 | } | 416 | } |
404 | }, | 417 | }, |
@@ -407,11 +420,11 @@ | |||
407 | "defaultMessage": "!!!Enable spell checking", | 420 | "defaultMessage": "!!!Enable spell checking", |
408 | "file": "src/containers/settings/EditSettingsScreen.js", | 421 | "file": "src/containers/settings/EditSettingsScreen.js", |
409 | "start": { | 422 | "start": { |
410 | "line": 153, | 423 | "line": 157, |
411 | "column": 23 | 424 | "column": 23 |
412 | }, | 425 | }, |
413 | "end": { | 426 | "end": { |
414 | "line": 156, | 427 | "line": 160, |
415 | "column": 3 | 428 | "column": 3 |
416 | } | 429 | } |
417 | }, | 430 | }, |
@@ -420,11 +433,11 @@ | |||
420 | "defaultMessage": "!!!Enable GPU Acceleration", | 433 | "defaultMessage": "!!!Enable GPU Acceleration", |
421 | "file": "src/containers/settings/EditSettingsScreen.js", | 434 | "file": "src/containers/settings/EditSettingsScreen.js", |
422 | "start": { | 435 | "start": { |
423 | "line": 157, | 436 | "line": 161, |
424 | "column": 25 | 437 | "column": 25 |
425 | }, | 438 | }, |
426 | "end": { | 439 | "end": { |
427 | "line": 160, | 440 | "line": 164, |
428 | "column": 3 | 441 | "column": 3 |
429 | } | 442 | } |
430 | }, | 443 | }, |
@@ -433,11 +446,11 @@ | |||
433 | "defaultMessage": "!!!Include beta versions", | 446 | "defaultMessage": "!!!Include beta versions", |
434 | "file": "src/containers/settings/EditSettingsScreen.js", | 447 | "file": "src/containers/settings/EditSettingsScreen.js", |
435 | "start": { | 448 | "start": { |
436 | "line": 161, | 449 | "line": 165, |
437 | "column": 8 | 450 | "column": 8 |
438 | }, | 451 | }, |
439 | "end": { | 452 | "end": { |
440 | "line": 164, | 453 | "line": 168, |
441 | "column": 3 | 454 | "column": 3 |
442 | } | 455 | } |
443 | }, | 456 | }, |
@@ -446,11 +459,11 @@ | |||
446 | "defaultMessage": "!!!Enable updates", | 459 | "defaultMessage": "!!!Enable updates", |
447 | "file": "src/containers/settings/EditSettingsScreen.js", | 460 | "file": "src/containers/settings/EditSettingsScreen.js", |
448 | "start": { | 461 | "start": { |
449 | "line": 165, | 462 | "line": 169, |
450 | "column": 20 | 463 | "column": 20 |
451 | }, | 464 | }, |
452 | "end": { | 465 | "end": { |
453 | "line": 168, | 466 | "line": 172, |
454 | "column": 3 | 467 | "column": 3 |
455 | } | 468 | } |
456 | }, | 469 | }, |
@@ -459,11 +472,11 @@ | |||
459 | "defaultMessage": "!!!Enable Franz Todos", | 472 | "defaultMessage": "!!!Enable Franz Todos", |
460 | "file": "src/containers/settings/EditSettingsScreen.js", | 473 | "file": "src/containers/settings/EditSettingsScreen.js", |
461 | "start": { | 474 | "start": { |
462 | "line": 169, | 475 | "line": 173, |
463 | "column": 15 | 476 | "column": 15 |
464 | }, | 477 | }, |
465 | "end": { | 478 | "end": { |
466 | "line": 172, | 479 | "line": 176, |
467 | "column": 3 | 480 | "column": 3 |
468 | } | 481 | } |
469 | }, | 482 | }, |
@@ -472,11 +485,11 @@ | |||
472 | "defaultMessage": "!!!Keep all workspaces loaded", | 485 | "defaultMessage": "!!!Keep all workspaces loaded", |
473 | "file": "src/containers/settings/EditSettingsScreen.js", | 486 | "file": "src/containers/settings/EditSettingsScreen.js", |
474 | "start": { | 487 | "start": { |
475 | "line": 173, | 488 | "line": 177, |
476 | "column": 27 | 489 | "column": 27 |
477 | }, | 490 | }, |
478 | "end": { | 491 | "end": { |
479 | "line": 176, | 492 | "line": 180, |
480 | "column": 3 | 493 | "column": 3 |
481 | } | 494 | } |
482 | } | 495 | } |
diff --git a/src/models/Service.js b/src/models/Service.js index dc8febe0b..2f2b4572d 100644 --- a/src/models/Service.js +++ b/src/models/Service.js | |||
@@ -139,6 +139,17 @@ export default class Service { | |||
139 | 139 | ||
140 | this.recipe = recipe; | 140 | this.recipe = recipe; |
141 | 141 | ||
142 | // Check if "Hibernate on Startup" is enabled and hibernate all services except active one | ||
143 | const { | ||
144 | hibernate, | ||
145 | hibernateOnStartup, | ||
146 | } = window.ferdi.stores.settings.app; | ||
147 | // The service store is probably not loaded yet so we need to use localStorage data to get active service | ||
148 | const isActive = window.localStorage.service && JSON.parse(window.localStorage.service).activeService === this.id; | ||
149 | if (hibernate && hibernateOnStartup && !isActive) { | ||
150 | this.isHibernating = true; | ||
151 | } | ||
152 | |||
142 | autorun(() => { | 153 | autorun(() => { |
143 | if (!this.isEnabled) { | 154 | if (!this.isEnabled) { |
144 | this.webview = null; | 155 | this.webview = null; |