Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(640)

Unified Diff: chrome/browser/ui/gtk/manage_passwords_bubble_gtk.cc

Issue 231733005: Delete the GTK+ port of Chrome. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Remerge to ToT Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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();
-}

Powered by Google App Engine
This is Rietveld 408576698