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

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

Issue 2461463004: Resize background-attachment: fixed when inertTopControls is enabled. (Closed)
Patch Set: Added test for non-fixed-attachment Created 4 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 unified diff | Download patch
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 164 matching lines...) Expand 10 before | Expand all | Expand 10 after
175 } 175 }
176 } 176 }
177 bool pageLogicalHeightChanged() const { return m_pageLogicalHeightChanged; } 177 bool pageLogicalHeightChanged() const { return m_pageLogicalHeightChanged; }
178 178
179 // Notification that this view moved into or out of a native window. 179 // Notification that this view moved into or out of a native window.
180 void setIsInWindow(bool); 180 void setIsInWindow(bool);
181 181
182 PaintLayerCompositor* compositor(); 182 PaintLayerCompositor* compositor();
183 bool usesCompositing() const; 183 bool usesCompositing() const;
184 184
185 LayoutRect backgroundRect(LayoutBox* backgroundLayoutObject) const;
186
187 IntRect documentRect() const; 185 IntRect documentRect() const;
188 186
189 // LayoutObject that paints the root background has background-images which 187 // LayoutObject that paints the root background has background-images which
190 // all have background-attachment: fixed. 188 // all have background-attachment: fixed.
191 bool rootBackgroundIsEntirelyFixed() const; 189 bool rootBackgroundIsEntirelyFixed() const;
192 190
193 IntervalArena* intervalArena(); 191 IntervalArena* intervalArena();
194 192
195 void setLayoutQuoteHead(LayoutQuote* head) { m_layoutQuoteHead = head; } 193 void setLayoutQuoteHead(LayoutQuote* head) { m_layoutQuoteHead = head; }
196 LayoutQuote* layoutQuoteHead() const { return m_layoutQuoteHead; } 194 LayoutQuote* layoutQuoteHead() const { return m_layoutQuoteHead; }
(...skipping 25 matching lines...) Expand all
222 } 220 }
223 221
224 LayoutRect visualOverflowRect() const override; 222 LayoutRect visualOverflowRect() const override;
225 LayoutRect localOverflowRectForPaintInvalidation() const override; 223 LayoutRect localOverflowRectForPaintInvalidation() const override;
226 224
227 // Invalidates paint for the entire view, including composited descendants, 225 // Invalidates paint for the entire view, including composited descendants,
228 // but not including child frames. 226 // but not including child frames.
229 // It is very likely you do not want to call this method. 227 // It is very likely you do not want to call this method.
230 void setShouldDoFullPaintInvalidationForViewAndAllDescendants(); 228 void setShouldDoFullPaintInvalidationForViewAndAllDescendants();
231 229
230 void setShouldDoFullPaintInvalidationOnResizeIfNeeded(bool widthChanged,
231 bool heightChanged);
232
232 // The document scrollbar is always on the right, even in RTL. This is to 233 // The document scrollbar is always on the right, even in RTL. This is to
233 // prevent it from moving around on navigations. 234 // prevent it from moving around on navigations.
234 // TODO(skobes): This is not quite the ideal behavior, see 235 // TODO(skobes): This is not quite the ideal behavior, see
235 // http://crbug.com/250514 and http://crbug.com/249860. 236 // http://crbug.com/250514 and http://crbug.com/249860.
236 bool shouldPlaceBlockDirectionScrollbarOnLogicalLeft() const override { 237 bool shouldPlaceBlockDirectionScrollbarOnLogicalLeft() const override {
237 return false; 238 return false;
238 } 239 }
239 240
240 // Some LayoutMedias want to know about their viewport visibility for 241 // Some LayoutMedias want to know about their viewport visibility for
241 // crbug.com/487345,402044 . This facility will be removed once those 242 // crbug.com/487345,402044 . This facility will be removed once those
(...skipping 24 matching lines...) Expand all
266 TransformState&, 267 TransformState&,
267 MapCoordinatesFlags) const override; 268 MapCoordinatesFlags) const override;
268 void computeSelfHitTestRects(Vector<LayoutRect>&, 269 void computeSelfHitTestRects(Vector<LayoutRect>&,
269 const LayoutPoint& layerOffset) const override; 270 const LayoutPoint& layerOffset) const override;
270 271
271 void layoutContent(); 272 void layoutContent();
272 #if ENABLE(ASSERT) 273 #if ENABLE(ASSERT)
273 void checkLayoutState(); 274 void checkLayoutState();
274 #endif 275 #endif
275 276
276 void setShouldDoFullPaintInvalidationOnResizeIfNeeded();
277
278 void updateFromStyle() override; 277 void updateFromStyle() override;
279 bool allowsOverflowClip() const override; 278 bool allowsOverflowClip() const override;
280 279
281 bool shouldUsePrintingLayout() const; 280 bool shouldUsePrintingLayout() const;
282 281
283 int viewLogicalWidthForBoxSizing() const; 282 int viewLogicalWidthForBoxSizing() const;
284 int viewLogicalHeightForBoxSizing() const; 283 int viewLogicalHeightForBoxSizing() const;
285 284
286 UntracedMember<FrameView> m_frameView; 285 UntracedMember<FrameView> m_frameView;
287 286
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
328 Persistent<HitTestCache> m_hitTestCache; 327 Persistent<HitTestCache> m_hitTestCache;
329 328
330 Vector<LayoutMedia*> m_mediaForPositionNotification; 329 Vector<LayoutMedia*> m_mediaForPositionNotification;
331 }; 330 };
332 331
333 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutView, isLayoutView()); 332 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutView, isLayoutView());
334 333
335 } // namespace blink 334 } // namespace blink
336 335
337 #endif // LayoutView_h 336 #endif // LayoutView_h
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/frame/FrameView.cpp ('k') | third_party/WebKit/Source/core/layout/LayoutView.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698