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

Side by Side Diff: third_party/WebKit/Source/core/paint/PaintLayer.h

Issue 2065233002: Force flattening for elements with non-initial value of opacity (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix assert. (overflow needs to be adjusted prior to querying used transform-style) Created 4 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
OLDNEW
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 385 matching lines...) Expand 10 before | Expand all | Expand 10 after
396 // resulting transform has transform-origin baked in. If the layer does not have a transform, 396 // resulting transform has transform-origin baked in. If the layer does not have a transform,
397 // returns the identity matrix. 397 // returns the identity matrix.
398 TransformationMatrix currentTransform() const; 398 TransformationMatrix currentTransform() const;
399 TransformationMatrix renderableTransform(GlobalPaintFlags) const; 399 TransformationMatrix renderableTransform(GlobalPaintFlags) const;
400 400
401 // Get the perspective transform, which is applied to transformed sublayers. 401 // Get the perspective transform, which is applied to transformed sublayers.
402 // Returns true if the layer has a -webkit-perspective. 402 // Returns true if the layer has a -webkit-perspective.
403 // Note that this transform does not have the perspective-origin baked in. 403 // Note that this transform does not have the perspective-origin baked in.
404 TransformationMatrix perspectiveTransform() const; 404 TransformationMatrix perspectiveTransform() const;
405 FloatPoint perspectiveOrigin() const; 405 FloatPoint perspectiveOrigin() const;
406 bool preserves3D() const { return layoutObject()->style()->transformStyle3D( ) == TransformStyle3DPreserve3D; } 406 bool preserves3D() const { return layoutObject()->style()->preserves3D(); }
407 bool has3DTransform() const { return m_rareData && m_rareData->transform && !m_rareData->transform->isAffine(); } 407 bool has3DTransform() const { return m_rareData && m_rareData->transform && !m_rareData->transform->isAffine(); }
408 408
409 // FIXME: reflections should force transform-style to be flat in the style: https://bugs.webkit.org/show_bug.cgi?id=106959 409 // FIXME: reflections should force transform-style to be flat in the style: https://bugs.webkit.org/show_bug.cgi?id=106959
410 bool shouldPreserve3D() const { return !layoutObject()->hasReflection() && l ayoutObject()->style()->transformStyle3D() == TransformStyle3DPreserve3D; } 410 bool shouldPreserve3D() const { return !layoutObject()->hasReflection() && l ayoutObject()->style()->preserves3D(); }
411 411
412 void filterNeedsPaintInvalidation(); 412 void filterNeedsPaintInvalidation();
413 413
414 // Returns |true| if any property that renders using filter operations is 414 // Returns |true| if any property that renders using filter operations is
415 // used (including, but not limited to, 'filter'). 415 // used (including, but not limited to, 'filter').
416 bool hasFilterInducingProperty() const { return layoutObject()->hasFilterInd ucingProperty(); } 416 bool hasFilterInducingProperty() const { return layoutObject()->hasFilterInd ucingProperty(); }
417 417
418 void* operator new(size_t); 418 void* operator new(size_t);
419 // Only safe to call from LayoutBoxModelObject::destroyLayer() 419 // Only safe to call from LayoutBoxModelObject::destroyLayer()
420 void operator delete(void*); 420 void operator delete(void*);
(...skipping 481 matching lines...) Expand 10 before | Expand all | Expand 10 after
902 902
903 } // namespace blink 903 } // namespace blink
904 904
905 #ifndef NDEBUG 905 #ifndef NDEBUG
906 // Outside the WebCore namespace for ease of invocation from gdb. 906 // Outside the WebCore namespace for ease of invocation from gdb.
907 void showLayerTree(const blink::PaintLayer*); 907 void showLayerTree(const blink::PaintLayer*);
908 void showLayerTree(const blink::LayoutObject*); 908 void showLayerTree(const blink::LayoutObject*);
909 #endif 909 #endif
910 910
911 #endif // Layer_h 911 #endif // Layer_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698