Home | History | Annotate | Download | only in input_method
      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.
      4 
      5 #ifndef CHROME_BROWSER_CHROMEOS_INPUT_METHOD_INPUT_METHOD_CONFIGURATION_H_
      6 #define CHROME_BROWSER_CHROMEOS_INPUT_METHOD_INPUT_METHOD_CONFIGURATION_H_
      7 
      8 #include "base/sequenced_task_runner.h"
      9 
     10 namespace chromeos {
     11 namespace input_method {
     12 
     13 class InputMethodManager;
     14 
     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(
     19     const scoped_refptr<base::SequencedTaskRunner>& ui_task_runner,
     20     const scoped_refptr<base::SequencedTaskRunner>& file_task_runner);
     21 
     22 // Similar to Initialize(), but can inject an alternative
     23 // InputMethodManager such as MockInputMethodManager for testing.
     24 // The injected object will be owned by the internal pointer and deleted
     25 // by Shutdown().
     26 // TODO(nona): Remove this and use InputMethodManager::Initialize instead.
     27 void InitializeForTesting(InputMethodManager* mock_manager);
     28 
     29 // Destroys the global InputMethodManager instance.
     30 void Shutdown();
     31 
     32 }  // namespace input_method
     33 }  // namespace chromeos
     34 
     35 #endif  // CHROME_BROWSER_CHROMEOS_INPUT_METHOD_INPUT_METHOD_CONFIGURATION_H_
     36