| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved. | 2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved. |
| 3 * Copyright (C) 2013 Intel Corporation. All rights reserved. | 3 * Copyright (C) 2013 Intel Corporation. All rights reserved. |
| 4 * | 4 * |
| 5 * Portions are Copyright (C) 1998 Netscape Communications Corporation. | 5 * Portions are Copyright (C) 1998 Netscape Communications Corporation. |
| 6 * | 6 * |
| 7 * Other contributors: | 7 * Other contributors: |
| 8 * Robert O'Callahan <roc+@cs.cmu.edu> | 8 * Robert O'Callahan <roc+@cs.cmu.edu> |
| 9 * David Baron <dbaron@fas.harvard.edu> | 9 * David Baron <dbaron@fas.harvard.edu> |
| 10 * Christian Biesinger <cbiesinger@web.de> | 10 * Christian Biesinger <cbiesinger@web.de> |
| (...skipping 562 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 573 } | 573 } |
| 574 | 574 |
| 575 // Returns true if the element or any ancestor is transformed. | 575 // Returns true if the element or any ancestor is transformed. |
| 576 bool CompositesWithTransform() const; | 576 bool CompositesWithTransform() const; |
| 577 | 577 |
| 578 // Returns true if the element or any ancestor has non 1 opacity. | 578 // Returns true if the element or any ancestor has non 1 opacity. |
| 579 bool CompositesWithOpacity() const; | 579 bool CompositesWithOpacity() const; |
| 580 | 580 |
| 581 bool PaintsWithTransform(GlobalPaintFlags) const; | 581 bool PaintsWithTransform(GlobalPaintFlags) const; |
| 582 | 582 |
| 583 bool SupportsSubsequenceCaching() const; |
| 584 |
| 583 // Returns true if background phase is painted opaque in the given rect. | 585 // Returns true if background phase is painted opaque in the given rect. |
| 584 // The query rect is given in local coordinates. | 586 // The query rect is given in local coordinates. |
| 585 bool BackgroundIsKnownToBeOpaqueInRect(const LayoutRect&) const; | 587 bool BackgroundIsKnownToBeOpaqueInRect(const LayoutRect&) const; |
| 586 | 588 |
| 587 bool ContainsDirtyOverlayScrollbars() const { | 589 bool ContainsDirtyOverlayScrollbars() const { |
| 588 return contains_dirty_overlay_scrollbars_; | 590 return contains_dirty_overlay_scrollbars_; |
| 589 } | 591 } |
| 590 void SetContainsDirtyOverlayScrollbars(bool dirty_scrollbars) { | 592 void SetContainsDirtyOverlayScrollbars(bool dirty_scrollbars) { |
| 591 contains_dirty_overlay_scrollbars_ = dirty_scrollbars; | 593 contains_dirty_overlay_scrollbars_ = dirty_scrollbars; |
| 592 } | 594 } |
| (...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 785 : nullptr; | 787 : nullptr; |
| 786 } | 788 } |
| 787 bool HasAncestorWithClipPath() const { | 789 bool HasAncestorWithClipPath() const { |
| 788 DCHECK(!needs_ancestor_dependent_compositing_inputs_update_); | 790 DCHECK(!needs_ancestor_dependent_compositing_inputs_update_); |
| 789 return has_ancestor_with_clip_path_; | 791 return has_ancestor_with_clip_path_; |
| 790 } | 792 } |
| 791 bool HasDescendantWithClipPath() const { | 793 bool HasDescendantWithClipPath() const { |
| 792 DCHECK(!needs_descendant_dependent_flags_update_); | 794 DCHECK(!needs_descendant_dependent_flags_update_); |
| 793 return has_descendant_with_clip_path_; | 795 return has_descendant_with_clip_path_; |
| 794 } | 796 } |
| 797 bool HasDescendantThatSupportsSubsequenceCaching() const { |
| 798 DCHECK(!needs_descendant_dependent_flags_update_); |
| 799 return has_descendant_that_supports_subsequence_caching_; |
| 800 } |
| 795 | 801 |
| 796 // Returns true if there is a descendant with blend-mode that is | 802 // Returns true if there is a descendant with blend-mode that is |
| 797 // not contained within another enclosing stacking context other | 803 // not contained within another enclosing stacking context other |
| 798 // than the stacking context blend-mode creates, or the stacking | 804 // than the stacking context blend-mode creates, or the stacking |
| 799 // context this PaintLayer might create. This is needed because | 805 // context this PaintLayer might create. This is needed because |
| 800 // blend-mode content needs to blend with the containing stacking | 806 // blend-mode content needs to blend with the containing stacking |
| 801 // context's painted output, but not the content in any grandparent | 807 // context's painted output, but not the content in any grandparent |
| 802 // stacking contexts. | 808 // stacking contexts. |
| 803 bool HasNonIsolatedDescendantWithBlendMode() const; | 809 bool HasNonIsolatedDescendantWithBlendMode() const; |
| 804 | 810 |
| (...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 917 void SetPreviousScrollOffsetAccumulationForPainting(const IntSize& s) { | 923 void SetPreviousScrollOffsetAccumulationForPainting(const IntSize& s) { |
| 918 previous_scroll_offset_accumulation_for_painting_ = s; | 924 previous_scroll_offset_accumulation_for_painting_ = s; |
| 919 } | 925 } |
| 920 | 926 |
| 921 ClipRects* PreviousPaintingClipRects() const { | 927 ClipRects* PreviousPaintingClipRects() const { |
| 922 return previous_painting_clip_rects_.Get(); | 928 return previous_painting_clip_rects_.Get(); |
| 923 } | 929 } |
| 924 void SetPreviousPaintingClipRects(ClipRects& clip_rects) { | 930 void SetPreviousPaintingClipRects(ClipRects& clip_rects) { |
| 925 previous_painting_clip_rects_ = &clip_rects; | 931 previous_painting_clip_rects_ = &clip_rects; |
| 926 } | 932 } |
| 933 void ClearPreviousPaintingClipRects() { |
| 934 previous_painting_clip_rects_.Clear(); |
| 935 } |
| 927 | 936 |
| 928 LayoutRect PreviousPaintDirtyRect() const { | 937 LayoutRect PreviousPaintDirtyRect() const { |
| 929 return previous_paint_dirty_rect_; | 938 return previous_paint_dirty_rect_; |
| 930 } | 939 } |
| 931 void SetPreviousPaintDirtyRect(const LayoutRect& rect) { | 940 void SetPreviousPaintDirtyRect(const LayoutRect& rect) { |
| 932 previous_paint_dirty_rect_ = rect; | 941 previous_paint_dirty_rect_ = rect; |
| 933 } | 942 } |
| 934 | 943 |
| 935 PaintResult PreviousPaintResult() const { | 944 PaintResult PreviousPaintResult() const { |
| 936 return static_cast<PaintResult>(previous_paint_result_); | 945 return static_cast<PaintResult>(previous_paint_result_); |
| (...skipping 273 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1210 unsigned needs_paint_phase_float_ : 1; | 1219 unsigned needs_paint_phase_float_ : 1; |
| 1211 unsigned previous_paint_phase_float_was_empty_ : 1; | 1220 unsigned previous_paint_phase_float_was_empty_ : 1; |
| 1212 unsigned needs_paint_phase_descendant_block_backgrounds_ : 1; | 1221 unsigned needs_paint_phase_descendant_block_backgrounds_ : 1; |
| 1213 unsigned previous_paint_phase_descendant_block_backgrounds_was_empty_ : 1; | 1222 unsigned previous_paint_phase_descendant_block_backgrounds_was_empty_ : 1; |
| 1214 | 1223 |
| 1215 // These bitfields are part of ancestor/descendant dependent compositing | 1224 // These bitfields are part of ancestor/descendant dependent compositing |
| 1216 // inputs. | 1225 // inputs. |
| 1217 unsigned has_descendant_with_clip_path_ : 1; | 1226 unsigned has_descendant_with_clip_path_ : 1; |
| 1218 unsigned has_non_isolated_descendant_with_blend_mode_ : 1; | 1227 unsigned has_non_isolated_descendant_with_blend_mode_ : 1; |
| 1219 unsigned has_ancestor_with_clip_path_ : 1; | 1228 unsigned has_ancestor_with_clip_path_ : 1; |
| 1229 unsigned has_descendant_that_supports_subsequence_caching_ : 1; |
| 1220 | 1230 |
| 1221 unsigned self_painting_status_changed_ : 1; | 1231 unsigned self_painting_status_changed_ : 1; |
| 1222 | 1232 |
| 1223 LayoutBoxModelObject& layout_object_; | 1233 LayoutBoxModelObject& layout_object_; |
| 1224 | 1234 |
| 1225 PaintLayer* parent_; | 1235 PaintLayer* parent_; |
| 1226 PaintLayer* previous_; | 1236 PaintLayer* previous_; |
| 1227 PaintLayer* next_; | 1237 PaintLayer* next_; |
| 1228 PaintLayer* first_; | 1238 PaintLayer* first_; |
| 1229 PaintLayer* last_; | 1239 PaintLayer* last_; |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1268 | 1278 |
| 1269 } // namespace blink | 1279 } // namespace blink |
| 1270 | 1280 |
| 1271 #ifndef NDEBUG | 1281 #ifndef NDEBUG |
| 1272 // Outside the WebCore namespace for ease of invocation from gdb. | 1282 // Outside the WebCore namespace for ease of invocation from gdb. |
| 1273 CORE_EXPORT void showLayerTree(const blink::PaintLayer*); | 1283 CORE_EXPORT void showLayerTree(const blink::PaintLayer*); |
| 1274 CORE_EXPORT void showLayerTree(const blink::LayoutObject*); | 1284 CORE_EXPORT void showLayerTree(const blink::LayoutObject*); |
| 1275 #endif | 1285 #endif |
| 1276 | 1286 |
| 1277 #endif // Layer_h | 1287 #endif // Layer_h |
| OLD | NEW |