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

Side by Side Diff: chrome/browser/ui/views/extensions/extension_toolbar_icon_surfacing_bubble_views.cc

Issue 1086973004: [Extensions Mac] Implement developer mode warning on mac (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Avi's Created 5 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/ui/views/extensions/extension_toolbar_icon_surfacing_bu bble_views.h" 5 #include "chrome/browser/ui/views/extensions/extension_toolbar_icon_surfacing_bu bble_views.h"
6 6
7 #include "chrome/browser/ui/toolbar/toolbar_actions_bar_bubble_delegate.h" 7 #include "chrome/browser/ui/toolbar/toolbar_actions_bar_bubble_delegate.h"
8 #include "grit/chromium_strings.h"
9 #include "grit/generated_resources.h"
10 #include "ui/base/l10n/l10n_util.h"
11 #include "ui/base/resource/resource_bundle.h" 8 #include "ui/base/resource/resource_bundle.h"
12 #include "ui/views/controls/button/label_button.h" 9 #include "ui/views/controls/button/label_button.h"
13 #include "ui/views/controls/label.h" 10 #include "ui/views/controls/label.h"
14 #include "ui/views/layout/grid_layout.h" 11 #include "ui/views/layout/grid_layout.h"
15 12
16 ExtensionToolbarIconSurfacingBubble::ExtensionToolbarIconSurfacingBubble( 13 ExtensionToolbarIconSurfacingBubble::ExtensionToolbarIconSurfacingBubble(
17 views::View* anchor_view, 14 views::View* anchor_view,
18 ToolbarActionsBarBubbleDelegate* delegate) 15 scoped_ptr<ToolbarActionsBarBubbleDelegate> delegate)
19 : views::BubbleDelegateView(anchor_view, views::BubbleBorder::TOP_RIGHT), 16 : views::BubbleDelegateView(anchor_view, views::BubbleBorder::TOP_RIGHT),
20 delegate_(delegate), 17 delegate_(delegate.Pass()),
21 acknowledged_(false) { 18 acknowledged_(false) {
22 delegate_->OnToolbarActionsBarBubbleShown();
23 } 19 }
24 20
25 ExtensionToolbarIconSurfacingBubble::~ExtensionToolbarIconSurfacingBubble() { 21 ExtensionToolbarIconSurfacingBubble::~ExtensionToolbarIconSurfacingBubble() {
26 } 22 }
27 23
24 void ExtensionToolbarIconSurfacingBubble::Show() {
25 delegate_->OnBubbleShown();
26 GetWidget()->Show();
27 }
28
28 void ExtensionToolbarIconSurfacingBubble::Init() { 29 void ExtensionToolbarIconSurfacingBubble::Init() {
29 views::GridLayout* layout = new views::GridLayout(this); 30 views::GridLayout* layout = new views::GridLayout(this);
30 SetLayoutManager(layout); 31 SetLayoutManager(layout);
31 // Initialize a basic column set of |<padding> <content> <padding>|. 32 // Initialize a basic column set of |<padding> <content> <padding>|.
32 views::ColumnSet* columns = layout->AddColumnSet(0); 33 views::ColumnSet* columns = layout->AddColumnSet(0);
33 columns->AddPaddingColumn(0, 10); 34 columns->AddPaddingColumn(0, 10);
34 columns->AddColumn(views::GridLayout::LEADING, 35 columns->AddColumn(views::GridLayout::LEADING,
35 views::GridLayout::LEADING, 36 views::GridLayout::LEADING,
36 1, 37 1,
37 views::GridLayout::USE_PREF, 38 views::GridLayout::USE_PREF,
38 0, 39 0,
39 0); 40 0);
40 columns->AddPaddingColumn(0, 10); 41 columns->AddPaddingColumn(0, 10);
41 42
42 // Add a header. 43 // Add a header.
43 layout->StartRow(0, 0); 44 layout->StartRow(0, 0);
44 views::Label* heading_label = new views::Label( 45 views::Label* heading_label = new views::Label(delegate_->GetHeadingText());
45 l10n_util::GetStringUTF16(IDS_EXTENSION_TOOLBAR_BUBBLE_HEADING));
46 heading_label->SetFontList( 46 heading_label->SetFontList(
47 ui::ResourceBundle::GetSharedInstance().GetFontList( 47 ui::ResourceBundle::GetSharedInstance().GetFontList(
48 ui::ResourceBundle::MediumFont)); 48 ui::ResourceBundle::MediumFont));
49 heading_label->SetHorizontalAlignment(gfx::ALIGN_LEFT); 49 heading_label->SetHorizontalAlignment(gfx::ALIGN_LEFT);
50 layout->AddView(heading_label); 50 layout->AddView(heading_label);
51 layout->AddPaddingRow(0, 10); 51 layout->AddPaddingRow(0, 10);
52 int width = heading_label->GetPreferredSize().width(); 52 int width = heading_label->GetPreferredSize().width();
53 53
54 // Add the content string. 54 // Add the content string.
55 layout->StartRow(0, 0); 55 layout->StartRow(0, 0);
56 views::Label* content_label = new views::Label( 56 views::Label* content_label = new views::Label(delegate_->GetBodyText());
57 l10n_util::GetStringUTF16(IDS_EXTENSION_TOOLBAR_BUBBLE_CONTENT));
58 content_label->SetMultiLine(true); 57 content_label->SetMultiLine(true);
59 content_label->SizeToFit(width); 58 content_label->SizeToFit(width);
60 content_label->SetHorizontalAlignment(gfx::ALIGN_LEFT); 59 content_label->SetHorizontalAlignment(gfx::ALIGN_LEFT);
61 layout->AddView(content_label); 60 layout->AddView(content_label);
62 layout->AddPaddingRow(0, 10); 61 layout->AddPaddingRow(0, 10);
63 62
64 // Add a "got it" button. 63 // Add a "got it" button.
65 layout->StartRow(0, 0); 64 layout->StartRow(0, 0);
66 views::LabelButton* button = new views::LabelButton( 65 views::LabelButton* button = new views::LabelButton(
67 this, l10n_util::GetStringUTF16(IDS_EXTENSION_TOOLBAR_BUBBLE_OK)); 66 this, delegate_->GetActionButtonText());
68 button->SetStyle(views::Button::STYLE_BUTTON); 67 button->SetStyle(views::Button::STYLE_BUTTON);
69 layout->AddView(button, 68 layout->AddView(button,
70 1, 69 1,
71 1, 70 1,
72 views::GridLayout::TRAILING, 71 views::GridLayout::TRAILING,
73 views::GridLayout::FILL); 72 views::GridLayout::FILL);
74 } 73 }
75 74
76 void ExtensionToolbarIconSurfacingBubble::OnWidgetDestroying( 75 void ExtensionToolbarIconSurfacingBubble::OnWidgetDestroying(
77 views::Widget* widget) { 76 views::Widget* widget) {
78 BubbleDelegateView::OnWidgetDestroying(widget); 77 BubbleDelegateView::OnWidgetDestroying(widget);
79 if (!acknowledged_) { 78 if (!acknowledged_) {
80 delegate_->OnToolbarActionsBarBubbleClosed( 79 delegate_->OnBubbleClosed(ToolbarActionsBarBubbleDelegate::CLOSE_DISMISS);
81 ToolbarActionsBarBubbleDelegate::DISMISSED);
82 acknowledged_ = true; 80 acknowledged_ = true;
83 } 81 }
84 } 82 }
85 83
86 void ExtensionToolbarIconSurfacingBubble::ButtonPressed( 84 void ExtensionToolbarIconSurfacingBubble::ButtonPressed(
87 views::Button* sender, 85 views::Button* sender,
88 const ui::Event& event) { 86 const ui::Event& event) {
89 delegate_->OnToolbarActionsBarBubbleClosed( 87 delegate_->OnBubbleClosed(ToolbarActionsBarBubbleDelegate::CLOSE_EXECUTE);
90 ToolbarActionsBarBubbleDelegate::ACKNOWLEDGED);
91 acknowledged_ = true; 88 acknowledged_ = true;
92 GetWidget()->Close(); 89 GetWidget()->Close();
93 } 90 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698