Implement simple spellchecker
This commit is contained in:
26
src/browser/js/contextMenu.js
Normal file
26
src/browser/js/contextMenu.js
Normal file
@@ -0,0 +1,26 @@
|
||||
const {ipcRenderer} = require('electron');
|
||||
const electronContextMenu = require('electron-context-menu');
|
||||
|
||||
function getSuggestionsMenus(win, suggestions) {
|
||||
return suggestions.map((s) => ({
|
||||
label: s,
|
||||
click() {
|
||||
(win.webContents || win.getWebContents()).replaceMisspelling(s);
|
||||
}
|
||||
}));
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
setup(win) {
|
||||
electronContextMenu({
|
||||
window: win,
|
||||
prepend(params) {
|
||||
if (params.isEditable && params.misspelledWord !== '') {
|
||||
const suggestions = ipcRenderer.sendSync('get-spelling-suggestions', params.misspelledWord);
|
||||
return getSuggestionsMenus(win, suggestions);
|
||||
}
|
||||
return [];
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
Reference in New Issue
Block a user