| Index: chrome/browser/ui/views/autofill/autocheckout_bubble_views.cc
|
| diff --git a/chrome/browser/ui/views/autofill/autocheckout_bubble_views.cc b/chrome/browser/ui/views/autofill/autocheckout_bubble_views.cc
|
| deleted file mode 100644
|
| index 3496ec6c27e2d1f99f8118d50d0d51971e27b2c3..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/ui/views/autofill/autocheckout_bubble_views.cc
|
| +++ /dev/null
|
| @@ -1,161 +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/views/autofill/autocheckout_bubble_views.h"
|
| -
|
| -#include "chrome/browser/ui/autofill/autocheckout_bubble.h"
|
| -#include "chrome/browser/ui/autofill/autocheckout_bubble_controller.h"
|
| -#include "ui/gfx/image/image.h"
|
| -#include "ui/gfx/rect.h"
|
| -#include "ui/views/bubble/bubble_border.h"
|
| -#include "ui/views/controls/button/image_button.h"
|
| -#include "ui/views/controls/button/label_button.h"
|
| -#include "ui/views/controls/label.h"
|
| -#include "ui/views/layout/grid_layout.h"
|
| -#include "ui/views/layout/layout_constants.h"
|
| -#include "ui/views/widget/widget.h"
|
| -
|
| -#if defined(USE_AURA)
|
| -#include "ui/aura/window.h"
|
| -#endif
|
| -
|
| -namespace autofill {
|
| -
|
| -AutocheckoutBubbleViews::AutocheckoutBubbleViews(
|
| - scoped_ptr<AutocheckoutBubbleController> controller,
|
| - views::View* anchor_view)
|
| - : views::BubbleDelegateView(anchor_view, views::BubbleBorder::TOP_LEFT),
|
| - controller_(controller.Pass()),
|
| - ok_button_(NULL),
|
| - cancel_button_(NULL) {
|
| - set_parent_window(controller_->native_window());
|
| - controller_->BubbleCreated();
|
| -}
|
| -
|
| -AutocheckoutBubbleViews::~AutocheckoutBubbleViews() {
|
| - controller_->BubbleDestroyed();
|
| -}
|
| -
|
| -void AutocheckoutBubbleViews::ShowBubble() {
|
| - StartFade(true);
|
| -}
|
| -
|
| -void AutocheckoutBubbleViews::HideBubble() {
|
| - StartFade(false);
|
| -}
|
| -
|
| -void AutocheckoutBubbleViews::Init() {
|
| - views::GridLayout* layout = new views::GridLayout(this);
|
| - SetLayoutManager(layout);
|
| -
|
| - // Add the message label to the first row.
|
| - views::ColumnSet* cs = layout->AddColumnSet(1);
|
| - views::Label* message_label = new views::Label(controller_->PromptText());
|
| -
|
| - // Maximum width for the message field in pixels. The message text will be
|
| - // wrapped when its width is wider than this.
|
| - const int kMaxMessageWidth = 300;
|
| -
|
| - int message_width =
|
| - std::min(kMaxMessageWidth, message_label->GetPreferredSize().width());
|
| - cs->AddColumn(views::GridLayout::LEADING,
|
| - views::GridLayout::CENTER,
|
| - 0,
|
| - views::GridLayout::FIXED,
|
| - message_width,
|
| - false);
|
| - message_label->SetBounds(0, 0, message_width, 0);
|
| - message_label->SetHorizontalAlignment(gfx::ALIGN_LEFT);
|
| - message_label->SetMultiLine(true);
|
| - layout->StartRow(0, 1);
|
| - layout->AddView(message_label);
|
| -
|
| - // Padding between message and buttons.
|
| - layout->AddPaddingRow(0, views::kRelatedControlVerticalSpacing);
|
| -
|
| - cs = layout->AddColumnSet(2);
|
| - cs->AddPaddingColumn(1, views::kRelatedControlHorizontalSpacing);
|
| - cs->AddColumn(views::GridLayout::CENTER,
|
| - views::GridLayout::CENTER,
|
| - 0,
|
| - views::GridLayout::USE_PREF,
|
| - 0,
|
| - 0);
|
| - cs->AddPaddingColumn(0, views::kRelatedButtonHSpacing);
|
| - cs->AddColumn(views::GridLayout::CENTER,
|
| - views::GridLayout::CENTER,
|
| - 0,
|
| - views::GridLayout::USE_PREF,
|
| - 0,
|
| - 0);
|
| - layout->StartRow(0, 2);
|
| -
|
| - if (!controller_->NormalImage().IsEmpty()) {
|
| - views::ImageButton* image_button = new views::ImageButton(this);
|
| - image_button->SetImage(views::Button::STATE_NORMAL,
|
| - controller_->NormalImage().ToImageSkia());
|
| - image_button->SetImage(views::Button::STATE_HOVERED,
|
| - controller_->HoverImage().ToImageSkia());
|
| - image_button->SetImage(views::Button::STATE_PRESSED,
|
| - controller_->PressedImage().ToImageSkia());
|
| - ok_button_ = image_button;
|
| - } else {
|
| - views::LabelButton* label_button = new views::LabelButton(
|
| - this, AutocheckoutBubbleController::AcceptText());
|
| - label_button->SetStyle(views::Button::STYLE_NATIVE_TEXTBUTTON);
|
| - ok_button_ = label_button;
|
| - }
|
| - layout->AddView(ok_button_);
|
| -
|
| - cancel_button_ =
|
| - new views::LabelButton(this, AutocheckoutBubbleController::CancelText());
|
| - cancel_button_->SetStyle(views::Button::STYLE_NATIVE_TEXTBUTTON);
|
| - layout->AddView(cancel_button_);
|
| -}
|
| -
|
| -gfx::Rect AutocheckoutBubbleViews::GetAnchorRect() {
|
| - return controller_->anchor_rect();
|
| -}
|
| -
|
| -void AutocheckoutBubbleViews::OnWidgetBoundsChanged(
|
| - views::Widget* widget,
|
| - const gfx::Rect& new_bounds) {
|
| - if (anchor_widget() == widget)
|
| - HideBubble();
|
| -}
|
| -
|
| -void AutocheckoutBubbleViews::ButtonPressed(views::Button* sender,
|
| - const ui::Event& event) {
|
| - if (sender == ok_button_) {
|
| - controller_->BubbleAccepted();
|
| - } else if (sender == cancel_button_) {
|
| - controller_->BubbleCanceled();
|
| - } else {
|
| - NOTREACHED();
|
| - }
|
| - GetWidget()->Close();
|
| -}
|
| -
|
| -// static
|
| -base::WeakPtr<AutocheckoutBubble> AutocheckoutBubble::Create(
|
| - scoped_ptr<AutocheckoutBubbleController> controller) {
|
| -#if defined(USE_AURA)
|
| - // If the page hasn't yet been attached to a RootWindow,
|
| - // Aura code for creating the bubble will fail.
|
| - if (!controller->native_window()->GetRootWindow())
|
| - return base::WeakPtr<AutocheckoutBubble>();
|
| -#endif // defined(USE_AURA)
|
| -
|
| - views::Widget* widget = views::Widget::GetTopLevelWidgetForNativeView(
|
| - controller->native_window());
|
| - // The bubble owns itself.
|
| - AutocheckoutBubbleViews* delegate =
|
| - new AutocheckoutBubbleViews(controller.Pass(),
|
| - widget ? widget->GetContentsView() : NULL);
|
| - views::BubbleDelegateView::CreateBubble(delegate);
|
| - delegate->SetAlignment(views::BubbleBorder::ALIGN_EDGE_TO_ANCHOR_EDGE);
|
| - return delegate->AsWeakPtr();
|
| -}
|
| -
|
| -} // namespace autofill
|
|
|