Title: [234134] trunk/Source/WebCore
- Revision
- 234134
- Author
- [email protected]
- Date
- 2018-07-24 00:28:16 -0700 (Tue, 24 Jul 2018)
Log Message
[Nicosia] Add FilterOperations member to CompositionLayer::LayerState
https://bugs.webkit.org/show_bug.cgi?id=187901
Reviewed by Carlos Garcia Campos.
Nicosia::CompositionLayer::LayerState gains a FilterOperations member
that can be assigned the list of filter operations for a given layer.
The corresponding filtersChanged boolean is added to LayerState::Delta.
CoordinatedGraphicsLayer::syncFilters() flips on that delta member,
which in turn causes the FilterOperations value to be updated during
the layer flush, in flushCompositingStateForThisLayerOnly().
* platform/graphics/nicosia/NicosiaPlatformLayer.h:
* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::syncFilters):
(WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (234133 => 234134)
--- trunk/Source/WebCore/ChangeLog 2018-07-24 07:27:12 UTC (rev 234133)
+++ trunk/Source/WebCore/ChangeLog 2018-07-24 07:28:16 UTC (rev 234134)
@@ -1,5 +1,25 @@
2018-07-24 Zan Dobersek <[email protected]>
+ [Nicosia] Add FilterOperations member to CompositionLayer::LayerState
+ https://bugs.webkit.org/show_bug.cgi?id=187901
+
+ Reviewed by Carlos Garcia Campos.
+
+ Nicosia::CompositionLayer::LayerState gains a FilterOperations member
+ that can be assigned the list of filter operations for a given layer.
+ The corresponding filtersChanged boolean is added to LayerState::Delta.
+
+ CoordinatedGraphicsLayer::syncFilters() flips on that delta member,
+ which in turn causes the FilterOperations value to be updated during
+ the layer flush, in flushCompositingStateForThisLayerOnly().
+
+ * platform/graphics/nicosia/NicosiaPlatformLayer.h:
+ * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
+ (WebCore::CoordinatedGraphicsLayer::syncFilters):
+ (WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
+
+2018-07-24 Zan Dobersek <[email protected]>
+
[CoordGraphics] Use adjusted position, anchor point, size values for Nicosia::CompositionLayer state
https://bugs.webkit.org/show_bug.cgi?id=187899
Modified: trunk/Source/WebCore/platform/graphics/nicosia/NicosiaPlatformLayer.h (234133 => 234134)
--- trunk/Source/WebCore/platform/graphics/nicosia/NicosiaPlatformLayer.h 2018-07-24 07:27:12 UTC (rev 234133)
+++ trunk/Source/WebCore/platform/graphics/nicosia/NicosiaPlatformLayer.h 2018-07-24 07:28:16 UTC (rev 234134)
@@ -29,6 +29,7 @@
#pragma once
#include "Color.h"
+#include "FilterOperations.h"
#include "FloatPoint.h"
#include "FloatPoint3D.h"
#include "FloatRect.h"
@@ -83,6 +84,7 @@
bool contentsTilingChanged : 1;
bool opacityChanged : 1;
bool solidColorChanged : 1;
+ bool filtersChanged : 1;
bool childrenChanged : 1;
bool maskChanged : 1;
bool replicaChanged : 1;
@@ -127,6 +129,8 @@
float opacity { 0 };
WebCore::Color solidColor;
+ WebCore::FilterOperations filters;
+
Vector<RefPtr<CompositionLayer>> children;
RefPtr<CompositionLayer> replica;
RefPtr<CompositionLayer> mask;
Modified: trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp (234133 => 234134)
--- trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp 2018-07-24 07:27:12 UTC (rev 234133)
+++ trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp 2018-07-24 07:28:16 UTC (rev 234134)
@@ -645,6 +645,7 @@
m_layerState.filters = GraphicsLayer::filters();
m_layerState.filtersChanged = true;
+ m_nicosia.delta.filtersChanged = true;
}
void CoordinatedGraphicsLayer::syncImageBacking()
@@ -818,6 +819,9 @@
if (localDelta.solidColorChanged)
state.solidColor = m_solidColor;
+ if (localDelta.filtersChanged)
+ state.filters = filters();
+
if (localDelta.childrenChanged) {
state.children = WTF::map(children(),
[](auto* child)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes