| OLD | NEW |
| (Empty) |
| 1 // Copyright 2013 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 #include "ui/base/ime/input_method_initializer.h" | |
| 6 | |
| 7 #if defined(OS_CHROMEOS) | |
| 8 #include "ui/base/ime/chromeos/ime_bridge.h" | |
| 9 #elif defined(USE_AURA) && defined(OS_LINUX) | |
| 10 #include "base/logging.h" | |
| 11 #include "ui/base/ime/linux/fake_input_method_context_factory.h" | |
| 12 #endif | |
| 13 | |
| 14 namespace { | |
| 15 | |
| 16 #if !defined(OS_CHROMEOS) && defined(USE_AURA) && defined(OS_LINUX) | |
| 17 const ui::LinuxInputMethodContextFactory* g_linux_input_method_context_factory; | |
| 18 #endif | |
| 19 | |
| 20 } // namespace | |
| 21 | |
| 22 namespace ui { | |
| 23 | |
| 24 void InitializeInputMethod() { | |
| 25 #if defined(OS_CHROMEOS) | |
| 26 chromeos::IMEBridge::Initialize(); | |
| 27 #endif | |
| 28 } | |
| 29 | |
| 30 void ShutdownInputMethod() { | |
| 31 #if defined(OS_CHROMEOS) | |
| 32 chromeos::IMEBridge::Shutdown(); | |
| 33 #endif | |
| 34 } | |
| 35 | |
| 36 void InitializeInputMethodForTesting() { | |
| 37 #if defined(OS_CHROMEOS) | |
| 38 chromeos::IMEBridge::Initialize(); | |
| 39 #elif defined(USE_AURA) && defined(OS_LINUX) | |
| 40 if (!g_linux_input_method_context_factory) | |
| 41 g_linux_input_method_context_factory = new FakeInputMethodContextFactory(); | |
| 42 const LinuxInputMethodContextFactory* factory = | |
| 43 LinuxInputMethodContextFactory::instance(); | |
| 44 CHECK(!factory || factory == g_linux_input_method_context_factory) | |
| 45 << "LinuxInputMethodContextFactory was already initialized somewhere " | |
| 46 << "else."; | |
| 47 LinuxInputMethodContextFactory::SetInstance( | |
| 48 g_linux_input_method_context_factory); | |
| 49 #endif | |
| 50 } | |
| 51 | |
| 52 void ShutdownInputMethodForTesting() { | |
| 53 #if defined(OS_CHROMEOS) | |
| 54 chromeos::IMEBridge::Shutdown(); | |
| 55 #elif defined(USE_AURA) && defined(OS_LINUX) | |
| 56 const LinuxInputMethodContextFactory* factory = | |
| 57 LinuxInputMethodContextFactory::instance(); | |
| 58 CHECK(!factory || factory == g_linux_input_method_context_factory) | |
| 59 << "An unknown LinuxInputMethodContextFactory was set."; | |
| 60 LinuxInputMethodContextFactory::SetInstance(NULL); | |
| 61 delete g_linux_input_method_context_factory; | |
| 62 g_linux_input_method_context_factory = NULL; | |
| 63 #endif | |
| 64 } | |
| 65 | |
| 66 } // namespace ui | |
| OLD | NEW |