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

Side by Side Diff: ash/ime/input_method_menu_manager.h

Issue 680383008: Move ash/ime to ui/chromeos/ime (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@athena_do_not_use_ash48_global_command
Patch Set: Created 6 years, 1 month 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
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/ash_export.h"
6
7 #include "ash/ime/input_method_menu_item.h"
8 #include "base/observer_list.h"
9
10 #ifndef ASH_IME_INPUT_METHOD_MENU_MANAGER_H_
11 #define ASH_IME_INPUT_METHOD_MENU_MANAGER_H_
12
13 template<typename Type> struct DefaultSingletonTraits;
14
15 namespace ash {
16 namespace ime {
17
18 class ASH_EXPORT InputMethodMenuManager {
19 public:
20 class Observer {
21 public:
22 virtual ~Observer() {}
23
24 // Called when the list of menu items is changed.
25 virtual void InputMethodMenuItemChanged(
26 InputMethodMenuManager* manager) = 0;
27 };
28
29 ~InputMethodMenuManager();
30
31 void AddObserver(Observer* observer);
32 void RemoveObserver(Observer* observer);
33
34 // Obtains the singleton instance.
35 static InputMethodMenuManager* GetInstance();
36
37 // Sets the list of input method menu items. The list could be empty().
38 void SetCurrentInputMethodMenuItemList(
39 const InputMethodMenuItemList& menu_list);
40
41 // Gets the list of input method menu items. The list could be empty().
42 InputMethodMenuItemList GetCurrentInputMethodMenuItemList() const;
43
44 // True if the key exists in the menu_list_.
45 bool HasInputMethodMenuItemForKey(const std::string& key) const;
46
47 private:
48 InputMethodMenuManager();
49
50 // For Singleton to be able to construct an instance.
51 friend struct DefaultSingletonTraits<InputMethodMenuManager>;
52
53 // Menu item list of the input method. This is set by extension IMEs.
54 InputMethodMenuItemList menu_list_;
55
56 // Observers who will be notified when menu changes.
57 ObserverList<Observer> observers_;
58
59 DISALLOW_COPY_AND_ASSIGN(InputMethodMenuManager);
60 };
61
62 } // namespace ime
63 } // namespace ash
64
65 #endif // ASH_IME_INPUT_METHOD_MENU_MANAGER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698