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

Unified Diff: third_party/WebKit/Source/core/layout/line/InlineFlowBox.h

Issue 1415493008: ASSERTION FAILED: !m_overflow (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/layout/line/InlineFlowBox.h
diff --git a/third_party/WebKit/Source/core/layout/line/InlineFlowBox.h b/third_party/WebKit/Source/core/layout/line/InlineFlowBox.h
index 87836f0a1d3c32defd125d5f142c92d518ed2c3d..04d3c288c5b585a57df05f722b0b18864e409ce4 100644
--- a/third_party/WebKit/Source/core/layout/line/InlineFlowBox.h
+++ b/third_party/WebKit/Source/core/layout/line/InlineFlowBox.h
@@ -255,8 +255,6 @@ public:
return result;
}
- void setOverflowFromLogicalRects(const LayoutRect& logicalLayoutOverflow, const LayoutRect& logicalVisualOverflow, LayoutUnit lineTop, LayoutUnit lineBottom);
-
LayoutRect frameRectIncludingLineHeight(LayoutUnit lineTop, LayoutUnit lineBottom) const
{
if (isHorizontal())
@@ -280,6 +278,15 @@ public:
bool isFirstAfterPageBreak() const { return m_isFirstAfterPageBreak; }
void setIsFirstAfterPageBreak(bool isFirstAfterPageBreak) { m_isFirstAfterPageBreak = isFirstAfterPageBreak; }
+ // Some callers (LayoutListItem) needs to set extra overflow on their line box.
+ // This is the public API to do so.
leviw_travelin_and_unemployed 2015/11/10 20:23:22 I'm not sure we need the 2nd line of this comment.
Julien - ping for review 2015/11/10 23:52:47 Fair, I won't fight for it, removed!
+ void overrideOverflowFromLogicalRects(const LayoutRect& logicalLayoutOverflow, const LayoutRect& logicalVisualOverflow, LayoutUnit lineTop, LayoutUnit lineBottom)
leviw_travelin_and_unemployed 2015/11/10 20:23:22 This seems like a good change to the API :)
+ {
+ // If we are setting an overflow, then we can't pretend not to have an overflow.
+ clearKnownToHaveNoOverflow();
+ setOverflowFromLogicalRects(logicalLayoutOverflow, logicalVisualOverflow, lineTop, lineBottom);
+ }
+
private:
void placeBoxRangeInInlineDirection(InlineBox* firstChild, InlineBox* lastChild,
LayoutUnit& logicalLeft, LayoutUnit& minLogicalLeft, LayoutUnit& maxLogicalRight, bool& needsWordSpacing);
@@ -300,6 +307,8 @@ private:
void setLayoutOverflow(const LayoutRect&, const LayoutRect&);
void setVisualOverflow(const LayoutRect&, const LayoutRect&);
+ void setOverflowFromLogicalRects(const LayoutRect& logicalLayoutOverflow, const LayoutRect& logicalVisualOverflow, LayoutUnit lineTop, LayoutUnit lineBottom);
+
protected:
OwnPtr<OverflowModel> m_overflow;

Powered by Google App Engine
This is Rietveld 408576698