diff options
author | Michal Klocek <michal.klocek@theqtcompany.com> | 2015-10-08 23:49:26 +0200 |
---|---|---|
committer | Michal Klocek <michal.klocek@theqtcompany.com> | 2016-02-01 15:57:30 +0000 |
commit | 4713387c052d54e0f5ea02efaeaa25931d1cd7ee (patch) | |
tree | 1ada7f8b38cf4c31ab90468a32b1a6df3c4a362b /src/core/content_browser_client_qt.cpp | |
parent | 1910ddb3e2869e50514da343aa6947e88f734c38 (diff) |
Add spell checker support
Integrate chromium spell checker:
* add spellchecker and dependencies to build
* underline misspelled words in html text areas
* right-click context menu shows up to 4 options to
correct the misspelled word
* toggle spell check from context menu
* add new qml and widget api calls to qwebengineprofile
to enable/disable spell check, select spell check language,
get list of supported languages/dictionaries
* register new qml spell check properties for QtWebEngine 1.3
* CONFIG+="no_spellcheck" to remove spellcheck support
Change-Id: Ie61434ab9493597d7759a6f33794f6859c4e3a4c
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
Diffstat (limited to 'src/core/content_browser_client_qt.cpp')
-rw-r--r-- | src/core/content_browser_client_qt.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/core/content_browser_client_qt.cpp b/src/core/content_browser_client_qt.cpp index 25cac53aa..54430b81c 100644 --- a/src/core/content_browser_client_qt.cpp +++ b/src/core/content_browser_client_qt.cpp @@ -41,6 +41,9 @@ #include "base/message_loop/message_loop.h" #include "base/threading/thread_restrictions.h" +#if defined(ENABLE_SPELLCHECK) +#include "chrome/browser/spellchecker/spellcheck_message_filter.h" +#endif #include "content/browser/renderer_host/render_view_host_delegate.h" #include "content/public/browser/browser_main_parts.h" #include "content/public/browser/child_process_security_policy.h" @@ -352,10 +355,14 @@ content::BrowserMainParts *ContentBrowserClientQt::CreateBrowserMainParts(const void ContentBrowserClientQt::RenderProcessWillLaunch(content::RenderProcessHost* host) { // FIXME: Add a settings variable to enable/disable the file scheme. - content::ChildProcessSecurityPolicy::GetInstance()->GrantScheme(host->GetID(), url::kFileScheme); + const int id = host->GetID(); + content::ChildProcessSecurityPolicy::GetInstance()->GrantScheme(id, url::kFileScheme); static_cast<BrowserContextQt*>(host->GetBrowserContext())->m_adapter->userScriptController()->renderProcessStartedWithHost(host); #if defined(ENABLE_PEPPER_CDMS) - host->AddFilter(new BrowserMessageFilterQt(host->GetID())); + host->AddFilter(new BrowserMessageFilterQt(id)); +#endif +#if defined(ENABLE_SPELLCHECK) + host->AddFilter(new SpellCheckMessageFilter(id)); #endif } |