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

Side by Side Diff: Source/core/layout/line/LineLayoutState.h

Issue 1102953002: BR styled clear is ignored while partially relayouting. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Better approach. 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org)
3 * Copyright (C) 2003, 2004, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All r ight reserved. 3 * Copyright (C) 2003, 2004, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All r ight reserved.
4 * Copyright (C) 2010 Google Inc. All rights reserved. 4 * Copyright (C) 2010 Google Inc. All rights reserved.
5 * Copyright (C) 2014 Adobe Systems Incorporated. All rights reserved. 5 * Copyright (C) 2014 Adobe Systems Incorporated. All rights reserved.
6 * 6 *
7 * This library is free software; you can redistribute it and/or 7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Library General Public 8 * modify it under the terms of the GNU Library General Public
9 * License as published by the Free Software Foundation; either 9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version. 10 * version 2 of the License, or (at your option) any later version.
(...skipping 24 matching lines...) Expand all
35 public: 35 public:
36 LineLayoutState(bool fullLayout, LayoutUnit& paintInvalidationLogicalTop, La youtUnit& paintInvalidationLogicalBottom, LayoutFlowThread* flowThread) 36 LineLayoutState(bool fullLayout, LayoutUnit& paintInvalidationLogicalTop, La youtUnit& paintInvalidationLogicalBottom, LayoutFlowThread* flowThread)
37 : m_lastFloat(0) 37 : m_lastFloat(0)
38 , m_endLine(0) 38 , m_endLine(0)
39 , m_floatIndex(0) 39 , m_floatIndex(0)
40 , m_endLineLogicalTop(0) 40 , m_endLineLogicalTop(0)
41 , m_endLineMatched(false) 41 , m_endLineMatched(false)
42 , m_checkForFloatsFromLastLine(false) 42 , m_checkForFloatsFromLastLine(false)
43 , m_hasInlineChild(false) 43 , m_hasInlineChild(false)
44 , m_isFullLayout(fullLayout) 44 , m_isFullLayout(fullLayout)
45 , m_containsClearBR(false)
45 , m_paintInvalidationLogicalTop(paintInvalidationLogicalTop) 46 , m_paintInvalidationLogicalTop(paintInvalidationLogicalTop)
46 , m_paintInvalidationLogicalBottom(paintInvalidationLogicalBottom) 47 , m_paintInvalidationLogicalBottom(paintInvalidationLogicalBottom)
47 , m_adjustedLogicalLineTop(0) 48 , m_adjustedLogicalLineTop(0)
48 , m_usesPaintInvalidationBounds(false) 49 , m_usesPaintInvalidationBounds(false)
49 , m_flowThread(flowThread) 50 , m_flowThread(flowThread)
50 { } 51 { }
51 52
52 void markForFullLayout() { m_isFullLayout = true; } 53 void markForFullLayout() { m_isFullLayout = true; }
53 bool isFullLayout() const { return m_isFullLayout; } 54 bool isFullLayout() const { return m_isFullLayout; }
54 55
(...skipping 14 matching lines...) Expand all
69 70
70 bool endLineMatched() const { return m_endLineMatched; } 71 bool endLineMatched() const { return m_endLineMatched; }
71 void setEndLineMatched(bool endLineMatched) { m_endLineMatched = endLineMatc hed; } 72 void setEndLineMatched(bool endLineMatched) { m_endLineMatched = endLineMatc hed; }
72 73
73 bool checkForFloatsFromLastLine() const { return m_checkForFloatsFromLastLin e; } 74 bool checkForFloatsFromLastLine() const { return m_checkForFloatsFromLastLin e; }
74 void setCheckForFloatsFromLastLine(bool check) { m_checkForFloatsFromLastLin e = check; } 75 void setCheckForFloatsFromLastLine(bool check) { m_checkForFloatsFromLastLin e = check; }
75 76
76 bool hasInlineChild() const { return m_hasInlineChild; } 77 bool hasInlineChild() const { return m_hasInlineChild; }
77 void setHasInlineChild(bool hasInlineChild) { m_hasInlineChild = hasInlineCh ild; } 78 void setHasInlineChild(bool hasInlineChild) { m_hasInlineChild = hasInlineCh ild; }
78 79
80 bool containsClearBR() const { return m_containsClearBR; }
leviw_travelin_and_unemployed 2015/05/11 00:25:29 Nit: I'd call this "containsBRWithClear" or "conta
changseok 2015/05/11 15:56:46 containsBRWithClear sounds good to me. =)
81 void setContainsClearBR(bool containsBR) { m_containsClearBR = containsBR; }
82
79 LineInfo& lineInfo() { return m_lineInfo; } 83 LineInfo& lineInfo() { return m_lineInfo; }
80 const LineInfo& lineInfo() const { return m_lineInfo; } 84 const LineInfo& lineInfo() const { return m_lineInfo; }
81 85
82 LayoutUnit endLineLogicalTop() const { return m_endLineLogicalTop; } 86 LayoutUnit endLineLogicalTop() const { return m_endLineLogicalTop; }
83 void setEndLineLogicalTop(LayoutUnit logicalTop) { m_endLineLogicalTop = log icalTop; } 87 void setEndLineLogicalTop(LayoutUnit logicalTop) { m_endLineLogicalTop = log icalTop; }
84 88
85 RootInlineBox* endLine() const { return m_endLine; } 89 RootInlineBox* endLine() const { return m_endLine; }
86 void setEndLine(RootInlineBox* line) { m_endLine = line; } 90 void setEndLine(RootInlineBox* line) { m_endLine = line; }
87 91
88 FloatingObject* lastFloat() const { return m_lastFloat; } 92 FloatingObject* lastFloat() const { return m_lastFloat; }
(...skipping 18 matching lines...) Expand all
107 unsigned m_floatIndex; 111 unsigned m_floatIndex;
108 LayoutUnit m_endLineLogicalTop; 112 LayoutUnit m_endLineLogicalTop;
109 bool m_endLineMatched; 113 bool m_endLineMatched;
110 bool m_checkForFloatsFromLastLine; 114 bool m_checkForFloatsFromLastLine;
111 // Used as a performance optimization to avoid doing a full paint invalidati on when our floats 115 // Used as a performance optimization to avoid doing a full paint invalidati on when our floats
112 // change but we don't have any inline children. 116 // change but we don't have any inline children.
113 bool m_hasInlineChild; 117 bool m_hasInlineChild;
114 118
115 bool m_isFullLayout; 119 bool m_isFullLayout;
116 120
121 bool m_containsClearBR;
122
117 // FIXME: Should this be a range object instead of two ints? 123 // FIXME: Should this be a range object instead of two ints?
118 LayoutUnit& m_paintInvalidationLogicalTop; 124 LayoutUnit& m_paintInvalidationLogicalTop;
119 LayoutUnit& m_paintInvalidationLogicalBottom; 125 LayoutUnit& m_paintInvalidationLogicalBottom;
120 126
121 LayoutUnit m_adjustedLogicalLineTop; 127 LayoutUnit m_adjustedLogicalLineTop;
122 128
123 bool m_usesPaintInvalidationBounds; 129 bool m_usesPaintInvalidationBounds;
124 130
125 LayoutFlowThread* m_flowThread; 131 LayoutFlowThread* m_flowThread;
126 }; 132 };
127 133
128 } 134 }
129 135
130 #endif // LineLayoutState_h 136 #endif // LineLayoutState_h
OLDNEW
« Source/core/layout/LayoutBlockFlowLine.cpp ('K') | « Source/core/layout/LayoutBlockFlowLine.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698