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

Unified Diff: chrome/browser/ui/views/website_settings/website_settings_popup_view.cc

Issue 2725783004: views: align columns in site settings dialog (Closed)
Patch Set: fix unit tests, document stuff Created 3 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/views/website_settings/website_settings_popup_view.cc
diff --git a/chrome/browser/ui/views/website_settings/website_settings_popup_view.cc b/chrome/browser/ui/views/website_settings/website_settings_popup_view.cc
index afd6fe99263041f45d549314517808a09f20c987..6dff8bb12f122ce04dd53712fdbe7e502b6283f6 100644
--- a/chrome/browser/ui/views/website_settings/website_settings_popup_view.cc
+++ b/chrome/browser/ui/views/website_settings/website_settings_popup_view.cc
@@ -97,6 +97,9 @@ const int kPermissionImageSpacing = 6;
// Spacing between rows in the site settings section
const int kPermissionsVerticalSpacing = 12;
+// Spacing between the label and the menu.
+const int kPermissionMenuSpacing = 16;
+
// Button/styled label/link IDs ------------------------------------------------
const int BUTTON_CLOSE = 1337;
const int STYLED_LABEL_SECURITY_DETAILS = 1338;
@@ -462,7 +465,8 @@ void WebsiteSettingsPopupView::OnPermissionChanged(
const WebsiteSettingsUI::PermissionInfo& permission) {
presenter_->OnSitePermissionChanged(permission.type, permission.setting);
// The menu buttons for the permissions might have longer strings now, so we
- // need to size the whole bubble.
+ // need to layout and size the whole bubble.
+ Layout();
SizeToContents();
}
@@ -625,16 +629,27 @@ void WebsiteSettingsPopupView::SetPermissionInfo(
views::GridLayout::USE_PREF,
0,
0);
+ const int perms_column = 1;
+ views::ColumnSet* perms_set = layout->AddColumnSet(perms_column);
+ perms_set->AddColumn(views::GridLayout::FILL, views::GridLayout::FILL, 0,
+ views::GridLayout::FIXED, kPermissionIconColumnWidth, 0);
+ perms_set->AddPaddingColumn(0, kPermissionIconMarginLeft);
+ perms_set->AddColumn(views::GridLayout::FILL, views::GridLayout::FILL, 0,
+ views::GridLayout::USE_PREF, 0, 0);
+ perms_set->AddPaddingColumn(1, kPermissionMenuSpacing);
+ perms_set->AddColumn(views::GridLayout::TRAILING, views::GridLayout::FILL, 0,
+ views::GridLayout::USE_PREF, 0, 0);
for (const auto& permission : permission_info_list) {
- layout->StartRow(1, content_column);
- PermissionSelectorRow* selector = new PermissionSelectorRow(
- profile_,
- web_contents() ? web_contents()->GetVisibleURL() : GURL::EmptyGURL(),
- permission);
+ layout->StartRow(1, perms_column);
+ std::unique_ptr<PermissionSelectorRow> selector =
+ base::MakeUnique<PermissionSelectorRow>(
+ profile_,
+ web_contents() ? web_contents()->GetVisibleURL()
+ : GURL::EmptyGURL(),
+ permission, layout);
selector->AddObserver(this);
- layout->AddView(selector, 1, 1, views::GridLayout::FILL,
- views::GridLayout::CENTER);
layout->AddPaddingRow(1, kPermissionsVerticalSpacing);
+ selector_rows_.push_back(std::move(selector));
}
for (auto& object : chosen_object_info_list) {

Powered by Google App Engine
This is Rietveld 408576698