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

Side by Side Diff: chrome/browser/ui/views/website_settings/permissions_bubble_view.cc

Issue 153973005: [WebsiteSettings] Adjust visual margins on permission bubble to match mocks. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: use constants Created 6 years, 10 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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/website_settings/permissions_bubble_view.h" 5 #include "chrome/browser/ui/views/website_settings/permissions_bubble_view.h"
6 6
7 #include "base/strings/utf_string_conversions.h" 7 #include "base/strings/utf_string_conversions.h"
8 #include "chrome/browser/ui/website_settings/permission_bubble_request.h" 8 #include "chrome/browser/ui/website_settings/permission_bubble_request.h"
9 #include "grit/generated_resources.h" 9 #include "grit/generated_resources.h"
10 #include "ui/base/l10n/l10n_util.h" 10 #include "ui/base/l10n/l10n_util.h"
11 #include "ui/base/resource/resource_bundle.h" 11 #include "ui/base/resource/resource_bundle.h"
12 #include "ui/gfx/text_constants.h" 12 #include "ui/gfx/text_constants.h"
13 #include "ui/views/bubble/bubble_delegate.h" 13 #include "ui/views/bubble/bubble_delegate.h"
14 #include "ui/views/controls/button/checkbox.h" 14 #include "ui/views/controls/button/checkbox.h"
15 #include "ui/views/controls/button/label_button.h" 15 #include "ui/views/controls/button/label_button.h"
16 #include "ui/views/controls/label.h" 16 #include "ui/views/controls/label.h"
17 #include "ui/views/layout/box_layout.h" 17 #include "ui/views/layout/box_layout.h"
18 #include "ui/views/layout/grid_layout.h" 18 #include "ui/views/layout/grid_layout.h"
19 19
20 namespace {
21
22 // Spacing constant for outer margin. This is added to the
23 // bubble margin itself to equalize the margins at 20px.
24 const int kBubbleOuterMargin = 12;
25
26 // Spacing between major items should be 10px.
27 const int kItemMajorSpacing = 10;
28
29 // Button border size, draws inside the spacing distance.
30 const int kButtonBorderSize = 2;
31
32 } // namespace
33
20 // View implementation for the permissions bubble. 34 // View implementation for the permissions bubble.
21 class PermissionsBubbleDelegateView : public views::BubbleDelegateView, 35 class PermissionsBubbleDelegateView : public views::BubbleDelegateView,
22 public views::ButtonListener { 36 public views::ButtonListener {
23 public: 37 public:
24 explicit PermissionsBubbleDelegateView( 38 explicit PermissionsBubbleDelegateView(
25 views::View* anchor, 39 views::View* anchor,
26 PermissionBubbleViewViews* owner, 40 PermissionBubbleViewViews* owner,
27 const std::vector<PermissionBubbleRequest*>& requests, 41 const std::vector<PermissionBubbleRequest*>& requests,
28 const std::vector<bool>& accept_state, 42 const std::vector<bool>& accept_state,
29 bool customization_mode); 43 bool customization_mode);
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
61 : views::BubbleDelegateView(anchor, views::BubbleBorder::TOP_LEFT), 75 : views::BubbleDelegateView(anchor, views::BubbleBorder::TOP_LEFT),
62 owner_(owner), 76 owner_(owner),
63 allow_(NULL), 77 allow_(NULL),
64 deny_(NULL), 78 deny_(NULL),
65 customize_(NULL) { 79 customize_(NULL) {
66 RemoveAllChildViews(true); 80 RemoveAllChildViews(true);
67 set_close_on_esc(false); 81 set_close_on_esc(false);
68 set_close_on_deactivate(false); 82 set_close_on_deactivate(false);
69 83
70 SetLayoutManager(new views::BoxLayout( 84 SetLayoutManager(new views::BoxLayout(
71 views::BoxLayout::kVertical, 30, 0, 20)); 85 views::BoxLayout::kVertical, kBubbleOuterMargin, 0, kItemMajorSpacing));
72 86
73 ui::ResourceBundle& rb = ui::ResourceBundle::GetSharedInstance(); 87 ui::ResourceBundle& rb = ui::ResourceBundle::GetSharedInstance();
74 88
75 if (requests.size() == 1) { 89 if (requests.size() == 1) {
76 title_ = requests[0]->GetMessageText(); 90 title_ = requests[0]->GetMessageText();
77 if (GetWidget()) 91 if (GetWidget())
78 GetWidget()->UpdateWindowTitle(); 92 GetWidget()->UpdateWindowTitle();
79 } else { 93 } else {
80 for (std::vector<PermissionBubbleRequest*>::const_iterator it = 94 for (std::vector<PermissionBubbleRequest*>::const_iterator it =
81 requests.begin(); 95 requests.begin();
(...skipping 17 matching lines...) Expand all
99 } 113 }
100 114
101 views::View* button_row = new views::View(); 115 views::View* button_row = new views::View();
102 views::GridLayout* button_layout = new views::GridLayout(button_row); 116 views::GridLayout* button_layout = new views::GridLayout(button_row);
103 views::ColumnSet* columns = button_layout->AddColumnSet(0); 117 views::ColumnSet* columns = button_layout->AddColumnSet(0);
104 columns->AddColumn(views::GridLayout::LEADING, views::GridLayout::CENTER, 118 columns->AddColumn(views::GridLayout::LEADING, views::GridLayout::CENTER,
105 100.0, views::GridLayout::USE_PREF, 0, 0); 119 100.0, views::GridLayout::USE_PREF, 0, 0);
106 columns->AddColumn(views::GridLayout::TRAILING, views::GridLayout::FILL, 120 columns->AddColumn(views::GridLayout::TRAILING, views::GridLayout::FILL,
107 0, views::GridLayout::USE_PREF, 0, 0); 121 0, views::GridLayout::USE_PREF, 0, 0);
108 if (!customization_mode) { 122 if (!customization_mode) {
109 columns->AddPaddingColumn(0, 10); // padding between buttons 123 columns->AddPaddingColumn(0, kItemMajorSpacing - (2*kButtonBorderSize));
110 columns->AddColumn(views::GridLayout::TRAILING, views::GridLayout::FILL, 124 columns->AddColumn(views::GridLayout::TRAILING, views::GridLayout::FILL,
111 0, views::GridLayout::USE_PREF, 0, 0); 125 0, views::GridLayout::USE_PREF, 0, 0);
112 } 126 }
113 127
114 button_row->SetLayoutManager(button_layout); 128 button_row->SetLayoutManager(button_layout);
115 AddChildView(button_row); 129 AddChildView(button_row);
116 130
117 button_layout->StartRow(0, 0); 131 button_layout->StartRow(0, 0);
118 132
119 // Customization case: empty "Customize" label and an "OK" button 133 // Customization case: empty "Customize" label and an "OK" button
120 if (customization_mode) { 134 if (customization_mode) {
121 button_layout->AddView(new views::View()); 135 button_layout->AddView(new views::View());
122 136
123 views::LabelButton* ok_button = 137 views::LabelButton* ok_button =
124 new views::LabelButton(this, l10n_util::GetStringUTF16( 138 new views::LabelButton(this, l10n_util::GetStringUTF16(
125 IDS_OK)); 139 IDS_OK));
126 ok_button->SetStyle(views::Button::STYLE_BUTTON); 140 ok_button->SetStyle(views::Button::STYLE_BUTTON);
127 button_layout->AddView(ok_button); 141 button_layout->AddView(ok_button);
128 allow_ = ok_button; 142 allow_ = ok_button;
129 143
130 button_layout->AddPaddingRow(0, 12); 144 button_layout->AddPaddingRow(0, kBubbleOuterMargin);
131 return; 145 return;
132 } 146 }
133 147
134 // Only show the "Customize" button if there is more than one option. 148 // Only show the "Customize" button if there is more than one option.
135 if (requests.size() > 1) { 149 if (requests.size() > 1) {
136 views::LabelButton* customize = new views::LabelButton(this, 150 views::LabelButton* customize = new views::LabelButton(this,
137 l10n_util::GetStringUTF16(IDS_PERMISSION_CUSTOMIZE)); 151 l10n_util::GetStringUTF16(IDS_PERMISSION_CUSTOMIZE));
138 customize->SetStyle(views::Button::STYLE_TEXTBUTTON); 152 customize->SetStyle(views::Button::STYLE_TEXTBUTTON);
139 customize->SetTextColor(views::Button::STATE_NORMAL, SK_ColorBLUE); 153 customize->SetTextColor(views::Button::STATE_NORMAL, SK_ColorBLUE);
140 customize->SetTextColor(views::Button::STATE_HOVERED, SK_ColorBLUE); 154 customize->SetTextColor(views::Button::STATE_HOVERED, SK_ColorBLUE);
(...skipping 22 matching lines...) Expand all
163 deny_button->SetFontList(rb.GetFontList(ui::ResourceBundle::MediumFont)); 177 deny_button->SetFontList(rb.GetFontList(ui::ResourceBundle::MediumFont));
164 button_layout->AddView(deny_button); 178 button_layout->AddView(deny_button);
165 deny_ = deny_button; 179 deny_ = deny_button;
166 180
167 views::LabelButton* allow_button = new views::LabelButton(this, allow_text); 181 views::LabelButton* allow_button = new views::LabelButton(this, allow_text);
168 allow_button->SetStyle(views::Button::STYLE_BUTTON); 182 allow_button->SetStyle(views::Button::STYLE_BUTTON);
169 allow_button->SetFontList(rb.GetFontList(ui::ResourceBundle::MediumFont)); 183 allow_button->SetFontList(rb.GetFontList(ui::ResourceBundle::MediumFont));
170 button_layout->AddView(allow_button); 184 button_layout->AddView(allow_button);
171 allow_ = allow_button; 185 allow_ = allow_button;
172 186
173 button_layout->AddPaddingRow(0, 30); 187 button_layout->AddPaddingRow(0, kBubbleOuterMargin);
174 } 188 }
175 189
176 PermissionsBubbleDelegateView::~PermissionsBubbleDelegateView() { 190 PermissionsBubbleDelegateView::~PermissionsBubbleDelegateView() {
177 if (owner_) 191 if (owner_)
178 owner_->Closing(); 192 owner_->Closing();
179 } 193 }
180 194
181 void PermissionsBubbleDelegateView::ResetOwner() { 195 void PermissionsBubbleDelegateView::ResetOwner() {
182 owner_ = NULL; 196 owner_ = NULL;
183 } 197 }
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
279 293
280 void PermissionBubbleViewViews::Deny() { 294 void PermissionBubbleViewViews::Deny() {
281 if (delegate_) 295 if (delegate_)
282 delegate_->Deny(); 296 delegate_->Deny();
283 } 297 }
284 298
285 void PermissionBubbleViewViews::SetCustomizationMode() { 299 void PermissionBubbleViewViews::SetCustomizationMode() {
286 if (delegate_) 300 if (delegate_)
287 delegate_->SetCustomizationMode(); 301 delegate_->SetCustomizationMode();
288 } 302 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698