summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
authorsail@chromium.org <sail@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-14 01:58:36 +0000
committersail@chromium.org <sail@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-14 01:58:36 +0000
commit6096347fa8b23b52fe46265090dfa0461fba1e7d (patch)
tree0ed47a8201081b62bfe0b9607964fa092d0d694a /chrome
parenta38c8849a42829df3771845754ed4f6494594856 (diff)
downloadchromium_src-6096347fa8b23b52fe46265090dfa0461fba1e7d.zip
chromium_src-6096347fa8b23b52fe46265090dfa0461fba1e7d.tar.gz
chromium_src-6096347fa8b23b52fe46265090dfa0461fba1e7d.tar.bz2
GTK: Show avatar menu from NTP
BUG=83169 TEST= Review URL: http://codereview.chromium.org/8244002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@105442 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r--chrome/browser/ui/gtk/avatar_menu_bubble_gtk.cc5
-rw-r--r--chrome/browser/ui/gtk/avatar_menu_bubble_gtk.h3
-rw-r--r--chrome/browser/ui/gtk/avatar_menu_button_gtk.cc2
-rw-r--r--chrome/browser/ui/gtk/browser_window_gtk.cc5
4 files changed, 10 insertions, 5 deletions
diff --git a/chrome/browser/ui/gtk/avatar_menu_bubble_gtk.cc b/chrome/browser/ui/gtk/avatar_menu_bubble_gtk.cc
index cbf8265..83154ae 100644
--- a/chrome/browser/ui/gtk/avatar_menu_bubble_gtk.cc
+++ b/chrome/browser/ui/gtk/avatar_menu_bubble_gtk.cc
@@ -33,7 +33,8 @@ const int kNewProfileLinkLeftPadding = 40;
AvatarMenuBubbleGtk::AvatarMenuBubbleGtk(Browser* browser,
GtkWidget* anchor,
- BubbleGtk::ArrowLocationGtk arrow)
+ BubbleGtk::ArrowLocationGtk arrow,
+ const gfx::Rect* rect)
: contents_(NULL),
theme_service_(GtkThemeService::GetFrom(browser->profile())),
minimum_width_(kBubbleMinWidth) {
@@ -46,7 +47,7 @@ AvatarMenuBubbleGtk::AvatarMenuBubbleGtk(Browser* browser,
OnAvatarMenuModelChanged(avatar_menu_model_.get());
bubble_ = BubbleGtk::Show(anchor,
- NULL, // |rect|
+ rect,
contents_,
arrow,
true, // |match_system_theme|
diff --git a/chrome/browser/ui/gtk/avatar_menu_bubble_gtk.h b/chrome/browser/ui/gtk/avatar_menu_bubble_gtk.h
index 57a7764..5f9a644 100644
--- a/chrome/browser/ui/gtk/avatar_menu_bubble_gtk.h
+++ b/chrome/browser/ui/gtk/avatar_menu_bubble_gtk.h
@@ -30,7 +30,8 @@ class AvatarMenuBubbleGtk : public BubbleDelegateGtk,
public:
AvatarMenuBubbleGtk(Browser* browser,
GtkWidget* anchor,
- BubbleGtk::ArrowLocationGtk arrow);
+ BubbleGtk::ArrowLocationGtk arrow,
+ const gfx::Rect* rect);
virtual ~AvatarMenuBubbleGtk();
// BubbleDelegateGtk implementation.
diff --git a/chrome/browser/ui/gtk/avatar_menu_button_gtk.cc b/chrome/browser/ui/gtk/avatar_menu_button_gtk.cc
index 70238a6..133f361 100644
--- a/chrome/browser/ui/gtk/avatar_menu_button_gtk.cc
+++ b/chrome/browser/ui/gtk/avatar_menu_button_gtk.cc
@@ -42,6 +42,6 @@ gboolean AvatarMenuButtonGtk::OnButtonPressed(GtkWidget* widget,
if (event->button != 1)
return FALSE;
- new AvatarMenuBubbleGtk(browser_, widget, arrow_location_);
+ new AvatarMenuBubbleGtk(browser_, widget, arrow_location_, NULL);
return TRUE;
}
diff --git a/chrome/browser/ui/gtk/browser_window_gtk.cc b/chrome/browser/ui/gtk/browser_window_gtk.cc
index fdcc4c6..5c39484 100644
--- a/chrome/browser/ui/gtk/browser_window_gtk.cc
+++ b/chrome/browser/ui/gtk/browser_window_gtk.cc
@@ -41,6 +41,7 @@
#include "chrome/browser/ui/find_bar/find_tab_helper.h"
#include "chrome/browser/ui/gtk/about_chrome_dialog.h"
#include "chrome/browser/ui/gtk/accelerators_gtk.h"
+#include "chrome/browser/ui/gtk/avatar_menu_bubble_gtk.h"
#include "chrome/browser/ui/gtk/bookmarks/bookmark_bar_gtk.h"
#include "chrome/browser/ui/gtk/browser_titlebar.h"
#include "chrome/browser/ui/gtk/browser_toolbar_gtk.h"
@@ -1173,7 +1174,9 @@ FindBar* BrowserWindowGtk::CreateFindBar() {
void BrowserWindowGtk::ShowAvatarBubble(TabContents* tab_contents,
const gfx::Rect& rect) {
- // TODO(sail): Implement this once we have a avatar bubble on GTK.
+ GtkWidget* widget = tab_contents->GetContentNativeView();
+ new AvatarMenuBubbleGtk(browser_.get(), widget,
+ BubbleGtk::ARROW_LOCATION_TOP_LEFT, &rect);
}
void BrowserWindowGtk::ConfirmBrowserCloseWithPendingDownloads() {