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

Side by Side Diff: trunk/src/ash/ime/input_method_menu_manager.cc

Issue 165453002: Revert 251164 "Split out InputMethodMenuManager from InputMethod..." (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 6 years, 10 months 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright 2014 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 "ash/ime/input_method_menu_manager.h"
6
7 #include "base/logging.h"
8 // #include "chrome/browser/chromeos/input_method/input_method_util.h"
9
10 namespace ash {
11 namespace ime {
12
13 namespace {
14 InputMethodMenuManager* g_input_method_menu_manager = NULL;
15 }
16
17 InputMethodMenuManager::InputMethodMenuManager()
18 : menu_list_(), observers_() {}
19
20 InputMethodMenuManager::~InputMethodMenuManager() {}
21
22 void InputMethodMenuManager::AddObserver(
23 InputMethodMenuManager::Observer* observer) {
24 observers_.AddObserver(observer);
25 }
26
27 void InputMethodMenuManager::RemoveObserver(
28 InputMethodMenuManager::Observer* observer) {
29 observers_.RemoveObserver(observer);
30 }
31
32 InputMethodMenuItemList
33 InputMethodMenuManager::GetCurrentInputMethodMenuItemList() const {
34 return menu_list_;
35 }
36
37 void InputMethodMenuManager::SetCurrentInputMethodMenuItemList(
38 const InputMethodMenuItemList& menu_list) {
39 menu_list_ = menu_list;
40 FOR_EACH_OBSERVER(InputMethodMenuManager::Observer,
41 observers_,
42 InputMethodMenuItemChanged(this));
43 }
44
45 bool InputMethodMenuManager::HasInputMethodMenuItemForKey(
46 const std::string& key) const {
47 for (size_t i = 0; i < menu_list_.size(); ++i) {
48 if (menu_list_[i].key == key) {
49 return true;
50 }
51 }
52 return false;
53 }
54
55 // static
56 InputMethodMenuManager* InputMethodMenuManager::Get() {
57 DCHECK(g_input_method_menu_manager)
58 << "g_input_method_menu_manager not initialized";
59 return g_input_method_menu_manager;
60 }
61
62 // static
63 void InputMethodMenuManager::Initialize() {
64 DCHECK(!g_input_method_menu_manager) << "initialize() called multiple times.";
65 g_input_method_menu_manager = new InputMethodMenuManager();
66 }
67
68 // static
69 void InputMethodMenuManager::Shutdown() {
70 DCHECK(g_input_method_menu_manager)
71 << "g_input_method_menu_manager not initialized";
72 delete g_input_method_menu_manager;
73 g_input_method_menu_manager = NULL;
74 }
75
76 } // namespace ime
77 } // namespace ash
OLDNEW
« no previous file with comments | « trunk/src/ash/ime/input_method_menu_manager.h ('k') | trunk/src/ash/ime/input_method_menu_manager_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698