summaryrefslogtreecommitdiffstats
path: root/chrome/browser/chromeos/clock_menu_button.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/chromeos/clock_menu_button.cc')
-rw-r--r--chrome/browser/chromeos/clock_menu_button.cc10
1 files changed, 6 insertions, 4 deletions
diff --git a/chrome/browser/chromeos/clock_menu_button.cc b/chrome/browser/chromeos/clock_menu_button.cc
index 98af0b4..745fe24 100644
--- a/chrome/browser/chromeos/clock_menu_button.cc
+++ b/chrome/browser/chromeos/clock_menu_button.cc
@@ -26,7 +26,6 @@ const int kTimerSlopSeconds = 1;
ClockMenuButton::ClockMenuButton(Browser* browser)
: MenuButton(NULL, std::wstring(), this, false),
- clock_menu_(this),
browser_(browser) {
set_border(NULL);
SetFont(ResourceBundle::GetSharedInstance().GetFont(
@@ -141,9 +140,12 @@ void ClockMenuButton::ActivatedAt(int index) {
// ClockMenuButton, views::ViewMenuDelegate implementation:
void ClockMenuButton::RunMenu(views::View* source, const gfx::Point& pt) {
- clock_menu_.Rebuild();
- clock_menu_.UpdateStates();
- clock_menu_.RunMenuAt(pt, views::Menu2::ALIGN_TOPRIGHT);
+ if (!clock_menu_.get())
+ clock_menu_.reset(new views::Menu2(this));
+ else
+ clock_menu_->Rebuild();
+ clock_menu_->UpdateStates();
+ clock_menu_->RunMenuAt(pt, views::Menu2::ALIGN_TOPRIGHT);
}
} // namespace chromeos