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

Side by Side Diff: ui/gfx/render_text.cc

Issue 8383028: ui/gfx: Convert Canvas::ClipRectInt() to use gfx::Rect. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix typo Created 9 years, 1 month 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 | « ui/gfx/canvas_skia_win.cc ('k') | ui/views/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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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/gfx/render_text.h" 5 #include "ui/gfx/render_text.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/i18n/break_iterator.h" 9 #include "base/i18n/break_iterator.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 323 matching lines...) Expand 10 before | Expand all | Expand 10 after
334 return base::i18n::RIGHT_TO_LEFT; 334 return base::i18n::RIGHT_TO_LEFT;
335 return base::i18n::LEFT_TO_RIGHT; 335 return base::i18n::LEFT_TO_RIGHT;
336 } 336 }
337 337
338 int RenderText::GetStringWidth() { 338 int RenderText::GetStringWidth() {
339 return default_style_.font.GetStringWidth(text()); 339 return default_style_.font.GetStringWidth(text());
340 } 340 }
341 341
342 void RenderText::Draw(Canvas* canvas) { 342 void RenderText::Draw(Canvas* canvas) {
343 // Clip the canvas to the text display area. 343 // Clip the canvas to the text display area.
344 canvas->ClipRectInt(display_rect_.x(), display_rect_.y(), 344 canvas->ClipRectInt(display_rect_);
345 display_rect_.width(), display_rect_.height());
346 345
347 // Draw the selection. 346 // Draw the selection.
348 std::vector<Rect> selection(GetSubstringBounds(GetSelectionStart(), 347 std::vector<Rect> selection(GetSubstringBounds(GetSelectionStart(),
349 GetCursorPosition())); 348 GetCursorPosition()));
350 SkColor selection_color = 349 SkColor selection_color =
351 focused() ? kFocusedSelectionColor : kUnfocusedSelectionColor; 350 focused() ? kFocusedSelectionColor : kUnfocusedSelectionColor;
352 for (std::vector<Rect>::const_iterator i = selection.begin(); 351 for (std::vector<Rect>::const_iterator i = selection.begin();
353 i < selection.end(); ++i) { 352 i < selection.end(); ++i) {
354 Rect r(*i); 353 Rect r(*i);
355 canvas->FillRectInt(selection_color, r.x(), r.y(), r.width(), r.height()); 354 canvas->FillRectInt(selection_color, r.x(), r.y(), r.width(), r.height());
(...skipping 298 matching lines...) Expand 10 before | Expand all | Expand 10 after
654 // LTR character. 653 // LTR character.
655 // 654 //
656 // Pan to show the cursor when it overflows to the left. 655 // Pan to show the cursor when it overflows to the left.
657 delta_offset = display_rect_.x() - cursor_bounds_.x(); 656 delta_offset = display_rect_.x() - cursor_bounds_.x();
658 } 657 }
659 display_offset_.Offset(delta_offset, 0); 658 display_offset_.Offset(delta_offset, 0);
660 cursor_bounds_.Offset(delta_offset, 0); 659 cursor_bounds_.Offset(delta_offset, 0);
661 } 660 }
662 661
663 } // namespace gfx 662 } // namespace gfx
OLDNEW
« no previous file with comments | « ui/gfx/canvas_skia_win.cc ('k') | ui/views/view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698