diff options
author | Simon Hausmann <simon.hausmann@nokia.com> | 2012-05-07 11:21:11 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@nokia.com> | 2012-05-07 11:21:11 +0200 |
commit | 2cf6c8816a73e0132bd8fa3b509d62d7c51b6e47 (patch) | |
tree | 988e8c5b116dd0466244ae2fe5af8ee9be926d76 /Source/WebCore/rendering/InlineTextBox.h | |
parent | dd91e772430dc294e3bf478c119ef8d43c0a3358 (diff) | |
download | qtwebkit-2cf6c8816a73e0132bd8fa3b509d62d7c51b6e47.tar.gz |
Imported WebKit commit 7e538425aa020340619e927792f3d895061fb54b (http://svn.webkit.org/repository/webkit/trunk@116286)
Diffstat (limited to 'Source/WebCore/rendering/InlineTextBox.h')
-rw-r--r-- | Source/WebCore/rendering/InlineTextBox.h | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/Source/WebCore/rendering/InlineTextBox.h b/Source/WebCore/rendering/InlineTextBox.h index e59660e3f..a9bde74f0 100644 --- a/Source/WebCore/rendering/InlineTextBox.h +++ b/Source/WebCore/rendering/InlineTextBox.h @@ -75,11 +75,10 @@ public: unsigned short truncation() { return m_truncation; } - bool hasHyphen() const { return m_hasEllipsisBoxOrHyphen; } - void setHasHyphen(bool hasHyphen) { m_hasEllipsisBoxOrHyphen = hasHyphen; } - - bool canHaveLeadingExpansion() const { return m_hasSelectedChildrenOrCanHaveLeadingExpansion; } - void setCanHaveLeadingExpansion(bool canHaveLeadingExpansion) { m_hasSelectedChildrenOrCanHaveLeadingExpansion = canHaveLeadingExpansion; } + using InlineBox::hasHyphen; + using InlineBox::setHasHyphen; + using InlineBox::canHaveLeadingExpansion; + using InlineBox::setCanHaveLeadingExpansion; static inline bool compareByStart(const InlineTextBox* first, const InlineTextBox* second) { return first->start() < second->start(); } @@ -110,7 +109,7 @@ private: public: virtual FloatRect calculateBoundaries() const { return FloatRect(x(), y(), width(), height()); } - virtual IntRect localSelectionRect(int startPos, int endPos); + virtual LayoutRect localSelectionRect(int startPos, int endPos); bool isSelected(int startPos, int endPos) const; void selectionStartEnd(int& sPos, int& ePos); @@ -136,7 +135,12 @@ private: public: virtual bool isLineBreak() const; - void setExpansion(int expansion) { m_logicalWidth -= m_expansion; m_expansion = expansion; m_logicalWidth += m_expansion; } + void setExpansion(int newExpansion) + { + m_logicalWidth -= expansion(); + InlineBox::setExpansion(newExpansion); + m_logicalWidth += newExpansion; + } private: virtual bool isInlineTextBox() const { return true; } @@ -178,14 +182,14 @@ protected: private: void paintDecoration(GraphicsContext*, const FloatPoint& boxOrigin, int decoration, const ShadowData*); void paintSelection(GraphicsContext*, const FloatPoint& boxOrigin, RenderStyle*, const Font&); - void paintSpellingOrGrammarMarker(GraphicsContext*, const FloatPoint& boxOrigin, DocumentMarker*, RenderStyle*, const Font&, bool grammar); + void paintDocumentMarker(GraphicsContext*, const FloatPoint& boxOrigin, DocumentMarker*, RenderStyle*, const Font&, bool grammar); void paintTextMatchMarker(GraphicsContext*, const FloatPoint& boxOrigin, DocumentMarker*, RenderStyle*, const Font&); void computeRectForReplacementMarker(DocumentMarker*, RenderStyle*, const Font&); TextRun::ExpansionBehavior expansionBehavior() const { return (canHaveLeadingExpansion() ? TextRun::AllowLeadingExpansion : TextRun::ForbidLeadingExpansion) - | (m_expansion && nextLeafChild() ? TextRun::AllowTrailingExpansion : TextRun::ForbidTrailingExpansion); + | (expansion() && nextLeafChild() ? TextRun::AllowTrailingExpansion : TextRun::ForbidTrailingExpansion); } }; |