feat: add session.removeWordFromSpellCheckerDictionary API (#22039)

* feat: add session.removeWordFromSpellCheckerDictionary API

* rebase fixup
This commit is contained in:
Erick Zhao 2020-02-10 14:07:25 -08:00 committed by GitHub
parent 8ca4e761fd
commit 17abeca8b7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 26 additions and 0 deletions

View file

@ -495,6 +495,14 @@ Returns `Boolean` - Whether the word was successfully written to the custom dict
**Note:** On macOS and Windows 10 this word will be written to the OS custom dictionary as well
#### `ses.removeWordFromSpellCheckerDictionary(word)`
* `word` String - The word you want to remove from the dictionary
Returns `Boolean` - Whether the word was successfully removed from the custom dictionary.
**Note:** On macOS and Windows 10 this word will be removed from the OS custom dictionary as well
#### `ses.loadExtension(path)`
* `path` String - Path to a directory containing an unpacked Chrome extension

View file

@ -785,6 +785,21 @@ bool Session::AddWordToSpellCheckerDictionary(const std::string& word) {
#endif
return service->GetCustomDictionary()->AddWord(word);
}
bool Session::RemoveWordFromSpellCheckerDictionary(const std::string& word) {
SpellcheckService* service =
SpellcheckServiceFactory::GetForContext(browser_context_.get());
if (!service)
return false;
#if BUILDFLAG(USE_BROWSER_SPELLCHECKER)
if (spellcheck::UseBrowserSpellChecker()) {
spellcheck_platform::RemoveWord(service->platform_spell_checker(),
base::UTF8ToUTF16(word));
}
#endif
return service->GetCustomDictionary()->RemoveWord(word);
}
#endif
// static
@ -873,6 +888,8 @@ void Session::BuildPrototype(v8::Isolate* isolate,
&SetSpellCheckerDictionaryDownloadURL)
.SetMethod("addWordToSpellCheckerDictionary",
&Session::AddWordToSpellCheckerDictionary)
.SetMethod("removeWordFromSpellCheckerDictionary",
&Session::RemoveWordFromSpellCheckerDictionary)
#endif
.SetMethod("preconnect", &Session::Preconnect)
.SetProperty("cookies", &Session::Cookies)

View file

@ -96,6 +96,7 @@ class Session : public gin_helper::TrackableObject<Session>,
void SetSpellCheckerLanguages(gin_helper::ErrorThrower thrower,
const std::vector<std::string>& languages);
bool AddWordToSpellCheckerDictionary(const std::string& word);
bool RemoveWordFromSpellCheckerDictionary(const std::string& word);
#endif
#if BUILDFLAG(ENABLE_ELECTRON_EXTENSIONS)