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

Side by Side Diff: Source/core/rendering/svg/RenderSVGText.cpp

Issue 21430003: Implement interfaces in PaintInfo and make it a class. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@getterPaintInfo01
Patch Set: Fixed Linux compilation (hopefuly Windows too), addressing some reviewer's suggestions. Created 7 years, 4 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 /* 1 /*
2 * Copyright (C) 2006 Apple Computer, Inc. 2 * Copyright (C) 2006 Apple Computer, Inc.
3 * Copyright (C) 2006 Alexander Kellett <lypanov@kde.org> 3 * Copyright (C) 2006 Alexander Kellett <lypanov@kde.org>
4 * Copyright (C) 2006 Oliver Hunt <ojh16@student.canterbury.ac.nz> 4 * Copyright (C) 2006 Oliver Hunt <ojh16@student.canterbury.ac.nz>
5 * Copyright (C) 2007 Nikolas Zimmermann <zimmermann@kde.org> 5 * Copyright (C) 2007 Nikolas Zimmermann <zimmermann@kde.org>
6 * Copyright (C) 2008 Rob Buis <buis@kde.org> 6 * Copyright (C) 2008 Rob Buis <buis@kde.org>
7 * Copyright (C) 2009 Dirk Schulze <krit@webkit.org> 7 * Copyright (C) 2009 Dirk Schulze <krit@webkit.org>
8 * Copyright (C) Research In Motion Limited 2010-2012. All rights reserved. 8 * Copyright (C) Research In Motion Limited 2010-2012. All rights reserved.
9 * Copyright (C) 2012 Google Inc. 9 * Copyright (C) 2012 Google Inc.
10 * 10 *
(...skipping 470 matching lines...) Expand 10 before | Expand all | Expand 10 after
481 return closestBox->renderer()->positionForPoint(LayoutPoint(pointInContents. x(), closestBox->y())); 481 return closestBox->renderer()->positionForPoint(LayoutPoint(pointInContents. x(), closestBox->y()));
482 } 482 }
483 483
484 void RenderSVGText::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed) cons t 484 void RenderSVGText::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed) cons t
485 { 485 {
486 quads.append(localToAbsoluteQuad(strokeBoundingBox(), 0 /* mode */, wasFixed )); 486 quads.append(localToAbsoluteQuad(strokeBoundingBox(), 0 /* mode */, wasFixed ));
487 } 487 }
488 488
489 void RenderSVGText::paint(PaintInfo& paintInfo, const LayoutPoint&) 489 void RenderSVGText::paint(PaintInfo& paintInfo, const LayoutPoint&)
490 { 490 {
491 if (paintInfo.context->paintingDisabled()) 491 if (paintInfo.getContext()->paintingDisabled())
492 return; 492 return;
493 493
494 if (paintInfo.phase != PaintPhaseForeground 494 if (paintInfo.getPhase() != PaintPhaseForeground
495 && paintInfo.phase != PaintPhaseSelfOutline 495 && paintInfo.getPhase() != PaintPhaseSelfOutline
496 && paintInfo.phase != PaintPhaseSelection) 496 && paintInfo.getPhase() != PaintPhaseSelection)
497 return; 497 return;
498 498
499 PaintInfo blockInfo(paintInfo); 499 PaintInfo blockInfo(paintInfo);
500 GraphicsContextStateSaver stateSaver(*blockInfo.context); 500 GraphicsContextStateSaver stateSaver(*(blockInfo.getContext()));
501 blockInfo.applyTransform(localToParentTransform()); 501 blockInfo.applyTransform(localToParentTransform());
502 RenderBlock::paint(blockInfo, LayoutPoint()); 502 RenderBlock::paint(blockInfo, LayoutPoint());
503 } 503 }
504 504
505 FloatRect RenderSVGText::strokeBoundingBox() const 505 FloatRect RenderSVGText::strokeBoundingBox() const
506 { 506 {
507 FloatRect strokeBoundaries = objectBoundingBox(); 507 FloatRect strokeBoundaries = objectBoundingBox();
508 const SVGRenderStyle* svgStyle = style()->svgStyle(); 508 const SVGRenderStyle* svgStyle = style()->svgStyle();
509 if (!svgStyle->hasStroke()) 509 if (!svgStyle->hasStroke())
510 return strokeBoundaries; 510 return strokeBoundaries;
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
553 return 0; 553 return 0;
554 } 554 }
555 555
556 // Fix for <rdar://problem/8048875>. We should not render :first-letter CSS Styl e 556 // Fix for <rdar://problem/8048875>. We should not render :first-letter CSS Styl e
557 // in a SVG text element context. 557 // in a SVG text element context.
558 void RenderSVGText::updateFirstLetter() 558 void RenderSVGText::updateFirstLetter()
559 { 559 {
560 } 560 }
561 561
562 } 562 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698