aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.all-contributorsrc11
-rw-r--r--README.md81
-rw-r--r--package-lock.json5
-rw-r--r--package.json1
-rw-r--r--src/components/settings/settings/EditSettingsForm.js1
-rw-r--r--src/config.js1
-rw-r--r--src/containers/settings/EditSettingsScreen.js10
-rw-r--r--src/i18n/locales/af.json4
-rw-r--r--src/i18n/locales/ar.json4
-rw-r--r--src/i18n/locales/bs.json4
-rw-r--r--src/i18n/locales/ca.json4
-rw-r--r--src/i18n/locales/cs.json4
-rw-r--r--src/i18n/locales/da.json4
-rw-r--r--src/i18n/locales/de.json4
-rw-r--r--src/i18n/locales/defaultMessages.json394
-rw-r--r--src/i18n/locales/el.json4
-rw-r--r--src/i18n/locales/en-US.json2
-rw-r--r--src/i18n/locales/es.json4
-rw-r--r--src/i18n/locales/fi.json4
-rw-r--r--src/i18n/locales/fr.json6
-rw-r--r--src/i18n/locales/ga.json4
-rw-r--r--src/i18n/locales/he.json4
-rw-r--r--src/i18n/locales/hr.json4
-rw-r--r--src/i18n/locales/hu.json4
-rw-r--r--src/i18n/locales/id.json4
-rw-r--r--src/i18n/locales/it.json4
-rw-r--r--src/i18n/locales/ja.json4
-rw-r--r--src/i18n/locales/ka.json4
-rw-r--r--src/i18n/locales/ko.json4
-rw-r--r--src/i18n/locales/nl-BE.json4
-rw-r--r--src/i18n/locales/nl.json4
-rw-r--r--src/i18n/locales/no.json4
-rw-r--r--src/i18n/locales/pl.json4
-rw-r--r--src/i18n/locales/pt-BR.json72
-rw-r--r--src/i18n/locales/pt.json4
-rw-r--r--src/i18n/locales/ro.json4
-rw-r--r--src/i18n/locales/ru.json4
-rw-r--r--src/i18n/locales/sk.json4
-rw-r--r--src/i18n/locales/sl.json4
-rw-r--r--src/i18n/locales/sr.json4
-rw-r--r--src/i18n/locales/sv.json4
-rw-r--r--src/i18n/locales/tr.json4
-rw-r--r--src/i18n/locales/uk.json4
-rw-r--r--src/i18n/locales/vi.json4
-rw-r--r--src/i18n/locales/zh-HANT.json4
-rw-r--r--src/i18n/locales/zh.json4
-rw-r--r--src/i18n/messages/src/containers/settings/EditSettingsScreen.json133
-rw-r--r--src/i18n/messages/src/lib/Menu.json261
-rw-r--r--src/lib/Menu.js48
-rw-r--r--src/stores/AppStore.js2
-rw-r--r--src/stores/ServicesStore.js2
-rw-r--r--src/webview/lib/RecipeWebview.js25
-rw-r--r--src/webview/recipe.js65
53 files changed, 804 insertions, 456 deletions
diff --git a/.all-contributorsrc b/.all-contributorsrc
index 764151b5d..8ec44a2b9 100644
--- a/.all-contributorsrc
+++ b/.all-contributorsrc
@@ -400,8 +400,17 @@
400 "contributions": [ 400 "contributions": [
401 "translation" 401 "translation"
402 ] 402 ]
403 },
404 {
405 "login": "n0emis",
406 "name": "n0emis",
407 "avatar_url": "https://avatars3.githubusercontent.com/u/22817873?v=4",
408 "profile": "http://twitter.com/noemis_exec",
409 "contributions": [
410 "code"
411 ]
403 } 412 }
404 ], 413 ],
405 "contributorsPerLine": 6, 414 "contributorsPerLine": 6,
406 "skipCi": true 415 "skipCi": true
407} \ No newline at end of file 416}
diff --git a/README.md b/README.md
index cd3eb7a24..dcee800a9 100644
--- a/README.md
+++ b/README.md
@@ -13,7 +13,9 @@
13 13
14<p align="center"> 14<p align="center">
15<img alt="GitHub Releases" src="https://img.shields.io/github/downloads/getferdi/ferdi/latest/total?label=Downloads&logo=iCloud&logoColor=%23FFFFFF"> 15<img alt="GitHub Releases" src="https://img.shields.io/github/downloads/getferdi/ferdi/latest/total?label=Downloads&logo=iCloud&logoColor=%23FFFFFF">
16<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section --><a href='#contributors-'><img src='https://img.shields.io/badge/contributors-38-default.svg?logo=github' alt='Contributors'/></a><!-- ALL-CONTRIBUTORS-BADGE:END --> 16<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
17<a href='#contributors-'><img src='https://img.shields.io/badge/contributors-39-default.svg?logo=github' alt='Contributors'/></a>
18<!-- ALL-CONTRIBUTORS-BADGE:END -->
17<a href="#backers-via-opencollective"><img alt="Open Collective backers" src="https://img.shields.io/opencollective/backers/getferdi?logo=open-collective"></a> 19<a href="#backers-via-opencollective"><img alt="Open Collective backers" src="https://img.shields.io/opencollective/backers/getferdi?logo=open-collective"></a>
18<a href="#sponsors-via-opencollective"><img alt="Open Collective sponsors" src="https://img.shields.io/opencollective/sponsors/getferdi?logo=open-collective"></a> 20<a href="#sponsors-via-opencollective"><img alt="Open Collective sponsors" src="https://img.shields.io/opencollective/sponsors/getferdi?logo=open-collective"></a>
19<a href="https://ci.appveyor.com/project/kytwb/ferdi"><img alt="Build Status Windows" src="https://img.shields.io/appveyor/ci/kytwb/ferdi/master?logo=appveyor"></a> 21<a href="https://ci.appveyor.com/project/kytwb/ferdi"><img alt="Build Status Windows" src="https://img.shields.io/appveyor/ci/kytwb/ferdi/master?logo=appveyor"></a>
@@ -236,56 +238,57 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
236<!-- markdownlint-disable --> 238<!-- markdownlint-disable -->
237<table> 239<table>
238 <tr> 240 <tr>
239 <td align="center"><a href="https://vantezzen.io"><img src="https://avatars2.githubusercontent.com/u/10333196?v=4" width="40px;" alt="Bennett"/><br /><sub><b>Bennett</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=vantezzen" title="Code">πŸ’»</a> <a href="#design-vantezzen" title="Design">🎨</a> <a href="https://github.com/getferdi/ferdi/commits?author=vantezzen" title="Documentation">πŸ“–</a> <a href="#ideas-vantezzen" title="Ideas, Planning, & Feedback">πŸ€”</a> <a href="#translation-vantezzen" title="Translation">🌍</a> <a href="#example-vantezzen" title="Examples">πŸ’‘</a> <a href="https://github.com/getferdi/ferdi/issues?q=author%3Avantezzen" title="Bug reports">πŸ›</a> <a href="#content-vantezzen" title="Content">πŸ–‹</a> <a href="#infra-vantezzen" title="Infrastructure (Hosting, Build-Tools, etc)">πŸš‡</a> <a href="#userTesting-vantezzen" title="User Testing">πŸ““</a> <a href="#question-vantezzen" title="Answering Questions">πŸ’¬</a> <a href="#projectManagement-vantezzen" title="Project Management">πŸ“†</a> <a href="https://github.com/getferdi/ferdi/pulls?q=is%3Apr+reviewed-by%3Avantezzen" title="Reviewed Pull Requests">πŸ‘€</a></td> 241 <td align="center"><a href="https://vantezzen.io"><img src="https://avatars2.githubusercontent.com/u/10333196?v=4" width="40px;" alt=""/><br /><sub><b>Bennett</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=vantezzen" title="Code">πŸ’»</a> <a href="#design-vantezzen" title="Design">🎨</a> <a href="https://github.com/getferdi/ferdi/commits?author=vantezzen" title="Documentation">πŸ“–</a> <a href="#ideas-vantezzen" title="Ideas, Planning, & Feedback">πŸ€”</a> <a href="#translation-vantezzen" title="Translation">🌍</a> <a href="#example-vantezzen" title="Examples">πŸ’‘</a> <a href="https://github.com/getferdi/ferdi/issues?q=author%3Avantezzen" title="Bug reports">πŸ›</a> <a href="#content-vantezzen" title="Content">πŸ–‹</a> <a href="#infra-vantezzen" title="Infrastructure (Hosting, Build-Tools, etc)">πŸš‡</a> <a href="#userTesting-vantezzen" title="User Testing">πŸ““</a> <a href="#question-vantezzen" title="Answering Questions">πŸ’¬</a> <a href="#projectManagement-vantezzen" title="Project Management">πŸ“†</a> <a href="https://github.com/getferdi/ferdi/pulls?q=is%3Apr+reviewed-by%3Avantezzen" title="Reviewed Pull Requests">πŸ‘€</a></td>
240 <td align="center"><a href="https://twitter.com/kytwb"><img src="https://avatars0.githubusercontent.com/u/412895?v=4" width="40px;" alt="Amine Mouafik"/><br /><sub><b>Amine Mouafik</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=kytwb" title="Code">πŸ’»</a> <a href="#design-kytwb" title="Design">🎨</a> <a href="https://github.com/getferdi/ferdi/commits?author=kytwb" title="Documentation">πŸ“–</a> <a href="#ideas-kytwb" title="Ideas, Planning, & Feedback">πŸ€”</a> <a href="https://github.com/getferdi/ferdi/issues?q=author%3Akytwb" title="Bug reports">πŸ›</a> <a href="#content-kytwb" title="Content">πŸ–‹</a> <a href="#infra-kytwb" title="Infrastructure (Hosting, Build-Tools, etc)">πŸš‡</a> <a href="#userTesting-kytwb" title="User Testing">πŸ““</a> <a href="#question-kytwb" title="Answering Questions">πŸ’¬</a> <a href="#projectManagement-kytwb" title="Project Management">πŸ“†</a> <a href="https://github.com/getferdi/ferdi/pulls?q=is%3Apr+reviewed-by%3Akytwb" title="Reviewed Pull Requests">πŸ‘€</a> <a href="#maintenance-kytwb" title="Maintenance">🚧</a> <a href="#platform-kytwb" title="Packaging/porting to new platform">πŸ“¦</a> <a href="#fundingFinding-kytwb" title="Funding Finding">πŸ”</a> <a href="#blog-kytwb" title="Blogposts">πŸ“</a></td> 242 <td align="center"><a href="https://twitter.com/kytwb"><img src="https://avatars0.githubusercontent.com/u/412895?v=4" width="40px;" alt=""/><br /><sub><b>Amine Mouafik</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=kytwb" title="Code">πŸ’»</a> <a href="#design-kytwb" title="Design">🎨</a> <a href="https://github.com/getferdi/ferdi/commits?author=kytwb" title="Documentation">πŸ“–</a> <a href="#ideas-kytwb" title="Ideas, Planning, & Feedback">πŸ€”</a> <a href="https://github.com/getferdi/ferdi/issues?q=author%3Akytwb" title="Bug reports">πŸ›</a> <a href="#content-kytwb" title="Content">πŸ–‹</a> <a href="#infra-kytwb" title="Infrastructure (Hosting, Build-Tools, etc)">πŸš‡</a> <a href="#userTesting-kytwb" title="User Testing">πŸ““</a> <a href="#question-kytwb" title="Answering Questions">πŸ’¬</a> <a href="#projectManagement-kytwb" title="Project Management">πŸ“†</a> <a href="https://github.com/getferdi/ferdi/pulls?q=is%3Apr+reviewed-by%3Akytwb" title="Reviewed Pull Requests">πŸ‘€</a> <a href="#maintenance-kytwb" title="Maintenance">🚧</a> <a href="#platform-kytwb" title="Packaging/porting to new platform">πŸ“¦</a> <a href="#fundingFinding-kytwb" title="Funding Finding">πŸ”</a> <a href="#blog-kytwb" title="Blogposts">πŸ“</a></td>
241 <td align="center"><a href="http://www.adlk.io"><img src="https://avatars1.githubusercontent.com/u/3265004?v=4" width="40px;" alt="Stefan Malzner"/><br /><sub><b>Stefan Malzner</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=adlk" title="Code">πŸ’»</a> <a href="#content-adlk" title="Content">πŸ–‹</a> <a href="#design-adlk" title="Design">🎨</a> <a href="https://github.com/getferdi/ferdi/commits?author=adlk" title="Documentation">πŸ“–</a> <a href="#ideas-adlk" title="Ideas, Planning, & Feedback">πŸ€”</a> <a href="#infra-adlk" title="Infrastructure (Hosting, Build-Tools, etc)">πŸš‡</a> <a href="#projectManagement-adlk" title="Project Management">πŸ“†</a> <a href="https://github.com/getferdi/ferdi/commits?author=adlk" title="Tests">⚠️</a> <a href="#translation-adlk" title="Translation">🌍</a></td> 243 <td align="center"><a href="http://www.adlk.io"><img src="https://avatars1.githubusercontent.com/u/3265004?v=4" width="40px;" alt=""/><br /><sub><b>Stefan Malzner</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=adlk" title="Code">πŸ’»</a> <a href="#content-adlk" title="Content">πŸ–‹</a> <a href="#design-adlk" title="Design">🎨</a> <a href="https://github.com/getferdi/ferdi/commits?author=adlk" title="Documentation">πŸ“–</a> <a href="#ideas-adlk" title="Ideas, Planning, & Feedback">πŸ€”</a> <a href="#infra-adlk" title="Infrastructure (Hosting, Build-Tools, etc)">πŸš‡</a> <a href="#projectManagement-adlk" title="Project Management">πŸ“†</a> <a href="https://github.com/getferdi/ferdi/commits?author=adlk" title="Tests">⚠️</a> <a href="#translation-adlk" title="Translation">🌍</a></td>
242 <td align="center"><a href="https://github.com/Makazzz"><img src="https://avatars2.githubusercontent.com/u/49844464?v=4" width="40px;" alt="Makazzz"/><br /><sub><b>Makazzz</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3AMakazzz" title="Bug reports">πŸ›</a> <a href="https://github.com/getferdi/ferdi/commits?author=Makazzz" title="Code">πŸ’»</a> <a href="#translation-Makazzz" title="Translation">🌍</a> <a href="#content-Makazzz" title="Content">πŸ–‹</a> <a href="https://github.com/getferdi/ferdi/commits?author=Makazzz" title="Documentation">πŸ“–</a> <a href="#platform-Makazzz" title="Packaging/porting to new platform">πŸ“¦</a></td> 244 <td align="center"><a href="https://github.com/Makazzz"><img src="https://avatars2.githubusercontent.com/u/49844464?v=4" width="40px;" alt=""/><br /><sub><b>Makazzz</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3AMakazzz" title="Bug reports">πŸ›</a> <a href="https://github.com/getferdi/ferdi/commits?author=Makazzz" title="Code">πŸ’»</a> <a href="#translation-Makazzz" title="Translation">🌍</a> <a href="#content-Makazzz" title="Content">πŸ–‹</a> <a href="https://github.com/getferdi/ferdi/commits?author=Makazzz" title="Documentation">πŸ“–</a> <a href="#platform-Makazzz" title="Packaging/porting to new platform">πŸ“¦</a></td>
243 <td align="center"><a href="http://seriesgt.com"><img src="https://avatars3.githubusercontent.com/u/5977640?v=4" width="40px;" alt="ZeroCool"/><br /><sub><b>ZeroCool</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=ZeroCool940711" title="Code">πŸ’»</a> <a href="#ideas-ZeroCool940711" title="Ideas, Planning, & Feedback">πŸ€”</a></td> 245 <td align="center"><a href="http://seriesgt.com"><img src="https://avatars3.githubusercontent.com/u/5977640?v=4" width="40px;" alt=""/><br /><sub><b>ZeroCool</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=ZeroCool940711" title="Code">πŸ’»</a> <a href="#ideas-ZeroCool940711" title="Ideas, Planning, & Feedback">πŸ€”</a></td>
244 <td align="center"><a href="https://github.com/rseitbekov"><img src="https://avatars2.githubusercontent.com/u/35684439?v=4" width="40px;" alt="rseitbekov"/><br /><sub><b>rseitbekov</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=rseitbekov" title="Code">πŸ’»</a></td> 246 <td align="center"><a href="https://github.com/rseitbekov"><img src="https://avatars2.githubusercontent.com/u/35684439?v=4" width="40px;" alt=""/><br /><sub><b>rseitbekov</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=rseitbekov" title="Code">πŸ’»</a></td>
245 </tr> 247 </tr>
246 <tr> 248 <tr>
247 <td align="center"><a href="https://djangogigs.com/developers/peter-bittner/"><img src="https://avatars2.githubusercontent.com/u/665072?v=4" width="40px;" alt="Peter Bittner"/><br /><sub><b>Peter Bittner</b></sub></a><br /><a href="#ideas-bittner" title="Ideas, Planning, & Feedback">πŸ€”</a> <a href="https://github.com/getferdi/ferdi/issues?q=author%3Abittner" title="Bug reports">πŸ›</a></td> 249 <td align="center"><a href="https://djangogigs.com/developers/peter-bittner/"><img src="https://avatars2.githubusercontent.com/u/665072?v=4" width="40px;" alt=""/><br /><sub><b>Peter Bittner</b></sub></a><br /><a href="#ideas-bittner" title="Ideas, Planning, & Feedback">πŸ€”</a> <a href="https://github.com/getferdi/ferdi/issues?q=author%3Abittner" title="Bug reports">πŸ›</a></td>
248 <td align="center"><a href="https://github.com/justus-saul"><img src="https://avatars1.githubusercontent.com/u/5861826?v=4" width="40px;" alt="Justus Saul"/><br /><sub><b>Justus Saul</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Ajustus-saul" title="Bug reports">πŸ›</a> <a href="#ideas-justus-saul" title="Ideas, Planning, & Feedback">πŸ€”</a></td> 250 <td align="center"><a href="https://github.com/justus-saul"><img src="https://avatars1.githubusercontent.com/u/5861826?v=4" width="40px;" alt=""/><br /><sub><b>Justus Saul</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Ajustus-saul" title="Bug reports">πŸ›</a> <a href="#ideas-justus-saul" title="Ideas, Planning, & Feedback">πŸ€”</a></td>
249 <td align="center"><a href="https://github.com/igreil"><img src="https://avatars0.githubusercontent.com/u/17239151?v=4" width="40px;" alt="igreil"/><br /><sub><b>igreil</b></sub></a><br /><a href="#ideas-igreil" title="Ideas, Planning, & Feedback">πŸ€”</a></td> 251 <td align="center"><a href="https://github.com/igreil"><img src="https://avatars0.githubusercontent.com/u/17239151?v=4" width="40px;" alt=""/><br /><sub><b>igreil</b></sub></a><br /><a href="#ideas-igreil" title="Ideas, Planning, & Feedback">πŸ€”</a></td>
250 <td align="center"><a href="http://marcolopes.eu"><img src="https://avatars1.githubusercontent.com/u/431889?v=4" width="40px;" alt="Marco Lopes"/><br /><sub><b>Marco Lopes</b></sub></a><br /><a href="#ideas-marcolopes" title="Ideas, Planning, & Feedback">πŸ€”</a></td> 252 <td align="center"><a href="http://marcolopes.eu"><img src="https://avatars1.githubusercontent.com/u/431889?v=4" width="40px;" alt=""/><br /><sub><b>Marco Lopes</b></sub></a><br /><a href="#ideas-marcolopes" title="Ideas, Planning, & Feedback">πŸ€”</a></td>
251 <td align="center"><a href="https://github.com/dayzlun"><img src="https://avatars3.githubusercontent.com/u/17259690?v=4" width="40px;" alt="dayzlun"/><br /><sub><b>dayzlun</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Adayzlun" title="Bug reports">πŸ›</a></td> 253 <td align="center"><a href="https://github.com/dayzlun"><img src="https://avatars3.githubusercontent.com/u/17259690?v=4" width="40px;" alt=""/><br /><sub><b>dayzlun</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Adayzlun" title="Bug reports">πŸ›</a></td>
252 <td align="center"><a href="https://twitter.com/tobigue_"><img src="https://avatars2.githubusercontent.com/u/1560152?v=4" width="40px;" alt="Tobias GΓΌnther"/><br /><sub><b>Tobias GΓΌnther</b></sub></a><br /><a href="#ideas-tobigue" title="Ideas, Planning, & Feedback">πŸ€”</a></td> 254 <td align="center"><a href="https://twitter.com/tobigue_"><img src="https://avatars2.githubusercontent.com/u/1560152?v=4" width="40px;" alt=""/><br /><sub><b>Tobias GΓΌnther</b></sub></a><br /><a href="#ideas-tobigue" title="Ideas, Planning, & Feedback">πŸ€”</a></td>
253 </tr> 255 </tr>
254 <tr> 256 <tr>
255 <td align="center"><a href="https://github.com/AGCaesar"><img src="https://avatars3.githubusercontent.com/u/7844066?v=4" width="40px;" alt="AGCaesar"/><br /><sub><b>AGCaesar</b></sub></a><br /><a href="#platform-AGCaesar" title="Packaging/porting to new platform">πŸ“¦</a></td> 257 <td align="center"><a href="https://github.com/AGCaesar"><img src="https://avatars3.githubusercontent.com/u/7844066?v=4" width="40px;" alt=""/><br /><sub><b>AGCaesar</b></sub></a><br /><a href="#platform-AGCaesar" title="Packaging/porting to new platform">πŸ“¦</a></td>
256 <td align="center"><a href="https://github.com/xthursdayx"><img src="https://avatars0.githubusercontent.com/u/18044308?v=4" width="40px;" alt="xthursdayx"/><br /><sub><b>xthursdayx</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=xthursdayx" title="Code">πŸ’»</a> <a href="https://github.com/getferdi/ferdi/commits?author=xthursdayx" title="Documentation">πŸ“–</a> <a href="#infra-xthursdayx" title="Infrastructure (Hosting, Build-Tools, etc)">πŸš‡</a> <a href="#platform-xthursdayx" title="Packaging/porting to new platform">πŸ“¦</a></td> 258 <td align="center"><a href="https://github.com/xthursdayx"><img src="https://avatars0.githubusercontent.com/u/18044308?v=4" width="40px;" alt=""/><br /><sub><b>xthursdayx</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=xthursdayx" title="Code">πŸ’»</a> <a href="https://github.com/getferdi/ferdi/commits?author=xthursdayx" title="Documentation">πŸ“–</a> <a href="#infra-xthursdayx" title="Infrastructure (Hosting, Build-Tools, etc)">πŸš‡</a> <a href="#platform-xthursdayx" title="Packaging/porting to new platform">πŸ“¦</a></td>
257 <td align="center"><a href="https://github.com/Gaboris"><img src="https://avatars2.githubusercontent.com/u/9462372?v=4" width="40px;" alt="Gaboris"/><br /><sub><b>Gaboris</b></sub></a><br /><a href="#question-Gaboris" title="Answering Questions">πŸ’¬</a> <a href="https://github.com/getferdi/ferdi/issues?q=author%3AGaboris" title="Bug reports">πŸ›</a></td> 259 <td align="center"><a href="https://github.com/Gaboris"><img src="https://avatars2.githubusercontent.com/u/9462372?v=4" width="40px;" alt=""/><br /><sub><b>Gaboris</b></sub></a><br /><a href="#question-Gaboris" title="Answering Questions">πŸ’¬</a> <a href="https://github.com/getferdi/ferdi/issues?q=author%3AGaboris" title="Bug reports">πŸ›</a></td>
258 <td align="center"><a href="http://www.cu3ed.com/"><img src="https://avatars1.githubusercontent.com/u/61343?v=4" width="40px;" alt="Ce"/><br /><sub><b>Ce</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Aincace" title="Bug reports">πŸ›</a></td> 260 <td align="center"><a href="http://www.cu3ed.com/"><img src="https://avatars1.githubusercontent.com/u/61343?v=4" width="40px;" alt=""/><br /><sub><b>Ce</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Aincace" title="Bug reports">πŸ›</a></td>
259 <td align="center"><a href="http://pztrn.name/"><img src="https://avatars1.githubusercontent.com/u/869402?v=4" width="40px;" alt="Stanislav N."/><br /><sub><b>Stanislav N.</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Apztrn" title="Bug reports">πŸ›</a></td> 261 <td align="center"><a href="http://pztrn.name/"><img src="https://avatars1.githubusercontent.com/u/869402?v=4" width="40px;" alt=""/><br /><sub><b>Stanislav N.</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Apztrn" title="Bug reports">πŸ›</a></td>
260 <td align="center"><a href="http://www.patrickcurl.com"><img src="https://avatars1.githubusercontent.com/u/1470061?v=4" width="40px;" alt="Patrick Curl"/><br /><sub><b>Patrick Curl</b></sub></a><br /><a href="#ideas-patrickcurl" title="Ideas, Planning, & Feedback">πŸ€”</a></td> 262 <td align="center"><a href="http://www.patrickcurl.com"><img src="https://avatars1.githubusercontent.com/u/1470061?v=4" width="40px;" alt=""/><br /><sub><b>Patrick Curl</b></sub></a><br /><a href="#ideas-patrickcurl" title="Ideas, Planning, & Feedback">πŸ€”</a></td>
261 </tr> 263 </tr>
262 <tr> 264 <tr>
263 <td align="center"><a href="https://github.com/Stanzilla"><img src="https://avatars3.githubusercontent.com/u/75278?v=4" width="40px;" alt="Benjamin Staneck"/><br /><sub><b>Benjamin Staneck</b></sub></a><br /><a href="#design-Stanzilla" title="Design">🎨</a></td> 265 <td align="center"><a href="https://github.com/Stanzilla"><img src="https://avatars3.githubusercontent.com/u/75278?v=4" width="40px;" alt=""/><br /><sub><b>Benjamin Staneck</b></sub></a><br /><a href="#design-Stanzilla" title="Design">🎨</a></td>
264 <td align="center"><a href="https://github.com/ammarmalhas"><img src="https://avatars1.githubusercontent.com/u/57057209?v=4" width="40px;" alt="ammarmalhas"/><br /><sub><b>ammarmalhas</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Aammarmalhas" title="Bug reports">πŸ›</a> <a href="#security-ammarmalhas" title="Security">πŸ›‘οΈ</a></td> 266 <td align="center"><a href="https://github.com/ammarmalhas"><img src="https://avatars1.githubusercontent.com/u/57057209?v=4" width="40px;" alt=""/><br /><sub><b>ammarmalhas</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Aammarmalhas" title="Bug reports">πŸ›</a> <a href="#security-ammarmalhas" title="Security">πŸ›‘οΈ</a></td>
265 <td align="center"><a href="https://github.com/steliyan"><img src="https://avatars1.githubusercontent.com/u/1850292?v=4" width="40px;" alt="Steliyan Stoyanov"/><br /><sub><b>Steliyan Stoyanov</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=steliyan" title="Code">πŸ’»</a> <a href="#ideas-steliyan" title="Ideas, Planning, & Feedback">πŸ€”</a></td> 267 <td align="center"><a href="https://github.com/steliyan"><img src="https://avatars1.githubusercontent.com/u/1850292?v=4" width="40px;" alt=""/><br /><sub><b>Steliyan Stoyanov</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=steliyan" title="Code">πŸ’»</a> <a href="#ideas-steliyan" title="Ideas, Planning, & Feedback">πŸ€”</a></td>
266 <td align="center"><a href="https://github.com/brorbw"><img src="https://avatars2.githubusercontent.com/u/5909562?v=4" width="40px;" alt="Bror Winther"/><br /><sub><b>Bror Winther</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=brorbw" title="Documentation">πŸ“–</a></td> 268 <td align="center"><a href="https://github.com/brorbw"><img src="https://avatars2.githubusercontent.com/u/5909562?v=4" width="40px;" alt=""/><br /><sub><b>Bror Winther</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=brorbw" title="Documentation">πŸ“–</a></td>
267 <td align="center"><a href="https://fwdekker.com/"><img src="https://avatars0.githubusercontent.com/u/13442533?v=4" width="40px;" alt="Felix W. Dekker"/><br /><sub><b>Felix W. Dekker</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=FWDekker" title="Documentation">πŸ“–</a></td> 269 <td align="center"><a href="https://fwdekker.com/"><img src="https://avatars0.githubusercontent.com/u/13442533?v=4" width="40px;" alt=""/><br /><sub><b>Felix W. Dekker</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=FWDekker" title="Documentation">πŸ“–</a></td>
268 <td align="center"><a href="https://github.com/Sauceee"><img src="https://avatars2.githubusercontent.com/u/17987941?v=4" width="40px;" alt="Sauceee"/><br /><sub><b>Sauceee</b></sub></a><br /><a href="#design-Sauceee" title="Design">🎨</a></td> 270 <td align="center"><a href="https://github.com/Sauceee"><img src="https://avatars2.githubusercontent.com/u/17987941?v=4" width="40px;" alt=""/><br /><sub><b>Sauceee</b></sub></a><br /><a href="#design-Sauceee" title="Design">🎨</a></td>
269 </tr> 271 </tr>
270 <tr> 272 <tr>
271 <td align="center"><a href="http://lhw.ring0.de"><img src="https://avatars2.githubusercontent.com/u/351875?v=4" width="40px;" alt="Lennart Weller"/><br /><sub><b>Lennart Weller</b></sub></a><br /><a href="#platform-lhw" title="Packaging/porting to new platform">πŸ“¦</a></td> 273 <td align="center"><a href="http://lhw.ring0.de"><img src="https://avatars2.githubusercontent.com/u/351875?v=4" width="40px;" alt=""/><br /><sub><b>Lennart Weller</b></sub></a><br /><a href="#platform-lhw" title="Packaging/porting to new platform">πŸ“¦</a></td>
272 <td align="center"><a href="https://github.com/jereksel"><img src="https://avatars0.githubusercontent.com/u/1307829?v=4" width="40px;" alt="Andrzej Ressel"/><br /><sub><b>Andrzej Ressel</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=jereksel" title="Code">πŸ’»</a></td> 274 <td align="center"><a href="https://github.com/jereksel"><img src="https://avatars0.githubusercontent.com/u/1307829?v=4" width="40px;" alt=""/><br /><sub><b>Andrzej Ressel</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=jereksel" title="Code">πŸ’»</a></td>
273 <td align="center"><a href="https://gitlab.com/dpeukert"><img src="https://avatars2.githubusercontent.com/u/3451904?v=4" width="40px;" alt="Daniel Peukert"/><br /><sub><b>Daniel Peukert</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=dpeukert" title="Code">πŸ’»</a></td> 275 <td align="center"><a href="https://gitlab.com/dpeukert"><img src="https://avatars2.githubusercontent.com/u/3451904?v=4" width="40px;" alt=""/><br /><sub><b>Daniel Peukert</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=dpeukert" title="Code">πŸ’»</a></td>
274 <td align="center"><a href="https://crowdin.com/profile/Ali_Shiple"><img src="https://crowdin-static.downloads.crowdin.com/avatar/12895436/small/00917d09ca1b4b6d8e0ef36af07ecf6b.jpg" width="40px;" alt="Ali M. Shiple"/><br /><sub><b>Ali M. Shiple</b></sub></a><br /><a href="#translation-Ali_Shiple" title="Translation">🌍</a></td> 276 <td align="center"><a href="https://crowdin.com/profile/Ali_Shiple"><img src="https://crowdin-static.downloads.crowdin.com/avatar/12895436/small/00917d09ca1b4b6d8e0ef36af07ecf6b.jpg" width="40px;" alt=""/><br /><sub><b>Ali M. Shiple</b></sub></a><br /><a href="#translation-Ali_Shiple" title="Translation">🌍</a></td>
275 <td align="center"><a href="https://crowdin.com/profile/elviseras"><img src="https://www.gravatar.com/avatar/25c2cf0d8cb4a4141e71c3b8a2e9324f" width="40px;" alt="elviseras"/><br /><sub><b>elviseras</b></sub></a><br /><a href="#translation-elviseras" title="Translation">🌍</a></td> 277 <td align="center"><a href="https://crowdin.com/profile/elviseras"><img src="https://www.gravatar.com/avatar/25c2cf0d8cb4a4141e71c3b8a2e9324f" width="40px;" alt=""/><br /><sub><b>elviseras</b></sub></a><br /><a href="#translation-elviseras" title="Translation">🌍</a></td>
276 <td align="center"><a href="https://crowdin.com/profile/J370"><img src="https://crowdin-static.downloads.crowdin.com/avatar/14141203/small/7b12b5db419d8796450221c2eaaf6003.png" width="40px;" alt="J370"/><br /><sub><b>J370</b></sub></a><br /><a href="#translation-J370" title="Translation">🌍</a></td> 278 <td align="center"><a href="https://crowdin.com/profile/J370"><img src="https://crowdin-static.downloads.crowdin.com/avatar/14141203/small/7b12b5db419d8796450221c2eaaf6003.png" width="40px;" alt=""/><br /><sub><b>J370</b></sub></a><br /><a href="#translation-J370" title="Translation">🌍</a></td>
277 </tr> 279 </tr>
278 <tr> 280 <tr>
279 <td align="center"><a href="https://crowdin.com/profile/keunes"><img src="https://crowdin-static.downloads.crowdin.com/avatar/13018172/small/829115c606347b10218f34c637a2100c.png" width="40px;" alt="Koen"/><br /><sub><b>Koen</b></sub></a><br /><a href="#translation-keunes" title="Translation">🌍</a></td> 281 <td align="center"><a href="https://crowdin.com/profile/keunes"><img src="https://crowdin-static.downloads.crowdin.com/avatar/13018172/small/829115c606347b10218f34c637a2100c.png" width="40px;" alt=""/><br /><sub><b>Koen</b></sub></a><br /><a href="#translation-keunes" title="Translation">🌍</a></td>
280 <td align="center"><a href="https://crowdin.com/profile/leandrogehlen"><img src="https://crowdin-static.downloads.crowdin.com/avatar/14099621/small/1d9503523839c310dbce0af3c226e894.jpeg" width="40px;" alt="Leandro Gehlen"/><br /><sub><b>Leandro Gehlen</b></sub></a><br /><a href="#translation-leandrogehlen" title="Translation">🌍</a></td> 282 <td align="center"><a href="https://crowdin.com/profile/leandrogehlen"><img src="https://crowdin-static.downloads.crowdin.com/avatar/14099621/small/1d9503523839c310dbce0af3c226e894.jpeg" width="40px;" alt=""/><br /><sub><b>Leandro Gehlen</b></sub></a><br /><a href="#translation-leandrogehlen" title="Translation">🌍</a></td>
281 <td align="center"><a href="https://crowdin.com/profile/Matthieu42"><img src="https://www.gravatar.com/avatar/735217ccccf11ba97573deee517ddb19" width="40px;" alt="Matthieu42"/><br /><sub><b>Matthieu42</b></sub></a><br /><a href="#translation-Matthieu42" title="Translation">🌍</a></td> 283 <td align="center"><a href="https://crowdin.com/profile/Matthieu42"><img src="https://www.gravatar.com/avatar/735217ccccf11ba97573deee517ddb19" width="40px;" alt=""/><br /><sub><b>Matthieu42</b></sub></a><br /><a href="#translation-Matthieu42" title="Translation">🌍</a></td>
282 <td align="center"><a href="https://crowdin.com/profile/nicky18013"><img src="https://crowdin-static.downloads.crowdin.com/avatar/13468928/small/2b31e7ac19645d950a79b33ffd5721b8.png" width="40px;" alt="Nikita Bibanaev"/><br /><sub><b>Nikita Bibanaev</b></sub></a><br /><a href="#translation-nicky18013" title="Translation">🌍</a></td> 284 <td align="center"><a href="https://crowdin.com/profile/nicky18013"><img src="https://crowdin-static.downloads.crowdin.com/avatar/13468928/small/2b31e7ac19645d950a79b33ffd5721b8.png" width="40px;" alt=""/><br /><sub><b>Nikita Bibanaev</b></sub></a><br /><a href="#translation-nicky18013" title="Translation">🌍</a></td>
283 <td align="center"><a href="https://crowdin.com/profile/Tatjana1998"><img src="https://www.gravatar.com/avatar/ade202a04fcbb2c177e4f1d9936af29e" width="40px;" alt="Tatjana1998"/><br /><sub><b>Tatjana1998</b></sub></a><br /><a href="#translation-Tatjana1998" title="Translation">🌍</a></td> 285 <td align="center"><a href="https://crowdin.com/profile/Tatjana1998"><img src="https://www.gravatar.com/avatar/ade202a04fcbb2c177e4f1d9936af29e" width="40px;" alt=""/><br /><sub><b>Tatjana1998</b></sub></a><br /><a href="#translation-Tatjana1998" title="Translation">🌍</a></td>
284 <td align="center"><a href="https://crowdin.com/profile/seayko"><img src="https://www.gravatar.com/avatar/65e2aef738ddf828f822d8463fd04918" width="40px;" alt="tinect"/><br /><sub><b>tinect</b></sub></a><br /><a href="#translation-seayko" title="Translation">🌍</a></td> 286 <td align="center"><a href="https://crowdin.com/profile/seayko"><img src="https://www.gravatar.com/avatar/65e2aef738ddf828f822d8463fd04918" width="40px;" alt=""/><br /><sub><b>tinect</b></sub></a><br /><a href="#translation-seayko" title="Translation">🌍</a></td>
285 </tr> 287 </tr>
286 <tr> 288 <tr>
287 <td align="center"><a href="https://crowdin.com/profile/Pusnow"><img src="https://crowdin-static.downloads.crowdin.com/avatar/13514833/small/65f0b45587cc7e34f2827830cd324b16.jpeg" width="40px;" alt="Wonsup Yoon"/><br /><sub><b>Wonsup Yoon</b></sub></a><br /><a href="#translation-Pusnow" title="Translation">🌍</a></td> 289 <td align="center"><a href="https://crowdin.com/profile/Pusnow"><img src="https://crowdin-static.downloads.crowdin.com/avatar/13514833/small/65f0b45587cc7e34f2827830cd324b16.jpeg" width="40px;" alt=""/><br /><sub><b>Wonsup Yoon</b></sub></a><br /><a href="#translation-Pusnow" title="Translation">🌍</a></td>
288 <td align="center"><a href="https://crowdin.com/profile/zutt"><img src="https://crowdin-static.downloads.crowdin.com/avatar/13320003/small/50fdf9f8c7e54a446925bd79696ea625.JPG" width="40px;" alt="zutt"/><br /><sub><b>zutt</b></sub></a><br /><a href="#translation-zutt" title="Translation">🌍</a></td> 290 <td align="center"><a href="https://crowdin.com/profile/zutt"><img src="https://crowdin-static.downloads.crowdin.com/avatar/13320003/small/50fdf9f8c7e54a446925bd79696ea625.JPG" width="40px;" alt=""/><br /><sub><b>zutt</b></sub></a><br /><a href="#translation-zutt" title="Translation">🌍</a></td>
291 <td align="center"><a href="http://twitter.com/noemis_exec"><img src="https://avatars3.githubusercontent.com/u/22817873?v=4" width="40px;" alt=""/><br /><sub><b>n0emis</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=n0emis" title="Code">πŸ’»</a></td>
289 </tr> 292 </tr>
290</table> 293</table>
291 294
diff --git a/package-lock.json b/package-lock.json
index 497e19a62..3fefbfdfc 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -9774,6 +9774,11 @@
9774 "encoding": "^0.1.12" 9774 "encoding": "^0.1.12"
9775 } 9775 }
9776 }, 9776 },
9777 "electron-find": {
9778 "version": "1.0.6",
9779 "resolved": "https://registry.npmjs.org/electron-find/-/electron-find-1.0.6.tgz",
9780 "integrity": "sha512-RenjzlCCzX7edLywLy+qRYvzds11sBv8+SrJu/3l3eVLt9d9uNqCPk+uFZ525uAhSUaUalgZWDlhQdxIgT1khg=="
9781 },
9777 "electron-hunspell": { 9782 "electron-hunspell": {
9778 "version": "1.1.1", 9783 "version": "1.1.1",
9779 "resolved": "https://registry.npmjs.org/electron-hunspell/-/electron-hunspell-1.1.1.tgz", 9784 "resolved": "https://registry.npmjs.org/electron-hunspell/-/electron-hunspell-1.1.1.tgz",
diff --git a/package.json b/package.json
index 0e54b0f95..56b3c86f8 100644
--- a/package.json
+++ b/package.json
@@ -69,6 +69,7 @@
69 "du": "^0.1.0", 69 "du": "^0.1.0",
70 "electron-dl": "1.14.0", 70 "electron-dl": "1.14.0",
71 "electron-fetch": "1.4.0", 71 "electron-fetch": "1.4.0",
72 "electron-find": "1.0.6",
72 "electron-hunspell": "1.1.1", 73 "electron-hunspell": "1.1.1",
73 "electron-is-dev": "1.1.0", 74 "electron-is-dev": "1.1.0",
74 "electron-process-manager": "git+https://git@github.com/dizer/electron-process-manager.git", 75 "electron-process-manager": "git+https://git@github.com/dizer/electron-process-manager.git",
diff --git a/src/components/settings/settings/EditSettingsForm.js b/src/components/settings/settings/EditSettingsForm.js
index 33822ec5d..9564d837b 100644
--- a/src/components/settings/settings/EditSettingsForm.js
+++ b/src/components/settings/settings/EditSettingsForm.js
@@ -255,6 +255,7 @@ export default @observer class EditSettingsForm extends Component {
255 <Toggle field={form.$('autoLaunchOnStart')} /> 255 <Toggle field={form.$('autoLaunchOnStart')} />
256 <Toggle field={form.$('runInBackground')} /> 256 <Toggle field={form.$('runInBackground')} />
257 <Toggle field={form.$('enableSystemTray')} /> 257 <Toggle field={form.$('enableSystemTray')} />
258 <Toggle field={form.$('reloadAfterResume')} />
258 {isTrayEnabled && <Toggle field={form.$('startMinimized')} />} 259 {isTrayEnabled && <Toggle field={form.$('startMinimized')} />}
259 {process.platform === 'win32' && ( 260 {process.platform === 'win32' && (
260 <Toggle field={form.$('minimizeToSystemTray')} /> 261 <Toggle field={form.$('minimizeToSystemTray')} />
diff --git a/src/config.js b/src/config.js
index a16583463..af304232e 100644
--- a/src/config.js
+++ b/src/config.js
@@ -76,6 +76,7 @@ export const iconSizeBias = 20;
76export const DEFAULT_APP_SETTINGS = { 76export const DEFAULT_APP_SETTINGS = {
77 autoLaunchInBackground: false, 77 autoLaunchInBackground: false,
78 runInBackground: true, 78 runInBackground: true,
79 reloadAfterResume: true,
79 enableSystemTray: true, 80 enableSystemTray: true,
80 startMinimized: false, 81 startMinimized: false,
81 minimizeToSystemTray: false, 82 minimizeToSystemTray: false,
diff --git a/src/containers/settings/EditSettingsScreen.js b/src/containers/settings/EditSettingsScreen.js
index 6b3f8d3d3..5221b0694 100644
--- a/src/containers/settings/EditSettingsScreen.js
+++ b/src/containers/settings/EditSettingsScreen.js
@@ -48,6 +48,10 @@ const messages = defineMessages({
48 id: 'settings.app.form.enableSystemTray', 48 id: 'settings.app.form.enableSystemTray',
49 defaultMessage: '!!!Always show Ferdi in system tray', 49 defaultMessage: '!!!Always show Ferdi in system tray',
50 }, 50 },
51 reloadAfterResume: {
52 id: 'settings.app.form.reloadAfterResume',
53 defaultMessage: '!!!Reload Ferdi after system resume',
54 },
51 minimizeToSystemTray: { 55 minimizeToSystemTray: {
52 id: 'settings.app.form.minimizeToSystemTray', 56 id: 'settings.app.form.minimizeToSystemTray',
53 defaultMessage: '!!!Minimize Ferdi to system tray', 57 defaultMessage: '!!!Minimize Ferdi to system tray',
@@ -195,6 +199,7 @@ export default @inject('stores', 'actions') @observer class EditSettingsScreen e
195 data: { 199 data: {
196 runInBackground: settingsData.runInBackground, 200 runInBackground: settingsData.runInBackground,
197 enableSystemTray: settingsData.enableSystemTray, 201 enableSystemTray: settingsData.enableSystemTray,
202 reloadAfterResume: settingsData.reloadAfterResume,
198 startMinimized: settingsData.startMinimized, 203 startMinimized: settingsData.startMinimized,
199 minimizeToSystemTray: settingsData.minimizeToSystemTray, 204 minimizeToSystemTray: settingsData.minimizeToSystemTray,
200 privateNotifications: settingsData.privateNotifications, 205 privateNotifications: settingsData.privateNotifications,
@@ -317,6 +322,11 @@ export default @inject('stores', 'actions') @observer class EditSettingsScreen e
317 value: settings.all.app.enableSystemTray, 322 value: settings.all.app.enableSystemTray,
318 default: DEFAULT_APP_SETTINGS.enableSystemTray, 323 default: DEFAULT_APP_SETTINGS.enableSystemTray,
319 }, 324 },
325 reloadAfterResume: {
326 label: intl.formatMessage(messages.reloadAfterResume),
327 value: settings.all.app.reloadAfterResume,
328 default: DEFAULT_APP_SETTINGS.reloadAfterResume,
329 },
320 minimizeToSystemTray: { 330 minimizeToSystemTray: {
321 label: intl.formatMessage(messages.minimizeToSystemTray), 331 label: intl.formatMessage(messages.minimizeToSystemTray),
322 value: settings.all.app.minimizeToSystemTray, 332 value: settings.all.app.minimizeToSystemTray,
diff --git a/src/i18n/locales/af.json b/src/i18n/locales/af.json
index ec5bd1a04..ff81d6b9f 100644
--- a/src/i18n/locales/af.json
+++ b/src/i18n/locales/af.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Settings", 306 "settings.app.headline": "Settings",
303 "settings.app.headlineAdvanced": "Advanced", 307 "settings.app.headlineAdvanced": "Advanced",
304 "settings.app.headlineAppearance": "Appearance", 308 "settings.app.headlineAppearance": "Appearance",
diff --git a/src/i18n/locales/ar.json b/src/i18n/locales/ar.json
index 29b461d17..5d98551f6 100644
--- a/src/i18n/locales/ar.json
+++ b/src/i18n/locales/ar.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Settings", 306 "settings.app.headline": "Settings",
303 "settings.app.headlineAdvanced": "Advanced", 307 "settings.app.headlineAdvanced": "Advanced",
304 "settings.app.headlineAppearance": "Appearance", 308 "settings.app.headlineAppearance": "Appearance",
diff --git a/src/i18n/locales/bs.json b/src/i18n/locales/bs.json
index ec5bd1a04..ff81d6b9f 100644
--- a/src/i18n/locales/bs.json
+++ b/src/i18n/locales/bs.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Settings", 306 "settings.app.headline": "Settings",
303 "settings.app.headlineAdvanced": "Advanced", 307 "settings.app.headlineAdvanced": "Advanced",
304 "settings.app.headlineAppearance": "Appearance", 308 "settings.app.headlineAppearance": "Appearance",
diff --git a/src/i18n/locales/ca.json b/src/i18n/locales/ca.json
index c82819b9d..8c6926d4f 100644
--- a/src/i18n/locales/ca.json
+++ b/src/i18n/locales/ca.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "ConfiguraciΓ³", 306 "settings.app.headline": "ConfiguraciΓ³",
303 "settings.app.headlineAdvanced": "Avançat", 307 "settings.app.headlineAdvanced": "Avançat",
304 "settings.app.headlineAppearance": "Aparença", 308 "settings.app.headlineAppearance": "Aparença",
diff --git a/src/i18n/locales/cs.json b/src/i18n/locales/cs.json
index a236d8f6c..52215c715 100644
--- a/src/i18n/locales/cs.json
+++ b/src/i18n/locales/cs.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "NastavenΓ­", 306 "settings.app.headline": "NastavenΓ­",
303 "settings.app.headlineAdvanced": "Pokročilé", 307 "settings.app.headlineAdvanced": "Pokročilé",
304 "settings.app.headlineAppearance": "Vzhled", 308 "settings.app.headlineAppearance": "Vzhled",
diff --git a/src/i18n/locales/da.json b/src/i18n/locales/da.json
index ec5bd1a04..ff81d6b9f 100644
--- a/src/i18n/locales/da.json
+++ b/src/i18n/locales/da.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Settings", 306 "settings.app.headline": "Settings",
303 "settings.app.headlineAdvanced": "Advanced", 307 "settings.app.headlineAdvanced": "Advanced",
304 "settings.app.headlineAppearance": "Appearance", 308 "settings.app.headlineAppearance": "Appearance",
diff --git a/src/i18n/locales/de.json b/src/i18n/locales/de.json
index 82de95f8b..d7985a017 100644
--- a/src/i18n/locales/de.json
+++ b/src/i18n/locales/de.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Passwort ungΓΌltig", 85 "locked.invalidCredentials": "Passwort ungΓΌltig",
86 "locked.password.label": "Passwort", 86 "locked.password.label": "Passwort",
87 "locked.submit.label": "Entsperren", 87 "locked.submit.label": "Entsperren",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Server wechseln", 91 "login.changeServer": "Server wechseln",
89 "login.customServerQuestion": "Du benutzt ein Franz-Konto zum Anmelden?", 92 "login.customServerQuestion": "Du benutzt ein Franz-Konto zum Anmelden?",
90 "login.customServerSuggestion": "Versuche dein Franz-Konto in Ferdi zu importieren", 93 "login.customServerSuggestion": "Versuche dein Franz-Konto in Ferdi zu importieren",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo-Server", 303 "settings.app.form.todoServer": "Todo-Server",
301 "settings.app.form.universalDarkMode": "Universellen Dark Mode aktivieren", 304 "settings.app.form.universalDarkMode": "Universellen Dark Mode aktivieren",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Einstellungen", 306 "settings.app.headline": "Einstellungen",
303 "settings.app.headlineAdvanced": "Erweitert", 307 "settings.app.headlineAdvanced": "Erweitert",
304 "settings.app.headlineAppearance": "Darstellung", 308 "settings.app.headlineAppearance": "Darstellung",
diff --git a/src/i18n/locales/defaultMessages.json b/src/i18n/locales/defaultMessages.json
index 596e09fa1..be0cd008b 100644
--- a/src/i18n/locales/defaultMessages.json
+++ b/src/i18n/locales/defaultMessages.json
@@ -4227,393 +4227,406 @@
4227 } 4227 }
4228 }, 4228 },
4229 { 4229 {
4230 "defaultMessage": "!!!Minimize Ferdi to system tray", 4230 "defaultMessage": "!!!Reload Ferdi after system resume",
4231 "end": { 4231 "end": {
4232 "column": 3, 4232 "column": 3,
4233 "line": 54 4233 "line": 54
4234 }, 4234 },
4235 "file": "src/containers/settings/EditSettingsScreen.js", 4235 "file": "src/containers/settings/EditSettingsScreen.js",
4236 "id": "settings.app.form.reloadAfterResume",
4237 "start": {
4238 "column": 21,
4239 "line": 51
4240 }
4241 },
4242 {
4243 "defaultMessage": "!!!Minimize Ferdi to system tray",
4244 "end": {
4245 "column": 3,
4246 "line": 58
4247 },
4248 "file": "src/containers/settings/EditSettingsScreen.js",
4236 "id": "settings.app.form.minimizeToSystemTray", 4249 "id": "settings.app.form.minimizeToSystemTray",
4237 "start": { 4250 "start": {
4238 "column": 24, 4251 "column": 24,
4239 "line": 51 4252 "line": 55
4240 } 4253 }
4241 }, 4254 },
4242 { 4255 {
4243 "defaultMessage": "!!!Don't show message content in notifications", 4256 "defaultMessage": "!!!Don't show message content in notifications",
4244 "end": { 4257 "end": {
4245 "column": 3, 4258 "column": 3,
4246 "line": 58 4259 "line": 62
4247 }, 4260 },
4248 "file": "src/containers/settings/EditSettingsScreen.js", 4261 "file": "src/containers/settings/EditSettingsScreen.js",
4249 "id": "settings.app.form.privateNotifications", 4262 "id": "settings.app.form.privateNotifications",
4250 "start": { 4263 "start": {
4251 "column": 24, 4264 "column": 24,
4252 "line": 55 4265 "line": 59
4253 } 4266 }
4254 }, 4267 },
4255 { 4268 {
4256 "defaultMessage": "!!!Navigation bar behaviour", 4269 "defaultMessage": "!!!Navigation bar behaviour",
4257 "end": { 4270 "end": {
4258 "column": 3, 4271 "column": 3,
4259 "line": 62 4272 "line": 66
4260 }, 4273 },
4261 "file": "src/containers/settings/EditSettingsScreen.js", 4274 "file": "src/containers/settings/EditSettingsScreen.js",
4262 "id": "settings.app.form.navigationBarBehaviour", 4275 "id": "settings.app.form.navigationBarBehaviour",
4263 "start": { 4276 "start": {
4264 "column": 26, 4277 "column": 26,
4265 "line": 59 4278 "line": 63
4266 } 4279 }
4267 }, 4280 },
4268 { 4281 {
4269 "defaultMessage": "!!!Send telemetry data", 4282 "defaultMessage": "!!!Send telemetry data",
4270 "end": { 4283 "end": {
4271 "column": 3, 4284 "column": 3,
4272 "line": 66 4285 "line": 70
4273 }, 4286 },
4274 "file": "src/containers/settings/EditSettingsScreen.js", 4287 "file": "src/containers/settings/EditSettingsScreen.js",
4275 "id": "settings.app.form.sentry", 4288 "id": "settings.app.form.sentry",
4276 "start": { 4289 "start": {
4277 "column": 10, 4290 "column": 10,
4278 "line": 63 4291 "line": 67
4279 } 4292 }
4280 }, 4293 },
4281 { 4294 {
4282 "defaultMessage": "!!!Enable service hibernation", 4295 "defaultMessage": "!!!Enable service hibernation",
4283 "end": { 4296 "end": {
4284 "column": 3, 4297 "column": 3,
4285 "line": 70 4298 "line": 74
4286 }, 4299 },
4287 "file": "src/containers/settings/EditSettingsScreen.js", 4300 "file": "src/containers/settings/EditSettingsScreen.js",
4288 "id": "settings.app.form.hibernate", 4301 "id": "settings.app.form.hibernate",
4289 "start": { 4302 "start": {
4290 "column": 13, 4303 "column": 13,
4291 "line": 67 4304 "line": 71
4292 } 4305 }
4293 }, 4306 },
4294 { 4307 {
4295 "defaultMessage": "!!!Hibernation strategy", 4308 "defaultMessage": "!!!Hibernation strategy",
4296 "end": { 4309 "end": {
4297 "column": 3, 4310 "column": 3,
4298 "line": 74 4311 "line": 78
4299 }, 4312 },
4300 "file": "src/containers/settings/EditSettingsScreen.js", 4313 "file": "src/containers/settings/EditSettingsScreen.js",
4301 "id": "settings.app.form.hibernationStrategy", 4314 "id": "settings.app.form.hibernationStrategy",
4302 "start": { 4315 "start": {
4303 "column": 23, 4316 "column": 23,
4304 "line": 71 4317 "line": 75
4305 } 4318 }
4306 }, 4319 },
4307 { 4320 {
4308 "defaultMessage": "!!!Server", 4321 "defaultMessage": "!!!Server",
4309 "end": { 4322 "end": {
4310 "column": 3, 4323 "column": 3,
4311 "line": 78 4324 "line": 82
4312 }, 4325 },
4313 "file": "src/containers/settings/EditSettingsScreen.js", 4326 "file": "src/containers/settings/EditSettingsScreen.js",
4314 "id": "settings.app.form.server", 4327 "id": "settings.app.form.server",
4315 "start": { 4328 "start": {
4316 "column": 10, 4329 "column": 10,
4317 "line": 75 4330 "line": 79
4318 } 4331 }
4319 }, 4332 },
4320 { 4333 {
4321 "defaultMessage": "!!!Todo Server", 4334 "defaultMessage": "!!!Todo Server",
4322 "end": { 4335 "end": {
4323 "column": 3, 4336 "column": 3,
4324 "line": 82 4337 "line": 86
4325 }, 4338 },
4326 "file": "src/containers/settings/EditSettingsScreen.js", 4339 "file": "src/containers/settings/EditSettingsScreen.js",
4327 "id": "settings.app.form.todoServer", 4340 "id": "settings.app.form.todoServer",
4328 "start": { 4341 "start": {
4329 "column": 14, 4342 "column": 14,
4330 "line": 79 4343 "line": 83
4331 } 4344 }
4332 }, 4345 },
4333 { 4346 {
4334 "defaultMessage": "!!!Enable Password Lock", 4347 "defaultMessage": "!!!Enable Password Lock",
4335 "end": { 4348 "end": {
4336 "column": 3, 4349 "column": 3,
4337 "line": 86 4350 "line": 90
4338 }, 4351 },
4339 "file": "src/containers/settings/EditSettingsScreen.js", 4352 "file": "src/containers/settings/EditSettingsScreen.js",
4340 "id": "settings.app.form.enableLock", 4353 "id": "settings.app.form.enableLock",
4341 "start": { 4354 "start": {
4342 "column": 14, 4355 "column": 14,
4343 "line": 83 4356 "line": 87
4344 } 4357 }
4345 }, 4358 },
4346 { 4359 {
4347 "defaultMessage": "!!!Password", 4360 "defaultMessage": "!!!Password",
4348 "end": { 4361 "end": {
4349 "column": 3, 4362 "column": 3,
4350 "line": 90 4363 "line": 94
4351 }, 4364 },
4352 "file": "src/containers/settings/EditSettingsScreen.js", 4365 "file": "src/containers/settings/EditSettingsScreen.js",
4353 "id": "settings.app.form.lockPassword", 4366 "id": "settings.app.form.lockPassword",
4354 "start": { 4367 "start": {
4355 "column": 16, 4368 "column": 16,
4356 "line": 87 4369 "line": 91
4357 } 4370 }
4358 }, 4371 },
4359 { 4372 {
4360 "defaultMessage": "!!!Allow using Touch ID to unlock", 4373 "defaultMessage": "!!!Allow using Touch ID to unlock",
4361 "end": { 4374 "end": {
4362 "column": 3, 4375 "column": 3,
4363 "line": 94 4376 "line": 98
4364 }, 4377 },
4365 "file": "src/containers/settings/EditSettingsScreen.js", 4378 "file": "src/containers/settings/EditSettingsScreen.js",
4366 "id": "settings.app.form.useTouchIdToUnlock", 4379 "id": "settings.app.form.useTouchIdToUnlock",
4367 "start": { 4380 "start": {
4368 "column": 22, 4381 "column": 22,
4369 "line": 91 4382 "line": 95
4370 } 4383 }
4371 }, 4384 },
4372 { 4385 {
4373 "defaultMessage": "!!!Lock after inactivity", 4386 "defaultMessage": "!!!Lock after inactivity",
4374 "end": { 4387 "end": {
4375 "column": 3, 4388 "column": 3,
4376 "line": 98 4389 "line": 102
4377 }, 4390 },
4378 "file": "src/containers/settings/EditSettingsScreen.js", 4391 "file": "src/containers/settings/EditSettingsScreen.js",
4379 "id": "settings.app.form.inactivityLock", 4392 "id": "settings.app.form.inactivityLock",
4380 "start": { 4393 "start": {
4381 "column": 18, 4394 "column": 18,
4382 "line": 95 4395 "line": 99
4383 } 4396 }
4384 }, 4397 },
4385 { 4398 {
4386 "defaultMessage": "!!!Enable scheduled Do-not-Disturb", 4399 "defaultMessage": "!!!Enable scheduled Do-not-Disturb",
4387 "end": { 4400 "end": {
4388 "column": 3, 4401 "column": 3,
4389 "line": 102 4402 "line": 106
4390 }, 4403 },
4391 "file": "src/containers/settings/EditSettingsScreen.js", 4404 "file": "src/containers/settings/EditSettingsScreen.js",
4392 "id": "settings.app.form.scheduledDNDEnabled", 4405 "id": "settings.app.form.scheduledDNDEnabled",
4393 "start": { 4406 "start": {
4394 "column": 23, 4407 "column": 23,
4395 "line": 99 4408 "line": 103
4396 } 4409 }
4397 }, 4410 },
4398 { 4411 {
4399 "defaultMessage": "!!!From", 4412 "defaultMessage": "!!!From",
4400 "end": { 4413 "end": {
4401 "column": 3, 4414 "column": 3,
4402 "line": 106 4415 "line": 110
4403 }, 4416 },
4404 "file": "src/containers/settings/EditSettingsScreen.js", 4417 "file": "src/containers/settings/EditSettingsScreen.js",
4405 "id": "settings.app.form.scheduledDNDStart", 4418 "id": "settings.app.form.scheduledDNDStart",
4406 "start": { 4419 "start": {
4407 "column": 21, 4420 "column": 21,
4408 "line": 103 4421 "line": 107
4409 } 4422 }
4410 }, 4423 },
4411 { 4424 {
4412 "defaultMessage": "!!!To", 4425 "defaultMessage": "!!!To",
4413 "end": { 4426 "end": {
4414 "column": 3, 4427 "column": 3,
4415 "line": 110 4428 "line": 114
4416 }, 4429 },
4417 "file": "src/containers/settings/EditSettingsScreen.js", 4430 "file": "src/containers/settings/EditSettingsScreen.js",
4418 "id": "settings.app.form.scheduledDNDEnd", 4431 "id": "settings.app.form.scheduledDNDEnd",
4419 "start": { 4432 "start": {
4420 "column": 19, 4433 "column": 19,
4421 "line": 107 4434 "line": 111
4422 } 4435 }
4423 }, 4436 },
4424 { 4437 {
4425 "defaultMessage": "!!!Language", 4438 "defaultMessage": "!!!Language",
4426 "end": { 4439 "end": {
4427 "column": 3, 4440 "column": 3,
4428 "line": 114 4441 "line": 118
4429 }, 4442 },
4430 "file": "src/containers/settings/EditSettingsScreen.js", 4443 "file": "src/containers/settings/EditSettingsScreen.js",
4431 "id": "settings.app.form.language", 4444 "id": "settings.app.form.language",
4432 "start": { 4445 "start": {
4433 "column": 12, 4446 "column": 12,
4434 "line": 111 4447 "line": 115
4435 } 4448 }
4436 }, 4449 },
4437 { 4450 {
4438 "defaultMessage": "!!!Dark Mode", 4451 "defaultMessage": "!!!Dark Mode",
4439 "end": { 4452 "end": {
4440 "column": 3, 4453 "column": 3,
4441 "line": 118 4454 "line": 122
4442 }, 4455 },
4443 "file": "src/containers/settings/EditSettingsScreen.js", 4456 "file": "src/containers/settings/EditSettingsScreen.js",
4444 "id": "settings.app.form.darkMode", 4457 "id": "settings.app.form.darkMode",
4445 "start": { 4458 "start": {
4446 "column": 12, 4459 "column": 12,
4447 "line": 115 4460 "line": 119
4448 } 4461 }
4449 }, 4462 },
4450 { 4463 {
4451 "defaultMessage": "!!!Synchronize dark mode with my Mac's dark mode setting", 4464 "defaultMessage": "!!!Synchronize dark mode with my Mac's dark mode setting",
4452 "end": { 4465 "end": {
4453 "column": 3, 4466 "column": 3,
4454 "line": 122 4467 "line": 126
4455 }, 4468 },
4456 "file": "src/containers/settings/EditSettingsScreen.js", 4469 "file": "src/containers/settings/EditSettingsScreen.js",
4457 "id": "settings.app.form.adaptableDarkMode", 4470 "id": "settings.app.form.adaptableDarkMode",
4458 "start": { 4471 "start": {
4459 "column": 21, 4472 "column": 21,
4460 "line": 119 4473 "line": 123
4461 } 4474 }
4462 }, 4475 },
4463 { 4476 {
4464 "defaultMessage": "!!!Enable universal Dark Mode", 4477 "defaultMessage": "!!!Enable universal Dark Mode",
4465 "end": { 4478 "end": {
4466 "column": 3, 4479 "column": 3,
4467 "line": 126 4480 "line": 130
4468 }, 4481 },
4469 "file": "src/containers/settings/EditSettingsScreen.js", 4482 "file": "src/containers/settings/EditSettingsScreen.js",
4470 "id": "settings.app.form.universalDarkMode", 4483 "id": "settings.app.form.universalDarkMode",
4471 "start": { 4484 "start": {
4472 "column": 21, 4485 "column": 21,
4473 "line": 123 4486 "line": 127
4474 } 4487 }
4475 }, 4488 },
4476 { 4489 {
4477 "defaultMessage": "!!!Sidebar width", 4490 "defaultMessage": "!!!Sidebar width",
4478 "end": { 4491 "end": {
4479 "column": 3, 4492 "column": 3,
4480 "line": 130 4493 "line": 134
4481 }, 4494 },
4482 "file": "src/containers/settings/EditSettingsScreen.js", 4495 "file": "src/containers/settings/EditSettingsScreen.js",
4483 "id": "settings.app.form.serviceRibbonWidth", 4496 "id": "settings.app.form.serviceRibbonWidth",
4484 "start": { 4497 "start": {
4485 "column": 22, 4498 "column": 22,
4486 "line": 127 4499 "line": 131
4487 } 4500 }
4488 }, 4501 },
4489 { 4502 {
4490 "defaultMessage": "!!!Service icon size", 4503 "defaultMessage": "!!!Service icon size",
4491 "end": { 4504 "end": {
4492 "column": 3, 4505 "column": 3,
4493 "line": 134 4506 "line": 138
4494 }, 4507 },
4495 "file": "src/containers/settings/EditSettingsScreen.js", 4508 "file": "src/containers/settings/EditSettingsScreen.js",
4496 "id": "settings.app.form.iconSize", 4509 "id": "settings.app.form.iconSize",
4497 "start": { 4510 "start": {
4498 "column": 12, 4511 "column": 12,
4499 "line": 131 4512 "line": 135
4500 } 4513 }
4501 }, 4514 },
4502 { 4515 {
4503 "defaultMessage": "!!!Accent color", 4516 "defaultMessage": "!!!Accent color",
4504 "end": { 4517 "end": {
4505 "column": 3, 4518 "column": 3,
4506 "line": 138 4519 "line": 142
4507 }, 4520 },
4508 "file": "src/containers/settings/EditSettingsScreen.js", 4521 "file": "src/containers/settings/EditSettingsScreen.js",
4509 "id": "settings.app.form.accentColor", 4522 "id": "settings.app.form.accentColor",
4510 "start": { 4523 "start": {
4511 "column": 15, 4524 "column": 15,
4512 "line": 135 4525 "line": 139
4513 } 4526 }
4514 }, 4527 },
4515 { 4528 {
4516 "defaultMessage": "!!!Display disabled services tabs", 4529 "defaultMessage": "!!!Display disabled services tabs",
4517 "end": { 4530 "end": {
4518 "column": 3, 4531 "column": 3,
4519 "line": 142 4532 "line": 146
4520 }, 4533 },
4521 "file": "src/containers/settings/EditSettingsScreen.js", 4534 "file": "src/containers/settings/EditSettingsScreen.js",
4522 "id": "settings.app.form.showDisabledServices", 4535 "id": "settings.app.form.showDisabledServices",
4523 "start": { 4536 "start": {
4524 "column": 24, 4537 "column": 24,
4525 "line": 139 4538 "line": 143
4526 } 4539 }
4527 }, 4540 },
4528 { 4541 {
4529 "defaultMessage": "!!!Show unread message badge when notifications are disabled", 4542 "defaultMessage": "!!!Show unread message badge when notifications are disabled",
4530 "end": { 4543 "end": {
4531 "column": 3, 4544 "column": 3,
4532 "line": 146 4545 "line": 150
4533 }, 4546 },
4534 "file": "src/containers/settings/EditSettingsScreen.js", 4547 "file": "src/containers/settings/EditSettingsScreen.js",
4535 "id": "settings.app.form.showMessagesBadgesWhenMuted", 4548 "id": "settings.app.form.showMessagesBadgesWhenMuted",
4536 "start": { 4549 "start": {
4537 "column": 29, 4550 "column": 29,
4538 "line": 143 4551 "line": 147
4539 } 4552 }
4540 }, 4553 },
4541 { 4554 {
4542 "defaultMessage": "!!!Enable spell checking", 4555 "defaultMessage": "!!!Enable spell checking",
4543 "end": { 4556 "end": {
4544 "column": 3, 4557 "column": 3,
4545 "line": 150 4558 "line": 154
4546 }, 4559 },
4547 "file": "src/containers/settings/EditSettingsScreen.js", 4560 "file": "src/containers/settings/EditSettingsScreen.js",
4548 "id": "settings.app.form.enableSpellchecking", 4561 "id": "settings.app.form.enableSpellchecking",
4549 "start": { 4562 "start": {
4550 "column": 23, 4563 "column": 23,
4551 "line": 147 4564 "line": 151
4552 } 4565 }
4553 }, 4566 },
4554 { 4567 {
4555 "defaultMessage": "!!!Enable GPU Acceleration", 4568 "defaultMessage": "!!!Enable GPU Acceleration",
4556 "end": { 4569 "end": {
4557 "column": 3, 4570 "column": 3,
4558 "line": 154 4571 "line": 158
4559 }, 4572 },
4560 "file": "src/containers/settings/EditSettingsScreen.js", 4573 "file": "src/containers/settings/EditSettingsScreen.js",
4561 "id": "settings.app.form.enableGPUAcceleration", 4574 "id": "settings.app.form.enableGPUAcceleration",
4562 "start": { 4575 "start": {
4563 "column": 25, 4576 "column": 25,
4564 "line": 151 4577 "line": 155
4565 } 4578 }
4566 }, 4579 },
4567 { 4580 {
4568 "defaultMessage": "!!!Include beta versions", 4581 "defaultMessage": "!!!Include beta versions",
4569 "end": { 4582 "end": {
4570 "column": 3, 4583 "column": 3,
4571 "line": 158 4584 "line": 162
4572 }, 4585 },
4573 "file": "src/containers/settings/EditSettingsScreen.js", 4586 "file": "src/containers/settings/EditSettingsScreen.js",
4574 "id": "settings.app.form.beta", 4587 "id": "settings.app.form.beta",
4575 "start": { 4588 "start": {
4576 "column": 8, 4589 "column": 8,
4577 "line": 155 4590 "line": 159
4578 } 4591 }
4579 }, 4592 },
4580 { 4593 {
4581 "defaultMessage": "!!!Disable updates", 4594 "defaultMessage": "!!!Disable updates",
4582 "end": { 4595 "end": {
4583 "column": 3, 4596 "column": 3,
4584 "line": 162 4597 "line": 166
4585 }, 4598 },
4586 "file": "src/containers/settings/EditSettingsScreen.js", 4599 "file": "src/containers/settings/EditSettingsScreen.js",
4587 "id": "settings.app.form.noUpdates", 4600 "id": "settings.app.form.noUpdates",
4588 "start": { 4601 "start": {
4589 "column": 13, 4602 "column": 13,
4590 "line": 159 4603 "line": 163
4591 } 4604 }
4592 }, 4605 },
4593 { 4606 {
4594 "defaultMessage": "!!!Enable Franz Todos", 4607 "defaultMessage": "!!!Enable Franz Todos",
4595 "end": { 4608 "end": {
4596 "column": 3, 4609 "column": 3,
4597 "line": 166 4610 "line": 170
4598 }, 4611 },
4599 "file": "src/containers/settings/EditSettingsScreen.js", 4612 "file": "src/containers/settings/EditSettingsScreen.js",
4600 "id": "settings.app.form.enableTodos", 4613 "id": "settings.app.form.enableTodos",
4601 "start": { 4614 "start": {
4602 "column": 15, 4615 "column": 15,
4603 "line": 163 4616 "line": 167
4604 } 4617 }
4605 }, 4618 },
4606 { 4619 {
4607 "defaultMessage": "!!!Keep all workspaces loaded", 4620 "defaultMessage": "!!!Keep all workspaces loaded",
4608 "end": { 4621 "end": {
4609 "column": 3, 4622 "column": 3,
4610 "line": 170 4623 "line": 174
4611 }, 4624 },
4612 "file": "src/containers/settings/EditSettingsScreen.js", 4625 "file": "src/containers/settings/EditSettingsScreen.js",
4613 "id": "settings.app.form.keepAllWorkspacesLoaded", 4626 "id": "settings.app.form.keepAllWorkspacesLoaded",
4614 "start": { 4627 "start": {
4615 "column": 27, 4628 "column": 27,
4616 "line": 167 4629 "line": 171
4617 } 4630 }
4618 } 4631 }
4619 ], 4632 ],
@@ -6486,809 +6499,822 @@
6486 } 6499 }
6487 }, 6500 },
6488 { 6501 {
6489 "defaultMessage": "!!!Speech", 6502 "defaultMessage": "!!!Find in Page",
6490 "end": { 6503 "end": {
6491 "column": 3, 6504 "column": 3,
6492 "line": 57 6505 "line": 57
6493 }, 6506 },
6494 "file": "src/lib/Menu.js", 6507 "file": "src/lib/Menu.js",
6508 "id": "menu.edit.findInPage",
6509 "start": {
6510 "column": 14,
6511 "line": 54
6512 }
6513 },
6514 {
6515 "defaultMessage": "!!!Speech",
6516 "end": {
6517 "column": 3,
6518 "line": 61
6519 },
6520 "file": "src/lib/Menu.js",
6495 "id": "menu.edit.speech", 6521 "id": "menu.edit.speech",
6496 "start": { 6522 "start": {
6497 "column": 10, 6523 "column": 10,
6498 "line": 54 6524 "line": 58
6499 } 6525 }
6500 }, 6526 },
6501 { 6527 {
6502 "defaultMessage": "!!!Start Speaking", 6528 "defaultMessage": "!!!Start Speaking",
6503 "end": { 6529 "end": {
6504 "column": 3, 6530 "column": 3,
6505 "line": 61 6531 "line": 65
6506 }, 6532 },
6507 "file": "src/lib/Menu.js", 6533 "file": "src/lib/Menu.js",
6508 "id": "menu.edit.startSpeaking", 6534 "id": "menu.edit.startSpeaking",
6509 "start": { 6535 "start": {
6510 "column": 17, 6536 "column": 17,
6511 "line": 58 6537 "line": 62
6512 } 6538 }
6513 }, 6539 },
6514 { 6540 {
6515 "defaultMessage": "!!!Stop Speaking", 6541 "defaultMessage": "!!!Stop Speaking",
6516 "end": { 6542 "end": {
6517 "column": 3, 6543 "column": 3,
6518 "line": 65 6544 "line": 69
6519 }, 6545 },
6520 "file": "src/lib/Menu.js", 6546 "file": "src/lib/Menu.js",
6521 "id": "menu.edit.stopSpeaking", 6547 "id": "menu.edit.stopSpeaking",
6522 "start": { 6548 "start": {
6523 "column": 16, 6549 "column": 16,
6524 "line": 62 6550 "line": 66
6525 } 6551 }
6526 }, 6552 },
6527 { 6553 {
6528 "defaultMessage": "!!!Start Dictation", 6554 "defaultMessage": "!!!Start Dictation",
6529 "end": { 6555 "end": {
6530 "column": 3, 6556 "column": 3,
6531 "line": 69 6557 "line": 73
6532 }, 6558 },
6533 "file": "src/lib/Menu.js", 6559 "file": "src/lib/Menu.js",
6534 "id": "menu.edit.startDictation", 6560 "id": "menu.edit.startDictation",
6535 "start": { 6561 "start": {
6536 "column": 18, 6562 "column": 18,
6537 "line": 66 6563 "line": 70
6538 } 6564 }
6539 }, 6565 },
6540 { 6566 {
6541 "defaultMessage": "!!!Emoji & Symbols", 6567 "defaultMessage": "!!!Emoji & Symbols",
6542 "end": { 6568 "end": {
6543 "column": 3, 6569 "column": 3,
6544 "line": 73 6570 "line": 77
6545 }, 6571 },
6546 "file": "src/lib/Menu.js", 6572 "file": "src/lib/Menu.js",
6547 "id": "menu.edit.emojiSymbols", 6573 "id": "menu.edit.emojiSymbols",
6548 "start": { 6574 "start": {
6549 "column": 16, 6575 "column": 16,
6550 "line": 70 6576 "line": 74
6551 } 6577 }
6552 }, 6578 },
6553 { 6579 {
6554 "defaultMessage": "!!!Open Quick Switch", 6580 "defaultMessage": "!!!Open Quick Switch",
6555 "end": { 6581 "end": {
6556 "column": 3, 6582 "column": 3,
6557 "line": 77 6583 "line": 81
6558 }, 6584 },
6559 "file": "src/lib/Menu.js", 6585 "file": "src/lib/Menu.js",
6560 "id": "menu.view.openQuickSwitch", 6586 "id": "menu.view.openQuickSwitch",
6561 "start": { 6587 "start": {
6562 "column": 19, 6588 "column": 19,
6563 "line": 74 6589 "line": 78
6564 } 6590 }
6565 }, 6591 },
6566 { 6592 {
6567 "defaultMessage": "!!!Back", 6593 "defaultMessage": "!!!Back",
6568 "end": { 6594 "end": {
6569 "column": 3, 6595 "column": 3,
6570 "line": 81 6596 "line": 85
6571 }, 6597 },
6572 "file": "src/lib/Menu.js", 6598 "file": "src/lib/Menu.js",
6573 "id": "menu.view.back", 6599 "id": "menu.view.back",
6574 "start": { 6600 "start": {
6575 "column": 8, 6601 "column": 8,
6576 "line": 78 6602 "line": 82
6577 } 6603 }
6578 }, 6604 },
6579 { 6605 {
6580 "defaultMessage": "!!!Forward", 6606 "defaultMessage": "!!!Forward",
6581 "end": { 6607 "end": {
6582 "column": 3, 6608 "column": 3,
6583 "line": 85 6609 "line": 89
6584 }, 6610 },
6585 "file": "src/lib/Menu.js", 6611 "file": "src/lib/Menu.js",
6586 "id": "menu.view.forward", 6612 "id": "menu.view.forward",
6587 "start": { 6613 "start": {
6588 "column": 11, 6614 "column": 11,
6589 "line": 82 6615 "line": 86
6590 } 6616 }
6591 }, 6617 },
6592 { 6618 {
6593 "defaultMessage": "!!!Actual Size", 6619 "defaultMessage": "!!!Actual Size",
6594 "end": { 6620 "end": {
6595 "column": 3, 6621 "column": 3,
6596 "line": 89 6622 "line": 93
6597 }, 6623 },
6598 "file": "src/lib/Menu.js", 6624 "file": "src/lib/Menu.js",
6599 "id": "menu.view.resetZoom", 6625 "id": "menu.view.resetZoom",
6600 "start": { 6626 "start": {
6601 "column": 13, 6627 "column": 13,
6602 "line": 86 6628 "line": 90
6603 } 6629 }
6604 }, 6630 },
6605 { 6631 {
6606 "defaultMessage": "!!!Zoom In", 6632 "defaultMessage": "!!!Zoom In",
6607 "end": { 6633 "end": {
6608 "column": 3, 6634 "column": 3,
6609 "line": 93 6635 "line": 97
6610 }, 6636 },
6611 "file": "src/lib/Menu.js", 6637 "file": "src/lib/Menu.js",
6612 "id": "menu.view.zoomIn", 6638 "id": "menu.view.zoomIn",
6613 "start": { 6639 "start": {
6614 "column": 10, 6640 "column": 10,
6615 "line": 90 6641 "line": 94
6616 } 6642 }
6617 }, 6643 },
6618 { 6644 {
6619 "defaultMessage": "!!!Zoom Out", 6645 "defaultMessage": "!!!Zoom Out",
6620 "end": { 6646 "end": {
6621 "column": 3, 6647 "column": 3,
6622 "line": 97 6648 "line": 101
6623 }, 6649 },
6624 "file": "src/lib/Menu.js", 6650 "file": "src/lib/Menu.js",
6625 "id": "menu.view.zoomOut", 6651 "id": "menu.view.zoomOut",
6626 "start": { 6652 "start": {
6627 "column": 11, 6653 "column": 11,
6628 "line": 94 6654 "line": 98
6629 } 6655 }
6630 }, 6656 },
6631 { 6657 {
6632 "defaultMessage": "!!!Enter Full Screen", 6658 "defaultMessage": "!!!Enter Full Screen",
6633 "end": { 6659 "end": {
6634 "column": 3, 6660 "column": 3,
6635 "line": 101 6661 "line": 105
6636 }, 6662 },
6637 "file": "src/lib/Menu.js", 6663 "file": "src/lib/Menu.js",
6638 "id": "menu.view.enterFullScreen", 6664 "id": "menu.view.enterFullScreen",
6639 "start": { 6665 "start": {
6640 "column": 19, 6666 "column": 19,
6641 "line": 98 6667 "line": 102
6642 } 6668 }
6643 }, 6669 },
6644 { 6670 {
6645 "defaultMessage": "!!!Exit Full Screen", 6671 "defaultMessage": "!!!Exit Full Screen",
6646 "end": { 6672 "end": {
6647 "column": 3, 6673 "column": 3,
6648 "line": 105 6674 "line": 109
6649 }, 6675 },
6650 "file": "src/lib/Menu.js", 6676 "file": "src/lib/Menu.js",
6651 "id": "menu.view.exitFullScreen", 6677 "id": "menu.view.exitFullScreen",
6652 "start": { 6678 "start": {
6653 "column": 18, 6679 "column": 18,
6654 "line": 102 6680 "line": 106
6655 } 6681 }
6656 }, 6682 },
6657 { 6683 {
6658 "defaultMessage": "!!!Toggle Full Screen", 6684 "defaultMessage": "!!!Toggle Full Screen",
6659 "end": { 6685 "end": {
6660 "column": 3, 6686 "column": 3,
6661 "line": 109 6687 "line": 113
6662 }, 6688 },
6663 "file": "src/lib/Menu.js", 6689 "file": "src/lib/Menu.js",
6664 "id": "menu.view.toggleFullScreen", 6690 "id": "menu.view.toggleFullScreen",
6665 "start": { 6691 "start": {
6666 "column": 20, 6692 "column": 20,
6667 "line": 106 6693 "line": 110
6668 } 6694 }
6669 }, 6695 },
6670 { 6696 {
6671 "defaultMessage": "!!!Toggle Developer Tools", 6697 "defaultMessage": "!!!Toggle Developer Tools",
6672 "end": { 6698 "end": {
6673 "column": 3, 6699 "column": 3,
6674 "line": 113 6700 "line": 117
6675 }, 6701 },
6676 "file": "src/lib/Menu.js", 6702 "file": "src/lib/Menu.js",
6677 "id": "menu.view.toggleDevTools", 6703 "id": "menu.view.toggleDevTools",
6678 "start": { 6704 "start": {
6679 "column": 18, 6705 "column": 18,
6680 "line": 110 6706 "line": 114
6681 } 6707 }
6682 }, 6708 },
6683 { 6709 {
6684 "defaultMessage": "!!!Toggle Todos Developer Tools", 6710 "defaultMessage": "!!!Toggle Todos Developer Tools",
6685 "end": { 6711 "end": {
6686 "column": 3, 6712 "column": 3,
6687 "line": 117 6713 "line": 121
6688 }, 6714 },
6689 "file": "src/lib/Menu.js", 6715 "file": "src/lib/Menu.js",
6690 "id": "menu.view.toggleTodosDevTools", 6716 "id": "menu.view.toggleTodosDevTools",
6691 "start": { 6717 "start": {
6692 "column": 23, 6718 "column": 23,
6693 "line": 114 6719 "line": 118
6694 } 6720 }
6695 }, 6721 },
6696 { 6722 {
6697 "defaultMessage": "!!!Toggle Service Developer Tools", 6723 "defaultMessage": "!!!Toggle Service Developer Tools",
6698 "end": { 6724 "end": {
6699 "column": 3, 6725 "column": 3,
6700 "line": 121 6726 "line": 125
6701 }, 6727 },
6702 "file": "src/lib/Menu.js", 6728 "file": "src/lib/Menu.js",
6703 "id": "menu.view.toggleServiceDevTools", 6729 "id": "menu.view.toggleServiceDevTools",
6704 "start": { 6730 "start": {
6705 "column": 25, 6731 "column": 25,
6706 "line": 118 6732 "line": 122
6707 } 6733 }
6708 }, 6734 },
6709 { 6735 {
6710 "defaultMessage": "!!!Reload Service", 6736 "defaultMessage": "!!!Reload Service",
6711 "end": { 6737 "end": {
6712 "column": 3, 6738 "column": 3,
6713 "line": 125 6739 "line": 129
6714 }, 6740 },
6715 "file": "src/lib/Menu.js", 6741 "file": "src/lib/Menu.js",
6716 "id": "menu.view.reloadService", 6742 "id": "menu.view.reloadService",
6717 "start": { 6743 "start": {
6718 "column": 17, 6744 "column": 17,
6719 "line": 122 6745 "line": 126
6720 } 6746 }
6721 }, 6747 },
6722 { 6748 {
6723 "defaultMessage": "!!!Reload Ferdi", 6749 "defaultMessage": "!!!Reload Ferdi",
6724 "end": { 6750 "end": {
6725 "column": 3, 6751 "column": 3,
6726 "line": 129 6752 "line": 133
6727 }, 6753 },
6728 "file": "src/lib/Menu.js", 6754 "file": "src/lib/Menu.js",
6729 "id": "menu.view.reloadFranz", 6755 "id": "menu.view.reloadFranz",
6730 "start": { 6756 "start": {
6731 "column": 15, 6757 "column": 15,
6732 "line": 126 6758 "line": 130
6733 } 6759 }
6734 }, 6760 },
6735 { 6761 {
6736 "defaultMessage": "!!!Lock Ferdi", 6762 "defaultMessage": "!!!Lock Ferdi",
6737 "end": { 6763 "end": {
6738 "column": 3, 6764 "column": 3,
6739 "line": 133 6765 "line": 137
6740 }, 6766 },
6741 "file": "src/lib/Menu.js", 6767 "file": "src/lib/Menu.js",
6742 "id": "menu.view.lockFerdi", 6768 "id": "menu.view.lockFerdi",
6743 "start": { 6769 "start": {
6744 "column": 13, 6770 "column": 13,
6745 "line": 130 6771 "line": 134
6746 } 6772 }
6747 }, 6773 },
6748 { 6774 {
6749 "defaultMessage": "!!!Minimize", 6775 "defaultMessage": "!!!Minimize",
6750 "end": { 6776 "end": {
6751 "column": 3, 6777 "column": 3,
6752 "line": 137 6778 "line": 141
6753 }, 6779 },
6754 "file": "src/lib/Menu.js", 6780 "file": "src/lib/Menu.js",
6755 "id": "menu.window.minimize", 6781 "id": "menu.window.minimize",
6756 "start": { 6782 "start": {
6757 "column": 12, 6783 "column": 12,
6758 "line": 134 6784 "line": 138
6759 } 6785 }
6760 }, 6786 },
6761 { 6787 {
6762 "defaultMessage": "!!!Close", 6788 "defaultMessage": "!!!Close",
6763 "end": { 6789 "end": {
6764 "column": 3, 6790 "column": 3,
6765 "line": 141 6791 "line": 145
6766 }, 6792 },
6767 "file": "src/lib/Menu.js", 6793 "file": "src/lib/Menu.js",
6768 "id": "menu.window.close", 6794 "id": "menu.window.close",
6769 "start": { 6795 "start": {
6770 "column": 9, 6796 "column": 9,
6771 "line": 138 6797 "line": 142
6772 } 6798 }
6773 }, 6799 },
6774 { 6800 {
6775 "defaultMessage": "!!!Learn More", 6801 "defaultMessage": "!!!Learn More",
6776 "end": { 6802 "end": {
6777 "column": 3, 6803 "column": 3,
6778 "line": 145 6804 "line": 149
6779 }, 6805 },
6780 "file": "src/lib/Menu.js", 6806 "file": "src/lib/Menu.js",
6781 "id": "menu.help.learnMore", 6807 "id": "menu.help.learnMore",
6782 "start": { 6808 "start": {
6783 "column": 13, 6809 "column": 13,
6784 "line": 142 6810 "line": 146
6785 } 6811 }
6786 }, 6812 },
6787 { 6813 {
6788 "defaultMessage": "!!!Changelog", 6814 "defaultMessage": "!!!Changelog",
6789 "end": { 6815 "end": {
6790 "column": 3, 6816 "column": 3,
6791 "line": 149 6817 "line": 153
6792 }, 6818 },
6793 "file": "src/lib/Menu.js", 6819 "file": "src/lib/Menu.js",
6794 "id": "menu.help.changelog", 6820 "id": "menu.help.changelog",
6795 "start": { 6821 "start": {
6796 "column": 13, 6822 "column": 13,
6797 "line": 146 6823 "line": 150
6798 } 6824 }
6799 }, 6825 },
6800 { 6826 {
6801 "defaultMessage": "!!!Support", 6827 "defaultMessage": "!!!Support",
6802 "end": { 6828 "end": {
6803 "column": 3, 6829 "column": 3,
6804 "line": 153 6830 "line": 157
6805 }, 6831 },
6806 "file": "src/lib/Menu.js", 6832 "file": "src/lib/Menu.js",
6807 "id": "menu.help.support", 6833 "id": "menu.help.support",
6808 "start": { 6834 "start": {
6809 "column": 11, 6835 "column": 11,
6810 "line": 150 6836 "line": 154
6811 } 6837 }
6812 }, 6838 },
6813 { 6839 {
6814 "defaultMessage": "!!!Copy Debug Information", 6840 "defaultMessage": "!!!Copy Debug Information",
6815 "end": { 6841 "end": {
6816 "column": 3, 6842 "column": 3,
6817 "line": 157 6843 "line": 161
6818 }, 6844 },
6819 "file": "src/lib/Menu.js", 6845 "file": "src/lib/Menu.js",
6820 "id": "menu.help.debugInfo", 6846 "id": "menu.help.debugInfo",
6821 "start": { 6847 "start": {
6822 "column": 13, 6848 "column": 13,
6823 "line": 154 6849 "line": 158
6824 } 6850 }
6825 }, 6851 },
6826 { 6852 {
6827 "defaultMessage": "!!!Publish Debug Information", 6853 "defaultMessage": "!!!Publish Debug Information",
6828 "end": { 6854 "end": {
6829 "column": 3, 6855 "column": 3,
6830 "line": 161 6856 "line": 165
6831 }, 6857 },
6832 "file": "src/lib/Menu.js", 6858 "file": "src/lib/Menu.js",
6833 "id": "menu.help.publishDebugInfo", 6859 "id": "menu.help.publishDebugInfo",
6834 "start": { 6860 "start": {
6835 "column": 20, 6861 "column": 20,
6836 "line": 158 6862 "line": 162
6837 } 6863 }
6838 }, 6864 },
6839 { 6865 {
6840 "defaultMessage": "!!!Ferdi Debug Information", 6866 "defaultMessage": "!!!Ferdi Debug Information",
6841 "end": { 6867 "end": {
6842 "column": 3, 6868 "column": 3,
6843 "line": 165 6869 "line": 169
6844 }, 6870 },
6845 "file": "src/lib/Menu.js", 6871 "file": "src/lib/Menu.js",
6846 "id": "menu.help.debugInfoCopiedHeadline", 6872 "id": "menu.help.debugInfoCopiedHeadline",
6847 "start": { 6873 "start": {
6848 "column": 27, 6874 "column": 27,
6849 "line": 162 6875 "line": 166
6850 } 6876 }
6851 }, 6877 },
6852 { 6878 {
6853 "defaultMessage": "!!!Your Debug Information has been copied to your clipboard.", 6879 "defaultMessage": "!!!Your Debug Information has been copied to your clipboard.",
6854 "end": { 6880 "end": {
6855 "column": 3, 6881 "column": 3,
6856 "line": 169 6882 "line": 173
6857 }, 6883 },
6858 "file": "src/lib/Menu.js", 6884 "file": "src/lib/Menu.js",
6859 "id": "menu.help.debugInfoCopiedBody", 6885 "id": "menu.help.debugInfoCopiedBody",
6860 "start": { 6886 "start": {
6861 "column": 23, 6887 "column": 23,
6862 "line": 166 6888 "line": 170
6863 } 6889 }
6864 }, 6890 },
6865 { 6891 {
6866 "defaultMessage": "!!!Unlock with Touch ID", 6892 "defaultMessage": "!!!Unlock with Touch ID",
6867 "end": { 6893 "end": {
6868 "column": 3, 6894 "column": 3,
6869 "line": 173 6895 "line": 177
6870 }, 6896 },
6871 "file": "src/lib/Menu.js", 6897 "file": "src/lib/Menu.js",
6872 "id": "locked.touchId", 6898 "id": "locked.touchId",
6873 "start": { 6899 "start": {
6874 "column": 11, 6900 "column": 11,
6875 "line": 170 6901 "line": 174
6876 } 6902 }
6877 }, 6903 },
6878 { 6904 {
6879 "defaultMessage": "!!!unlock via Touch ID", 6905 "defaultMessage": "!!!unlock via Touch ID",
6880 "end": { 6906 "end": {
6881 "column": 3, 6907 "column": 3,
6882 "line": 177 6908 "line": 181
6883 }, 6909 },
6884 "file": "src/lib/Menu.js", 6910 "file": "src/lib/Menu.js",
6885 "id": "locked.touchIdPrompt", 6911 "id": "locked.touchIdPrompt",
6886 "start": { 6912 "start": {
6887 "column": 17, 6913 "column": 17,
6888 "line": 174 6914 "line": 178
6889 } 6915 }
6890 }, 6916 },
6891 { 6917 {
6892 "defaultMessage": "!!!Terms of Service", 6918 "defaultMessage": "!!!Terms of Service",
6893 "end": { 6919 "end": {
6894 "column": 3, 6920 "column": 3,
6895 "line": 181 6921 "line": 185
6896 }, 6922 },
6897 "file": "src/lib/Menu.js", 6923 "file": "src/lib/Menu.js",
6898 "id": "menu.help.tos", 6924 "id": "menu.help.tos",
6899 "start": { 6925 "start": {
6900 "column": 7, 6926 "column": 7,
6901 "line": 178 6927 "line": 182
6902 } 6928 }
6903 }, 6929 },
6904 { 6930 {
6905 "defaultMessage": "!!!Privacy Statement", 6931 "defaultMessage": "!!!Privacy Statement",
6906 "end": { 6932 "end": {
6907 "column": 3, 6933 "column": 3,
6908 "line": 185 6934 "line": 189
6909 }, 6935 },
6910 "file": "src/lib/Menu.js", 6936 "file": "src/lib/Menu.js",
6911 "id": "menu.help.privacy", 6937 "id": "menu.help.privacy",
6912 "start": { 6938 "start": {
6913 "column": 11, 6939 "column": 11,
6914 "line": 182 6940 "line": 186
6915 } 6941 }
6916 }, 6942 },
6917 { 6943 {
6918 "defaultMessage": "!!!File", 6944 "defaultMessage": "!!!File",
6919 "end": { 6945 "end": {
6920 "column": 3, 6946 "column": 3,
6921 "line": 189 6947 "line": 193
6922 }, 6948 },
6923 "file": "src/lib/Menu.js", 6949 "file": "src/lib/Menu.js",
6924 "id": "menu.file", 6950 "id": "menu.file",
6925 "start": { 6951 "start": {
6926 "column": 8, 6952 "column": 8,
6927 "line": 186 6953 "line": 190
6928 } 6954 }
6929 }, 6955 },
6930 { 6956 {
6931 "defaultMessage": "!!!View", 6957 "defaultMessage": "!!!View",
6932 "end": { 6958 "end": {
6933 "column": 3, 6959 "column": 3,
6934 "line": 193 6960 "line": 197
6935 }, 6961 },
6936 "file": "src/lib/Menu.js", 6962 "file": "src/lib/Menu.js",
6937 "id": "menu.view", 6963 "id": "menu.view",
6938 "start": { 6964 "start": {
6939 "column": 8, 6965 "column": 8,
6940 "line": 190 6966 "line": 194
6941 } 6967 }
6942 }, 6968 },
6943 { 6969 {
6944 "defaultMessage": "!!!Services", 6970 "defaultMessage": "!!!Services",
6945 "end": { 6971 "end": {
6946 "column": 3, 6972 "column": 3,
6947 "line": 197 6973 "line": 201
6948 }, 6974 },
6949 "file": "src/lib/Menu.js", 6975 "file": "src/lib/Menu.js",
6950 "id": "menu.services", 6976 "id": "menu.services",
6951 "start": { 6977 "start": {
6952 "column": 12, 6978 "column": 12,
6953 "line": 194 6979 "line": 198
6954 } 6980 }
6955 }, 6981 },
6956 { 6982 {
6957 "defaultMessage": "!!!Window", 6983 "defaultMessage": "!!!Window",
6958 "end": { 6984 "end": {
6959 "column": 3, 6985 "column": 3,
6960 "line": 201 6986 "line": 205
6961 }, 6987 },
6962 "file": "src/lib/Menu.js", 6988 "file": "src/lib/Menu.js",
6963 "id": "menu.window", 6989 "id": "menu.window",
6964 "start": { 6990 "start": {
6965 "column": 10, 6991 "column": 10,
6966 "line": 198 6992 "line": 202
6967 } 6993 }
6968 }, 6994 },
6969 { 6995 {
6970 "defaultMessage": "!!!Help", 6996 "defaultMessage": "!!!Help",
6971 "end": { 6997 "end": {
6972 "column": 3, 6998 "column": 3,
6973 "line": 205 6999 "line": 209
6974 }, 7000 },
6975 "file": "src/lib/Menu.js", 7001 "file": "src/lib/Menu.js",
6976 "id": "menu.help", 7002 "id": "menu.help",
6977 "start": { 7003 "start": {
6978 "column": 8, 7004 "column": 8,
6979 "line": 202 7005 "line": 206
6980 } 7006 }
6981 }, 7007 },
6982 { 7008 {
6983 "defaultMessage": "!!!About Ferdi", 7009 "defaultMessage": "!!!About Ferdi",
6984 "end": { 7010 "end": {
6985 "column": 3, 7011 "column": 3,
6986 "line": 209 7012 "line": 213
6987 }, 7013 },
6988 "file": "src/lib/Menu.js", 7014 "file": "src/lib/Menu.js",
6989 "id": "menu.app.about", 7015 "id": "menu.app.about",
6990 "start": { 7016 "start": {
6991 "column": 9, 7017 "column": 9,
6992 "line": 206 7018 "line": 210
6993 } 7019 }
6994 }, 7020 },
6995 { 7021 {
6996 "defaultMessage": "!!!What's new?", 7022 "defaultMessage": "!!!What's new?",
6997 "end": { 7023 "end": {
6998 "column": 3, 7024 "column": 3,
6999 "line": 213 7025 "line": 217
7000 }, 7026 },
7001 "file": "src/lib/Menu.js", 7027 "file": "src/lib/Menu.js",
7002 "id": "menu.app.announcement", 7028 "id": "menu.app.announcement",
7003 "start": { 7029 "start": {
7004 "column": 16, 7030 "column": 16,
7005 "line": 210 7031 "line": 214
7006 } 7032 }
7007 }, 7033 },
7008 { 7034 {
7009 "defaultMessage": "!!!Settings", 7035 "defaultMessage": "!!!Settings",
7010 "end": { 7036 "end": {
7011 "column": 3, 7037 "column": 3,
7012 "line": 217 7038 "line": 221
7013 }, 7039 },
7014 "file": "src/lib/Menu.js", 7040 "file": "src/lib/Menu.js",
7015 "id": "menu.app.settings", 7041 "id": "menu.app.settings",
7016 "start": { 7042 "start": {
7017 "column": 12, 7043 "column": 12,
7018 "line": 214 7044 "line": 218
7019 } 7045 }
7020 }, 7046 },
7021 { 7047 {
7022 "defaultMessage": "!!!Check for updates", 7048 "defaultMessage": "!!!Check for updates",
7023 "end": { 7049 "end": {
7024 "column": 3, 7050 "column": 3,
7025 "line": 221 7051 "line": 225
7026 }, 7052 },
7027 "file": "src/lib/Menu.js", 7053 "file": "src/lib/Menu.js",
7028 "id": "menu.app.checkForUpdates", 7054 "id": "menu.app.checkForUpdates",
7029 "start": { 7055 "start": {
7030 "column": 19, 7056 "column": 19,
7031 "line": 218 7057 "line": 222
7032 } 7058 }
7033 }, 7059 },
7034 { 7060 {
7035 "defaultMessage": "!!!Hide", 7061 "defaultMessage": "!!!Hide",
7036 "end": { 7062 "end": {
7037 "column": 3, 7063 "column": 3,
7038 "line": 225 7064 "line": 229
7039 }, 7065 },
7040 "file": "src/lib/Menu.js", 7066 "file": "src/lib/Menu.js",
7041 "id": "menu.app.hide", 7067 "id": "menu.app.hide",
7042 "start": { 7068 "start": {
7043 "column": 8, 7069 "column": 8,
7044 "line": 222 7070 "line": 226
7045 } 7071 }
7046 }, 7072 },
7047 { 7073 {
7048 "defaultMessage": "!!!Hide Others", 7074 "defaultMessage": "!!!Hide Others",
7049 "end": { 7075 "end": {
7050 "column": 3, 7076 "column": 3,
7051 "line": 229 7077 "line": 233
7052 }, 7078 },
7053 "file": "src/lib/Menu.js", 7079 "file": "src/lib/Menu.js",
7054 "id": "menu.app.hideOthers", 7080 "id": "menu.app.hideOthers",
7055 "start": { 7081 "start": {
7056 "column": 14, 7082 "column": 14,
7057 "line": 226 7083 "line": 230
7058 } 7084 }
7059 }, 7085 },
7060 { 7086 {
7061 "defaultMessage": "!!!Unhide", 7087 "defaultMessage": "!!!Unhide",
7062 "end": { 7088 "end": {
7063 "column": 3, 7089 "column": 3,
7064 "line": 233 7090 "line": 237
7065 }, 7091 },
7066 "file": "src/lib/Menu.js", 7092 "file": "src/lib/Menu.js",
7067 "id": "menu.app.unhide", 7093 "id": "menu.app.unhide",
7068 "start": { 7094 "start": {
7069 "column": 10, 7095 "column": 10,
7070 "line": 230 7096 "line": 234
7071 } 7097 }
7072 }, 7098 },
7073 { 7099 {
7074 "defaultMessage": "!!!Auto-hide menu bar", 7100 "defaultMessage": "!!!Auto-hide menu bar",
7075 "end": { 7101 "end": {
7076 "column": 3, 7102 "column": 3,
7077 "line": 237 7103 "line": 241
7078 }, 7104 },
7079 "file": "src/lib/Menu.js", 7105 "file": "src/lib/Menu.js",
7080 "id": "menu.app.autohideMenuBar", 7106 "id": "menu.app.autohideMenuBar",
7081 "start": { 7107 "start": {
7082 "column": 19, 7108 "column": 19,
7083 "line": 234 7109 "line": 238
7084 } 7110 }
7085 }, 7111 },
7086 { 7112 {
7087 "defaultMessage": "!!!Quit", 7113 "defaultMessage": "!!!Quit",
7088 "end": { 7114 "end": {
7089 "column": 3, 7115 "column": 3,
7090 "line": 241 7116 "line": 245
7091 }, 7117 },
7092 "file": "src/lib/Menu.js", 7118 "file": "src/lib/Menu.js",
7093 "id": "menu.app.quit", 7119 "id": "menu.app.quit",
7094 "start": { 7120 "start": {
7095 "column": 8, 7121 "column": 8,
7096 "line": 238 7122 "line": 242
7097 } 7123 }
7098 }, 7124 },
7099 { 7125 {
7100 "defaultMessage": "!!!Add New Service...", 7126 "defaultMessage": "!!!Add New Service...",
7101 "end": { 7127 "end": {
7102 "column": 3, 7128 "column": 3,
7103 "line": 245 7129 "line": 249
7104 }, 7130 },
7105 "file": "src/lib/Menu.js", 7131 "file": "src/lib/Menu.js",
7106 "id": "menu.services.addNewService", 7132 "id": "menu.services.addNewService",
7107 "start": { 7133 "start": {
7108 "column": 17, 7134 "column": 17,
7109 "line": 242 7135 "line": 246
7110 } 7136 }
7111 }, 7137 },
7112 { 7138 {
7113 "defaultMessage": "!!!Add New Workspace...", 7139 "defaultMessage": "!!!Add New Workspace...",
7114 "end": { 7140 "end": {
7115 "column": 3, 7141 "column": 3,
7116 "line": 249 7142 "line": 253
7117 }, 7143 },
7118 "file": "src/lib/Menu.js", 7144 "file": "src/lib/Menu.js",
7119 "id": "menu.workspaces.addNewWorkspace", 7145 "id": "menu.workspaces.addNewWorkspace",
7120 "start": { 7146 "start": {
7121 "column": 19, 7147 "column": 19,
7122 "line": 246 7148 "line": 250
7123 } 7149 }
7124 }, 7150 },
7125 { 7151 {
7126 "defaultMessage": "!!!Open workspace drawer", 7152 "defaultMessage": "!!!Open workspace drawer",
7127 "end": { 7153 "end": {
7128 "column": 3, 7154 "column": 3,
7129 "line": 253 7155 "line": 257
7130 }, 7156 },
7131 "file": "src/lib/Menu.js", 7157 "file": "src/lib/Menu.js",
7132 "id": "menu.workspaces.openWorkspaceDrawer", 7158 "id": "menu.workspaces.openWorkspaceDrawer",
7133 "start": { 7159 "start": {
7134 "column": 23, 7160 "column": 23,
7135 "line": 250 7161 "line": 254
7136 } 7162 }
7137 }, 7163 },
7138 { 7164 {
7139 "defaultMessage": "!!!Close workspace drawer", 7165 "defaultMessage": "!!!Close workspace drawer",
7140 "end": { 7166 "end": {
7141 "column": 3, 7167 "column": 3,
7142 "line": 257 7168 "line": 261
7143 }, 7169 },
7144 "file": "src/lib/Menu.js", 7170 "file": "src/lib/Menu.js",
7145 "id": "menu.workspaces.closeWorkspaceDrawer", 7171 "id": "menu.workspaces.closeWorkspaceDrawer",
7146 "start": { 7172 "start": {
7147 "column": 24, 7173 "column": 24,
7148 "line": 254 7174 "line": 258
7149 } 7175 }
7150 }, 7176 },
7151 { 7177 {
7152 "defaultMessage": "!!!Activate next service...", 7178 "defaultMessage": "!!!Activate next service...",
7153 "end": { 7179 "end": {
7154 "column": 3, 7180 "column": 3,
7155 "line": 261 7181 "line": 265
7156 }, 7182 },
7157 "file": "src/lib/Menu.js", 7183 "file": "src/lib/Menu.js",
7158 "id": "menu.services.setNextServiceActive", 7184 "id": "menu.services.setNextServiceActive",
7159 "start": { 7185 "start": {
7160 "column": 23, 7186 "column": 23,
7161 "line": 258 7187 "line": 262
7162 } 7188 }
7163 }, 7189 },
7164 { 7190 {
7165 "defaultMessage": "!!!Activate previous service...", 7191 "defaultMessage": "!!!Activate previous service...",
7166 "end": { 7192 "end": {
7167 "column": 3, 7193 "column": 3,
7168 "line": 265 7194 "line": 269
7169 }, 7195 },
7170 "file": "src/lib/Menu.js", 7196 "file": "src/lib/Menu.js",
7171 "id": "menu.services.activatePreviousService", 7197 "id": "menu.services.activatePreviousService",
7172 "start": { 7198 "start": {
7173 "column": 27, 7199 "column": 27,
7174 "line": 262 7200 "line": 266
7175 } 7201 }
7176 }, 7202 },
7177 { 7203 {
7178 "defaultMessage": "!!!Disable notifications & audio", 7204 "defaultMessage": "!!!Disable notifications & audio",
7179 "end": { 7205 "end": {
7180 "column": 3, 7206 "column": 3,
7181 "line": 269 7207 "line": 273
7182 }, 7208 },
7183 "file": "src/lib/Menu.js", 7209 "file": "src/lib/Menu.js",
7184 "id": "sidebar.muteApp", 7210 "id": "sidebar.muteApp",
7185 "start": { 7211 "start": {
7186 "column": 11, 7212 "column": 11,
7187 "line": 266 7213 "line": 270
7188 } 7214 }
7189 }, 7215 },
7190 { 7216 {
7191 "defaultMessage": "!!!Enable notifications & audio", 7217 "defaultMessage": "!!!Enable notifications & audio",
7192 "end": { 7218 "end": {
7193 "column": 3, 7219 "column": 3,
7194 "line": 273 7220 "line": 277
7195 }, 7221 },
7196 "file": "src/lib/Menu.js", 7222 "file": "src/lib/Menu.js",
7197 "id": "sidebar.unmuteApp", 7223 "id": "sidebar.unmuteApp",
7198 "start": { 7224 "start": {
7199 "column": 13, 7225 "column": 13,
7200 "line": 270 7226 "line": 274
7201 } 7227 }
7202 }, 7228 },
7203 { 7229 {
7204 "defaultMessage": "!!!Workspaces", 7230 "defaultMessage": "!!!Workspaces",
7205 "end": { 7231 "end": {
7206 "column": 3, 7232 "column": 3,
7207 "line": 277 7233 "line": 281
7208 }, 7234 },
7209 "file": "src/lib/Menu.js", 7235 "file": "src/lib/Menu.js",
7210 "id": "menu.workspaces", 7236 "id": "menu.workspaces",
7211 "start": { 7237 "start": {
7212 "column": 14, 7238 "column": 14,
7213 "line": 274 7239 "line": 278
7214 } 7240 }
7215 }, 7241 },
7216 { 7242 {
7217 "defaultMessage": "!!!Default", 7243 "defaultMessage": "!!!Default",
7218 "end": { 7244 "end": {
7219 "column": 3, 7245 "column": 3,
7220 "line": 281 7246 "line": 285
7221 }, 7247 },
7222 "file": "src/lib/Menu.js", 7248 "file": "src/lib/Menu.js",
7223 "id": "menu.workspaces.defaultWorkspace", 7249 "id": "menu.workspaces.defaultWorkspace",
7224 "start": { 7250 "start": {
7225 "column": 20, 7251 "column": 20,
7226 "line": 278 7252 "line": 282
7227 } 7253 }
7228 }, 7254 },
7229 { 7255 {
7230 "defaultMessage": "!!!Todos", 7256 "defaultMessage": "!!!Todos",
7231 "end": { 7257 "end": {
7232 "column": 3, 7258 "column": 3,
7233 "line": 285 7259 "line": 289
7234 }, 7260 },
7235 "file": "src/lib/Menu.js", 7261 "file": "src/lib/Menu.js",
7236 "id": "menu.todos", 7262 "id": "menu.todos",
7237 "start": { 7263 "start": {
7238 "column": 9, 7264 "column": 9,
7239 "line": 282 7265 "line": 286
7240 } 7266 }
7241 }, 7267 },
7242 { 7268 {
7243 "defaultMessage": "!!!Open Todos drawer", 7269 "defaultMessage": "!!!Open Todos drawer",
7244 "end": { 7270 "end": {
7245 "column": 3, 7271 "column": 3,
7246 "line": 289 7272 "line": 293
7247 }, 7273 },
7248 "file": "src/lib/Menu.js", 7274 "file": "src/lib/Menu.js",
7249 "id": "menu.Todoss.openTodosDrawer", 7275 "id": "menu.Todoss.openTodosDrawer",
7250 "start": { 7276 "start": {
7251 "column": 19, 7277 "column": 19,
7252 "line": 286 7278 "line": 290
7253 } 7279 }
7254 }, 7280 },
7255 { 7281 {
7256 "defaultMessage": "!!!Close Todos drawer", 7282 "defaultMessage": "!!!Close Todos drawer",
7257 "end": { 7283 "end": {
7258 "column": 3, 7284 "column": 3,
7259 "line": 293 7285 "line": 297
7260 }, 7286 },
7261 "file": "src/lib/Menu.js", 7287 "file": "src/lib/Menu.js",
7262 "id": "menu.Todoss.closeTodosDrawer", 7288 "id": "menu.Todoss.closeTodosDrawer",
7263 "start": { 7289 "start": {
7264 "column": 20, 7290 "column": 20,
7265 "line": 290 7291 "line": 294
7266 } 7292 }
7267 }, 7293 },
7268 { 7294 {
7269 "defaultMessage": "!!!Enable Todos", 7295 "defaultMessage": "!!!Enable Todos",
7270 "end": { 7296 "end": {
7271 "column": 3, 7297 "column": 3,
7272 "line": 297 7298 "line": 301
7273 }, 7299 },
7274 "file": "src/lib/Menu.js", 7300 "file": "src/lib/Menu.js",
7275 "id": "menu.todos.enableTodos", 7301 "id": "menu.todos.enableTodos",
7276 "start": { 7302 "start": {
7277 "column": 15, 7303 "column": 15,
7278 "line": 294 7304 "line": 298
7279 } 7305 }
7280 }, 7306 },
7281 { 7307 {
7282 "defaultMessage": "!!!Home", 7308 "defaultMessage": "!!!Home",
7283 "end": { 7309 "end": {
7284 "column": 3, 7310 "column": 3,
7285 "line": 301 7311 "line": 305
7286 }, 7312 },
7287 "file": "src/lib/Menu.js", 7313 "file": "src/lib/Menu.js",
7288 "id": "menu.services.goHome", 7314 "id": "menu.services.goHome",
7289 "start": { 7315 "start": {
7290 "column": 17, 7316 "column": 17,
7291 "line": 298 7317 "line": 302
7292 } 7318 }
7293 } 7319 }
7294 ], 7320 ],
diff --git a/src/i18n/locales/el.json b/src/i18n/locales/el.json
index 091740ca6..b1615ec16 100644
--- a/src/i18n/locales/el.json
+++ b/src/i18n/locales/el.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "ΑυθμίσΡις", 306 "settings.app.headline": "ΑυθμίσΡις",
303 "settings.app.headlineAdvanced": "Για προχωρημένους", 307 "settings.app.headlineAdvanced": "Για προχωρημένους",
304 "settings.app.headlineAppearance": "Εμφάνιση", 308 "settings.app.headlineAppearance": "Εμφάνιση",
diff --git a/src/i18n/locales/en-US.json b/src/i18n/locales/en-US.json
index 499b73f68..4c14c8f90 100644
--- a/src/i18n/locales/en-US.json
+++ b/src/i18n/locales/en-US.json
@@ -116,6 +116,7 @@
116 "menu.edit.cut": "Cut", 116 "menu.edit.cut": "Cut",
117 "menu.edit.delete": "Delete", 117 "menu.edit.delete": "Delete",
118 "menu.edit.emojiSymbols": "Emoji & Symbols", 118 "menu.edit.emojiSymbols": "Emoji & Symbols",
119 "menu.edit.findInPage": "Find in Page",
119 "menu.edit.paste": "Paste", 120 "menu.edit.paste": "Paste",
120 "menu.edit.pasteAndMatchStyle": "Paste And Match Style", 121 "menu.edit.pasteAndMatchStyle": "Paste And Match Style",
121 "menu.edit.redo": "Redo", 122 "menu.edit.redo": "Redo",
@@ -290,6 +291,7 @@
290 "settings.app.form.navigationBarBehaviour": "Navigation bar behaviour", 291 "settings.app.form.navigationBarBehaviour": "Navigation bar behaviour",
291 "settings.app.form.noUpdates": "Disable updates", 292 "settings.app.form.noUpdates": "Disable updates",
292 "settings.app.form.privateNotifications": "Don't show message content in notifications", 293 "settings.app.form.privateNotifications": "Don't show message content in notifications",
294 "settings.app.form.reloadAfterResume": "Reload Ferdi after system resume",
293 "settings.app.form.runInBackground": "Keep Ferdi in background when closing the window", 295 "settings.app.form.runInBackground": "Keep Ferdi in background when closing the window",
294 "settings.app.form.scheduledDNDEnabled": "Enable scheduled Do-not-Disturb", 296 "settings.app.form.scheduledDNDEnabled": "Enable scheduled Do-not-Disturb",
295 "settings.app.form.scheduledDNDEnd": "To", 297 "settings.app.form.scheduledDNDEnd": "To",
diff --git a/src/i18n/locales/es.json b/src/i18n/locales/es.json
index 21d3c8228..c55ba4583 100644
--- a/src/i18n/locales/es.json
+++ b/src/i18n/locales/es.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "ContraseΓ±a incorrecta", 85 "locked.invalidCredentials": "ContraseΓ±a incorrecta",
86 "locked.password.label": "ContraseΓ±a", 86 "locked.password.label": "ContraseΓ±a",
87 "locked.submit.label": "Desbloquear", 87 "locked.submit.label": "Desbloquear",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Cambiar servidor", 91 "login.changeServer": "Cambiar servidor",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Servidor de tareas", 303 "settings.app.form.todoServer": "Servidor de tareas",
301 "settings.app.form.universalDarkMode": "Activar modo oscuro universal", 304 "settings.app.form.universalDarkMode": "Activar modo oscuro universal",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "ConfiguraciΓ³n", 306 "settings.app.headline": "ConfiguraciΓ³n",
303 "settings.app.headlineAdvanced": "Avanzado", 307 "settings.app.headlineAdvanced": "Avanzado",
304 "settings.app.headlineAppearance": "Apariencia", 308 "settings.app.headlineAppearance": "Apariencia",
diff --git a/src/i18n/locales/fi.json b/src/i18n/locales/fi.json
index ec5bd1a04..ff81d6b9f 100644
--- a/src/i18n/locales/fi.json
+++ b/src/i18n/locales/fi.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Settings", 306 "settings.app.headline": "Settings",
303 "settings.app.headlineAdvanced": "Advanced", 307 "settings.app.headlineAdvanced": "Advanced",
304 "settings.app.headlineAppearance": "Appearance", 308 "settings.app.headlineAppearance": "Appearance",
diff --git a/src/i18n/locales/fr.json b/src/i18n/locales/fr.json
index 0e767983d..42c3d1a1f 100644
--- a/src/i18n/locales/fr.json
+++ b/src/i18n/locales/fr.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Mot de passe invalide", 85 "locked.invalidCredentials": "Mot de passe invalide",
86 "locked.password.label": "Mot de passe", 86 "locked.password.label": "Mot de passe",
87 "locked.submit.label": "DΓ©verrouiller", 87 "locked.submit.label": "DΓ©verrouiller",
88 "locked.touchId": "DΓ©verrouiller avec Touch ID",
89 "locked.touchIdPrompt": "dΓ©verrouiller via Touch ID",
90 "locked.unlockWithPassword": "DΓ©verrouiller avec le mot de passe",
88 "login.changeServer": "Changer de serveur", 91 "login.changeServer": "Changer de serveur",
89 "login.customServerQuestion": "Utiliser un serveur de Ferdi modifiΓ©?", 92 "login.customServerQuestion": "Utiliser un serveur de Ferdi modifiΓ©?",
90 "login.customServerSuggestion": "Essayer d'importer votre compte Franz dans Ferdi", 93 "login.customServerSuggestion": "Essayer d'importer votre compte Franz dans Ferdi",
@@ -152,7 +155,7 @@
152 "menu.view.resetZoom": "Taille actuelle", 155 "menu.view.resetZoom": "Taille actuelle",
153 "menu.view.toggleDevTools": "Activer les outils de dΓ©veloppeur", 156 "menu.view.toggleDevTools": "Activer les outils de dΓ©veloppeur",
154 "menu.view.toggleFullScreen": "Activer le mode plein Γ©cran", 157 "menu.view.toggleFullScreen": "Activer le mode plein Γ©cran",
155 "menu.view.toggleServiceDevTools": "Activer les outils de dΓ©veloppement WebKit", 158 "menu.view.toggleServiceDevTools": "Activer les outils de dΓ©veloppeur du service",
156 "menu.view.toggleTodosDevTools": "Activer les outils de dΓ©veloppeur Todos", 159 "menu.view.toggleTodosDevTools": "Activer les outils de dΓ©veloppeur Todos",
157 "menu.view.zoomIn": "Zoom Avant", 160 "menu.view.zoomIn": "Zoom Avant",
158 "menu.view.zoomOut": "Zoom Arrière", 161 "menu.view.zoomOut": "Zoom Arrière",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "DΓ©marrer en mode rΓ©duit", 302 "settings.app.form.startMinimized": "DΓ©marrer en mode rΓ©duit",
300 "settings.app.form.todoServer": "Serveur Todo", 303 "settings.app.form.todoServer": "Serveur Todo",
301 "settings.app.form.universalDarkMode": "Activer le mode sombre universel", 304 "settings.app.form.universalDarkMode": "Activer le mode sombre universel",
305 "settings.app.form.useTouchIdToUnlock": "Autoriser l'utilisation de TouchID pour dΓ©verrouiller Ferdi",
302 "settings.app.headline": "Paramètres", 306 "settings.app.headline": "Paramètres",
303 "settings.app.headlineAdvanced": "Paramètres avancés", 307 "settings.app.headlineAdvanced": "Paramètres avancés",
304 "settings.app.headlineAppearance": "Apparence", 308 "settings.app.headlineAppearance": "Apparence",
diff --git a/src/i18n/locales/ga.json b/src/i18n/locales/ga.json
index 2462110fd..22007bdf1 100644
--- a/src/i18n/locales/ga.json
+++ b/src/i18n/locales/ga.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Socruithe", 306 "settings.app.headline": "Socruithe",
303 "settings.app.headlineAdvanced": "Casta", 307 "settings.app.headlineAdvanced": "Casta",
304 "settings.app.headlineAppearance": "Dealramh", 308 "settings.app.headlineAppearance": "Dealramh",
diff --git a/src/i18n/locales/he.json b/src/i18n/locales/he.json
index ec5bd1a04..ff81d6b9f 100644
--- a/src/i18n/locales/he.json
+++ b/src/i18n/locales/he.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Settings", 306 "settings.app.headline": "Settings",
303 "settings.app.headlineAdvanced": "Advanced", 307 "settings.app.headlineAdvanced": "Advanced",
304 "settings.app.headlineAppearance": "Appearance", 308 "settings.app.headlineAppearance": "Appearance",
diff --git a/src/i18n/locales/hr.json b/src/i18n/locales/hr.json
index 6b4e22f13..5f8aad160 100644
--- a/src/i18n/locales/hr.json
+++ b/src/i18n/locales/hr.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Postavke", 306 "settings.app.headline": "Postavke",
303 "settings.app.headlineAdvanced": "Napredne alatke", 307 "settings.app.headlineAdvanced": "Napredne alatke",
304 "settings.app.headlineAppearance": "Izgled", 308 "settings.app.headlineAppearance": "Izgled",
diff --git a/src/i18n/locales/hu.json b/src/i18n/locales/hu.json
index f829e12c0..d9f0e734a 100644
--- a/src/i18n/locales/hu.json
+++ b/src/i18n/locales/hu.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "BeΓ‘llΓ­tΓ‘sok", 306 "settings.app.headline": "BeΓ‘llΓ­tΓ‘sok",
303 "settings.app.headlineAdvanced": "HaladΓ³", 307 "settings.app.headlineAdvanced": "HaladΓ³",
304 "settings.app.headlineAppearance": "MegjelenΓ©s", 308 "settings.app.headlineAppearance": "MegjelenΓ©s",
diff --git a/src/i18n/locales/id.json b/src/i18n/locales/id.json
index bb8f54d10..55754d150 100644
--- a/src/i18n/locales/id.json
+++ b/src/i18n/locales/id.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Pengaturan", 306 "settings.app.headline": "Pengaturan",
303 "settings.app.headlineAdvanced": "Tingkat Lanjut", 307 "settings.app.headlineAdvanced": "Tingkat Lanjut",
304 "settings.app.headlineAppearance": "Tampilan", 308 "settings.app.headlineAppearance": "Tampilan",
diff --git a/src/i18n/locales/it.json b/src/i18n/locales/it.json
index 3929b039c..7a562e29f 100644
--- a/src/i18n/locales/it.json
+++ b/src/i18n/locales/it.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Impostazioni", 306 "settings.app.headline": "Impostazioni",
303 "settings.app.headlineAdvanced": "Avanzate", 307 "settings.app.headlineAdvanced": "Avanzate",
304 "settings.app.headlineAppearance": "Aspetto", 308 "settings.app.headlineAppearance": "Aspetto",
diff --git a/src/i18n/locales/ja.json b/src/i18n/locales/ja.json
index bb9c8cbbe..ead6a92a9 100644
--- a/src/i18n/locales/ja.json
+++ b/src/i18n/locales/ja.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "θ¨­εš", 306 "settings.app.headline": "θ¨­εš",
303 "settings.app.headlineAdvanced": "θ©³η΄°", 307 "settings.app.headlineAdvanced": "θ©³η΄°",
304 "settings.app.headlineAppearance": "葨瀺スタむル", 308 "settings.app.headlineAppearance": "葨瀺スタむル",
diff --git a/src/i18n/locales/ka.json b/src/i18n/locales/ka.json
index 17eec6540..0f36372fe 100644
--- a/src/i18n/locales/ka.json
+++ b/src/i18n/locales/ka.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "αƒžαƒαƒ αƒαƒ›αƒ”αƒ’αƒ αƒ”αƒ‘αƒ˜", 306 "settings.app.headline": "αƒžαƒαƒ αƒαƒ›αƒ”αƒ’αƒ αƒ”αƒ‘αƒ˜",
303 "settings.app.headlineAdvanced": "Advanced", 307 "settings.app.headlineAdvanced": "Advanced",
304 "settings.app.headlineAppearance": "Appearance", 308 "settings.app.headlineAppearance": "Appearance",
diff --git a/src/i18n/locales/ko.json b/src/i18n/locales/ko.json
index 7a1e21490..f89d20286 100644
--- a/src/i18n/locales/ko.json
+++ b/src/i18n/locales/ko.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Settings", 306 "settings.app.headline": "Settings",
303 "settings.app.headlineAdvanced": "Advanced", 307 "settings.app.headlineAdvanced": "Advanced",
304 "settings.app.headlineAppearance": "Appearance", 308 "settings.app.headlineAppearance": "Appearance",
diff --git a/src/i18n/locales/nl-BE.json b/src/i18n/locales/nl-BE.json
index c1cbf070d..b52b9a6d4 100644
--- a/src/i18n/locales/nl-BE.json
+++ b/src/i18n/locales/nl-BE.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Instellingen", 306 "settings.app.headline": "Instellingen",
303 "settings.app.headlineAdvanced": "Geavanceerd", 307 "settings.app.headlineAdvanced": "Geavanceerd",
304 "settings.app.headlineAppearance": "Weergave", 308 "settings.app.headlineAppearance": "Weergave",
diff --git a/src/i18n/locales/nl.json b/src/i18n/locales/nl.json
index adf587408..d222f8b0c 100644
--- a/src/i18n/locales/nl.json
+++ b/src/i18n/locales/nl.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Verkeerd wachtwoord", 85 "locked.invalidCredentials": "Verkeerd wachtwoord",
86 "locked.password.label": "Wachtwoord", 86 "locked.password.label": "Wachtwoord",
87 "locked.submit.label": "Ontgrendelen", 87 "locked.submit.label": "Ontgrendelen",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Instellingen", 306 "settings.app.headline": "Instellingen",
303 "settings.app.headlineAdvanced": "Geavanceerd", 307 "settings.app.headlineAdvanced": "Geavanceerd",
304 "settings.app.headlineAppearance": "Weergave", 308 "settings.app.headlineAppearance": "Weergave",
diff --git a/src/i18n/locales/no.json b/src/i18n/locales/no.json
index ec5bd1a04..ff81d6b9f 100644
--- a/src/i18n/locales/no.json
+++ b/src/i18n/locales/no.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Settings", 306 "settings.app.headline": "Settings",
303 "settings.app.headlineAdvanced": "Advanced", 307 "settings.app.headlineAdvanced": "Advanced",
304 "settings.app.headlineAppearance": "Appearance", 308 "settings.app.headlineAppearance": "Appearance",
diff --git a/src/i18n/locales/pl.json b/src/i18n/locales/pl.json
index 70cbb41f9..ee668a5e7 100644
--- a/src/i18n/locales/pl.json
+++ b/src/i18n/locales/pl.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Ustawienia", 306 "settings.app.headline": "Ustawienia",
303 "settings.app.headlineAdvanced": "Zaawansowane", 307 "settings.app.headlineAdvanced": "Zaawansowane",
304 "settings.app.headlineAppearance": "WyglΔ…d", 308 "settings.app.headlineAppearance": "WyglΔ…d",
diff --git a/src/i18n/locales/pt-BR.json b/src/i18n/locales/pt-BR.json
index a00052a58..3a97077de 100644
--- a/src/i18n/locales/pt-BR.json
+++ b/src/i18n/locales/pt-BR.json
@@ -62,7 +62,7 @@
62 "global.spellchecking.autodetect.short": "AutomΓ‘tico", 62 "global.spellchecking.autodetect.short": "AutomΓ‘tico",
63 "global.spellchecking.language": "Linguagem para correção ortogrÑfica", 63 "global.spellchecking.language": "Linguagem para correção ortogrÑfica",
64 "global.upgradeButton.upgradeToPro": "Atualizar para o Ferdi Profissional", 64 "global.upgradeButton.upgradeToPro": "Atualizar para o Ferdi Profissional",
65 "import.headline": "Importa os teus serviços do Ferdi", 65 "import.headline": "Importar os seus serviços do Ferdi",
66 "import.notSupportedHeadline": "Estes serviços ainda não são suportados pelo Ferdi 5", 66 "import.notSupportedHeadline": "Estes serviços ainda não são suportados pelo Ferdi 5",
67 "import.skip.label": "Eu quero adicionar serviços manualmente", 67 "import.skip.label": "Eu quero adicionar serviços manualmente",
68 "import.submit.label": "Importar serviços", 68 "import.submit.label": "Importar serviços",
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Senha invΓ‘lida", 85 "locked.invalidCredentials": "Senha invΓ‘lida",
86 "locked.password.label": "Senha", 86 "locked.password.label": "Senha",
87 "locked.submit.label": "Desbloquear", 87 "locked.submit.label": "Desbloquear",
88 "locked.touchId": "Desbloquear com Touch ID",
89 "locked.touchIdPrompt": "desbloquear via Touch ID",
90 "locked.unlockWithPassword": "Desbloquear com Senha",
88 "login.changeServer": "Alterar servidor", 91 "login.changeServer": "Alterar servidor",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -97,8 +100,8 @@
97 "login.serverLogout": "A sua sessΓ£o expirou, inicie sessΓ£o novamente.", 100 "login.serverLogout": "A sua sessΓ£o expirou, inicie sessΓ£o novamente.",
98 "login.submit.label": "Iniciar SessΓ£o", 101 "login.submit.label": "Iniciar SessΓ£o",
99 "login.tokenExpired": "A sua sessΓ£o expirou, inicie sessΓ£o novamente.", 102 "login.tokenExpired": "A sua sessΓ£o expirou, inicie sessΓ£o novamente.",
100 "menu.Todoss.closeTodosDrawer": "Fechar a gaveta Todos", 103 "menu.Todoss.closeTodosDrawer": "Fechar Tarefas",
101 "menu.Todoss.openTodosDrawer": "Abrir a gaveta Todos", 104 "menu.Todoss.openTodosDrawer": "Abrir Tarefas",
102 "menu.app.about": "Sobre o Ferdi", 105 "menu.app.about": "Sobre o Ferdi",
103 "menu.app.announcement": "O que hΓ‘ de novo?", 106 "menu.app.announcement": "O que hΓ‘ de novo?",
104 "menu.app.autohideMenuBar": "Auto-ocultar barra de menu", 107 "menu.app.autohideMenuBar": "Auto-ocultar barra de menu",
@@ -106,7 +109,7 @@
106 "menu.app.hide": "Ocultar", 109 "menu.app.hide": "Ocultar",
107 "menu.app.hideOthers": "Ocultar Outros", 110 "menu.app.hideOthers": "Ocultar Outros",
108 "menu.app.quit": "Sair", 111 "menu.app.quit": "Sair",
109 "menu.app.settings": "Definiçáes", 112 "menu.app.settings": "Configuraçáes",
110 "menu.app.unhide": "Mostrar", 113 "menu.app.unhide": "Mostrar",
111 "menu.edit": "Editar", 114 "menu.edit": "Editar",
112 "menu.edit.copy": "Copiar", 115 "menu.edit.copy": "Copiar",
@@ -122,7 +125,7 @@
122 "menu.edit.startSpeaking": "Comece a falar", 125 "menu.edit.startSpeaking": "Comece a falar",
123 "menu.edit.stopSpeaking": "Pare de Falar", 126 "menu.edit.stopSpeaking": "Pare de Falar",
124 "menu.edit.undo": "Desfazer", 127 "menu.edit.undo": "Desfazer",
125 "menu.file": "Ficheiro", 128 "menu.file": "Arquivo",
126 "menu.help": "Ajuda", 129 "menu.help": "Ajuda",
127 "menu.help.changelog": "Registo de alteraçáes", 130 "menu.help.changelog": "Registo de alteraçáes",
128 "menu.help.debugInfo": "Copiar a informação Debug", 131 "menu.help.debugInfo": "Copiar a informação Debug",
@@ -142,8 +145,8 @@
142 "menu.todos.enableTodos": "Activar Todos", 145 "menu.todos.enableTodos": "Activar Todos",
143 "menu.view": "Ver", 146 "menu.view": "Ver",
144 "menu.view.back": "Anterior", 147 "menu.view.back": "Anterior",
145 "menu.view.enterFullScreen": "Ativar Modo de EcrΓ£ Completo", 148 "menu.view.enterFullScreen": "Ativar Modo Tela Cheia",
146 "menu.view.exitFullScreen": "Sair do Modo de EcrΓ£ Completo", 149 "menu.view.exitFullScreen": "Sair do Modo Tela Cheia",
147 "menu.view.forward": "PrΓ³ximo", 150 "menu.view.forward": "PrΓ³ximo",
148 "menu.view.lockFerdi": "Bloquear Ferdi", 151 "menu.view.lockFerdi": "Bloquear Ferdi",
149 "menu.view.openQuickSwitch": "Abrir Troca RΓ‘pida", 152 "menu.view.openQuickSwitch": "Abrir Troca RΓ‘pida",
@@ -151,7 +154,7 @@
151 "menu.view.reloadService": "Recarregar serviço", 154 "menu.view.reloadService": "Recarregar serviço",
152 "menu.view.resetZoom": "Tamanho Real", 155 "menu.view.resetZoom": "Tamanho Real",
153 "menu.view.toggleDevTools": "Ativar/Desativar Ferramentas de Desenvolvimento", 156 "menu.view.toggleDevTools": "Ativar/Desativar Ferramentas de Desenvolvimento",
154 "menu.view.toggleFullScreen": "Ativar/Desativar EcrΓ£ Completo", 157 "menu.view.toggleFullScreen": "Ativar/Desativar Tela Cheia",
155 "menu.view.toggleServiceDevTools": "Ativar/Desativar Ferramentas de Desenvolvimento de Serviços", 158 "menu.view.toggleServiceDevTools": "Ativar/Desativar Ferramentas de Desenvolvimento de Serviços",
156 "menu.view.toggleTodosDevTools": "Ativar Ferramentas de Desenvolvedor das Tarefas", 159 "menu.view.toggleTodosDevTools": "Ativar Ferramentas de Desenvolvedor das Tarefas",
157 "menu.view.zoomIn": "Aumentar", 160 "menu.view.zoomIn": "Aumentar",
@@ -159,11 +162,11 @@
159 "menu.window": "Janela", 162 "menu.window": "Janela",
160 "menu.window.close": "Fechar", 163 "menu.window.close": "Fechar",
161 "menu.window.minimize": "Minimizar", 164 "menu.window.minimize": "Minimizar",
162 "menu.workspaces": "Espaços de trabalho", 165 "menu.workspaces": "Áreas de trabalho",
163 "menu.workspaces.addNewWorkspace": "Adicionar novo Espaço de trabalho", 166 "menu.workspaces.addNewWorkspace": "Adicionar novo Espaço de trabalho",
164 "menu.workspaces.closeWorkspaceDrawer": "Fechar a janela do Esp§o de trabalho", 167 "menu.workspaces.closeWorkspaceDrawer": "Fechar a janela da Área de trabalho",
165 "menu.workspaces.defaultWorkspace": "Todos os serviços", 168 "menu.workspaces.defaultWorkspace": "Todos os serviços",
166 "menu.workspaces.openWorkspaceDrawer": "Abrir a janela do Esp§o de trabalho", 169 "menu.workspaces.openWorkspaceDrawer": "Abrir a janela da Área de trabalho",
167 "password.email.label": "Endereço de e-mail", 170 "password.email.label": "Endereço de e-mail",
168 "password.headline": "Repor a minha palavra-passe", 171 "password.headline": "Repor a minha palavra-passe",
169 "password.link.login": "Iniciar sessΓ£o", 172 "password.link.login": "Iniciar sessΓ£o",
@@ -186,7 +189,7 @@
186 "pricing.features.unlimitedServices": "Instalar serviços ilimitados", 189 "pricing.features.unlimitedServices": "Instalar serviços ilimitados",
187 "pricing.features.upToSixServices": "Adicionar até 6 serviços", 190 "pricing.features.upToSixServices": "Adicionar até 6 serviços",
188 "pricing.features.upToThreeServices": "Adicionar até 3 serviços", 191 "pricing.features.upToThreeServices": "Adicionar até 3 serviços",
189 "pricing.features.workspaces": "Espaços de trabalho", 192 "pricing.features.workspaces": "Áreas de trabalho",
190 "pricing.plan.free": "Ferdi Gratuito", 193 "pricing.plan.free": "Ferdi Gratuito",
191 "pricing.plan.legacy": "Ferdi Premium", 194 "pricing.plan.legacy": "Ferdi Premium",
192 "pricing.plan.personal": "Ferdi Pessoal", 195 "pricing.plan.personal": "Ferdi Pessoal",
@@ -249,7 +252,7 @@
249 "settings.account.headlineTrialUpgrade": "Get the free 14 day Ferdi Professional Trial", 252 "settings.account.headlineTrialUpgrade": "Get the free 14 day Ferdi Professional Trial",
250 "settings.account.headlineUpgradeAccount": "DΓͺ um upgrade na sua conta e tenha uma completa experiΓͺncia do Ferdi", 253 "settings.account.headlineUpgradeAccount": "DΓͺ um upgrade na sua conta e tenha uma completa experiΓͺncia do Ferdi",
251 "settings.account.invoiceDownload": "Transferir", 254 "settings.account.invoiceDownload": "Transferir",
252 "settings.account.manageSubscription.label": "Gerir as minhas subscriçáes", 255 "settings.account.manageSubscription.label": "Gerenciar minhas inscriçáes",
253 "settings.account.successInfo": "As suas alteraçáes foram efetuadas com sucesso", 256 "settings.account.successInfo": "As suas alteraçáes foram efetuadas com sucesso",
254 "settings.account.trial": "Free Trial", 257 "settings.account.trial": "Free Trial",
255 "settings.account.trialEndsIn": "Your free trial ends in {duration}.", 258 "settings.account.trialEndsIn": "Your free trial ends in {duration}.",
@@ -284,7 +287,7 @@
284 "settings.app.form.language": "Idioma", 287 "settings.app.form.language": "Idioma",
285 "settings.app.form.lockPassword": "Senha", 288 "settings.app.form.lockPassword": "Senha",
286 "settings.app.form.minimizeToSystemTray": "Minimizar o Ferdi para a barra do sistema", 289 "settings.app.form.minimizeToSystemTray": "Minimizar o Ferdi para a barra do sistema",
287 "settings.app.form.navigationBarBehaviour": "Navigation bar behaviour", 290 "settings.app.form.navigationBarBehaviour": "Comportamento da barra de navegação",
288 "settings.app.form.noUpdates": "Desativar atualizaçáes", 291 "settings.app.form.noUpdates": "Desativar atualizaçáes",
289 "settings.app.form.privateNotifications": "Não mostrar o conteúdo das mensagens nas notificaçáes", 292 "settings.app.form.privateNotifications": "Não mostrar o conteúdo das mensagens nas notificaçáes",
290 "settings.app.form.runInBackground": "Manter o Ferdi em segundo plano ao fechar a janela", 293 "settings.app.form.runInBackground": "Manter o Ferdi em segundo plano ao fechar a janela",
@@ -299,7 +302,8 @@
299 "settings.app.form.startMinimized": "Iniciar minimizado na bandeja", 302 "settings.app.form.startMinimized": "Iniciar minimizado na bandeja",
300 "settings.app.form.todoServer": "Servidor das Tarefas", 303 "settings.app.form.todoServer": "Servidor das Tarefas",
301 "settings.app.form.universalDarkMode": "Habilitar modo noturno universal", 304 "settings.app.form.universalDarkMode": "Habilitar modo noturno universal",
302 "settings.app.headline": "Definiçáes", 305 "settings.app.form.useTouchIdToUnlock": "Permitir usar TouchID para desbloquear Ferdi",
306 "settings.app.headline": "Configuraçáes",
303 "settings.app.headlineAdvanced": "Avançado", 307 "settings.app.headlineAdvanced": "Avançado",
304 "settings.app.headlineAppearance": "AparΓͺncia", 308 "settings.app.headlineAppearance": "AparΓͺncia",
305 "settings.app.headlineGeneral": "Geral", 309 "settings.app.headlineGeneral": "Geral",
@@ -328,16 +332,16 @@
328 "settings.navigation.account": "Conta", 332 "settings.navigation.account": "Conta",
329 "settings.navigation.availableServices": "Serviços disponíveis", 333 "settings.navigation.availableServices": "Serviços disponíveis",
330 "settings.navigation.logout": "Terminar sessΓ£o", 334 "settings.navigation.logout": "Terminar sessΓ£o",
331 "settings.navigation.settings": "Definiçáes", 335 "settings.navigation.settings": "Configuraçáes",
332 "settings.navigation.supportFerdi": "Apoie o Ferdi", 336 "settings.navigation.supportFerdi": "Apoie o Ferdi",
333 "settings.navigation.team": "Gerir a equipa", 337 "settings.navigation.team": "Gerenciar equipes",
334 "settings.navigation.yourServices": "Os seus serviços", 338 "settings.navigation.yourServices": "Seus serviços",
335 "settings.navigation.yourWorkspaces": "Os teus Espaços de trabalho", 339 "settings.navigation.yourWorkspaces": "Suas Ñreas de trabalho",
336 "settings.recipes.all": "Todos os serviços", 340 "settings.recipes.all": "Todos os serviços",
337 "settings.recipes.custom": "Servicios Personalizados", 341 "settings.recipes.custom": "Servicios Personalizados",
338 "settings.recipes.customService.headline.communityRecipes": "Serviços da comunidade", 342 "settings.recipes.customService.headline.communityRecipes": "Serviços da comunidade",
339 "settings.recipes.customService.headline.customRecipes": "Serviços personalizados", 343 "settings.recipes.customService.headline.customRecipes": "Serviços personalizados",
340 "settings.recipes.customService.headline.devRecipes": "Seus Serviços em Desenvolvimento", 344 "settings.recipes.customService.headline.devRecipes": "Serviços em Desenvolvimento",
341 "settings.recipes.customService.intro": "Para adicionar um serviço personalizado, copie o serviço para:", 345 "settings.recipes.customService.intro": "Para adicionar um serviço personalizado, copie o serviço para:",
342 "settings.recipes.customService.openDevDocs": "Documentação do Desenvolvedor", 346 "settings.recipes.customService.openDevDocs": "Documentação do Desenvolvedor",
343 "settings.recipes.customService.openFolder": "Abrir pasta", 347 "settings.recipes.customService.openFolder": "Abrir pasta",
@@ -390,12 +394,12 @@
390 "settings.service.form.tabOnPremise": "Com domínio próprio ⭐️", 394 "settings.service.form.tabOnPremise": "Com domínio próprio ⭐️",
391 "settings.service.form.team": "Equipa", 395 "settings.service.form.team": "Equipa",
392 "settings.service.form.useHostedService": "Utilize o serviço oferecido por {name}.", 396 "settings.service.form.useHostedService": "Utilize o serviço oferecido por {name}.",
393 "settings.service.form.yourServices": "Os seus serviços", 397 "settings.service.form.yourServices": "Seus serviços",
394 "settings.services.deletedInfo": "O serviço foi apagado", 398 "settings.services.deletedInfo": "O serviço foi apagado",
395 "settings.services.discoverServices": "Descobrir serviços", 399 "settings.services.discoverServices": "Descobrir serviços",
396 "settings.services.headline": "Os seus serviços", 400 "settings.services.headline": "Seus serviços",
397 "settings.services.noServicesAdded": "Ainda não adicionou nenhum serviço.", 401 "settings.services.noServicesAdded": "Ainda não adicionou nenhum serviço.",
398 "settings.services.servicesRequestFailed": "Não foi possível ler os teus serviços", 402 "settings.services.servicesRequestFailed": "Não foi possível ler os seus serviços",
399 "settings.services.tooltip.isDisabled": "O serviço estÑ desativado", 403 "settings.services.tooltip.isDisabled": "O serviço estÑ desativado",
400 "settings.services.tooltip.isMuted": "Todos os sons estΓ£o silenciados", 404 "settings.services.tooltip.isMuted": "Todos os sons estΓ£o silenciados",
401 "settings.services.tooltip.notificationsDisabled": "As notificaçáes estão desativadas", 405 "settings.services.tooltip.notificationsDisabled": "As notificaçáes estão desativadas",
@@ -409,7 +413,7 @@
409 "settings.team.copy": "\"Ferdi para Equipes\" possui a opção de convidar ajudantes para a sua equipe atravΓ©s de mensagens por e-mail e gerenciar as inscriçáes deles em suas preferΓͺncias de conta. NΓ£o perca tempo configurando as inscriçáes para membro da equipe individualmente, esqueΓ§a as mΓΊltiplas faturas e tempos de pagamento. Uma regra universal para todos os membros da equipe.", 413 "settings.team.copy": "\"Ferdi para Equipes\" possui a opção de convidar ajudantes para a sua equipe atravΓ©s de mensagens por e-mail e gerenciar as inscriçáes deles em suas preferΓͺncias de conta. NΓ£o perca tempo configurando as inscriçáes para membro da equipe individualmente, esqueΓ§a as mΓΊltiplas faturas e tempos de pagamento. Uma regra universal para todos os membros da equipe.",
410 "settings.team.headline": "Equipa", 414 "settings.team.headline": "Equipa",
411 "settings.team.intro": "VocΓͺ e sua equipe usam Ferdi? VocΓͺ pode agora administrar as inscriçáes pagas de todos os seus colegas, amigos e membros da famΓ­lia que vocΓͺ quiser, tudo isso em uma ΓΊnica conta.", 415 "settings.team.intro": "VocΓͺ e sua equipe usam Ferdi? VocΓͺ pode agora administrar as inscriçáes pagas de todos os seus colegas, amigos e membros da famΓ­lia que vocΓͺ quiser, tudo isso em uma ΓΊnica conta.",
412 "settings.team.manageAction": "Gerir a tua Equipa em getferdi.com", 416 "settings.team.manageAction": "Gerenciar sua Equipe em getferdi.com",
413 "settings.team.teamsUnavailable": "A funcionalidade de Equipes estΓ‘ indisponΓ­vel", 417 "settings.team.teamsUnavailable": "A funcionalidade de Equipes estΓ‘ indisponΓ­vel",
414 "settings.team.teamsUnavailableInfo": "Atualmente a funcionalidade de Equipes estΓ‘ disponΓ­vel apenas utilizando o servidor Franz apΓ³s adquirir um plano Franz Profissional. Por favor altere o seridor par https://api.franzinfra.com para utilizar esta funcionalidade.", 418 "settings.team.teamsUnavailableInfo": "Atualmente a funcionalidade de Equipes estΓ‘ disponΓ­vel apenas utilizando o servidor Franz apΓ³s adquirir um plano Franz Profissional. Por favor altere o seridor par https://api.franzinfra.com para utilizar esta funcionalidade.",
415 "settings.team.upgradeAction": "Atualizar sua conta", 419 "settings.team.upgradeAction": "Atualizar sua conta",
@@ -423,30 +427,30 @@
423 "settings.user.form.lastname": "Último Nome", 427 "settings.user.form.lastname": "Último Nome",
424 "settings.user.form.newPassword": "Nova palavra-passe", 428 "settings.user.form.newPassword": "Nova palavra-passe",
425 "settings.workspace.add.form.name": "Nome", 429 "settings.workspace.add.form.name": "Nome",
426 "settings.workspace.add.form.submitButton": "Criar um Espaço de trabalho", 430 "settings.workspace.add.form.submitButton": "Nova Área de Trabalho",
427 "settings.workspace.form.buttonDelete": "Apagar um Espaço de trabalho", 431 "settings.workspace.form.buttonDelete": "Excluir Área de trabalho",
428 "settings.workspace.form.buttonSave": "Gravar um Espaço de trabalho", 432 "settings.workspace.form.buttonSave": "Salvar Área de Trabalho",
429 "settings.workspace.form.keepLoaded": "Maner todas a Γ‘reas de trabalhos carregadas*", 433 "settings.workspace.form.keepLoaded": "Maner todas a Γ‘reas de trabalhos carregadas*",
430 "settings.workspace.form.keepLoadedInfo": "*Esta opção serÑ substituída pela configuração global \"Manter todas a Ñreas de trabalho carregada\".", 434 "settings.workspace.form.keepLoadedInfo": "*Esta opção serÑ substituída pela configuração global \"Manter todas a Ñreas de trabalho carregada\".",
431 "settings.workspace.form.name": "Nome", 435 "settings.workspace.form.name": "Nome",
432 "settings.workspace.form.servicesInWorkspaceHeadline": "Serviços neste Workspace", 436 "settings.workspace.form.servicesInWorkspaceHeadline": "Serviços neste Workspace",
433 "settings.workspace.form.yourWorkspaces": "Os teus Espaços de trabalho", 437 "settings.workspace.form.yourWorkspaces": "Suas Ñreas de trabalho",
434 "settings.workspaces.deletedInfo": "O Espaço de trabalho foi apagado", 438 "settings.workspaces.deletedInfo": "O Espaço de trabalho foi apagado",
435 "settings.workspaces.headline": "Os teus Espaços de trabalho", 439 "settings.workspaces.headline": "Suas Ñreas de trabalho",
436 "settings.workspaces.noWorkspacesAdded": "Ainda não adicionou nenhum Espaço de trabalho", 440 "settings.workspaces.noWorkspacesAdded": "Ainda não adicionou nenhum Espaço de trabalho",
437 "settings.workspaces.tryReloadWorkspaces": "Tentar novamente", 441 "settings.workspaces.tryReloadWorkspaces": "Tentar novamente",
438 "settings.workspaces.updatedInfo": "As suas alteraçáes foram efetuadas com sucesso", 442 "settings.workspaces.updatedInfo": "As suas alteraçáes foram efetuadas com sucesso",
439 "settings.workspaces.workspaceFeatureHeadline": "Menos é Mais: Introduzindo os Espaço de trabalho Ferdi", 443 "settings.workspaces.workspaceFeatureHeadline": "Menos é Mais: Introduzindo as Áreas de trabalho Ferdi",
440 "settings.workspaces.workspaceFeatureInfo": "As Γ‘reas de trabalho do Ferdi permite vocΓͺ focar no que realmente Γ© importante agora. Configure diferentes conjuntos de serviΓ§os e alterne entre eles facilmente em qualquer momento. VocΓͺ decide quais serviΓ§os vocΓͺ precisa e onde deseja colocΓ‘-los, entΓ£o nΓ³s podemos te ajudar a aumentar a produtividade de suas tarefas. Ou facilmente deletar os aplicativos que vocΓͺ nunca irΓ‘ precisar.", 444 "settings.workspaces.workspaceFeatureInfo": "As Γ‘reas de trabalho do Ferdi permite vocΓͺ focar no que realmente Γ© importante agora. Configure diferentes conjuntos de serviΓ§os e alterne entre eles facilmente em qualquer momento. VocΓͺ decide quais serviΓ§os vocΓͺ precisa e onde deseja colocΓ‘-los, entΓ£o nΓ³s podemos te ajudar a aumentar a produtividade de suas tarefas. Ou facilmente deletar os aplicativos que vocΓͺ nunca irΓ‘ precisar.",
441 "settings.workspaces.workspacesRequestFailed": "NΓ£o foi possΓ­vel carregar suas Γ‘reas de trabalho", 445 "settings.workspaces.workspacesRequestFailed": "NΓ£o foi possΓ­vel carregar suas Γ‘reas de trabalho",
442 "sidebar.addNewService": "Adicionar um novo serviço", 446 "sidebar.addNewService": "Adicionar um novo serviço",
443 "sidebar.closeTodosDrawer": "Fechar as Tarefas", 447 "sidebar.closeTodosDrawer": "Fechar as Tarefas",
444 "sidebar.closeWorkspaceDrawer": "Fechar a janela do Esp§o de trabalho", 448 "sidebar.closeWorkspaceDrawer": "Fechar a janela da Área de trabalho",
445 "sidebar.lockFerdi": "Bloquear Ferdi", 449 "sidebar.lockFerdi": "Bloquear Ferdi",
446 "sidebar.muteApp": "Desativar notificaçáes e Ñudio", 450 "sidebar.muteApp": "Desativar notificaçáes e Ñudio",
447 "sidebar.openTodosDrawer": "Abrir as Tarefas", 451 "sidebar.openTodosDrawer": "Abrir as Tarefas",
448 "sidebar.openWorkspaceDrawer": "Abrir a janela do Esp§o de trabalho", 452 "sidebar.openWorkspaceDrawer": "Abrir a janela da Área de trabalho",
449 "sidebar.settings": "Definiçáes", 453 "sidebar.settings": "Configuraçáes",
450 "sidebar.unmuteApp": "Ativar notificaçáes e Ñudio", 454 "sidebar.unmuteApp": "Ativar notificaçáes e Ñudio",
451 "signup.email.label": "Endereço de e-mail", 455 "signup.email.label": "Endereço de e-mail",
452 "signup.emailDuplicate": "JÑ existe uma conta associada a este endereço de email", 456 "signup.emailDuplicate": "JÑ existe uma conta associada a este endereço de email",
@@ -495,7 +499,7 @@
495 "welcome.signupButton": "Criar uma conta gratuita", 499 "welcome.signupButton": "Criar uma conta gratuita",
496 "workspaceDrawer.addNewWorkspaceLabel": "Adicionar uma nova Γ‘rea de trabalho", 500 "workspaceDrawer.addNewWorkspaceLabel": "Adicionar uma nova Γ‘rea de trabalho",
497 "workspaceDrawer.allServices": "Todos os serviços", 501 "workspaceDrawer.allServices": "Todos os serviços",
498 "workspaceDrawer.headline": "Espaços de trabalho", 502 "workspaceDrawer.headline": "Áreas de trabalho",
499 "workspaceDrawer.item.contextMenuEdit": "editar", 503 "workspaceDrawer.item.contextMenuEdit": "editar",
500 "workspaceDrawer.item.noServicesAddedYet": "Nenhum serviço foi adicionado", 504 "workspaceDrawer.item.noServicesAddedYet": "Nenhum serviço foi adicionado",
501 "workspaceDrawer.premiumCtaButtonLabel": "Crie sua primeira Γ‘rea de trabalho", 505 "workspaceDrawer.premiumCtaButtonLabel": "Crie sua primeira Γ‘rea de trabalho",
diff --git a/src/i18n/locales/pt.json b/src/i18n/locales/pt.json
index b6e4fbe83..5210b9cdd 100644
--- a/src/i18n/locales/pt.json
+++ b/src/i18n/locales/pt.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Senha invΓ‘lida", 85 "locked.invalidCredentials": "Senha invΓ‘lida",
86 "locked.password.label": "Senha", 86 "locked.password.label": "Senha",
87 "locked.submit.label": "Desbloquear", 87 "locked.submit.label": "Desbloquear",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Alterar servidor", 91 "login.changeServer": "Alterar servidor",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Tarefa do Servidor", 303 "settings.app.form.todoServer": "Tarefa do Servidor",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Configuraçáes", 306 "settings.app.headline": "Configuraçáes",
303 "settings.app.headlineAdvanced": "Avançado", 307 "settings.app.headlineAdvanced": "Avançado",
304 "settings.app.headlineAppearance": "AparΓͺncia", 308 "settings.app.headlineAppearance": "AparΓͺncia",
diff --git a/src/i18n/locales/ro.json b/src/i18n/locales/ro.json
index ec5bd1a04..ff81d6b9f 100644
--- a/src/i18n/locales/ro.json
+++ b/src/i18n/locales/ro.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Settings", 306 "settings.app.headline": "Settings",
303 "settings.app.headlineAdvanced": "Advanced", 307 "settings.app.headlineAdvanced": "Advanced",
304 "settings.app.headlineAppearance": "Appearance", 308 "settings.app.headlineAppearance": "Appearance",
diff --git a/src/i18n/locales/ru.json b/src/i18n/locales/ru.json
index 58228c1ab..d7b928f7e 100644
--- a/src/i18n/locales/ru.json
+++ b/src/i18n/locales/ru.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "НСвСрный ΠΏΠ°Ρ€ΠΎΠ»ΡŒ", 85 "locked.invalidCredentials": "НСвСрный ΠΏΠ°Ρ€ΠΎΠ»ΡŒ",
86 "locked.password.label": "ΠŸΠ°Ρ€ΠΎΠ»ΡŒ", 86 "locked.password.label": "ΠŸΠ°Ρ€ΠΎΠ»ΡŒ",
87 "locked.submit.label": "Π Π°Π·Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ", 87 "locked.submit.label": "Π Π°Π·Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ сСрвСр", 91 "login.changeServer": "Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ сСрвСр",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Настройки", 306 "settings.app.headline": "Настройки",
303 "settings.app.headlineAdvanced": "Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ", 307 "settings.app.headlineAdvanced": "Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ",
304 "settings.app.headlineAppearance": "Π’Π½Π΅ΡˆΠ½ΠΈΠΉ Π²ΠΈΠ΄", 308 "settings.app.headlineAppearance": "Π’Π½Π΅ΡˆΠ½ΠΈΠΉ Π²ΠΈΠ΄",
diff --git a/src/i18n/locales/sk.json b/src/i18n/locales/sk.json
index 177ead66a..c336999bc 100644
--- a/src/i18n/locales/sk.json
+++ b/src/i18n/locales/sk.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Nastavenia", 306 "settings.app.headline": "Nastavenia",
303 "settings.app.headlineAdvanced": "Pokročilé", 307 "settings.app.headlineAdvanced": "Pokročilé",
304 "settings.app.headlineAppearance": "VzhΔΎad", 308 "settings.app.headlineAppearance": "VzhΔΎad",
diff --git a/src/i18n/locales/sl.json b/src/i18n/locales/sl.json
index ec5bd1a04..ff81d6b9f 100644
--- a/src/i18n/locales/sl.json
+++ b/src/i18n/locales/sl.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Settings", 306 "settings.app.headline": "Settings",
303 "settings.app.headlineAdvanced": "Advanced", 307 "settings.app.headlineAdvanced": "Advanced",
304 "settings.app.headlineAppearance": "Appearance", 308 "settings.app.headlineAppearance": "Appearance",
diff --git a/src/i18n/locales/sr.json b/src/i18n/locales/sr.json
index 25432a219..4e419c039 100644
--- a/src/i18n/locales/sr.json
+++ b/src/i18n/locales/sr.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Postavke", 306 "settings.app.headline": "Postavke",
303 "settings.app.headlineAdvanced": "Napredne alatke", 307 "settings.app.headlineAdvanced": "Napredne alatke",
304 "settings.app.headlineAppearance": "Izgled", 308 "settings.app.headlineAppearance": "Izgled",
diff --git a/src/i18n/locales/sv.json b/src/i18n/locales/sv.json
index ec5bd1a04..ff81d6b9f 100644
--- a/src/i18n/locales/sv.json
+++ b/src/i18n/locales/sv.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Settings", 306 "settings.app.headline": "Settings",
303 "settings.app.headlineAdvanced": "Advanced", 307 "settings.app.headlineAdvanced": "Advanced",
304 "settings.app.headlineAppearance": "Appearance", 308 "settings.app.headlineAppearance": "Appearance",
diff --git a/src/i18n/locales/tr.json b/src/i18n/locales/tr.json
index 446753135..6d130d84e 100644
--- a/src/i18n/locales/tr.json
+++ b/src/i18n/locales/tr.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Geçersiz şifre", 85 "locked.invalidCredentials": "Geçersiz şifre",
86 "locked.password.label": "Şifre", 86 "locked.password.label": "Şifre",
87 "locked.submit.label": "Kilidi aç", 87 "locked.submit.label": "Kilidi aç",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Sunucuyu değiştir", 91 "login.changeServer": "Sunucuyu değiştir",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Ayarlar", 306 "settings.app.headline": "Ayarlar",
303 "settings.app.headlineAdvanced": "Gelişmiş", 307 "settings.app.headlineAdvanced": "Gelişmiş",
304 "settings.app.headlineAppearance": "GΓΆrΓΌnΓΌm", 308 "settings.app.headlineAppearance": "GΓΆrΓΌnΓΌm",
diff --git a/src/i18n/locales/uk.json b/src/i18n/locales/uk.json
index b2bbf598f..522fcf24c 100644
--- a/src/i18n/locales/uk.json
+++ b/src/i18n/locales/uk.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "ΠΠ°Π»Π°ΡˆΡ‚ΡƒΠ²Π°Π½Π½Ρ", 306 "settings.app.headline": "ΠΠ°Π»Π°ΡˆΡ‚ΡƒΠ²Π°Π½Π½Ρ",
303 "settings.app.headlineAdvanced": "Π”ΠΎΠ΄Π°Ρ‚ΠΊΠΎΠ²Ρ– Π½Π°Π»Π°ΡˆΡ‚ΡƒΠ²Π°Π½Π½Ρ", 307 "settings.app.headlineAdvanced": "Π”ΠΎΠ΄Π°Ρ‚ΠΊΠΎΠ²Ρ– Π½Π°Π»Π°ΡˆΡ‚ΡƒΠ²Π°Π½Π½Ρ",
304 "settings.app.headlineAppearance": "Вигляд", 308 "settings.app.headlineAppearance": "Вигляд",
diff --git a/src/i18n/locales/vi.json b/src/i18n/locales/vi.json
index ec5bd1a04..ff81d6b9f 100644
--- a/src/i18n/locales/vi.json
+++ b/src/i18n/locales/vi.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Settings", 306 "settings.app.headline": "Settings",
303 "settings.app.headlineAdvanced": "Advanced", 307 "settings.app.headlineAdvanced": "Advanced",
304 "settings.app.headlineAppearance": "Appearance", 308 "settings.app.headlineAppearance": "Appearance",
diff --git a/src/i18n/locales/zh-HANT.json b/src/i18n/locales/zh-HANT.json
index 44d91848b..b34cb6b07 100644
--- a/src/i18n/locales/zh-HANT.json
+++ b/src/i18n/locales/zh-HANT.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "ε―†η’Όη„‘ζ•ˆ", 85 "locked.invalidCredentials": "ε―†η’Όη„‘ζ•ˆ",
86 "locked.password.label": "ε―†η’Ό", 86 "locked.password.label": "ε―†η’Ό",
87 "locked.submit.label": "θ§£ι™€ε°ιŽ–", 87 "locked.submit.label": "θ§£ι™€ε°ιŽ–",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "εˆ‡ζ›ζœε‹™ε™¨", 91 "login.changeServer": "εˆ‡ζ›ζœε‹™ε™¨",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "ι–‹ε§‹ζ™‚ζœ€ε°εŒ–εˆ°η³»η΅±εŒ£", 302 "settings.app.form.startMinimized": "ι–‹ε§‹ζ™‚ζœ€ε°εŒ–εˆ°η³»η΅±εŒ£",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "θ¨­η½", 306 "settings.app.headline": "θ¨­η½",
303 "settings.app.headlineAdvanced": "高級設η½", 307 "settings.app.headlineAdvanced": "高級設η½",
304 "settings.app.headlineAppearance": "倖觀", 308 "settings.app.headlineAppearance": "倖觀",
diff --git a/src/i18n/locales/zh.json b/src/i18n/locales/zh.json
index ec5bd1a04..ff81d6b9f 100644
--- a/src/i18n/locales/zh.json
+++ b/src/i18n/locales/zh.json
@@ -85,6 +85,9 @@
85 "locked.invalidCredentials": "Password invalid", 85 "locked.invalidCredentials": "Password invalid",
86 "locked.password.label": "Password", 86 "locked.password.label": "Password",
87 "locked.submit.label": "Unlock", 87 "locked.submit.label": "Unlock",
88 "locked.touchId": "Unlock with Touch ID",
89 "locked.touchIdPrompt": "unlock via Touch ID",
90 "locked.unlockWithPassword": "Unlock with Password",
88 "login.changeServer": "Change server", 91 "login.changeServer": "Change server",
89 "login.customServerQuestion": "Using a custom Ferdi server?", 92 "login.customServerQuestion": "Using a custom Ferdi server?",
90 "login.customServerSuggestion": "Try importing your Franz account", 93 "login.customServerSuggestion": "Try importing your Franz account",
@@ -299,6 +302,7 @@
299 "settings.app.form.startMinimized": "Start minimized in tray", 302 "settings.app.form.startMinimized": "Start minimized in tray",
300 "settings.app.form.todoServer": "Todo Server", 303 "settings.app.form.todoServer": "Todo Server",
301 "settings.app.form.universalDarkMode": "Enable universal Dark Mode", 304 "settings.app.form.universalDarkMode": "Enable universal Dark Mode",
305 "settings.app.form.useTouchIdToUnlock": "Allow using TouchID to unlock Ferdi",
302 "settings.app.headline": "Settings", 306 "settings.app.headline": "Settings",
303 "settings.app.headlineAdvanced": "Advanced", 307 "settings.app.headlineAdvanced": "Advanced",
304 "settings.app.headlineAppearance": "Appearance", 308 "settings.app.headlineAppearance": "Appearance",
diff --git a/src/i18n/messages/src/containers/settings/EditSettingsScreen.json b/src/i18n/messages/src/containers/settings/EditSettingsScreen.json
index 60d080918..0d3265c51 100644
--- a/src/i18n/messages/src/containers/settings/EditSettingsScreen.json
+++ b/src/i18n/messages/src/containers/settings/EditSettingsScreen.json
@@ -65,15 +65,28 @@
65 } 65 }
66 }, 66 },
67 { 67 {
68 "id": "settings.app.form.reloadAfterResume",
69 "defaultMessage": "!!!Reload Ferdi after system resume",
70 "file": "src/containers/settings/EditSettingsScreen.js",
71 "start": {
72 "line": 51,
73 "column": 21
74 },
75 "end": {
76 "line": 54,
77 "column": 3
78 }
79 },
80 {
68 "id": "settings.app.form.minimizeToSystemTray", 81 "id": "settings.app.form.minimizeToSystemTray",
69 "defaultMessage": "!!!Minimize Ferdi to system tray", 82 "defaultMessage": "!!!Minimize Ferdi to system tray",
70 "file": "src/containers/settings/EditSettingsScreen.js", 83 "file": "src/containers/settings/EditSettingsScreen.js",
71 "start": { 84 "start": {
72 "line": 51, 85 "line": 55,
73 "column": 24 86 "column": 24
74 }, 87 },
75 "end": { 88 "end": {
76 "line": 54, 89 "line": 58,
77 "column": 3 90 "column": 3
78 } 91 }
79 }, 92 },
@@ -82,11 +95,11 @@
82 "defaultMessage": "!!!Don't show message content in notifications", 95 "defaultMessage": "!!!Don't show message content in notifications",
83 "file": "src/containers/settings/EditSettingsScreen.js", 96 "file": "src/containers/settings/EditSettingsScreen.js",
84 "start": { 97 "start": {
85 "line": 55, 98 "line": 59,
86 "column": 24 99 "column": 24
87 }, 100 },
88 "end": { 101 "end": {
89 "line": 58, 102 "line": 62,
90 "column": 3 103 "column": 3
91 } 104 }
92 }, 105 },
@@ -95,11 +108,11 @@
95 "defaultMessage": "!!!Navigation bar behaviour", 108 "defaultMessage": "!!!Navigation bar behaviour",
96 "file": "src/containers/settings/EditSettingsScreen.js", 109 "file": "src/containers/settings/EditSettingsScreen.js",
97 "start": { 110 "start": {
98 "line": 59, 111 "line": 63,
99 "column": 26 112 "column": 26
100 }, 113 },
101 "end": { 114 "end": {
102 "line": 62, 115 "line": 66,
103 "column": 3 116 "column": 3
104 } 117 }
105 }, 118 },
@@ -108,11 +121,11 @@
108 "defaultMessage": "!!!Send telemetry data", 121 "defaultMessage": "!!!Send telemetry data",
109 "file": "src/containers/settings/EditSettingsScreen.js", 122 "file": "src/containers/settings/EditSettingsScreen.js",
110 "start": { 123 "start": {
111 "line": 63, 124 "line": 67,
112 "column": 10 125 "column": 10
113 }, 126 },
114 "end": { 127 "end": {
115 "line": 66, 128 "line": 70,
116 "column": 3 129 "column": 3
117 } 130 }
118 }, 131 },
@@ -121,11 +134,11 @@
121 "defaultMessage": "!!!Enable service hibernation", 134 "defaultMessage": "!!!Enable service hibernation",
122 "file": "src/containers/settings/EditSettingsScreen.js", 135 "file": "src/containers/settings/EditSettingsScreen.js",
123 "start": { 136 "start": {
124 "line": 67, 137 "line": 71,
125 "column": 13 138 "column": 13
126 }, 139 },
127 "end": { 140 "end": {
128 "line": 70, 141 "line": 74,
129 "column": 3 142 "column": 3
130 } 143 }
131 }, 144 },
@@ -134,11 +147,11 @@
134 "defaultMessage": "!!!Hibernation strategy", 147 "defaultMessage": "!!!Hibernation strategy",
135 "file": "src/containers/settings/EditSettingsScreen.js", 148 "file": "src/containers/settings/EditSettingsScreen.js",
136 "start": { 149 "start": {
137 "line": 71, 150 "line": 75,
138 "column": 23 151 "column": 23
139 }, 152 },
140 "end": { 153 "end": {
141 "line": 74, 154 "line": 78,
142 "column": 3 155 "column": 3
143 } 156 }
144 }, 157 },
@@ -147,11 +160,11 @@
147 "defaultMessage": "!!!Server", 160 "defaultMessage": "!!!Server",
148 "file": "src/containers/settings/EditSettingsScreen.js", 161 "file": "src/containers/settings/EditSettingsScreen.js",
149 "start": { 162 "start": {
150 "line": 75, 163 "line": 79,
151 "column": 10 164 "column": 10
152 }, 165 },
153 "end": { 166 "end": {
154 "line": 78, 167 "line": 82,
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": 79, 176 "line": 83,
164 "column": 14 177 "column": 14
165 }, 178 },
166 "end": { 179 "end": {
167 "line": 82, 180 "line": 86,
168 "column": 3 181 "column": 3
169 } 182 }
170 }, 183 },
@@ -173,11 +186,11 @@
173 "defaultMessage": "!!!Enable Password Lock", 186 "defaultMessage": "!!!Enable Password Lock",
174 "file": "src/containers/settings/EditSettingsScreen.js", 187 "file": "src/containers/settings/EditSettingsScreen.js",
175 "start": { 188 "start": {
176 "line": 83, 189 "line": 87,
177 "column": 14 190 "column": 14
178 }, 191 },
179 "end": { 192 "end": {
180 "line": 86, 193 "line": 90,
181 "column": 3 194 "column": 3
182 } 195 }
183 }, 196 },
@@ -186,11 +199,11 @@
186 "defaultMessage": "!!!Password", 199 "defaultMessage": "!!!Password",
187 "file": "src/containers/settings/EditSettingsScreen.js", 200 "file": "src/containers/settings/EditSettingsScreen.js",
188 "start": { 201 "start": {
189 "line": 87, 202 "line": 91,
190 "column": 16 203 "column": 16
191 }, 204 },
192 "end": { 205 "end": {
193 "line": 90, 206 "line": 94,
194 "column": 3 207 "column": 3
195 } 208 }
196 }, 209 },
@@ -199,11 +212,11 @@
199 "defaultMessage": "!!!Allow using Touch ID to unlock", 212 "defaultMessage": "!!!Allow using Touch ID to unlock",
200 "file": "src/containers/settings/EditSettingsScreen.js", 213 "file": "src/containers/settings/EditSettingsScreen.js",
201 "start": { 214 "start": {
202 "line": 91, 215 "line": 95,
203 "column": 22 216 "column": 22
204 }, 217 },
205 "end": { 218 "end": {
206 "line": 94, 219 "line": 98,
207 "column": 3 220 "column": 3
208 } 221 }
209 }, 222 },
@@ -212,11 +225,11 @@
212 "defaultMessage": "!!!Lock after inactivity", 225 "defaultMessage": "!!!Lock after inactivity",
213 "file": "src/containers/settings/EditSettingsScreen.js", 226 "file": "src/containers/settings/EditSettingsScreen.js",
214 "start": { 227 "start": {
215 "line": 95, 228 "line": 99,
216 "column": 18 229 "column": 18
217 }, 230 },
218 "end": { 231 "end": {
219 "line": 98, 232 "line": 102,
220 "column": 3 233 "column": 3
221 } 234 }
222 }, 235 },
@@ -225,11 +238,11 @@
225 "defaultMessage": "!!!Enable scheduled Do-not-Disturb", 238 "defaultMessage": "!!!Enable scheduled Do-not-Disturb",
226 "file": "src/containers/settings/EditSettingsScreen.js", 239 "file": "src/containers/settings/EditSettingsScreen.js",
227 "start": { 240 "start": {
228 "line": 99, 241 "line": 103,
229 "column": 23 242 "column": 23
230 }, 243 },
231 "end": { 244 "end": {
232 "line": 102, 245 "line": 106,
233 "column": 3 246 "column": 3
234 } 247 }
235 }, 248 },
@@ -238,11 +251,11 @@
238 "defaultMessage": "!!!From", 251 "defaultMessage": "!!!From",
239 "file": "src/containers/settings/EditSettingsScreen.js", 252 "file": "src/containers/settings/EditSettingsScreen.js",
240 "start": { 253 "start": {
241 "line": 103, 254 "line": 107,
242 "column": 21 255 "column": 21
243 }, 256 },
244 "end": { 257 "end": {
245 "line": 106, 258 "line": 110,
246 "column": 3 259 "column": 3
247 } 260 }
248 }, 261 },
@@ -251,11 +264,11 @@
251 "defaultMessage": "!!!To", 264 "defaultMessage": "!!!To",
252 "file": "src/containers/settings/EditSettingsScreen.js", 265 "file": "src/containers/settings/EditSettingsScreen.js",
253 "start": { 266 "start": {
254 "line": 107, 267 "line": 111,
255 "column": 19 268 "column": 19
256 }, 269 },
257 "end": { 270 "end": {
258 "line": 110, 271 "line": 114,
259 "column": 3 272 "column": 3
260 } 273 }
261 }, 274 },
@@ -264,11 +277,11 @@
264 "defaultMessage": "!!!Language", 277 "defaultMessage": "!!!Language",
265 "file": "src/containers/settings/EditSettingsScreen.js", 278 "file": "src/containers/settings/EditSettingsScreen.js",
266 "start": { 279 "start": {
267 "line": 111, 280 "line": 115,
268 "column": 12 281 "column": 12
269 }, 282 },
270 "end": { 283 "end": {
271 "line": 114, 284 "line": 118,
272 "column": 3 285 "column": 3
273 } 286 }
274 }, 287 },
@@ -277,11 +290,11 @@
277 "defaultMessage": "!!!Dark Mode", 290 "defaultMessage": "!!!Dark Mode",
278 "file": "src/containers/settings/EditSettingsScreen.js", 291 "file": "src/containers/settings/EditSettingsScreen.js",
279 "start": { 292 "start": {
280 "line": 115, 293 "line": 119,
281 "column": 12 294 "column": 12
282 }, 295 },
283 "end": { 296 "end": {
284 "line": 118, 297 "line": 122,
285 "column": 3 298 "column": 3
286 } 299 }
287 }, 300 },
@@ -290,11 +303,11 @@
290 "defaultMessage": "!!!Synchronize dark mode with my Mac's dark mode setting", 303 "defaultMessage": "!!!Synchronize dark mode with my Mac's dark mode setting",
291 "file": "src/containers/settings/EditSettingsScreen.js", 304 "file": "src/containers/settings/EditSettingsScreen.js",
292 "start": { 305 "start": {
293 "line": 119, 306 "line": 123,
294 "column": 21 307 "column": 21
295 }, 308 },
296 "end": { 309 "end": {
297 "line": 122, 310 "line": 126,
298 "column": 3 311 "column": 3
299 } 312 }
300 }, 313 },
@@ -303,11 +316,11 @@
303 "defaultMessage": "!!!Enable universal Dark Mode", 316 "defaultMessage": "!!!Enable universal Dark Mode",
304 "file": "src/containers/settings/EditSettingsScreen.js", 317 "file": "src/containers/settings/EditSettingsScreen.js",
305 "start": { 318 "start": {
306 "line": 123, 319 "line": 127,
307 "column": 21 320 "column": 21
308 }, 321 },
309 "end": { 322 "end": {
310 "line": 126, 323 "line": 130,
311 "column": 3 324 "column": 3
312 } 325 }
313 }, 326 },
@@ -316,11 +329,11 @@
316 "defaultMessage": "!!!Sidebar width", 329 "defaultMessage": "!!!Sidebar width",
317 "file": "src/containers/settings/EditSettingsScreen.js", 330 "file": "src/containers/settings/EditSettingsScreen.js",
318 "start": { 331 "start": {
319 "line": 127, 332 "line": 131,
320 "column": 22 333 "column": 22
321 }, 334 },
322 "end": { 335 "end": {
323 "line": 130, 336 "line": 134,
324 "column": 3 337 "column": 3
325 } 338 }
326 }, 339 },
@@ -329,11 +342,11 @@
329 "defaultMessage": "!!!Service icon size", 342 "defaultMessage": "!!!Service icon size",
330 "file": "src/containers/settings/EditSettingsScreen.js", 343 "file": "src/containers/settings/EditSettingsScreen.js",
331 "start": { 344 "start": {
332 "line": 131, 345 "line": 135,
333 "column": 12 346 "column": 12
334 }, 347 },
335 "end": { 348 "end": {
336 "line": 134, 349 "line": 138,
337 "column": 3 350 "column": 3
338 } 351 }
339 }, 352 },
@@ -342,11 +355,11 @@
342 "defaultMessage": "!!!Accent color", 355 "defaultMessage": "!!!Accent color",
343 "file": "src/containers/settings/EditSettingsScreen.js", 356 "file": "src/containers/settings/EditSettingsScreen.js",
344 "start": { 357 "start": {
345 "line": 135, 358 "line": 139,
346 "column": 15 359 "column": 15
347 }, 360 },
348 "end": { 361 "end": {
349 "line": 138, 362 "line": 142,
350 "column": 3 363 "column": 3
351 } 364 }
352 }, 365 },
@@ -355,11 +368,11 @@
355 "defaultMessage": "!!!Display disabled services tabs", 368 "defaultMessage": "!!!Display disabled services tabs",
356 "file": "src/containers/settings/EditSettingsScreen.js", 369 "file": "src/containers/settings/EditSettingsScreen.js",
357 "start": { 370 "start": {
358 "line": 139, 371 "line": 143,
359 "column": 24 372 "column": 24
360 }, 373 },
361 "end": { 374 "end": {
362 "line": 142, 375 "line": 146,
363 "column": 3 376 "column": 3
364 } 377 }
365 }, 378 },
@@ -368,11 +381,11 @@
368 "defaultMessage": "!!!Show unread message badge when notifications are disabled", 381 "defaultMessage": "!!!Show unread message badge when notifications are disabled",
369 "file": "src/containers/settings/EditSettingsScreen.js", 382 "file": "src/containers/settings/EditSettingsScreen.js",
370 "start": { 383 "start": {
371 "line": 143, 384 "line": 147,
372 "column": 29 385 "column": 29
373 }, 386 },
374 "end": { 387 "end": {
375 "line": 146, 388 "line": 150,
376 "column": 3 389 "column": 3
377 } 390 }
378 }, 391 },
@@ -381,11 +394,11 @@
381 "defaultMessage": "!!!Enable spell checking", 394 "defaultMessage": "!!!Enable spell checking",
382 "file": "src/containers/settings/EditSettingsScreen.js", 395 "file": "src/containers/settings/EditSettingsScreen.js",
383 "start": { 396 "start": {
384 "line": 147, 397 "line": 151,
385 "column": 23 398 "column": 23
386 }, 399 },
387 "end": { 400 "end": {
388 "line": 150, 401 "line": 154,
389 "column": 3 402 "column": 3
390 } 403 }
391 }, 404 },
@@ -394,11 +407,11 @@
394 "defaultMessage": "!!!Enable GPU Acceleration", 407 "defaultMessage": "!!!Enable GPU Acceleration",
395 "file": "src/containers/settings/EditSettingsScreen.js", 408 "file": "src/containers/settings/EditSettingsScreen.js",
396 "start": { 409 "start": {
397 "line": 151, 410 "line": 155,
398 "column": 25 411 "column": 25
399 }, 412 },
400 "end": { 413 "end": {
401 "line": 154, 414 "line": 158,
402 "column": 3 415 "column": 3
403 } 416 }
404 }, 417 },
@@ -407,11 +420,11 @@
407 "defaultMessage": "!!!Include beta versions", 420 "defaultMessage": "!!!Include beta versions",
408 "file": "src/containers/settings/EditSettingsScreen.js", 421 "file": "src/containers/settings/EditSettingsScreen.js",
409 "start": { 422 "start": {
410 "line": 155, 423 "line": 159,
411 "column": 8 424 "column": 8
412 }, 425 },
413 "end": { 426 "end": {
414 "line": 158, 427 "line": 162,
415 "column": 3 428 "column": 3
416 } 429 }
417 }, 430 },
@@ -420,11 +433,11 @@
420 "defaultMessage": "!!!Disable updates", 433 "defaultMessage": "!!!Disable updates",
421 "file": "src/containers/settings/EditSettingsScreen.js", 434 "file": "src/containers/settings/EditSettingsScreen.js",
422 "start": { 435 "start": {
423 "line": 159, 436 "line": 163,
424 "column": 13 437 "column": 13
425 }, 438 },
426 "end": { 439 "end": {
427 "line": 162, 440 "line": 166,
428 "column": 3 441 "column": 3
429 } 442 }
430 }, 443 },
@@ -433,11 +446,11 @@
433 "defaultMessage": "!!!Enable Franz Todos", 446 "defaultMessage": "!!!Enable Franz Todos",
434 "file": "src/containers/settings/EditSettingsScreen.js", 447 "file": "src/containers/settings/EditSettingsScreen.js",
435 "start": { 448 "start": {
436 "line": 163, 449 "line": 167,
437 "column": 15 450 "column": 15
438 }, 451 },
439 "end": { 452 "end": {
440 "line": 166, 453 "line": 170,
441 "column": 3 454 "column": 3
442 } 455 }
443 }, 456 },
@@ -446,11 +459,11 @@
446 "defaultMessage": "!!!Keep all workspaces loaded", 459 "defaultMessage": "!!!Keep all workspaces loaded",
447 "file": "src/containers/settings/EditSettingsScreen.js", 460 "file": "src/containers/settings/EditSettingsScreen.js",
448 "start": { 461 "start": {
449 "line": 167, 462 "line": 171,
450 "column": 27 463 "column": 27
451 }, 464 },
452 "end": { 465 "end": {
453 "line": 170, 466 "line": 174,
454 "column": 3 467 "column": 3
455 } 468 }
456 } 469 }
diff --git a/src/i18n/messages/src/lib/Menu.json b/src/i18n/messages/src/lib/Menu.json
index 58618a427..15f5ff75f 100644
--- a/src/i18n/messages/src/lib/Menu.json
+++ b/src/i18n/messages/src/lib/Menu.json
@@ -117,15 +117,28 @@
117 } 117 }
118 }, 118 },
119 { 119 {
120 "id": "menu.edit.findInPage",
121 "defaultMessage": "!!!Find in Page",
122 "file": "src/lib/Menu.js",
123 "start": {
124 "line": 54,
125 "column": 14
126 },
127 "end": {
128 "line": 57,
129 "column": 3
130 }
131 },
132 {
120 "id": "menu.edit.speech", 133 "id": "menu.edit.speech",
121 "defaultMessage": "!!!Speech", 134 "defaultMessage": "!!!Speech",
122 "file": "src/lib/Menu.js", 135 "file": "src/lib/Menu.js",
123 "start": { 136 "start": {
124 "line": 54, 137 "line": 58,
125 "column": 10 138 "column": 10
126 }, 139 },
127 "end": { 140 "end": {
128 "line": 57, 141 "line": 61,
129 "column": 3 142 "column": 3
130 } 143 }
131 }, 144 },
@@ -134,11 +147,11 @@
134 "defaultMessage": "!!!Start Speaking", 147 "defaultMessage": "!!!Start Speaking",
135 "file": "src/lib/Menu.js", 148 "file": "src/lib/Menu.js",
136 "start": { 149 "start": {
137 "line": 58, 150 "line": 62,
138 "column": 17 151 "column": 17
139 }, 152 },
140 "end": { 153 "end": {
141 "line": 61, 154 "line": 65,
142 "column": 3 155 "column": 3
143 } 156 }
144 }, 157 },
@@ -147,11 +160,11 @@
147 "defaultMessage": "!!!Stop Speaking", 160 "defaultMessage": "!!!Stop Speaking",
148 "file": "src/lib/Menu.js", 161 "file": "src/lib/Menu.js",
149 "start": { 162 "start": {
150 "line": 62, 163 "line": 66,
151 "column": 16 164 "column": 16
152 }, 165 },
153 "end": { 166 "end": {
154 "line": 65, 167 "line": 69,
155 "column": 3 168 "column": 3
156 } 169 }
157 }, 170 },
@@ -160,11 +173,11 @@
160 "defaultMessage": "!!!Start Dictation", 173 "defaultMessage": "!!!Start Dictation",
161 "file": "src/lib/Menu.js", 174 "file": "src/lib/Menu.js",
162 "start": { 175 "start": {
163 "line": 66, 176 "line": 70,
164 "column": 18 177 "column": 18
165 }, 178 },
166 "end": { 179 "end": {
167 "line": 69, 180 "line": 73,
168 "column": 3 181 "column": 3
169 } 182 }
170 }, 183 },
@@ -173,11 +186,11 @@
173 "defaultMessage": "!!!Emoji & Symbols", 186 "defaultMessage": "!!!Emoji & Symbols",
174 "file": "src/lib/Menu.js", 187 "file": "src/lib/Menu.js",
175 "start": { 188 "start": {
176 "line": 70, 189 "line": 74,
177 "column": 16 190 "column": 16
178 }, 191 },
179 "end": { 192 "end": {
180 "line": 73, 193 "line": 77,
181 "column": 3 194 "column": 3
182 } 195 }
183 }, 196 },
@@ -186,11 +199,11 @@
186 "defaultMessage": "!!!Open Quick Switch", 199 "defaultMessage": "!!!Open Quick Switch",
187 "file": "src/lib/Menu.js", 200 "file": "src/lib/Menu.js",
188 "start": { 201 "start": {
189 "line": 74, 202 "line": 78,
190 "column": 19 203 "column": 19
191 }, 204 },
192 "end": { 205 "end": {
193 "line": 77, 206 "line": 81,
194 "column": 3 207 "column": 3
195 } 208 }
196 }, 209 },
@@ -199,11 +212,11 @@
199 "defaultMessage": "!!!Back", 212 "defaultMessage": "!!!Back",
200 "file": "src/lib/Menu.js", 213 "file": "src/lib/Menu.js",
201 "start": { 214 "start": {
202 "line": 78, 215 "line": 82,
203 "column": 8 216 "column": 8
204 }, 217 },
205 "end": { 218 "end": {
206 "line": 81, 219 "line": 85,
207 "column": 3 220 "column": 3
208 } 221 }
209 }, 222 },
@@ -212,11 +225,11 @@
212 "defaultMessage": "!!!Forward", 225 "defaultMessage": "!!!Forward",
213 "file": "src/lib/Menu.js", 226 "file": "src/lib/Menu.js",
214 "start": { 227 "start": {
215 "line": 82, 228 "line": 86,
216 "column": 11 229 "column": 11
217 }, 230 },
218 "end": { 231 "end": {
219 "line": 85, 232 "line": 89,
220 "column": 3 233 "column": 3
221 } 234 }
222 }, 235 },
@@ -225,11 +238,11 @@
225 "defaultMessage": "!!!Actual Size", 238 "defaultMessage": "!!!Actual Size",
226 "file": "src/lib/Menu.js", 239 "file": "src/lib/Menu.js",
227 "start": { 240 "start": {
228 "line": 86, 241 "line": 90,
229 "column": 13 242 "column": 13
230 }, 243 },
231 "end": { 244 "end": {
232 "line": 89, 245 "line": 93,
233 "column": 3 246 "column": 3
234 } 247 }
235 }, 248 },
@@ -238,11 +251,11 @@
238 "defaultMessage": "!!!Zoom In", 251 "defaultMessage": "!!!Zoom In",
239 "file": "src/lib/Menu.js", 252 "file": "src/lib/Menu.js",
240 "start": { 253 "start": {
241 "line": 90, 254 "line": 94,
242 "column": 10 255 "column": 10
243 }, 256 },
244 "end": { 257 "end": {
245 "line": 93, 258 "line": 97,
246 "column": 3 259 "column": 3
247 } 260 }
248 }, 261 },
@@ -251,11 +264,11 @@
251 "defaultMessage": "!!!Zoom Out", 264 "defaultMessage": "!!!Zoom Out",
252 "file": "src/lib/Menu.js", 265 "file": "src/lib/Menu.js",
253 "start": { 266 "start": {
254 "line": 94, 267 "line": 98,
255 "column": 11 268 "column": 11
256 }, 269 },
257 "end": { 270 "end": {
258 "line": 97, 271 "line": 101,
259 "column": 3 272 "column": 3
260 } 273 }
261 }, 274 },
@@ -264,11 +277,11 @@
264 "defaultMessage": "!!!Enter Full Screen", 277 "defaultMessage": "!!!Enter Full Screen",
265 "file": "src/lib/Menu.js", 278 "file": "src/lib/Menu.js",
266 "start": { 279 "start": {
267 "line": 98, 280 "line": 102,
268 "column": 19 281 "column": 19
269 }, 282 },
270 "end": { 283 "end": {
271 "line": 101, 284 "line": 105,
272 "column": 3 285 "column": 3
273 } 286 }
274 }, 287 },
@@ -277,11 +290,11 @@
277 "defaultMessage": "!!!Exit Full Screen", 290 "defaultMessage": "!!!Exit Full Screen",
278 "file": "src/lib/Menu.js", 291 "file": "src/lib/Menu.js",
279 "start": { 292 "start": {
280 "line": 102, 293 "line": 106,
281 "column": 18 294 "column": 18
282 }, 295 },
283 "end": { 296 "end": {
284 "line": 105, 297 "line": 109,
285 "column": 3 298 "column": 3
286 } 299 }
287 }, 300 },
@@ -290,11 +303,11 @@
290 "defaultMessage": "!!!Toggle Full Screen", 303 "defaultMessage": "!!!Toggle Full Screen",
291 "file": "src/lib/Menu.js", 304 "file": "src/lib/Menu.js",
292 "start": { 305 "start": {
293 "line": 106, 306 "line": 110,
294 "column": 20 307 "column": 20
295 }, 308 },
296 "end": { 309 "end": {
297 "line": 109, 310 "line": 113,
298 "column": 3 311 "column": 3
299 } 312 }
300 }, 313 },
@@ -303,11 +316,11 @@
303 "defaultMessage": "!!!Toggle Developer Tools", 316 "defaultMessage": "!!!Toggle Developer Tools",
304 "file": "src/lib/Menu.js", 317 "file": "src/lib/Menu.js",
305 "start": { 318 "start": {
306 "line": 110, 319 "line": 114,
307 "column": 18 320 "column": 18
308 }, 321 },
309 "end": { 322 "end": {
310 "line": 113, 323 "line": 117,
311 "column": 3 324 "column": 3
312 } 325 }
313 }, 326 },
@@ -316,11 +329,11 @@
316 "defaultMessage": "!!!Toggle Todos Developer Tools", 329 "defaultMessage": "!!!Toggle Todos Developer Tools",
317 "file": "src/lib/Menu.js", 330 "file": "src/lib/Menu.js",
318 "start": { 331 "start": {
319 "line": 114, 332 "line": 118,
320 "column": 23 333 "column": 23
321 }, 334 },
322 "end": { 335 "end": {
323 "line": 117, 336 "line": 121,
324 "column": 3 337 "column": 3
325 } 338 }
326 }, 339 },
@@ -329,11 +342,11 @@
329 "defaultMessage": "!!!Toggle Service Developer Tools", 342 "defaultMessage": "!!!Toggle Service Developer Tools",
330 "file": "src/lib/Menu.js", 343 "file": "src/lib/Menu.js",
331 "start": { 344 "start": {
332 "line": 118, 345 "line": 122,
333 "column": 25 346 "column": 25
334 }, 347 },
335 "end": { 348 "end": {
336 "line": 121, 349 "line": 125,
337 "column": 3 350 "column": 3
338 } 351 }
339 }, 352 },
@@ -342,11 +355,11 @@
342 "defaultMessage": "!!!Reload Service", 355 "defaultMessage": "!!!Reload Service",
343 "file": "src/lib/Menu.js", 356 "file": "src/lib/Menu.js",
344 "start": { 357 "start": {
345 "line": 122, 358 "line": 126,
346 "column": 17 359 "column": 17
347 }, 360 },
348 "end": { 361 "end": {
349 "line": 125, 362 "line": 129,
350 "column": 3 363 "column": 3
351 } 364 }
352 }, 365 },
@@ -355,11 +368,11 @@
355 "defaultMessage": "!!!Reload Ferdi", 368 "defaultMessage": "!!!Reload Ferdi",
356 "file": "src/lib/Menu.js", 369 "file": "src/lib/Menu.js",
357 "start": { 370 "start": {
358 "line": 126, 371 "line": 130,
359 "column": 15 372 "column": 15
360 }, 373 },
361 "end": { 374 "end": {
362 "line": 129, 375 "line": 133,
363 "column": 3 376 "column": 3
364 } 377 }
365 }, 378 },
@@ -368,11 +381,11 @@
368 "defaultMessage": "!!!Lock Ferdi", 381 "defaultMessage": "!!!Lock Ferdi",
369 "file": "src/lib/Menu.js", 382 "file": "src/lib/Menu.js",
370 "start": { 383 "start": {
371 "line": 130, 384 "line": 134,
372 "column": 13 385 "column": 13
373 }, 386 },
374 "end": { 387 "end": {
375 "line": 133, 388 "line": 137,
376 "column": 3 389 "column": 3
377 } 390 }
378 }, 391 },
@@ -381,11 +394,11 @@
381 "defaultMessage": "!!!Minimize", 394 "defaultMessage": "!!!Minimize",
382 "file": "src/lib/Menu.js", 395 "file": "src/lib/Menu.js",
383 "start": { 396 "start": {
384 "line": 134, 397 "line": 138,
385 "column": 12 398 "column": 12
386 }, 399 },
387 "end": { 400 "end": {
388 "line": 137, 401 "line": 141,
389 "column": 3 402 "column": 3
390 } 403 }
391 }, 404 },
@@ -394,11 +407,11 @@
394 "defaultMessage": "!!!Close", 407 "defaultMessage": "!!!Close",
395 "file": "src/lib/Menu.js", 408 "file": "src/lib/Menu.js",
396 "start": { 409 "start": {
397 "line": 138, 410 "line": 142,
398 "column": 9 411 "column": 9
399 }, 412 },
400 "end": { 413 "end": {
401 "line": 141, 414 "line": 145,
402 "column": 3 415 "column": 3
403 } 416 }
404 }, 417 },
@@ -407,11 +420,11 @@
407 "defaultMessage": "!!!Learn More", 420 "defaultMessage": "!!!Learn More",
408 "file": "src/lib/Menu.js", 421 "file": "src/lib/Menu.js",
409 "start": { 422 "start": {
410 "line": 142, 423 "line": 146,
411 "column": 13 424 "column": 13
412 }, 425 },
413 "end": { 426 "end": {
414 "line": 145, 427 "line": 149,
415 "column": 3 428 "column": 3
416 } 429 }
417 }, 430 },
@@ -420,11 +433,11 @@
420 "defaultMessage": "!!!Changelog", 433 "defaultMessage": "!!!Changelog",
421 "file": "src/lib/Menu.js", 434 "file": "src/lib/Menu.js",
422 "start": { 435 "start": {
423 "line": 146, 436 "line": 150,
424 "column": 13 437 "column": 13
425 }, 438 },
426 "end": { 439 "end": {
427 "line": 149, 440 "line": 153,
428 "column": 3 441 "column": 3
429 } 442 }
430 }, 443 },
@@ -433,11 +446,11 @@
433 "defaultMessage": "!!!Support", 446 "defaultMessage": "!!!Support",
434 "file": "src/lib/Menu.js", 447 "file": "src/lib/Menu.js",
435 "start": { 448 "start": {
436 "line": 150, 449 "line": 154,
437 "column": 11 450 "column": 11
438 }, 451 },
439 "end": { 452 "end": {
440 "line": 153, 453 "line": 157,
441 "column": 3 454 "column": 3
442 } 455 }
443 }, 456 },
@@ -446,11 +459,11 @@
446 "defaultMessage": "!!!Copy Debug Information", 459 "defaultMessage": "!!!Copy Debug Information",
447 "file": "src/lib/Menu.js", 460 "file": "src/lib/Menu.js",
448 "start": { 461 "start": {
449 "line": 154, 462 "line": 158,
450 "column": 13 463 "column": 13
451 }, 464 },
452 "end": { 465 "end": {
453 "line": 157, 466 "line": 161,
454 "column": 3 467 "column": 3
455 } 468 }
456 }, 469 },
@@ -459,11 +472,11 @@
459 "defaultMessage": "!!!Publish Debug Information", 472 "defaultMessage": "!!!Publish Debug Information",
460 "file": "src/lib/Menu.js", 473 "file": "src/lib/Menu.js",
461 "start": { 474 "start": {
462 "line": 158, 475 "line": 162,
463 "column": 20 476 "column": 20
464 }, 477 },
465 "end": { 478 "end": {
466 "line": 161, 479 "line": 165,
467 "column": 3 480 "column": 3
468 } 481 }
469 }, 482 },
@@ -472,11 +485,11 @@
472 "defaultMessage": "!!!Ferdi Debug Information", 485 "defaultMessage": "!!!Ferdi Debug Information",
473 "file": "src/lib/Menu.js", 486 "file": "src/lib/Menu.js",
474 "start": { 487 "start": {
475 "line": 162, 488 "line": 166,
476 "column": 27 489 "column": 27
477 }, 490 },
478 "end": { 491 "end": {
479 "line": 165, 492 "line": 169,
480 "column": 3 493 "column": 3
481 } 494 }
482 }, 495 },
@@ -485,11 +498,11 @@
485 "defaultMessage": "!!!Your Debug Information has been copied to your clipboard.", 498 "defaultMessage": "!!!Your Debug Information has been copied to your clipboard.",
486 "file": "src/lib/Menu.js", 499 "file": "src/lib/Menu.js",
487 "start": { 500 "start": {
488 "line": 166, 501 "line": 170,
489 "column": 23 502 "column": 23
490 }, 503 },
491 "end": { 504 "end": {
492 "line": 169, 505 "line": 173,
493 "column": 3 506 "column": 3
494 } 507 }
495 }, 508 },
@@ -498,11 +511,11 @@
498 "defaultMessage": "!!!Unlock with Touch ID", 511 "defaultMessage": "!!!Unlock with Touch ID",
499 "file": "src/lib/Menu.js", 512 "file": "src/lib/Menu.js",
500 "start": { 513 "start": {
501 "line": 170, 514 "line": 174,
502 "column": 11 515 "column": 11
503 }, 516 },
504 "end": { 517 "end": {
505 "line": 173, 518 "line": 177,
506 "column": 3 519 "column": 3
507 } 520 }
508 }, 521 },
@@ -511,11 +524,11 @@
511 "defaultMessage": "!!!unlock via Touch ID", 524 "defaultMessage": "!!!unlock via Touch ID",
512 "file": "src/lib/Menu.js", 525 "file": "src/lib/Menu.js",
513 "start": { 526 "start": {
514 "line": 174, 527 "line": 178,
515 "column": 17 528 "column": 17
516 }, 529 },
517 "end": { 530 "end": {
518 "line": 177, 531 "line": 181,
519 "column": 3 532 "column": 3
520 } 533 }
521 }, 534 },
@@ -524,11 +537,11 @@
524 "defaultMessage": "!!!Terms of Service", 537 "defaultMessage": "!!!Terms of Service",
525 "file": "src/lib/Menu.js", 538 "file": "src/lib/Menu.js",
526 "start": { 539 "start": {
527 "line": 178, 540 "line": 182,
528 "column": 7 541 "column": 7
529 }, 542 },
530 "end": { 543 "end": {
531 "line": 181, 544 "line": 185,
532 "column": 3 545 "column": 3
533 } 546 }
534 }, 547 },
@@ -537,11 +550,11 @@
537 "defaultMessage": "!!!Privacy Statement", 550 "defaultMessage": "!!!Privacy Statement",
538 "file": "src/lib/Menu.js", 551 "file": "src/lib/Menu.js",
539 "start": { 552 "start": {
540 "line": 182, 553 "line": 186,
541 "column": 11 554 "column": 11
542 }, 555 },
543 "end": { 556 "end": {
544 "line": 185, 557 "line": 189,
545 "column": 3 558 "column": 3
546 } 559 }
547 }, 560 },
@@ -550,11 +563,11 @@
550 "defaultMessage": "!!!File", 563 "defaultMessage": "!!!File",
551 "file": "src/lib/Menu.js", 564 "file": "src/lib/Menu.js",
552 "start": { 565 "start": {
553 "line": 186, 566 "line": 190,
554 "column": 8 567 "column": 8
555 }, 568 },
556 "end": { 569 "end": {
557 "line": 189, 570 "line": 193,
558 "column": 3 571 "column": 3
559 } 572 }
560 }, 573 },
@@ -563,11 +576,11 @@
563 "defaultMessage": "!!!View", 576 "defaultMessage": "!!!View",
564 "file": "src/lib/Menu.js", 577 "file": "src/lib/Menu.js",
565 "start": { 578 "start": {
566 "line": 190, 579 "line": 194,
567 "column": 8 580 "column": 8
568 }, 581 },
569 "end": { 582 "end": {
570 "line": 193, 583 "line": 197,
571 "column": 3 584 "column": 3
572 } 585 }
573 }, 586 },
@@ -576,11 +589,11 @@
576 "defaultMessage": "!!!Services", 589 "defaultMessage": "!!!Services",
577 "file": "src/lib/Menu.js", 590 "file": "src/lib/Menu.js",
578 "start": { 591 "start": {
579 "line": 194, 592 "line": 198,
580 "column": 12 593 "column": 12
581 }, 594 },
582 "end": { 595 "end": {
583 "line": 197, 596 "line": 201,
584 "column": 3 597 "column": 3
585 } 598 }
586 }, 599 },
@@ -589,11 +602,11 @@
589 "defaultMessage": "!!!Window", 602 "defaultMessage": "!!!Window",
590 "file": "src/lib/Menu.js", 603 "file": "src/lib/Menu.js",
591 "start": { 604 "start": {
592 "line": 198, 605 "line": 202,
593 "column": 10 606 "column": 10
594 }, 607 },
595 "end": { 608 "end": {
596 "line": 201, 609 "line": 205,
597 "column": 3 610 "column": 3
598 } 611 }
599 }, 612 },
@@ -602,11 +615,11 @@
602 "defaultMessage": "!!!Help", 615 "defaultMessage": "!!!Help",
603 "file": "src/lib/Menu.js", 616 "file": "src/lib/Menu.js",
604 "start": { 617 "start": {
605 "line": 202, 618 "line": 206,
606 "column": 8 619 "column": 8
607 }, 620 },
608 "end": { 621 "end": {
609 "line": 205, 622 "line": 209,
610 "column": 3 623 "column": 3
611 } 624 }
612 }, 625 },
@@ -615,11 +628,11 @@
615 "defaultMessage": "!!!About Ferdi", 628 "defaultMessage": "!!!About Ferdi",
616 "file": "src/lib/Menu.js", 629 "file": "src/lib/Menu.js",
617 "start": { 630 "start": {
618 "line": 206, 631 "line": 210,
619 "column": 9 632 "column": 9
620 }, 633 },
621 "end": { 634 "end": {
622 "line": 209, 635 "line": 213,
623 "column": 3 636 "column": 3
624 } 637 }
625 }, 638 },
@@ -628,11 +641,11 @@
628 "defaultMessage": "!!!What's new?", 641 "defaultMessage": "!!!What's new?",
629 "file": "src/lib/Menu.js", 642 "file": "src/lib/Menu.js",
630 "start": { 643 "start": {
631 "line": 210, 644 "line": 214,
632 "column": 16 645 "column": 16
633 }, 646 },
634 "end": { 647 "end": {
635 "line": 213, 648 "line": 217,
636 "column": 3 649 "column": 3
637 } 650 }
638 }, 651 },
@@ -641,11 +654,11 @@
641 "defaultMessage": "!!!Settings", 654 "defaultMessage": "!!!Settings",
642 "file": "src/lib/Menu.js", 655 "file": "src/lib/Menu.js",
643 "start": { 656 "start": {
644 "line": 214, 657 "line": 218,
645 "column": 12 658 "column": 12
646 }, 659 },
647 "end": { 660 "end": {
648 "line": 217, 661 "line": 221,
649 "column": 3 662 "column": 3
650 } 663 }
651 }, 664 },
@@ -654,11 +667,11 @@
654 "defaultMessage": "!!!Check for updates", 667 "defaultMessage": "!!!Check for updates",
655 "file": "src/lib/Menu.js", 668 "file": "src/lib/Menu.js",
656 "start": { 669 "start": {
657 "line": 218, 670 "line": 222,
658 "column": 19 671 "column": 19
659 }, 672 },
660 "end": { 673 "end": {
661 "line": 221, 674 "line": 225,
662 "column": 3 675 "column": 3
663 } 676 }
664 }, 677 },
@@ -667,11 +680,11 @@
667 "defaultMessage": "!!!Hide", 680 "defaultMessage": "!!!Hide",
668 "file": "src/lib/Menu.js", 681 "file": "src/lib/Menu.js",
669 "start": { 682 "start": {
670 "line": 222, 683 "line": 226,
671 "column": 8 684 "column": 8
672 }, 685 },
673 "end": { 686 "end": {
674 "line": 225, 687 "line": 229,
675 "column": 3 688 "column": 3
676 } 689 }
677 }, 690 },
@@ -680,11 +693,11 @@
680 "defaultMessage": "!!!Hide Others", 693 "defaultMessage": "!!!Hide Others",
681 "file": "src/lib/Menu.js", 694 "file": "src/lib/Menu.js",
682 "start": { 695 "start": {
683 "line": 226, 696 "line": 230,
684 "column": 14 697 "column": 14
685 }, 698 },
686 "end": { 699 "end": {
687 "line": 229, 700 "line": 233,
688 "column": 3 701 "column": 3
689 } 702 }
690 }, 703 },
@@ -693,11 +706,11 @@
693 "defaultMessage": "!!!Unhide", 706 "defaultMessage": "!!!Unhide",
694 "file": "src/lib/Menu.js", 707 "file": "src/lib/Menu.js",
695 "start": { 708 "start": {
696 "line": 230, 709 "line": 234,
697 "column": 10 710 "column": 10
698 }, 711 },
699 "end": { 712 "end": {
700 "line": 233, 713 "line": 237,
701 "column": 3 714 "column": 3
702 } 715 }
703 }, 716 },
@@ -706,11 +719,11 @@
706 "defaultMessage": "!!!Auto-hide menu bar", 719 "defaultMessage": "!!!Auto-hide menu bar",
707 "file": "src/lib/Menu.js", 720 "file": "src/lib/Menu.js",
708 "start": { 721 "start": {
709 "line": 234, 722 "line": 238,
710 "column": 19 723 "column": 19
711 }, 724 },
712 "end": { 725 "end": {
713 "line": 237, 726 "line": 241,
714 "column": 3 727 "column": 3
715 } 728 }
716 }, 729 },
@@ -719,11 +732,11 @@
719 "defaultMessage": "!!!Quit", 732 "defaultMessage": "!!!Quit",
720 "file": "src/lib/Menu.js", 733 "file": "src/lib/Menu.js",
721 "start": { 734 "start": {
722 "line": 238, 735 "line": 242,
723 "column": 8 736 "column": 8
724 }, 737 },
725 "end": { 738 "end": {
726 "line": 241, 739 "line": 245,
727 "column": 3 740 "column": 3
728 } 741 }
729 }, 742 },
@@ -732,11 +745,11 @@
732 "defaultMessage": "!!!Add New Service...", 745 "defaultMessage": "!!!Add New Service...",
733 "file": "src/lib/Menu.js", 746 "file": "src/lib/Menu.js",
734 "start": { 747 "start": {
735 "line": 242, 748 "line": 246,
736 "column": 17 749 "column": 17
737 }, 750 },
738 "end": { 751 "end": {
739 "line": 245, 752 "line": 249,
740 "column": 3 753 "column": 3
741 } 754 }
742 }, 755 },
@@ -745,11 +758,11 @@
745 "defaultMessage": "!!!Add New Workspace...", 758 "defaultMessage": "!!!Add New Workspace...",
746 "file": "src/lib/Menu.js", 759 "file": "src/lib/Menu.js",
747 "start": { 760 "start": {
748 "line": 246, 761 "line": 250,
749 "column": 19 762 "column": 19
750 }, 763 },
751 "end": { 764 "end": {
752 "line": 249, 765 "line": 253,
753 "column": 3 766 "column": 3
754 } 767 }
755 }, 768 },
@@ -758,11 +771,11 @@
758 "defaultMessage": "!!!Open workspace drawer", 771 "defaultMessage": "!!!Open workspace drawer",
759 "file": "src/lib/Menu.js", 772 "file": "src/lib/Menu.js",
760 "start": { 773 "start": {
761 "line": 250, 774 "line": 254,
762 "column": 23 775 "column": 23
763 }, 776 },
764 "end": { 777 "end": {
765 "line": 253, 778 "line": 257,
766 "column": 3 779 "column": 3
767 } 780 }
768 }, 781 },
@@ -771,11 +784,11 @@
771 "defaultMessage": "!!!Close workspace drawer", 784 "defaultMessage": "!!!Close workspace drawer",
772 "file": "src/lib/Menu.js", 785 "file": "src/lib/Menu.js",
773 "start": { 786 "start": {
774 "line": 254, 787 "line": 258,
775 "column": 24 788 "column": 24
776 }, 789 },
777 "end": { 790 "end": {
778 "line": 257, 791 "line": 261,
779 "column": 3 792 "column": 3
780 } 793 }
781 }, 794 },
@@ -784,11 +797,11 @@
784 "defaultMessage": "!!!Activate next service...", 797 "defaultMessage": "!!!Activate next service...",
785 "file": "src/lib/Menu.js", 798 "file": "src/lib/Menu.js",
786 "start": { 799 "start": {
787 "line": 258, 800 "line": 262,
788 "column": 23 801 "column": 23
789 }, 802 },
790 "end": { 803 "end": {
791 "line": 261, 804 "line": 265,
792 "column": 3 805 "column": 3
793 } 806 }
794 }, 807 },
@@ -797,11 +810,11 @@
797 "defaultMessage": "!!!Activate previous service...", 810 "defaultMessage": "!!!Activate previous service...",
798 "file": "src/lib/Menu.js", 811 "file": "src/lib/Menu.js",
799 "start": { 812 "start": {
800 "line": 262, 813 "line": 266,
801 "column": 27 814 "column": 27
802 }, 815 },
803 "end": { 816 "end": {
804 "line": 265, 817 "line": 269,
805 "column": 3 818 "column": 3
806 } 819 }
807 }, 820 },
@@ -810,11 +823,11 @@
810 "defaultMessage": "!!!Disable notifications & audio", 823 "defaultMessage": "!!!Disable notifications & audio",
811 "file": "src/lib/Menu.js", 824 "file": "src/lib/Menu.js",
812 "start": { 825 "start": {
813 "line": 266, 826 "line": 270,
814 "column": 11 827 "column": 11
815 }, 828 },
816 "end": { 829 "end": {
817 "line": 269, 830 "line": 273,
818 "column": 3 831 "column": 3
819 } 832 }
820 }, 833 },
@@ -823,11 +836,11 @@
823 "defaultMessage": "!!!Enable notifications & audio", 836 "defaultMessage": "!!!Enable notifications & audio",
824 "file": "src/lib/Menu.js", 837 "file": "src/lib/Menu.js",
825 "start": { 838 "start": {
826 "line": 270, 839 "line": 274,
827 "column": 13 840 "column": 13
828 }, 841 },
829 "end": { 842 "end": {
830 "line": 273, 843 "line": 277,
831 "column": 3 844 "column": 3
832 } 845 }
833 }, 846 },
@@ -836,11 +849,11 @@
836 "defaultMessage": "!!!Workspaces", 849 "defaultMessage": "!!!Workspaces",
837 "file": "src/lib/Menu.js", 850 "file": "src/lib/Menu.js",
838 "start": { 851 "start": {
839 "line": 274, 852 "line": 278,
840 "column": 14 853 "column": 14
841 }, 854 },
842 "end": { 855 "end": {
843 "line": 277, 856 "line": 281,
844 "column": 3 857 "column": 3
845 } 858 }
846 }, 859 },
@@ -849,11 +862,11 @@
849 "defaultMessage": "!!!Default", 862 "defaultMessage": "!!!Default",
850 "file": "src/lib/Menu.js", 863 "file": "src/lib/Menu.js",
851 "start": { 864 "start": {
852 "line": 278, 865 "line": 282,
853 "column": 20 866 "column": 20
854 }, 867 },
855 "end": { 868 "end": {
856 "line": 281, 869 "line": 285,
857 "column": 3 870 "column": 3
858 } 871 }
859 }, 872 },
@@ -862,11 +875,11 @@
862 "defaultMessage": "!!!Todos", 875 "defaultMessage": "!!!Todos",
863 "file": "src/lib/Menu.js", 876 "file": "src/lib/Menu.js",
864 "start": { 877 "start": {
865 "line": 282, 878 "line": 286,
866 "column": 9 879 "column": 9
867 }, 880 },
868 "end": { 881 "end": {
869 "line": 285, 882 "line": 289,
870 "column": 3 883 "column": 3
871 } 884 }
872 }, 885 },
@@ -875,11 +888,11 @@
875 "defaultMessage": "!!!Open Todos drawer", 888 "defaultMessage": "!!!Open Todos drawer",
876 "file": "src/lib/Menu.js", 889 "file": "src/lib/Menu.js",
877 "start": { 890 "start": {
878 "line": 286, 891 "line": 290,
879 "column": 19 892 "column": 19
880 }, 893 },
881 "end": { 894 "end": {
882 "line": 289, 895 "line": 293,
883 "column": 3 896 "column": 3
884 } 897 }
885 }, 898 },
@@ -888,11 +901,11 @@
888 "defaultMessage": "!!!Close Todos drawer", 901 "defaultMessage": "!!!Close Todos drawer",
889 "file": "src/lib/Menu.js", 902 "file": "src/lib/Menu.js",
890 "start": { 903 "start": {
891 "line": 290, 904 "line": 294,
892 "column": 20 905 "column": 20
893 }, 906 },
894 "end": { 907 "end": {
895 "line": 293, 908 "line": 297,
896 "column": 3 909 "column": 3
897 } 910 }
898 }, 911 },
@@ -901,11 +914,11 @@
901 "defaultMessage": "!!!Enable Todos", 914 "defaultMessage": "!!!Enable Todos",
902 "file": "src/lib/Menu.js", 915 "file": "src/lib/Menu.js",
903 "start": { 916 "start": {
904 "line": 294, 917 "line": 298,
905 "column": 15 918 "column": 15
906 }, 919 },
907 "end": { 920 "end": {
908 "line": 297, 921 "line": 301,
909 "column": 3 922 "column": 3
910 } 923 }
911 }, 924 },
@@ -914,11 +927,11 @@
914 "defaultMessage": "!!!Home", 927 "defaultMessage": "!!!Home",
915 "file": "src/lib/Menu.js", 928 "file": "src/lib/Menu.js",
916 "start": { 929 "start": {
917 "line": 298, 930 "line": 302,
918 "column": 17 931 "column": 17
919 }, 932 },
920 "end": { 933 "end": {
921 "line": 301, 934 "line": 305,
922 "column": 3 935 "column": 3
923 } 936 }
924 } 937 }
diff --git a/src/lib/Menu.js b/src/lib/Menu.js
index 957621f94..4547e84f9 100644
--- a/src/lib/Menu.js
+++ b/src/lib/Menu.js
@@ -51,6 +51,10 @@ const menuItems = defineMessages({
51 id: 'menu.edit.selectAll', 51 id: 'menu.edit.selectAll',
52 defaultMessage: '!!!Select All', 52 defaultMessage: '!!!Select All',
53 }, 53 },
54 findInPage: {
55 id: 'menu.edit.findInPage',
56 defaultMessage: '!!!Find in Page',
57 },
54 speech: { 58 speech: {
55 id: 'menu.edit.speech', 59 id: 'menu.edit.speech',
56 defaultMessage: '!!!Speech', 60 defaultMessage: '!!!Speech',
@@ -376,6 +380,27 @@ const _templateFactory = (intl, locked) => [
376 type: 'separator', 380 type: 'separator',
377 }, 381 },
378 { 382 {
383 label: intl.formatMessage(menuItems.findInPage),
384 accelerator: 'CmdOrCtrl+F',
385 click() {
386 // Check if there is a service active
387 if (!window.ferdi.stores.services.active) return;
388
389 // Focus webview so find in page popup gets focused
390 window.ferdi.stores.services.active.webview.focus();
391
392 const currentService = window.ferdi.stores.services.active.id;
393 window.ferdi.actions.service.sendIPCMessage({
394 serviceId: currentService,
395 channel: 'find-in-page',
396 args: {},
397 });
398 },
399 },
400 {
401 type: 'separator',
402 },
403 {
379 label: intl.formatMessage(menuItems.back), 404 label: intl.formatMessage(menuItems.back),
380 accelerator: 'CmdOrCtrl+Left', 405 accelerator: 'CmdOrCtrl+Left',
381 click() { 406 click() {
@@ -584,6 +609,27 @@ const _titleBarTemplateFactory = (intl, locked) => [
584 type: 'separator', 609 type: 'separator',
585 }, 610 },
586 { 611 {
612 label: intl.formatMessage(menuItems.findInPage),
613 accelerator: 'CmdOrCtrl+F',
614 click() {
615 // Check if there is a service active
616 if (!window.ferdi.stores.services.active) return;
617
618 // Focus webview so find in page popup gets focused
619 window.ferdi.stores.services.active.webview.focus();
620
621 const currentService = window.ferdi.stores.services.active.id;
622 window.ferdi.actions.service.sendIPCMessage({
623 serviceId: currentService,
624 channel: 'find-in-page',
625 args: {},
626 });
627 },
628 },
629 {
630 type: 'separator',
631 },
632 {
587 label: intl.formatMessage(menuItems.back), 633 label: intl.formatMessage(menuItems.back),
588 accelerator: 'CmdOrCtrl+Left', 634 accelerator: 'CmdOrCtrl+Left',
589 click() { 635 click() {
@@ -861,7 +907,7 @@ export default class FranzMenu {
861 }, 907 },
862 }, { 908 }, {
863 type: 'separator', 909 type: 'separator',
864 visible: touchIdEnabled 910 visible: touchIdEnabled,
865 }); 911 });
866 } 912 }
867 913
diff --git a/src/stores/AppStore.js b/src/stores/AppStore.js
index 36e6efd4f..593bf341e 100644
--- a/src/stores/AppStore.js
+++ b/src/stores/AppStore.js
@@ -202,7 +202,7 @@ export default class AppStore extends Store {
202 powerMonitor.on('resume', () => { 202 powerMonitor.on('resume', () => {
203 debug('System resumed, last suspended on', this.timeSuspensionStart.toString()); 203 debug('System resumed, last suspended on', this.timeSuspensionStart.toString());
204 204
205 if (this.timeSuspensionStart.add(10, 'm').isBefore(moment())) { 205 if (this.timeSuspensionStart.add(10, 'm').isBefore(moment()) && this.stores.settings.app.get('reloadAfterResume')) {
206 debug('Reloading services, user info and features'); 206 debug('Reloading services, user info and features');
207 207
208 setTimeout(() => { 208 setTimeout(() => {
diff --git a/src/stores/ServicesStore.js b/src/stores/ServicesStore.js
index ae6ba11c5..985887d2d 100644
--- a/src/stores/ServicesStore.js
+++ b/src/stores/ServicesStore.js
@@ -766,7 +766,7 @@ export default class ServicesStore extends Store {
766 const isMuted = isAppMuted || service.isMuted; 766 const isMuted = isAppMuted || service.isMuted;
767 767
768 if (isAttached) { 768 if (isAttached) {
769 service.webview.audioMuted = isMuted; 769 service.webview.setAudioMuted(isMuted);
770 } 770 }
771 }); 771 });
772 } 772 }
diff --git a/src/webview/lib/RecipeWebview.js b/src/webview/lib/RecipeWebview.js
index 74d05fc2d..4fac21c55 100644
--- a/src/webview/lib/RecipeWebview.js
+++ b/src/webview/lib/RecipeWebview.js
@@ -19,6 +19,8 @@ class RecipeWebview {
19 19
20 loopFunc = () => null; 20 loopFunc = () => null;
21 21
22 darkModeHandler = false;
23
22 /** 24 /**
23 * Initialize the loop 25 * Initialize the loop
24 * 26 *
@@ -67,17 +69,28 @@ class RecipeWebview {
67 * be an absolute path to the file 69 * be an absolute path to the file
68 */ 70 */
69 injectCSS(...files) { 71 injectCSS(...files) {
70 files.forEach((file) => { 72 files.forEach(async (file) => {
71 const data = fs.readFileSync(file); 73 if (await fs.exists(file)) {
72 const styles = document.createElement('style'); 74 const data = await fs.readFile(file);
73 styles.innerHTML = data.toString(); 75 const styles = document.createElement('style');
76 styles.innerHTML = data.toString();
74 77
75 document.querySelector('head').appendChild(styles); 78 document.querySelector('head').appendChild(styles);
76 79
77 debug('Append styles', styles); 80 debug('Append styles', styles);
81 }
78 }); 82 });
79 } 83 }
80 84
85 /**
86 * Set a custom handler for turning on and off dark mode
87 *
88 * @param {function} handler
89 */
90 handleDarkMode(handler) {
91 this.darkModeHandler = handler;
92 }
93
81 onNotify(fn) { 94 onNotify(fn) {
82 if (typeof fn === 'function') { 95 if (typeof fn === 'function') {
83 window.Notification.prototype.onNotify = fn; 96 window.Notification.prototype.onNotify = fn;
diff --git a/src/webview/recipe.js b/src/webview/recipe.js
index 07d29f477..bad5a93b2 100644
--- a/src/webview/recipe.js
+++ b/src/webview/recipe.js
@@ -1,10 +1,11 @@
1/* eslint-disable import/first */ 1/* eslint-disable import/first */
2import { ipcRenderer } from 'electron'; 2import { ipcRenderer, remote } from 'electron';
3import path from 'path'; 3import path from 'path';
4import { autorun, computed, observable } from 'mobx'; 4import { autorun, computed, observable } from 'mobx';
5import fs from 'fs-extra'; 5import fs from 'fs-extra';
6import { loadModule } from 'cld3-asm'; 6import { loadModule } from 'cld3-asm';
7import { debounce } from 'lodash'; 7import { debounce } from 'lodash';
8import { FindInPage } from 'electron-find';
8 9
9// For some services darkreader tries to use the chrome extension message API 10// For some services darkreader tries to use the chrome extension message API
10// This will cause the service to fail loading 11// This will cause the service to fail loading
@@ -47,10 +48,15 @@ class RecipeController {
47 'settings-update': 'updateAppSettings', 48 'settings-update': 'updateAppSettings',
48 'service-settings-update': 'updateServiceSettings', 49 'service-settings-update': 'updateServiceSettings',
49 'get-service-id': 'serviceIdEcho', 50 'get-service-id': 'serviceIdEcho',
51 'find-in-page': 'openFindInPage',
50 }; 52 };
51 53
52 universalDarkModeInjected = false; 54 universalDarkModeInjected = false;
53 55
56 recipe = null;
57
58 hasUpdatedBeforeRecipeLoaded = false;
59
54 constructor() { 60 constructor() {
55 this.initialize(); 61 this.initialize();
56 } 62 }
@@ -61,6 +67,8 @@ class RecipeController {
61 67
62 cldIdentifier = null; 68 cldIdentifier = null;
63 69
70 findInPage = null;
71
64 async initialize() { 72 async initialize() {
65 Object.keys(this.ipcEvents).forEach((channel) => { 73 Object.keys(this.ipcEvents).forEach((channel) => {
66 ipcRenderer.on(channel, (...args) => { 74 ipcRenderer.on(channel, (...args) => {
@@ -73,6 +81,13 @@ class RecipeController {
73 setTimeout(() => ipcRenderer.sendToHost('hello'), 100); 81 setTimeout(() => ipcRenderer.sendToHost('hello'), 100);
74 await spellchecker(); 82 await spellchecker();
75 autorun(() => this.update()); 83 autorun(() => this.update());
84
85 document.addEventListener('DOMContentLoaded', () => {
86 this.findInPage = new FindInPage(remote.getCurrentWebContents(), {
87 inputFocusColor: '#CE9FFC',
88 textColor: '#212121',
89 });
90 });
76 } 91 }
77 92
78 loadRecipeModule(event, config, recipe) { 93 loadRecipeModule(event, config, recipe) {
@@ -82,11 +97,15 @@ class RecipeController {
82 // Delete module from cache 97 // Delete module from cache
83 delete require.cache[require.resolve(modulePath)]; 98 delete require.cache[require.resolve(modulePath)];
84 try { 99 try {
100 this.recipe = new RecipeWebview();
85 // eslint-disable-next-line 101 // eslint-disable-next-line
86 require(modulePath)(new RecipeWebview(), {...config, recipe,}); 102 require(modulePath)(this.recipe, {...config, recipe,});
87 debug('Initialize Recipe', config, recipe); 103 debug('Initialize Recipe', config, recipe);
88 104
89 this.settings.service = Object.assign(config, { recipe }); 105 this.settings.service = Object.assign(config, { recipe });
106
107 // Make sure to update the WebView, otherwise the custom darkmode handler may not be used
108 this.update();
90 } catch (err) { 109 } catch (err) {
91 console.error('Recipe initialization failed', err); 110 console.error('Recipe initialization failed', err);
92 } 111 }
@@ -125,6 +144,10 @@ class RecipeController {
125 } 144 }
126 } 145 }
127 146
147 openFindInPage() {
148 this.findInPage.openFindWindow();
149 }
150
128 update() { 151 update() {
129 debug('enableSpellchecking', this.settings.app.enableSpellchecking); 152 debug('enableSpellchecking', this.settings.app.enableSpellchecking);
130 debug('isDarkModeEnabled', this.settings.service.isDarkModeEnabled); 153 debug('isDarkModeEnabled', this.settings.service.isDarkModeEnabled);
@@ -151,12 +174,25 @@ class RecipeController {
151 } 174 }
152 } 175 }
153 176
177 if (!this.recipe) {
178 this.hasUpdatedBeforeRecipeLoaded = true;
179 }
180
154 console.log( 181 console.log(
155 'Darkmode enabled?', 182 'Darkmode enabled?',
156 this.settings.service.isDarkModeEnabled, 183 this.settings.service.isDarkModeEnabled,
157 'Dark theme active?', 184 'Dark theme active?',
158 this.settings.app.isDarkThemeActive, 185 this.settings.app.isDarkThemeActive,
159 ); 186 );
187
188 const handlerConfig = {
189 removeDarkModeStyle,
190 disableDarkMode,
191 enableDarkMode,
192 injectDarkModeStyle: () => injectDarkModeStyle(this.settings.service.recipe.path),
193 isDarkModeStyleInjected,
194 };
195
160 if (this.settings.service.isDarkModeEnabled && this.settings.app.isDarkThemeActive !== false) { 196 if (this.settings.service.isDarkModeEnabled && this.settings.app.isDarkThemeActive !== false) {
161 debug('Enable dark mode'); 197 debug('Enable dark mode');
162 198
@@ -166,7 +202,19 @@ class RecipeController {
166 202
167 console.log('darkmode.css exists? ', darkModeExists ? 'Yes' : 'No'); 203 console.log('darkmode.css exists? ', darkModeExists ? 'Yes' : 'No');
168 204
169 if (darkModeExists) { 205 // Check if recipe has a custom dark mode handler
206 if (this.recipe && this.recipe.darkModeHandler) {
207 console.log('Using custom dark mode handler');
208
209 // Remove other dark mode styles if they were already loaded
210 if (this.hasUpdatedBeforeRecipeLoaded) {
211 this.hasUpdatedBeforeRecipeLoaded = false;
212 removeDarkModeStyle();
213 disableDarkMode();
214 }
215
216 this.recipe.darkModeHandler(true, handlerConfig);
217 } else if (darkModeExists) {
170 console.log('Injecting darkmode.css'); 218 console.log('Injecting darkmode.css');
171 injectDarkModeStyle(this.settings.service.recipe.path); 219 injectDarkModeStyle(this.settings.service.recipe.path);
172 220
@@ -186,7 +234,16 @@ class RecipeController {
186 debug('Remove dark mode'); 234 debug('Remove dark mode');
187 console.log('DarkMode disabled - removing remaining styles'); 235 console.log('DarkMode disabled - removing remaining styles');
188 236
189 if (isDarkModeStyleInjected()) { 237 if (this.recipe && this.recipe.darkModeHandler) {
238 // Remove other dark mode styles if they were already loaded
239 if (this.hasUpdatedBeforeRecipeLoaded) {
240 this.hasUpdatedBeforeRecipeLoaded = false;
241 removeDarkModeStyle();
242 disableDarkMode();
243 }
244
245 this.recipe.darkModeHandler(false, handlerConfig);
246 } else if (isDarkModeStyleInjected()) {
190 console.log('Removing injected darkmode.css'); 247 console.log('Removing injected darkmode.css');
191 removeDarkModeStyle(); 248 removeDarkModeStyle();
192 } else { 249 } else {