Changeset 203497 in webkit
- Timestamp:
- Jul 21, 2016, 12:25:26 AM (10 years ago)
- Location:
- trunk/Source
- Files:
-
- 7 edited
-
WebCore/ChangeLog (modified) (1 diff)
-
WebCore/rendering/RenderLayerBacking.cpp (modified) (1 diff)
-
WebKit2/ChangeLog (modified) (1 diff)
-
WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp (modified) (2 diffs)
-
WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h (modified) (2 diffs)
-
WebKit2/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp (modified) (1 diff)
-
WebKit2/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r203494 r203497 1 2016-07-21 Carlos Garcia Campos <cgarcia@igalia.com> 2 3 [GTK][Threaded Compositor] Web view background colors don't work 4 https://bugs.webkit.org/show_bug.cgi?id=159465 5 6 Reviewed by Michael Catanzaro. 7 8 * rendering/RenderLayerBacking.cpp: 9 (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer): Initialize frame view layer opacity for platforms not 10 using the tiled cache layer. 11 1 12 2016-07-20 Youenn Fablet <youenn@apple.com> 2 13 -
trunk/Source/WebCore/rendering/RenderLayerBacking.cpp
r202536 r203497 316 316 if (m_isMainFrameRenderViewLayer) { 317 317 // Page scale is applied above the RenderView on iOS. 318 m_graphicsLayer->setContentsOpaque( true);318 m_graphicsLayer->setContentsOpaque(!compositor().viewHasTransparentBackground()); 319 319 m_graphicsLayer->setAppliesPageScale(); 320 320 } -
trunk/Source/WebKit2/ChangeLog
r203496 r203497 1 2016-07-21 Carlos Garcia Campos <cgarcia@igalia.com> 2 3 [GTK][Threaded Compositor] Web view background colors don't work 4 https://bugs.webkit.org/show_bug.cgi?id=159465 5 6 Reviewed by Michael Catanzaro. 7 8 * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: 9 (WebKit::ThreadedCompositor::setDrawsBackground): Set m_drawsBackground in compositing thread and schedule a 10 layer flush. 11 (WebKit::ThreadedCompositor::renderLayerTree): Clear the area when not rendering backgrounds. 12 * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h: 13 * WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp: 14 (WebKit::ThreadedCoordinatedLayerTreeHost::pageBackgroundTransparencyChanged): Notify the compositor. 15 * WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h: 16 1 17 2016-07-21 Carlos Garcia Campos <cgarcia@igalia.com> 2 18 -
trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp
r203449 r203497 88 88 } 89 89 90 void ThreadedCompositor::setDrawsBackground(bool drawsBackground) 91 { 92 m_compositingRunLoop->performTask([this, protectedThis = Ref<ThreadedCompositor>(*this), drawsBackground] { 93 m_drawsBackground = drawsBackground; 94 scheduleDisplayImmediately(); 95 }); 96 } 97 90 98 void ThreadedCompositor::didChangeViewportSize(const IntSize& size) 91 99 { … … 203 211 viewportTransform.translate(-scrollPostion.x(), -scrollPostion.y()); 204 212 205 m_scene->paintToCurrentGLContext(viewportTransform, 1, clipRect, Color::white, false, scrollPostion); 213 if (!m_drawsBackground) { 214 glClearColor(0, 0, 0, 0); 215 glClear(GL_COLOR_BUFFER_BIT); 216 } 217 m_scene->paintToCurrentGLContext(viewportTransform, 1, clipRect, Color::transparent, !m_drawsBackground, scrollPostion); 206 218 207 219 glContext()->swapBuffers(); -
trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h
r203449 r203497 67 67 void setNativeSurfaceHandleForCompositing(uint64_t); 68 68 void setDeviceScaleFactor(float); 69 void setDrawsBackground(bool); 69 70 70 71 void updateSceneState(const WebCore::CoordinatedGraphicsState&); … … 107 108 WebCore::IntSize m_viewportSize; 108 109 float m_deviceScaleFactor { 1 }; 110 bool m_drawsBackground { true }; 109 111 uint64_t m_nativeSurfaceHandle { 0 }; 110 112 -
trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp
r203449 r203497 78 78 } 79 79 80 void ThreadedCoordinatedLayerTreeHost::pageBackgroundTransparencyChanged() 81 { 82 CoordinatedLayerTreeHost::pageBackgroundTransparencyChanged(); 83 m_compositor->setDrawsBackground(m_webPage.drawsBackground()); 84 } 85 80 86 void ThreadedCoordinatedLayerTreeHost::sizeDidChange(const IntSize& size) 81 87 { -
trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h
r203449 r203497 55 55 void sizeDidChange(const WebCore::IntSize&) override; 56 56 void deviceOrPageScaleFactorChanged() override; 57 void pageBackgroundTransparencyChanged() override; 57 58 58 59 void contentsSizeChanged(const WebCore::IntSize&) override;
Note:
See TracChangeset
for help on using the changeset viewer.