Title: [195771] trunk/Source/WebCore
- Revision
- 195771
- Author
- [email protected]
- Date
- 2016-01-28 12:03:30 -0800 (Thu, 28 Jan 2016)
Log Message
[ThreadedCompositor] Fix flickers happening on video when entering/leaving fullscreen.
https://bugs.webkit.org/show_bug.cgi?id=153585
Reviewed by Michael Catanzaro.
Video thumbnail flickers where threaded compositor is enabled. This is because
a content buffer is not set to a target layer which changes before swapBuffer.
This is a very rare case though, it happens where video size changes many times in a short period.
* platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp:
(WebCore::TextureMapperPlatformLayerProxy::activateOnCompositingThread):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (195770 => 195771)
--- trunk/Source/WebCore/ChangeLog 2016-01-28 19:52:57 UTC (rev 195770)
+++ trunk/Source/WebCore/ChangeLog 2016-01-28 20:03:30 UTC (rev 195771)
@@ -1,3 +1,17 @@
+2016-01-28 ChangSeok Oh <[email protected]>
+
+ [ThreadedCompositor] Fix flickers happening on video when entering/leaving fullscreen.
+ https://bugs.webkit.org/show_bug.cgi?id=153585
+
+ Reviewed by Michael Catanzaro.
+
+ Video thumbnail flickers where threaded compositor is enabled. This is because
+ a content buffer is not set to a target layer which changes before swapBuffer.
+ This is a very rare case though, it happens where video size changes many times in a short period.
+
+ * platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp:
+ (WebCore::TextureMapperPlatformLayerProxy::activateOnCompositingThread):
+
2016-01-27 Jer Noble <[email protected]>
Allow CachedResourceLoader clients to opt out of the MemoryCache.
Modified: trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp (195770 => 195771)
--- trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp 2016-01-28 19:52:57 UTC (rev 195770)
+++ trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp 2016-01-28 20:03:30 UTC (rev 195771)
@@ -63,6 +63,9 @@
LockHolder locker(m_lock);
m_compositor = compositor;
m_targetLayer = targetLayer;
+ if (m_targetLayer && m_currentBuffer)
+ m_targetLayer->setContentsLayer(m_currentBuffer.get());
+
m_compositorThreadUpdateTimer = std::make_unique<RunLoop::Timer<TextureMapperPlatformLayerProxy>>(RunLoop::current(), this, &TextureMapperPlatformLayerProxy::compositorThreadUpdateTimerFired);
}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes