Commit cf1a3fbd authored by shuchen@chromium.org's avatar shuchen@chromium.org

Only initialize the input method list for once, no need to re-initialize for each profile.

BUG=402222
TEST=Verified on linux_chromeos.

Review URL: https://codereview.chromium.org/467073002

Cr-Commit-Position: refs/heads/master@{#289414}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@289414 0039d316-1c4b-4281-b951-d872f2087c98
parent f5fb2ef3
...@@ -66,6 +66,13 @@ InputMethodManagerImpl::InputMethodManagerImpl( ...@@ -66,6 +66,13 @@ InputMethodManagerImpl::InputMethodManagerImpl(
keyboard_.reset(ImeKeyboard::Create()); keyboard_.reset(ImeKeyboard::Create());
else else
keyboard_.reset(new FakeImeKeyboard()); keyboard_.reset(new FakeImeKeyboard());
// Initializes the system IME list.
scoped_ptr<ComponentExtensionIMEManagerDelegate> comp_delegate(
new ComponentExtensionIMEManagerImpl());
component_extension_ime_manager_->Initialize(comp_delegate.Pass());
util_.ResetInputMethods(
component_extension_ime_manager_->GetAllIMEAsInputMethodDescriptor());
} }
InputMethodManagerImpl::~InputMethodManagerImpl() { InputMethodManagerImpl::~InputMethodManagerImpl() {
...@@ -796,15 +803,6 @@ ComponentExtensionIMEManager* ...@@ -796,15 +803,6 @@ ComponentExtensionIMEManager*
return component_extension_ime_manager_.get(); return component_extension_ime_manager_.get();
} }
void InputMethodManagerImpl::InitializeComponentExtension() {
scoped_ptr<ComponentExtensionIMEManagerDelegate> delegate(
new ComponentExtensionIMEManagerImpl());
component_extension_ime_manager_->Initialize(delegate.Pass());
util_.ResetInputMethods(
component_extension_ime_manager_->GetAllIMEAsInputMethodDescriptor());
}
void InputMethodManagerImpl::SetCandidateWindowControllerForTesting( void InputMethodManagerImpl::SetCandidateWindowControllerForTesting(
CandidateWindowController* candidate_window_controller) { CandidateWindowController* candidate_window_controller) {
candidate_window_controller_.reset(candidate_window_controller); candidate_window_controller_.reset(candidate_window_controller);
......
...@@ -40,7 +40,6 @@ class InputMethodManagerImpl : public InputMethodManager, ...@@ -40,7 +40,6 @@ class InputMethodManagerImpl : public InputMethodManager,
// InputMethodManager override: // InputMethodManager override:
virtual State GetState() OVERRIDE; virtual State GetState() OVERRIDE;
virtual void InitializeComponentExtension() OVERRIDE;
virtual void AddObserver(InputMethodManager::Observer* observer) OVERRIDE; virtual void AddObserver(InputMethodManager::Observer* observer) OVERRIDE;
virtual void AddCandidateWindowObserver( virtual void AddCandidateWindowObserver(
InputMethodManager::CandidateWindowObserver* observer) OVERRIDE; InputMethodManager::CandidateWindowObserver* observer) OVERRIDE;
......
...@@ -18,9 +18,6 @@ MockInputMethodManager::MockInputMethodManager() ...@@ -18,9 +18,6 @@ MockInputMethodManager::MockInputMethodManager()
MockInputMethodManager::~MockInputMethodManager() { MockInputMethodManager::~MockInputMethodManager() {
} }
void MockInputMethodManager::InitializeComponentExtension() {
}
InputMethodManager::State MockInputMethodManager::GetState() { InputMethodManager::State MockInputMethodManager::GetState() {
return InputMethodManager::STATE_BROWSER_SCREEN; return InputMethodManager::STATE_BROWSER_SCREEN;
} }
......
...@@ -23,7 +23,6 @@ class MockInputMethodManager : public InputMethodManager { ...@@ -23,7 +23,6 @@ class MockInputMethodManager : public InputMethodManager {
// InputMethodManager override: // InputMethodManager override:
virtual State GetState() OVERRIDE; virtual State GetState() OVERRIDE;
virtual void InitializeComponentExtension() OVERRIDE;
virtual void AddObserver(InputMethodManager::Observer* observer) OVERRIDE; virtual void AddObserver(InputMethodManager::Observer* observer) OVERRIDE;
virtual void AddCandidateWindowObserver( virtual void AddCandidateWindowObserver(
InputMethodManager::CandidateWindowObserver* observer) OVERRIDE; InputMethodManager::CandidateWindowObserver* observer) OVERRIDE;
......
...@@ -42,7 +42,6 @@ ...@@ -42,7 +42,6 @@
#include "chrome/browser/chromeos/accessibility/accessibility_manager.h" #include "chrome/browser/chromeos/accessibility/accessibility_manager.h"
#include "chrome/browser/chromeos/login/users/user_manager.h" #include "chrome/browser/chromeos/login/users/user_manager.h"
#include "chromeos/chromeos_switches.h" #include "chromeos/chromeos_switches.h"
#include "chromeos/ime/input_method_manager.h"
#include "content/public/browser/site_instance.h" #include "content/public/browser/site_instance.h"
#include "content/public/browser/storage_partition.h" #include "content/public/browser/storage_partition.h"
#include "extensions/browser/extensions_browser_client.h" #include "extensions/browser/extensions_browser_client.h"
...@@ -427,11 +426,6 @@ void ComponentLoader::AddDefaultComponentExtensions( ...@@ -427,11 +426,6 @@ void ComponentLoader::AddDefaultComponentExtensions(
// Do not add component extensions that have background pages here -- add them // Do not add component extensions that have background pages here -- add them
// to AddDefaultComponentExtensionsWithBackgroundPages. // to AddDefaultComponentExtensionsWithBackgroundPages.
#if defined(OS_CHROMEOS) #if defined(OS_CHROMEOS)
chromeos::input_method::InputMethodManager* input_method_manager =
chromeos::input_method::InputMethodManager::Get();
if (input_method_manager)
input_method_manager->InitializeComponentExtension();
Add(IDR_MOBILE_MANIFEST, Add(IDR_MOBILE_MANIFEST,
base::FilePath(FILE_PATH_LITERAL("/usr/share/chromeos-assets/mobile"))); base::FilePath(FILE_PATH_LITERAL("/usr/share/chromeos-assets/mobile")));
...@@ -473,12 +467,6 @@ void ComponentLoader::AddDefaultComponentExtensions( ...@@ -473,12 +467,6 @@ void ComponentLoader::AddDefaultComponentExtensions(
void ComponentLoader::AddDefaultComponentExtensionsForKioskMode( void ComponentLoader::AddDefaultComponentExtensionsForKioskMode(
bool skip_session_components) { bool skip_session_components) {
#if defined(OS_CHROMEOS)
chromeos::input_method::InputMethodManager* input_method_manager =
chromeos::input_method::InputMethodManager::Get();
if (input_method_manager)
input_method_manager->InitializeComponentExtension();
#endif
// No component extension for kiosk app launch splash screen. // No component extension for kiosk app launch splash screen.
if (skip_session_components) if (skip_session_components)
return; return;
......
...@@ -76,9 +76,6 @@ class CHROMEOS_EXPORT InputMethodManager { ...@@ -76,9 +76,6 @@ class CHROMEOS_EXPORT InputMethodManager {
// Destroy the global instance. // Destroy the global instance.
static CHROMEOS_EXPORT void Shutdown(); static CHROMEOS_EXPORT void Shutdown();
// Initialize component extensions.
virtual void InitializeComponentExtension() = 0;
// Get the current UI session state (e.g. login screen, lock screen, etc.). // Get the current UI session state (e.g. login screen, lock screen, etc.).
virtual State GetState() = 0; virtual State GetState() = 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment