diff options
Diffstat (limited to 'chrome/browser/ui/gtk/avatar_menu_button_gtk.cc')
-rw-r--r-- | chrome/browser/ui/gtk/avatar_menu_button_gtk.cc | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/chrome/browser/ui/gtk/avatar_menu_button_gtk.cc b/chrome/browser/ui/gtk/avatar_menu_button_gtk.cc index 411f721..c8560c4 100644 --- a/chrome/browser/ui/gtk/avatar_menu_button_gtk.cc +++ b/chrome/browser/ui/gtk/avatar_menu_button_gtk.cc @@ -1,12 +1,16 @@ -// Copyright (c) 2011 The Chromium Authors. All rights reserved. +// Copyright (c) 2012 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "chrome/browser/ui/gtk/avatar_menu_button_gtk.h" #include "base/i18n/rtl.h" +#include "chrome/app/chrome_command_ids.h" +#include "chrome/browser/command_updater.h" +#include "chrome/browser/managed_mode.h" #include "chrome/browser/profiles/profile_metrics.h" #include "chrome/browser/profiles/profile_info_util.h" +#include "chrome/browser/ui/browser.h" #include "chrome/browser/ui/gtk/avatar_menu_bubble_gtk.h" #include "chrome/browser/ui/gtk/bubble/bubble_gtk.h" #include "ui/gfx/gtk_util.h" @@ -46,6 +50,11 @@ gboolean AvatarMenuButtonGtk::OnButtonPressed(GtkWidget* widget, if (event->button != 1) return FALSE; + if (ManagedMode::IsInManagedMode()) { + ManagedMode::LeaveManagedMode(); + return TRUE; + } + ShowAvatarBubble(); ProfileMetrics::LogProfileOpenMethod(ProfileMetrics::ICON_AVATAR_BUBBLE); return TRUE; @@ -58,6 +67,7 @@ void AvatarMenuButtonGtk::OnSizeAllocate(GtkWidget* widget, } void AvatarMenuButtonGtk::ShowAvatarBubble() { + DCHECK(browser_->command_updater()->IsCommandEnabled(IDC_SHOW_AVATAR_MENU)); // Only show the avatar bubble if the avatar button is in the title bar. if (gtk_widget_get_parent_window(widget_.get())) new AvatarMenuBubbleGtk(browser_, widget_.get(), arrow_location_, NULL); |