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

Unified Diff: Source/core/layout/svg/SVGTextLayoutEngine.h

Issue 1158033006: Track if textLength spacing is in effect while walking the line box tree (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 7 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 | « no previous file | Source/core/layout/svg/SVGTextLayoutEngine.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/layout/svg/SVGTextLayoutEngine.h
diff --git a/Source/core/layout/svg/SVGTextLayoutEngine.h b/Source/core/layout/svg/SVGTextLayoutEngine.h
index bdce289dab512c0ddc49eda485e815f90e5d50bd..0058c147019c7c53df35d6e8d740353d1556ecd3 100644
--- a/Source/core/layout/svg/SVGTextLayoutEngine.h
+++ b/Source/core/layout/svg/SVGTextLayoutEngine.h
@@ -29,8 +29,10 @@
namespace blink {
-class LayoutObject;
class ComputedStyle;
+class InlineFlowBox;
+class LayoutObject;
+class SVGInlineFlowBox;
class SVGInlineTextBox;
// SVGTextLayoutEngine performs the second layout phase for SVG text.
@@ -48,10 +50,7 @@ public:
Vector<SVGTextLayoutAttributes*>& layoutAttributes() { return m_layoutAttributes; }
- void beginTextPathLayout(LayoutObject*, SVGTextLayoutEngine& lineLayout);
- void endTextPathLayout();
-
- void layoutInlineTextBox(SVGInlineTextBox*);
+ void layoutCharactersInTextBoxes(InlineFlowBox* start);
void finishLayout();
private:
@@ -60,8 +59,11 @@ private:
void updateRelativePositionAdjustmentsIfNeeded(float dx, float dy);
void recordTextFragment(SVGInlineTextBox*);
- bool parentDefinesTextLength(LayoutObject*) const;
+ void beginTextPathLayout(SVGInlineFlowBox*);
+ void endTextPathLayout();
+
+ void layoutInlineTextBox(SVGInlineTextBox*);
void layoutTextOnLineOrPath(SVGInlineTextBox*, const LayoutSVGInlineText&, const ComputedStyle&);
bool currentLogicalCharacterAttributes(SVGTextLayoutAttributes*&);
@@ -84,6 +86,7 @@ private:
float m_dy;
bool m_isVerticalText;
bool m_inPathLayout;
+ bool m_textLengthSpacingInEffect;
// Text on path layout
Path::PositionCalculator* m_textPathCalculator;
« no previous file with comments | « no previous file | Source/core/layout/svg/SVGTextLayoutEngine.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698