-
Notifications
You must be signed in to change notification setti 8000 ngs - Fork 16k
Spell checking needs to recheck when the provider is changed #1291
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
8000
After looking more inside Blink, the current SpellCheck API interfaces in Blink doesn't support this usage. The SpellCheck in Blink will be triggered when the currently typing word is end, basically typing a space or a line break, and there is no way to reevaluate the words that have already been reevaluated. Suppose you have typed the following words with
Now you
The spell check will only check the word |
Chrome had this same issue two years ago: https://bugs.chromium.org/p/chromium/issues/detail?id=178379 (not sure if they solved it). |
I'm closing this since we are not able to fix this without Chromium fixing it on their side, people concerned about this issue should go to the issue above to get Chromium team's attention. |
Is not an ideal solution, but until this issue gets fixed at Chrome, you can try the following workaround: After changing the provider, use Javascript to change the caret position, making it go over every word. This works since moving the caret forces the spellchecker to re-evaluate every word touched by the caret. |
To Repro:
setSpellCheckProvider
to set up English spellcheckingsetSpellCheckProvider
again to check German wordsNow, half the sentence still has misspelling marks back from when we thought it was English:
We need to reevaluate all of the words in the input box whenever we call
setSpellCheckProvider
The text was updated successfully, but these errors were encountered: