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

Unified Diff: chrome/browser/chromeos/input_method/ibus_controller_impl.h

Issue 23460003: Merge IBusContorllerBase into IBusControllerImpl. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 7 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/input_method/ibus_controller_impl.h
diff --git a/chrome/browser/chromeos/input_method/ibus_controller_impl.h b/chrome/browser/chromeos/input_method/ibus_controller_impl.h
index e262e8d2b3d83f5a1f5ef7a9fdd9a6dc7bea72d0..45de917ad20ca60e618cd981c1ddbb2d35f40f9e 100644
--- a/chrome/browser/chromeos/input_method/ibus_controller_impl.h
+++ b/chrome/browser/chromeos/input_method/ibus_controller_impl.h
@@ -8,8 +8,10 @@
#include <string>
#include <vector>
-#include "chrome/browser/chromeos/input_method/ibus_controller_base.h"
+#include "base/observer_list.h"
+#include "chrome/browser/chromeos/input_method/ibus_controller.h"
#include "chromeos/ime/ibus_bridge.h"
+#include "chromeos/ime/input_method_property.h"
namespace chromeos {
namespace input_method {
@@ -18,9 +20,7 @@ struct InputMethodProperty;
typedef std::vector<InputMethodProperty> InputMethodPropertyList;
// The IBusController implementation.
-// TODO(nona): Merge to IBusControllerBase, there is no longer reason to split
-// this class into Impl and Base.
-class IBusControllerImpl : public IBusControllerBase,
+class IBusControllerImpl : public IBusController,
public IBusPanelPropertyHandlerInterface {
public:
IBusControllerImpl();
@@ -29,12 +29,26 @@ class IBusControllerImpl : public IBusControllerBase,
// IBusController overrides:
virtual bool ActivateInputMethodProperty(const std::string& key) OVERRIDE;
+ // IBusController overrides. Derived classes should not override these 4
+ // functions.
+ virtual void AddObserver(Observer* observer) OVERRIDE;
+ virtual void RemoveObserver(Observer* observer) OVERRIDE;
+ virtual const InputMethodPropertyList& GetCurrentProperties() const OVERRIDE;
+ virtual void ClearProperties() OVERRIDE;
+
// Calls <anonymous_namespace>::FindAndUpdateProperty. This method is just for
// unit testing.
static bool FindAndUpdatePropertyForTesting(
const InputMethodProperty& new_prop,
InputMethodPropertyList* prop_list);
+ protected:
+ ObserverList<Observer> observers_;
+
+ // The value which will be returned by GetCurrentProperties(). Derived classes
+ // should update this variable when needed.
+ InputMethodPropertyList current_property_list_;
+
private:
// IBusPanelPropertyHandlerInterface overrides:
virtual void RegisterProperties(

Powered by Google App Engine
This is Rietveld 408576698