summaryrefslogtreecommitdiffstats
path: root/chrome/browser/status_icons/status_icon.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/status_icons/status_icon.cc')
-rw-r--r--chrome/browser/status_icons/status_icon.cc18
1 files changed, 18 insertions, 0 deletions
diff --git a/chrome/browser/status_icons/status_icon.cc b/chrome/browser/status_icons/status_icon.cc
index 9fed83d..066419f 100644
--- a/chrome/browser/status_icons/status_icon.cc
+++ b/chrome/browser/status_icons/status_icon.cc
@@ -4,6 +4,15 @@
#include "chrome/browser/status_icons/status_icon.h"
+#include "app/menus/menu_model.h"
+
+StatusIcon::StatusIcon()
+{
+}
+
+StatusIcon::~StatusIcon() {
+}
+
void StatusIcon::AddObserver(Observer* observer) {
observers_.AddObserver(observer);
}
@@ -12,6 +21,15 @@ void StatusIcon::RemoveObserver(Observer* observer) {
observers_.RemoveObserver(observer);
}
+bool StatusIcon::HasObservers() {
+ return observers_.size() > 0;
+}
+
void StatusIcon::DispatchClickEvent() {
FOR_EACH_OBSERVER(Observer, observers_, OnClicked());
}
+
+void StatusIcon::SetContextMenu(menus::MenuModel* menu) {
+ context_menu_contents_.reset(menu);
+ ResetContextMenu(menu);
+}