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

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

Issue 2455703003: [SPInvalidation] Call LayoutObject::adjustVisualRectForRasterEffects from PaintInvalidator (Closed)
Patch Set: - 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) 2000 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org)
3 * (C) 2000 Antti Koivisto (koivisto@kde.org) 3 * (C) 2000 Antti Koivisto (koivisto@kde.org)
4 * (C) 2000 Dirk Mueller (mueller@kde.org) 4 * (C) 2000 Dirk Mueller (mueller@kde.org)
5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com)
6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc.
7 * All rights reserved. 7 * All rights reserved.
8 * Copyright (C) 2009 Google Inc. All rights reserved. 8 * Copyright (C) 2009 Google Inc. All rights reserved.
9 * 9 *
10 * This library is free software; you can redistribute it and/or 10 * This library is free software; you can redistribute it and/or
(...skipping 1366 matching lines...) Expand 10 before | Expand all | Expand 10 after
1377 // inclusiveIntersect will be propagated to the return value of this method. 1377 // inclusiveIntersect will be propagated to the return value of this method.
1378 // Otherwise, clipping operations will use LayoutRect::intersect, and the 1378 // Otherwise, clipping operations will use LayoutRect::intersect, and the
1379 // return value will be true only if the clipped rect has non-zero area. 1379 // return value will be true only if the clipped rect has non-zero area.
1380 // See the documentation for LayoutRect::inclusiveIntersect for more 1380 // See the documentation for LayoutRect::inclusiveIntersect for more
1381 // information. 1381 // information.
1382 virtual bool mapToVisualRectInAncestorSpace( 1382 virtual bool mapToVisualRectInAncestorSpace(
1383 const LayoutBoxModelObject* ancestor, 1383 const LayoutBoxModelObject* ancestor,
1384 LayoutRect&, 1384 LayoutRect&,
1385 VisualRectFlags = DefaultVisualRectFlags) const; 1385 VisualRectFlags = DefaultVisualRectFlags) const;
1386 1386
1387 // Allows objects to adjust |visualEffect|, which is in the space of the
1388 // paint invalidation container, for any special raster effects that might
1389 // expand the rastered pixel area. Returns true if the rect is expanded.
1390 virtual bool adjustVisualRectForRasterEffects(LayoutRect& visualRect) const {
1391 return false;
1392 }
1393
1387 // Return the offset to the column in which the specified point (in 1394 // Return the offset to the column in which the specified point (in
1388 // flow-thread coordinates) lives. This is used to convert a flow-thread point 1395 // flow-thread coordinates) lives. This is used to convert a flow-thread point
1389 // to a point in the containing coordinate space. 1396 // to a point in the containing coordinate space.
1390 virtual LayoutSize columnOffset(const LayoutPoint&) const { 1397 virtual LayoutSize columnOffset(const LayoutPoint&) const {
1391 return LayoutSize(); 1398 return LayoutSize();
1392 } 1399 }
1393 1400
1394 virtual unsigned length() const { return 1; } 1401 virtual unsigned length() const { return 1; }
1395 1402
1396 bool isFloatingOrOutOfFlowPositioned() const { 1403 bool isFloatingOrOutOfFlowPositioned() const {
(...skipping 463 matching lines...) Expand 10 before | Expand all | Expand 10 after
1860 // Overrides should call the superclass at the start. |oldStyle| will be 0 the 1867 // Overrides should call the superclass at the start. |oldStyle| will be 0 the
1861 // first time this function is called. 1868 // first time this function is called.
1862 virtual void styleDidChange(StyleDifference, const ComputedStyle* oldStyle); 1869 virtual void styleDidChange(StyleDifference, const ComputedStyle* oldStyle);
1863 void propagateStyleToAnonymousChildren(); 1870 void propagateStyleToAnonymousChildren();
1864 // Return true for objects that don't want style changes automatically 1871 // Return true for objects that don't want style changes automatically
1865 // propagated via propagateStyleToAnonymousChildren(), but rather rely on 1872 // propagated via propagateStyleToAnonymousChildren(), but rather rely on
1866 // other custom mechanisms (if they need to be notified of parent style 1873 // other custom mechanisms (if they need to be notified of parent style
1867 // changes at all). 1874 // changes at all).
1868 virtual bool anonymousHasStylePropagationOverride() { return false; } 1875 virtual bool anonymousHasStylePropagationOverride() { return false; }
1869 1876
1870 // Allows objects to adjust |visualEffect|, which is in the space of the
1871 // paint invalidation container, for any special raster effects that might
1872 // expand the rastered pixel area.
1873 virtual void adjustVisualRectForRasterEffects(LayoutRect& visualRect) const {}
1874
1875 protected: 1877 protected:
1876 // This function is called before calling the destructor so that some clean-up 1878 // This function is called before calling the destructor so that some clean-up
1877 // can happen regardless of whether they call a virtual function or not. As a 1879 // can happen regardless of whether they call a virtual function or not. As a
1878 // rule of thumb, this function should be preferred to the destructor. See 1880 // rule of thumb, this function should be preferred to the destructor. See
1879 // destroy() that is the one calling willBeDestroyed(). 1881 // destroy() that is the one calling willBeDestroyed().
1880 // 1882 //
1881 // There are 2 types of destructions: regular destructions and tree tear-down. 1883 // There are 2 types of destructions: regular destructions and tree tear-down.
1882 // Regular destructions happen when the renderer is not needed anymore (e.g. 1884 // Regular destructions happen when the renderer is not needed anymore (e.g.
1883 // 'display' changed or the DOM Node was removed). 1885 // 'display' changed or the DOM Node was removed).
1884 // Tree tear-down is when the whole tree destroyed during navigation. It is 1886 // Tree tear-down is when the whole tree destroyed during navigation. It is
(...skipping 722 matching lines...) Expand 10 before | Expand all | Expand 10 after
2607 CORE_EXPORT void showLineTree(const blink::LayoutObject*); 2609 CORE_EXPORT void showLineTree(const blink::LayoutObject*);
2608 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1); 2610 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1);
2609 // We don't make object2 an optional parameter so that showLayoutTree 2611 // We don't make object2 an optional parameter so that showLayoutTree
2610 // can be called from gdb easily. 2612 // can be called from gdb easily.
2611 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1, 2613 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1,
2612 const blink::LayoutObject* object2); 2614 const blink::LayoutObject* object2);
2613 2615
2614 #endif 2616 #endif
2615 2617
2616 #endif // LayoutObject_h 2618 #endif // LayoutObject_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698