Modified: trunk/Source/WebKit2/ChangeLog (161012 => 161013)
--- trunk/Source/WebKit2/ChangeLog 2013-12-23 20:44:28 UTC (rev 161012)
+++ trunk/Source/WebKit2/ChangeLog 2013-12-23 21:09:44 UTC (rev 161013)
@@ -1,3 +1,25 @@
+2013-12-23 Tim Horton <[email protected]>
+
+ REGRESSION (r160672): Random remote layers are getting shadows
+ https://bugs.webkit.org/show_bug.cgi?id=126126
+
+ Reviewed by Anders Carlsson.
+
+ In http://trac.webkit.org/changeset/160672, we unconditionally
+ check m_properties.customAppearance without regard for whether it
+ has ever been initialized. This would result in sending an uninitialized
+ custom appearance to the UI process, which could end up requesting a shadow.
+
+ * Shared/mac/RemoteLayerTreeTransaction.mm:
+ (WebKit::RemoteLayerTreeTransaction::LayerProperties::LayerProperties):
+ Initialize LayerProperties to the CoreAnimation defaults.
+
+ * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
+ (PlatformCALayerRemote::PlatformCALayerRemote):
+ Remove wrongly-placed default initialization of contentsScale;
+ there's no reason to send it across the wire for every new layer
+ if it's left at the default.
+
2013-12-23 Anders Carlsson <[email protected]>
Use std::chrono::milliseconds for message wait timeouts in WebKit2
Modified: trunk/Source/WebKit2/Shared/mac/RemoteLayerTreeTransaction.mm (161012 => 161013)
--- trunk/Source/WebKit2/Shared/mac/RemoteLayerTreeTransaction.mm 2013-12-23 20:44:28 UTC (rev 161012)
+++ trunk/Source/WebKit2/Shared/mac/RemoteLayerTreeTransaction.mm 2013-12-23 21:09:44 UTC (rev 161013)
@@ -71,6 +71,25 @@
RemoteLayerTreeTransaction::LayerProperties::LayerProperties()
: changedProperties(NoChange)
, everChangedProperties(NoChange)
+ , backgroundColor(Color::transparent)
+ , anchorPoint(0.5, 0.5, 0)
+ , borderWidth(0)
+ , borderColor(Color::black)
+ , opacity(1)
+ , hidden(false)
+ , geometryFlipped(false)
+ , doubleSided(true)
+ , masksToBounds(false)
+ , opaque(false)
+ , maskLayerID(0)
+ , contentsRect(FloatPoint(), FloatSize(1, 1))
+ , contentsScale(1)
+ , minificationFilter(PlatformCALayer::FilterType::Linear)
+ , magnificationFilter(PlatformCALayer::FilterType::Linear)
+ , speed(1)
+ , timeOffset(0)
+ , edgeAntialiasingMask(kCALayerLeftEdge | kCALayerRightEdge | kCALayerBottomEdge | kCALayerTopEdge)
+ , customAppearance(GraphicsLayer::NoCustomAppearance)
{
}
Modified: trunk/Source/WebKit2/WebProcess/WebPage/mac/PlatformCALayerRemote.cpp (161012 => 161013)
--- trunk/Source/WebKit2/WebProcess/WebPage/mac/PlatformCALayerRemote.cpp 2013-12-23 20:44:28 UTC (rev 161012)
+++ trunk/Source/WebKit2/WebProcess/WebPage/mac/PlatformCALayerRemote.cpp 2013-12-23 21:09:44 UTC (rev 161013)
@@ -90,8 +90,6 @@
, m_acceleratesDrawing(false)
, m_context(context)
{
- // FIXME: match all default values from CA.
- setContentsScale(1);
}
PassRefPtr<PlatformCALayer> PlatformCALayerRemote::clone(PlatformCALayerClient* client) const