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

Side by Side Diff: Source/core/layout/LayoutView.h

Issue 1145993002: Refactor root element background painting (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: rebase, adding back TestExpectation Created 5 years, 6 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/layout/LayoutObject.cpp ('k') | Source/core/layout/LayoutView.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 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * Copyright (C) 2006 Apple Computer, Inc. 3 * Copyright (C) 2006 Apple Computer, Inc.
4 * 4 *
5 * This library is free software; you can redistribute it and/or 5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public 6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either 7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version. 8 * version 2 of the License, or (at your option) any later version.
9 * 9 *
10 * This library is distributed in the hope that it will be useful, 10 * This library is distributed in the hope that it will be useful,
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after
136 } 136 }
137 } 137 }
138 bool pageLogicalHeightChanged() const { return m_pageLogicalHeightChanged; } 138 bool pageLogicalHeightChanged() const { return m_pageLogicalHeightChanged; }
139 139
140 // Notification that this view moved into or out of a native window. 140 // Notification that this view moved into or out of a native window.
141 void setIsInWindow(bool); 141 void setIsInWindow(bool);
142 142
143 DeprecatedPaintLayerCompositor* compositor(); 143 DeprecatedPaintLayerCompositor* compositor();
144 bool usesCompositing() const; 144 bool usesCompositing() const;
145 145
146 // TODO(trchen): All pinch-zoom implementation should now use compositor ras ter scale based zooming,
147 // instead of LayoutView transform. Check whether we can now unify unscaledD ocumentRect and documentRect.
146 IntRect unscaledDocumentRect() const; 148 IntRect unscaledDocumentRect() const;
147 LayoutRect backgroundRect(LayoutBox* backgroundLayoutObject) const; 149 LayoutRect backgroundRect(LayoutBox* backgroundLayoutObject) const;
148 150
149 IntRect documentRect() const; 151 IntRect documentRect() const;
150 152
151 // LayoutObject that paints the root background has background-images which all have background-attachment: fixed. 153 // LayoutObject that paints the root background has background-images which all have background-attachment: fixed.
152 bool rootBackgroundIsEntirelyFixed() const; 154 bool rootBackgroundIsEntirelyFixed() const;
153 155
154 IntervalArena* intervalArena(); 156 IntervalArena* intervalArena();
155 157
(...skipping 10 matching lines...) Expand all
166 168
167 virtual bool backgroundIsKnownToBeOpaqueInRect(const LayoutRect& localRect) const override; 169 virtual bool backgroundIsKnownToBeOpaqueInRect(const LayoutRect& localRect) const override;
168 170
169 double layoutViewportWidth() const; 171 double layoutViewportWidth() const;
170 double layoutViewportHeight() const; 172 double layoutViewportHeight() const;
171 173
172 void pushLayoutState(LayoutState& layoutState) { m_layoutState = &layoutStat e; } 174 void pushLayoutState(LayoutState& layoutState) { m_layoutState = &layoutStat e; }
173 void popLayoutState() { ASSERT(m_layoutState); m_layoutState = m_layoutState ->next(); } 175 void popLayoutState() { ASSERT(m_layoutState); m_layoutState = m_layoutState ->next(); }
174 virtual void invalidateTreeIfNeeded(PaintInvalidationState&) override final; 176 virtual void invalidateTreeIfNeeded(PaintInvalidationState&) override final;
175 177
178 virtual LayoutRect visualOverflowRect() const override;
179
176 private: 180 private:
177 virtual void mapLocalToContainer(const LayoutBoxModelObject* paintInvalidati onContainer, TransformState&, MapCoordinatesFlags = ApplyContainerFlip, bool* wa sFixed = nullptr, const PaintInvalidationState* = nullptr) const override; 181 virtual void mapLocalToContainer(const LayoutBoxModelObject* paintInvalidati onContainer, TransformState&, MapCoordinatesFlags = ApplyContainerFlip, bool* wa sFixed = nullptr, const PaintInvalidationState* = nullptr) const override;
178 virtual const LayoutObject* pushMappingToContainer(const LayoutBoxModelObjec t* ancestorToStopAt, LayoutGeometryMap&) const override; 182 virtual const LayoutObject* pushMappingToContainer(const LayoutBoxModelObjec t* ancestorToStopAt, LayoutGeometryMap&) const override;
179 virtual void mapAbsoluteToLocalPoint(MapCoordinatesFlags, TransformState&) c onst override; 183 virtual void mapAbsoluteToLocalPoint(MapCoordinatesFlags, TransformState&) c onst override;
180 virtual void computeSelfHitTestRects(Vector<LayoutRect>&, const LayoutPoint& layerOffset) const override; 184 virtual void computeSelfHitTestRects(Vector<LayoutRect>&, const LayoutPoint& layerOffset) const override;
181 185
182 void layoutContent(); 186 void layoutContent();
183 #if ENABLE(ASSERT) 187 #if ENABLE(ASSERT)
184 void checkLayoutState(); 188 void checkLayoutState();
185 #endif 189 #endif
186 190
187 friend class ForceHorriblySlowRectMapping; 191 friend class ForceHorriblySlowRectMapping;
188 192
189 bool shouldUsePrintingLayout() const; 193 bool shouldUsePrintingLayout() const;
190 194
191 LayoutObject* backgroundLayoutObject() const;
192
193 int viewLogicalWidthForBoxSizing() const; 195 int viewLogicalWidthForBoxSizing() const;
194 int viewLogicalHeightForBoxSizing() const; 196 int viewLogicalHeightForBoxSizing() const;
195 197
196 FrameView* m_frameView; 198 FrameView* m_frameView;
197 199
198 LayoutObject* m_selectionStart; 200 LayoutObject* m_selectionStart;
199 LayoutObject* m_selectionEnd; 201 LayoutObject* m_selectionEnd;
200 202
201 int m_selectionStartPos; 203 int m_selectionStartPos;
202 int m_selectionEndPos; 204 int m_selectionEndPos;
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
239 m_paintInvalidationState->m_cachedOffsetsEnabled = true; 241 m_paintInvalidationState->m_cachedOffsetsEnabled = true;
240 } 242 }
241 private: 243 private:
242 const PaintInvalidationState* m_paintInvalidationState; 244 const PaintInvalidationState* m_paintInvalidationState;
243 bool m_didDisable; 245 bool m_didDisable;
244 }; 246 };
245 247
246 } // namespace blink 248 } // namespace blink
247 249
248 #endif // LayoutView_h 250 #endif // LayoutView_h
OLDNEW
« no previous file with comments | « Source/core/layout/LayoutObject.cpp ('k') | Source/core/layout/LayoutView.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698