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

Side by Side Diff: Source/core/rendering/RenderText.h

Issue 622253002: Pass start/length at InlineTextBox construction time. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: rebase Created 6 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 | Annotate | Revision Log
« no previous file with comments | « Source/core/rendering/RenderBlockLineLayout.cpp ('k') | Source/core/rendering/RenderText.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * (C) 1999 Lars Knoll (knoll@kde.org) 2 * (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 2000 Dirk Mueller (mueller@kde.org) 3 * (C) 2000 Dirk Mueller (mueller@kde.org)
4 * Copyright (C) 2004-2009, 2013 Apple Inc. All rights reserved. 4 * Copyright (C) 2004-2009, 2013 Apple Inc. All rights reserved.
5 * 5 *
6 * This library is free software; you can redistribute it and/or 6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public 7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either 8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version. 9 * version 2 of the License, or (at your option) any later version.
10 * 10 *
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
53 virtual PassRefPtr<StringImpl> originalText() const; 53 virtual PassRefPtr<StringImpl> originalText() const;
54 54
55 void extractTextBox(InlineTextBox*); 55 void extractTextBox(InlineTextBox*);
56 void attachTextBox(InlineTextBox*); 56 void attachTextBox(InlineTextBox*);
57 void removeTextBox(InlineTextBox*); 57 void removeTextBox(InlineTextBox*);
58 58
59 const String& text() const { return m_text; } 59 const String& text() const { return m_text; }
60 virtual unsigned textStartOffset() const { return 0; } 60 virtual unsigned textStartOffset() const { return 0; }
61 String plainText() const; 61 String plainText() const;
62 62
63 InlineTextBox* createInlineTextBox(); 63 InlineTextBox* createInlineTextBox(int start, unsigned short length);
64 void dirtyLineBoxes(bool fullLayout); 64 void dirtyLineBoxes(bool fullLayout);
65 65
66 virtual void absoluteRects(Vector<IntRect>&, const LayoutPoint& accumulatedO ffset) const OVERRIDE FINAL; 66 virtual void absoluteRects(Vector<IntRect>&, const LayoutPoint& accumulatedO ffset) const OVERRIDE FINAL;
67 void absoluteRectsForRange(Vector<IntRect>&, unsigned startOffset = 0, unsig ned endOffset = INT_MAX, bool useSelectionHeight = false, bool* wasFixed = 0); 67 void absoluteRectsForRange(Vector<IntRect>&, unsigned startOffset = 0, unsig ned endOffset = INT_MAX, bool useSelectionHeight = false, bool* wasFixed = 0);
68 68
69 virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed) const OVERRID E FINAL; 69 virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed) const OVERRID E FINAL;
70 void absoluteQuadsForRange(Vector<FloatQuad>&, unsigned startOffset = 0, uns igned endOffset = INT_MAX, bool useSelectionHeight = false, bool* wasFixed = 0); 70 void absoluteQuadsForRange(Vector<FloatQuad>&, unsigned startOffset = 0, uns igned endOffset = INT_MAX, bool useSelectionHeight = false, bool* wasFixed = 0);
71 71
72 enum ClippingOption { NoClipping, ClipToEllipsis }; 72 enum ClippingOption { NoClipping, ClipToEllipsis };
73 void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed = 0, ClippingOption = NoClipping) const; 73 void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed = 0, ClippingOption = NoClipping) const;
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
143 virtual void willBeDestroyed() OVERRIDE; 143 virtual void willBeDestroyed() OVERRIDE;
144 144
145 virtual void styleWillChange(StyleDifference, const RenderStyle&) OVERRIDE F INAL { } 145 virtual void styleWillChange(StyleDifference, const RenderStyle&) OVERRIDE F INAL { }
146 virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle) OV ERRIDE; 146 virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle) OV ERRIDE;
147 147
148 virtual void setTextInternal(PassRefPtr<StringImpl>); 148 virtual void setTextInternal(PassRefPtr<StringImpl>);
149 virtual UChar previousCharacter() const; 149 virtual UChar previousCharacter() const;
150 150
151 virtual void addLayerHitTestRects(LayerHitTestRects&, const RenderLayer* cur rentLayer, const LayoutPoint& layerOffset, const LayoutRect& containerRect) cons t OVERRIDE; 151 virtual void addLayerHitTestRects(LayerHitTestRects&, const RenderLayer* cur rentLayer, const LayoutPoint& layerOffset, const LayoutRect& containerRect) cons t OVERRIDE;
152 152
153 virtual InlineTextBox* createTextBox(); // Subclassed by SVG. 153 virtual InlineTextBox* createTextBox(int start, unsigned short length); // S ubclassed by SVG.
154 154
155 private: 155 private:
156 void computePreferredLogicalWidths(float leadWidth); 156 void computePreferredLogicalWidths(float leadWidth);
157 void computePreferredLogicalWidths(float leadWidth, HashSet<const SimpleFont Data*>& fallbackFonts, GlyphOverflow&); 157 void computePreferredLogicalWidths(float leadWidth, HashSet<const SimpleFont Data*>& fallbackFonts, GlyphOverflow&);
158 158
159 bool computeCanUseSimpleFontCodePath() const; 159 bool computeCanUseSimpleFontCodePath() const;
160 160
161 // Make length() private so that callers that have a RenderText* 161 // Make length() private so that callers that have a RenderText*
162 // will use the more efficient textLength() instead, while 162 // will use the more efficient textLength() instead, while
163 // callers with a RenderObject* can continue to use length(). 163 // callers with a RenderObject* can continue to use length().
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
238 inline RenderText* Text::renderer() const 238 inline RenderText* Text::renderer() const
239 { 239 {
240 return toRenderText(CharacterData::renderer()); 240 return toRenderText(CharacterData::renderer());
241 } 241 }
242 242
243 void applyTextTransform(const RenderStyle*, String&, UChar); 243 void applyTextTransform(const RenderStyle*, String&, UChar);
244 244
245 } // namespace blink 245 } // namespace blink
246 246
247 #endif // RenderText_h 247 #endif // RenderText_h
OLDNEW
« no previous file with comments | « Source/core/rendering/RenderBlockLineLayout.cpp ('k') | Source/core/rendering/RenderText.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698