aboutsummaryrefslogtreecommitdiffstats
path: root/src/webview/spellchecker.js
diff options
context:
space:
mode:
authorLibravatar Stefan Malzner <stefan@adlk.io>2017-11-14 21:04:41 +0100
committerLibravatar Stefan Malzner <stefan@adlk.io>2017-11-14 21:04:41 +0100
commitdcab45a323f53a10ff5f419daa5ba6442817eebc (patch)
treeb9212d00a8c3a088292180d72895dfeef3536ed1 /src/webview/spellchecker.js
parent[wip] share user settings with service (diff)
downloadferdium-app-dcab45a323f53a10ff5f419daa5ba6442817eebc.tar.gz
ferdium-app-dcab45a323f53a10ff5f419daa5ba6442817eebc.tar.zst
ferdium-app-dcab45a323f53a10ff5f419daa5ba6442817eebc.zip
feat(App): Add option to enable/disable spell checker
Diffstat (limited to 'src/webview/spellchecker.js')
-rw-r--r--src/webview/spellchecker.js40
1 files changed, 28 insertions, 12 deletions
diff --git a/src/webview/spellchecker.js b/src/webview/spellchecker.js
index ec8807874..5beb77e03 100644
--- a/src/webview/spellchecker.js
+++ b/src/webview/spellchecker.js
@@ -1,14 +1,30 @@
1import { SpellCheckHandler, ContextMenuListener, ContextMenuBuilder } from 'electron-spellchecker'; 1import { SpellCheckHandler, ContextMenuListener, ContextMenuBuilder } from 'electron-spellchecker';
2 2
3window.spellCheckHandler = new SpellCheckHandler(); 3import { isMac } from '../environment';
4setTimeout(() => { 4
5 window.spellCheckHandler.attachToInput(); 5export default class Spellchecker {
6}, 1000); 6 isEnabled = false;
7 7 spellchecker = null;
8// TODO: should we set the language to user settings? 8
9// window.spellCheckHandler.switchLanguage('en-US'); 9 enable() {
10 10 this.spellchecker = new SpellCheckHandler();
11const contextMenuBuilder = new ContextMenuBuilder(window.spellCheckHandler); 11 if (!isMac) {
12const contextMenuListener = new ContextMenuListener((info) => { // eslint-disable-line 12 this.spellchecker.attachToInput();
13 contextMenuBuilder.showPopupMenu(info); 13 this.spellchecker.switchLanguage(navigator.language);
14}); 14 }
15
16 const contextMenuBuilder = new ContextMenuBuilder(this.spellchecker);
17
18 new ContextMenuListener((info) => { // eslint-disable-line
19 contextMenuBuilder.showPopupMenu(info);
20 });
21 }
22
23 // TODO: this does not work yet, needs more testing
24 // switchLanguage(language) {
25 // if (language !== 'auto') {
26 // this.spellchecker.switchLanguage(language);
27 // }
28 // }
29}
30