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

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

Issue 2758323002: Broke out layout metric information from ViewsDelegate to LayoutProvider (Closed)
Patch Set: Final feedback addressed Created 3 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/media_galleries_dialog_views.h" 5 #include "chrome/browser/ui/views/extensions/media_galleries_dialog_views.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include "base/macros.h" 9 #include "base/macros.h"
10 #include "base/strings/utf_string_conversions.h" 10 #include "base/strings/utf_string_conversions.h"
11 #include "chrome/browser/ui/views/extensions/media_gallery_checkbox_view.h" 11 #include "chrome/browser/ui/views/extensions/media_gallery_checkbox_view.h"
12 #include "chrome/browser/ui/views/harmony/layout_delegate.h" 12 #include "chrome/browser/ui/views/harmony/chrome_layout_provider.h"
13 #include "chrome/grit/generated_resources.h" 13 #include "chrome/grit/generated_resources.h"
14 #include "chrome/grit/locale_settings.h" 14 #include "chrome/grit/locale_settings.h"
15 #include "components/constrained_window/constrained_window_views.h" 15 #include "components/constrained_window/constrained_window_views.h"
16 #include "components/web_modal/web_contents_modal_dialog_manager.h" 16 #include "components/web_modal/web_contents_modal_dialog_manager.h"
17 #include "content/public/browser/web_contents.h" 17 #include "content/public/browser/web_contents.h"
18 #include "ui/base/l10n/l10n_util.h" 18 #include "ui/base/l10n/l10n_util.h"
19 #include "ui/native_theme/native_theme.h" 19 #include "ui/native_theme/native_theme.h"
20 #include "ui/views/border.h" 20 #include "ui/views/border.h"
21 #include "ui/views/controls/button/checkbox.h" 21 #include "ui/views/controls/button/checkbox.h"
22 #include "ui/views/controls/button/image_button.h" 22 #include "ui/views/controls/button/image_button.h"
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
103 int column_set_id = 0; 103 int column_set_id = 0;
104 views::ColumnSet* columns = layout->AddColumnSet(column_set_id); 104 views::ColumnSet* columns = layout->AddColumnSet(column_set_id);
105 columns->AddColumn(views::GridLayout::LEADING, 105 columns->AddColumn(views::GridLayout::LEADING,
106 views::GridLayout::LEADING, 106 views::GridLayout::LEADING,
107 1, 107 1,
108 views::GridLayout::FIXED, 108 views::GridLayout::FIXED,
109 dialog_content_width, 109 dialog_content_width,
110 0); 110 0);
111 111
112 // Message text. 112 // Message text.
113 LayoutDelegate* layout_delegate = LayoutDelegate::Get(); 113 ChromeLayoutProvider* provider = ChromeLayoutProvider::Get();
114 const int vertical_padding = layout_delegate->GetMetric( 114 const int vertical_padding =
115 LayoutDelegate::Metric::RELATED_CONTROL_VERTICAL_SPACING); 115 provider->GetDistanceMetric(views::DISTANCE_RELATED_CONTROL_VERTICAL);
116 views::Label* subtext = new views::Label(controller_->GetSubtext()); 116 views::Label* subtext = new views::Label(controller_->GetSubtext());
117 subtext->SetMultiLine(true); 117 subtext->SetMultiLine(true);
118 subtext->SetHorizontalAlignment(gfx::ALIGN_LEFT); 118 subtext->SetHorizontalAlignment(gfx::ALIGN_LEFT);
119 layout->StartRow(0, column_set_id); 119 layout->StartRow(0, column_set_id);
120 layout->AddView( 120 layout->AddView(
121 subtext, 1, 1, 121 subtext, 1, 1,
122 views::GridLayout::FILL, views::GridLayout::LEADING, 122 views::GridLayout::FILL, views::GridLayout::LEADING,
123 dialog_content_width, subtext->GetHeightForWidth(dialog_content_width)); 123 dialog_content_width, subtext->GetHeightForWidth(dialog_content_width));
124 layout->AddPaddingRow(0, vertical_padding); 124 layout->AddPaddingRow(0, vertical_padding);
125 125
126 // Scrollable area for checkboxes. 126 // Scrollable area for checkboxes.
127 const int small_vertical_padding = LayoutDelegate::Get()->GetMetric( 127 const int small_vertical_padding =
128 LayoutDelegate::Metric::RELATED_CONTROL_VERTICAL_SPACING_SMALL); 128 provider->GetDistanceMetric(DISTANCE_RELATED_CONTROL_VERTICAL_SMALL);
129 ScrollableView* scroll_container = new ScrollableView(); 129 ScrollableView* scroll_container = new ScrollableView();
130 scroll_container->SetLayoutManager(new views::BoxLayout( 130 scroll_container->SetLayoutManager(new views::BoxLayout(
131 views::BoxLayout::kVertical, 0, 0, small_vertical_padding)); 131 views::BoxLayout::kVertical, 0, 0, small_vertical_padding));
132 scroll_container->SetBorder( 132 scroll_container->SetBorder(
133 views::CreateEmptyBorder(vertical_padding, 0, vertical_padding, 0)); 133 views::CreateEmptyBorder(vertical_padding, 0, vertical_padding, 0));
134 134
135 std::vector<base::string16> section_headers = 135 std::vector<base::string16> section_headers =
136 controller_->GetSectionHeaders(); 136 controller_->GetSectionHeaders();
137 for (size_t i = 0; i < section_headers.size(); i++) { 137 for (size_t i = 0; i < section_headers.size(); i++) {
138 MediaGalleriesDialogController::Entries entries = 138 MediaGalleriesDialogController::Entries entries =
139 controller_->GetSectionEntries(i); 139 controller_->GetSectionEntries(i);
140 140
141 // Header and separator line. 141 // Header and separator line.
142 if (!section_headers[i].empty() && !entries.empty()) { 142 if (!section_headers[i].empty() && !entries.empty()) {
143 views::Separator* separator = new views::Separator(); 143 views::Separator* separator = new views::Separator();
144 scroll_container->AddChildView(separator); 144 scroll_container->AddChildView(separator);
145 145
146 views::Label* header = new views::Label(section_headers[i]); 146 views::Label* header = new views::Label(section_headers[i]);
147 header->SetMultiLine(true); 147 header->SetMultiLine(true);
148 header->SetHorizontalAlignment(gfx::ALIGN_LEFT); 148 header->SetHorizontalAlignment(gfx::ALIGN_LEFT);
149 header->SetBorder(views::CreateEmptyBorder( 149 header->SetBorder(views::CreateEmptyBorder(
150 vertical_padding, 150 vertical_padding,
151 layout_delegate->GetMetric( 151 provider->GetDistanceMetric(DISTANCE_PANEL_CONTENT_MARGIN),
152 LayoutDelegate::Metric::PANEL_CONTENT_MARGIN),
153 vertical_padding, 0)); 152 vertical_padding, 0));
154 scroll_container->AddChildView(header); 153 scroll_container->AddChildView(header);
155 } 154 }
156 155
157 // Checkboxes. 156 // Checkboxes.
158 MediaGalleriesDialogController::Entries::const_iterator iter; 157 MediaGalleriesDialogController::Entries::const_iterator iter;
159 for (iter = entries.begin(); iter != entries.end(); ++iter) { 158 for (iter = entries.begin(); iter != entries.end(); ++iter) {
160 int spacing = iter + 1 == entries.end() ? small_vertical_padding : 0; 159 int spacing = iter + 1 == entries.end() ? small_vertical_padding : 0;
161 AddOrUpdateGallery(*iter, scroll_container, spacing); 160 AddOrUpdateGallery(*iter, scroll_container, spacing);
162 } 161 }
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after
321 context_menu_runner_.reset(); 320 context_menu_runner_.reset();
322 } 321 }
323 322
324 // MediaGalleriesDialogViewsController ----------------------------------------- 323 // MediaGalleriesDialogViewsController -----------------------------------------
325 324
326 // static 325 // static
327 MediaGalleriesDialog* MediaGalleriesDialog::Create( 326 MediaGalleriesDialog* MediaGalleriesDialog::Create(
328 MediaGalleriesDialogController* controller) { 327 MediaGalleriesDialogController* controller) {
329 return new MediaGalleriesDialogViews(controller); 328 return new MediaGalleriesDialogViews(controller);
330 } 329 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698