Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / chrome / browser / chromeos / input_method / input_method_configuration.h
blob79c1dd2281798986b523565401f5cc09c96b6763
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CHROME_BROWSER_CHROMEOS_INPUT_METHOD_INPUT_METHOD_CONFIGURATION_H_
6 #define CHROME_BROWSER_CHROMEOS_INPUT_METHOD_INPUT_METHOD_CONFIGURATION_H_
8 #include "base/sequenced_task_runner.h"
10 namespace chromeos {
11 namespace input_method {
13 class InputMethodManager;
15 // Initializes the InputMethodManager. Must be called before any calls to
16 // GetInstance(). We explicitly initialize and shut down the global instance,
17 // rather than making it a Singleton, to ensure clean startup and shutdown.
18 void Initialize();
20 // Similar to Initialize(), but can inject an alternative
21 // InputMethodManager such as MockInputMethodManager for testing.
22 // The injected object will be owned by the internal pointer and deleted
23 // by Shutdown().
24 // TODO(nona): Remove this and use InputMethodManager::Initialize instead.
25 void InitializeForTesting(InputMethodManager* mock_manager);
27 // Disables the IME extension loading (e.g. for browser tests).
28 void DisableExtensionLoading();
30 // Destroys the global InputMethodManager instance.
31 void Shutdown();
33 } // namespace input_method
34 } // namespace chromeos
36 #endif // CHROME_BROWSER_CHROMEOS_INPUT_METHOD_INPUT_METHOD_CONFIGURATION_H_