Index: chrome/browser/ui/gtk/manage_passwords_bubble_gtk.cc |
diff --git a/chrome/browser/ui/gtk/manage_passwords_bubble_gtk.cc b/chrome/browser/ui/gtk/manage_passwords_bubble_gtk.cc |
deleted file mode 100644 |
index c9d6b11249ae6ae4b386c429d933da2efb6367b3..0000000000000000000000000000000000000000 |
--- a/chrome/browser/ui/gtk/manage_passwords_bubble_gtk.cc |
+++ /dev/null |
@@ -1,131 +0,0 @@ |
-// Copyright 2013 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/manage_passwords_bubble_gtk.h" |
- |
-#include "chrome/browser/chrome_notification_types.h" |
-#include "chrome/browser/profiles/profile.h" |
-#include "chrome/browser/ui/browser.h" |
-#include "chrome/browser/ui/browser_finder.h" |
-#include "chrome/browser/ui/browser_window.h" |
-#include "chrome/browser/ui/gtk/gtk_theme_service.h" |
-#include "chrome/browser/ui/gtk/location_bar_view_gtk.h" |
-#include "chrome/browser/ui/passwords/manage_passwords_bubble_ui_controller.h" |
-#include "grit/generated_resources.h" |
-#include "ui/base/gtk/gtk_hig_constants.h" |
-#include "ui/base/l10n/l10n_util.h" |
- |
-namespace { |
- |
-// Pointer to singleton object (NULL if no bubble is open). |
-ManagePasswordsBubbleGtk* g_bubble = NULL; |
- |
-// Need to manually set anchor width and height to ensure that the bubble shows |
-// in the correct spot the first time it is displayed when no icon is present. |
-const int kBubbleAnchorWidth = 20; |
-const int kBubbleAnchorHeight = 25; |
- |
-} // namespace |
- |
-// static |
-void ManagePasswordsBubbleGtk::ShowBubble(content::WebContents* web_contents) { |
- Browser* browser = chrome::FindBrowserWithWebContents(web_contents); |
- DCHECK(browser && browser->window() && browser->fullscreen_controller()); |
- |
- LocationBar* location_bar = browser->window()->GetLocationBar(); |
- GtkWidget* anchor = browser->window()->IsFullscreen() ? |
- GTK_WIDGET(browser->window()->GetNativeWindow()) : |
- static_cast<LocationBarViewGtk*>(location_bar)-> |
- manage_passwords_icon_widget(); |
- |
- g_bubble = new ManagePasswordsBubbleGtk(anchor, |
- web_contents, |
- browser->fullscreen_controller()); |
-} |
- |
-// static |
-void ManagePasswordsBubbleGtk::CloseBubble() { |
- if (g_bubble) |
- g_bubble->Close(); |
-} |
- |
-// static |
-bool ManagePasswordsBubbleGtk::IsShowing() { |
- return g_bubble != NULL; |
-} |
- |
-ManagePasswordsBubbleGtk::ManagePasswordsBubbleGtk( |
- GtkWidget* anchor, |
- content::WebContents* web_contents, |
- FullscreenController* fullscreen_controller) |
- : web_contents_(web_contents) { |
- GtkThemeService* theme_service = GtkThemeService::GetFrom( |
- Profile::FromBrowserContext(web_contents_->GetBrowserContext())); |
- |
- GtkWidget* bubble_contents_ = gtk_vbox_new(FALSE, ui::kControlSpacing); |
- gtk_container_set_border_width(GTK_CONTAINER(bubble_contents_), |
- ui::kContentAreaBorder); |
- GtkWidget* label = theme_service->BuildLabel( |
- l10n_util::GetStringUTF8(IDS_SAVE_PASSWORD), ui::kGdkBlack); |
- gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); |
- gtk_box_pack_start(GTK_BOX(bubble_contents_), label, FALSE, FALSE, 0); |
- |
- GtkWidget* button_container = gtk_hbox_new(FALSE, 0); |
- GtkWidget* nope_button = gtk_button_new_with_label(l10n_util::GetStringUTF8( |
- IDS_PASSWORD_MANAGER_CANCEL_BUTTON).c_str()); |
- g_signal_connect(nope_button, "clicked", |
- G_CALLBACK(OnNotNowButtonClickedThunk), this); |
- GtkWidget* save_button = gtk_button_new_with_label( |
- l10n_util::GetStringUTF8(IDS_PASSWORD_MANAGER_SAVE_BUTTON).c_str()); |
- g_signal_connect(save_button, "clicked", |
- G_CALLBACK(OnSaveButtonClickedThunk), this); |
- |
- gtk_box_pack_end(GTK_BOX(button_container), save_button, FALSE, FALSE, 4); |
- gtk_box_pack_end(GTK_BOX(button_container), nope_button, FALSE, FALSE, 0); |
- gtk_box_pack_start(GTK_BOX(bubble_contents_), button_container, FALSE, FALSE, |
- 0); |
- gtk_widget_grab_focus(save_button); |
- |
- gfx::Rect rect = gfx::Rect(kBubbleAnchorWidth, kBubbleAnchorHeight); |
- BubbleGtk::FrameStyle frame_style = gtk_widget_is_toplevel(anchor) ? |
- BubbleGtk::FIXED_TOP_RIGHT : BubbleGtk::ANCHOR_TOP_RIGHT; |
- bubble_ = BubbleGtk::Show(anchor, |
- &rect, |
- bubble_contents_, |
- frame_style, |
- BubbleGtk::MATCH_SYSTEM_THEME | |
- BubbleGtk::POPUP_WINDOW | |
- BubbleGtk::GRAB_INPUT, |
- theme_service, |
- NULL); |
- |
- g_signal_connect(bubble_contents_, "destroy", |
- G_CALLBACK(&OnDestroyThunk), this); |
-} |
- |
-ManagePasswordsBubbleGtk::~ManagePasswordsBubbleGtk() { |
- DCHECK_EQ(g_bubble, this); |
- // Set singleton pointer to NULL. |
- g_bubble = NULL; |
-} |
- |
-void ManagePasswordsBubbleGtk::Close() { |
- DCHECK(bubble_); |
- bubble_->Close(); |
-} |
- |
-void ManagePasswordsBubbleGtk::OnDestroy(GtkWidget* widget) { |
- // Listen to the destroy signal and delete this instance when it is caught. |
- delete this; |
-} |
- |
-void ManagePasswordsBubbleGtk::OnSaveButtonClicked(GtkWidget* button) { |
- ManagePasswordsBubbleUIController::FromWebContents(web_contents_)-> |
- SavePassword(); |
- Close(); |
-} |
- |
-void ManagePasswordsBubbleGtk::OnNotNowButtonClicked(GtkWidget* button) { |
- Close(); |
-} |