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

Unified Diff: ui/views/layout/grid_layout.cc

Issue 2625083003: Implement Harmony-style consistent button widths for Collected Cookies. (Closed)
Patch Set: Start on DialogClientview 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
« no previous file with comments | « ui/views/layout/grid_layout.h ('k') | ui/views/window/dialog_client_view.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/views/layout/grid_layout.cc
diff --git a/ui/views/layout/grid_layout.cc b/ui/views/layout/grid_layout.cc
index eb4dd9d18899365686159616557ca859b9cb5352..bd705b4ed54e6626b27d1a3c900a3de37394a184 100644
--- a/ui/views/layout/grid_layout.cc
+++ b/ui/views/layout/grid_layout.cc
@@ -186,7 +186,7 @@ class Column : public LayoutElement {
// Determines the max size of all linked columns, and sets each column
// to that size. This should only be used for the master column.
- void UnifySameSizedColumnSizes();
+ void UnifySameSizedColumnSizes(int size_limit);
void AdjustSize(int size) override;
@@ -231,17 +231,21 @@ Column* Column::GetLastMasterColumn() {
return master_column_->GetLastMasterColumn();
}
-void Column::UnifySameSizedColumnSizes() {
+void Column::UnifySameSizedColumnSizes(int size_limit) {
DCHECK(master_column_ == this);
// Accumulate the size first.
int size = 0;
- for (auto column : same_size_columns_)
- size = std::max(size, column->Size());
+ for (auto column : same_size_columns_) {
+ if (column->Size() <= size_limit)
+ size = std::max(size, column->Size());
+ }
// Then apply it.
- for (auto column : same_size_columns_)
- column->SetSize(size);
+ for (auto column : same_size_columns_) {
+ if (column->Size() <= size_limit)
+ column->SetSize(size);
+ }
}
void Column::AdjustSize(int size) {
@@ -365,8 +369,7 @@ static bool CompareByRowSpan(const std::unique_ptr<ViewState>& v1,
// ColumnSet -------------------------------------------------------------
-ColumnSet::ColumnSet(int id) : id_(id) {
-}
+ColumnSet::ColumnSet(int id) : id_(id), linked_column_size_limit_(INT_MAX) {}
ColumnSet::~ColumnSet() {
}
@@ -497,7 +500,7 @@ void ColumnSet::AccumulateMasterColumns() {
void ColumnSet::UnifySameSizedColumnSizes() {
for (auto column : master_columns_)
- column->UnifySameSizedColumnSizes();
+ column->UnifySameSizedColumnSizes(linked_column_size_limit_);
}
void ColumnSet::UpdateRemainingWidth(ViewState* view_state) {
« no previous file with comments | « ui/views/layout/grid_layout.h ('k') | ui/views/window/dialog_client_view.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698