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

Side by Side Diff: ui/app_list/page_switcher.cc

Issue 11110004: Make gfx::Rect class operations consistently mutate the class they are called on. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: cc/ fixes Created 8 years, 2 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
« no previous file with comments | « ui/app_list/apps_grid_view.cc ('k') | ui/app_list/search_result_view.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 "ui/app_list/page_switcher.h" 5 #include "ui/app_list/page_switcher.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "third_party/skia/include/core/SkPath.h" 9 #include "third_party/skia/include/core/SkPath.h"
10 #include "ui/app_list/pagination_model.h" 10 #include "ui/app_list/pagination_model.h"
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
60 if (state() == BS_HOT) { 60 if (state() == BS_HOT) {
61 PaintButton(canvas, kHoverColor); 61 PaintButton(canvas, kHoverColor);
62 } else { 62 } else {
63 PaintButton(canvas, kNormalColor); 63 PaintButton(canvas, kNormalColor);
64 } 64 }
65 } 65 }
66 66
67 private: 67 private:
68 // Paints a button that has two rounded corner at bottom. 68 // Paints a button that has two rounded corner at bottom.
69 void PaintButton(gfx::Canvas* canvas, SkColor base_color) { 69 void PaintButton(gfx::Canvas* canvas, SkColor base_color) {
70 gfx::Rect rect(GetContentsBounds().Center( 70 gfx::Rect rect(GetContentsBounds());
71 gfx::Size(button_width_, kButtonHeight))); 71 rect.ClampToCenteredSize(gfx::Size(button_width_, kButtonHeight));
72 72
73 SkPath path; 73 SkPath path;
74 path.addRoundRect(gfx::RectToSkRect(rect), 74 path.addRoundRect(gfx::RectToSkRect(rect),
75 SkIntToScalar(kButtonCornerRadius), 75 SkIntToScalar(kButtonCornerRadius),
76 SkIntToScalar(kButtonCornerRadius)); 76 SkIntToScalar(kButtonCornerRadius));
77 77
78 SkPaint paint; 78 SkPaint paint;
79 paint.setAntiAlias(true); 79 paint.setAntiAlias(true);
80 paint.setStyle(SkPaint::kFill_Style); 80 paint.setStyle(SkPaint::kFill_Style);
81 paint.setColor(base_color); 81 paint.setColor(base_color);
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
182 gfx::Rect rect(GetContentsBounds()); 182 gfx::Rect rect(GetContentsBounds());
183 183
184 CalculateButtonWidthAndSpacing(rect.width()); 184 CalculateButtonWidthAndSpacing(rect.width());
185 185
186 // Makes |buttons_| horizontally center and vertically fill. 186 // Makes |buttons_| horizontally center and vertically fill.
187 gfx::Size buttons_size(buttons_->GetPreferredSize()); 187 gfx::Size buttons_size(buttons_->GetPreferredSize());
188 gfx::Rect buttons_bounds(rect.CenterPoint().x() - buttons_size.width() / 2, 188 gfx::Rect buttons_bounds(rect.CenterPoint().x() - buttons_size.width() / 2,
189 rect.y(), 189 rect.y(),
190 buttons_size.width(), 190 buttons_size.width(),
191 rect.height()); 191 rect.height());
192 buttons_->SetBoundsRect(rect.Intersect(buttons_bounds)); 192 rect.Intersect(buttons_bounds);
193 buttons_->SetBoundsRect(rect);
193 } 194 }
194 195
195 void PageSwitcher::CalculateButtonWidthAndSpacing(int contents_width) { 196 void PageSwitcher::CalculateButtonWidthAndSpacing(int contents_width) {
196 const int button_count = buttons_->child_count(); 197 const int button_count = buttons_->child_count();
197 if (!button_count) 198 if (!button_count)
198 return; 199 return;
199 200
200 contents_width -= 2 * kButtonStripPadding; 201 contents_width -= 2 * kButtonStripPadding;
201 202
202 int button_width = kMinButtonWidth; 203 int button_width = kMinButtonWidth;
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
261 remaining = -remaining; 262 remaining = -remaining;
262 progress = -progress; 263 progress = -progress;
263 } 264 }
264 265
265 GetButtonByIndex(buttons_, current_page)->SetSelectedRange(remaining); 266 GetButtonByIndex(buttons_, current_page)->SetSelectedRange(remaining);
266 if (model_->is_valid_page(target_page)) 267 if (model_->is_valid_page(target_page))
267 GetButtonByIndex(buttons_, target_page)->SetSelectedRange(progress); 268 GetButtonByIndex(buttons_, target_page)->SetSelectedRange(progress);
268 } 269 }
269 270
270 } // namespace app_list 271 } // namespace app_list
OLDNEW
« no previous file with comments | « ui/app_list/apps_grid_view.cc ('k') | ui/app_list/search_result_view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698