Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1368)

Unified Diff: chrome/browser/extensions/api/input_ime/input_ime_api_nonchromeos.cc

Issue 2597413002: Makes the InputMethodEngine can be switched per profile when the top-level browser window is switch… (Closed)
Patch Set: . Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/api/input_ime/input_ime_api_nonchromeos.cc
diff --git a/chrome/browser/extensions/api/input_ime/input_ime_api_nonchromeos.cc b/chrome/browser/extensions/api/input_ime/input_ime_api_nonchromeos.cc
index 8d8778b812a0e9407f50384fa36dda1f59a20514..29a9791edc1292dfd2726fef8b5bf77c0d28dad2 100644
--- a/chrome/browser/extensions/api/input_ime/input_ime_api_nonchromeos.cc
+++ b/chrome/browser/extensions/api/input_ime/input_ime_api_nonchromeos.cc
@@ -91,6 +91,17 @@ class ImeObserverNonChromeOS : public ui::ImeObserver {
OnCompositionBoundsChanged::kEventName, std::move(args));
}
+ void OnRequestEngineSwitch() override {
+ Browser* browser = chrome::FindLastActive();
+ if (!browser)
+ return;
+ extensions::InputImeEventRouter* router =
+ extensions::GetInputImeEventRouter(browser->profile());
+ if (!router)
+ return;
+ ui::IMEBridge::Get()->SetCurrentEngineHandler(router->active_engine());
+ }
+
private:
// ImeObserver overrides.
void DispatchEventToExtension(

Powered by Google App Engine
This is Rietveld 408576698