Changeset 193630 in webkit
- Timestamp:
- Dec 7, 2015 9:15:56 AM (8 years ago)
- Location:
- trunk/Source
- Files:
-
- 4 added
- 18 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r193621 r193630 1 2015-12-07 Gwang Yoon Hwang <yoon@igalia.com> 2 3 [ThreadedCompositor] Add support for PlatformLayer. 4 https://bugs.webkit.org/show_bug.cgi?id=143299 5 6 Reviewed by Žan Doberšek. 7 8 This patch implements TextureMapperPlatformLayerProxy and TextureMapperPlatformLayerBuffer to 9 send a texture (actual texture or BitmapTexture) to the compositing thread directly. 10 Platform layer renderers should implement TextureMapperPlatformLayerProxyProvider to establish 11 a connection to the compositing thread. After the connection has been established, the renderer 12 can render its contents to the TextureMapperPlatformLayerBuffer and pass it to the compositing thread 13 via TextureMapperPlatformLayer proxy. 14 The buffer can be an unmanaged texture (a.k.a. platform texture) or BitmapTexture. 15 For the unmanaged texture, the renderer should manage its life cycle itself. For the BitmapTexture, 16 it will be managed by TextureMapperPlatformLayerProxy. In that case, used (swapped) buffer will be 17 recycled because the renderer will use same size and format until it changes its size. 18 19 No new tests needed. 20 21 * PlatformGTK.cmake: 22 Adds TextureMapperPlatformLayerBuffer and TextureMapperPlaytformLayerProxy. 23 24 * platform/graphics/GraphicsContext3DPrivate.cpp: 25 * platform/graphics/GraphicsContext3DPrivate.h: 26 * platform/graphics/cairo/ImageBufferCairo.cpp: 27 * platform/graphics/cairo/ImageBufferDataCairo.h: 28 Adds mock implementation. 29 30 * platform/graphics/PlatformLayer.h: 31 Adds TextureMapperPlatformLayerProxyProvider as a PlatformLayer for the Threaded Compositor 32 33 * platform/graphics/texmap/BitmapTextureGL.h: 34 (WebCore::BitmapTextureGL::internalFormat): Adds a getter to check the 35 internal format of texture to check reusability. 36 37 * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: 38 * platform/graphics/texmap/GraphicsLayerTextureMapper.h: 39 * platform/graphics/texmap/TextureMapperLayer.cpp: 40 * platform/graphics/texmap/TextureMapperLayer.h: 41 Exclude GraphicsLayerTextureMapper from build when we are using Coordinated Graphics. 42 43 * platform/graphics/texmap/TextureMapperPlatformLayerBuffer.cpp: Added. 44 * platform/graphics/texmap/TextureMapperPlatformLayerBuffer.h: Added. 45 * platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp: Added. 46 * platform/graphics/texmap/TextureMapperPlatformLayerProxy.h: Added. 47 48 * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp: 49 (WebCore::GraphicsLayer::create): 50 Because we removed GraphicsLayerTextureMapper from build, we need to add own factory function. 51 52 (WebCore::CoordinatedGraphicsLayer::setContentsToPlatformLayer): 53 (WebCore::CoordinatedGraphicsLayer::syncPlatformLayer): 54 (WebCore::CoordinatedGraphicsLayer::platformLayerWillBeDestroyed): 55 (WebCore::CoordinatedGraphicsLayer::setPlatformLayerNeedsDisplay): 56 Implements sync operations for TextureMapperPlatformLayerProxy 57 1 58 2015-12-07 Gwang Yoon Hwang <yoon@igalia.com> 2 59 -
trunk/Source/WebCore/PlatformGTK.cmake
r192602 r193630 443 443 page/scrolling/coordinatedgraphics/ScrollingStateNodeCoordinatedGraphics.cpp 444 444 445 platform/graphics/texmap/TextureMapperPlatformLayerBuffer.cpp 446 platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp 445 447 platform/graphics/texmap/coordinated/AreaAllocator.cpp 446 448 platform/graphics/texmap/coordinated/CompositingCoordinator.cpp -
trunk/Source/WebCore/platform/graphics/GraphicsContext3DPrivate.cpp
r183807 r193630 64 64 GraphicsContext3DPrivate::~GraphicsContext3DPrivate() 65 65 { 66 #if USE(TEXTURE_MAPPER) 66 #if USE(TEXTURE_MAPPER) && !USE(COORDINATED_GRAPHICS_THREADED) 67 67 if (client()) 68 68 client()->platformLayerWillBeDestroyed(); … … 80 80 } 81 81 82 #if USE(TEXTURE_MAPPER) 82 #if USE(COORDINATED_GRAPHICS_THREADED) 83 RefPtr<TextureMapperPlatformLayerProxy> GraphicsContext3DPrivate::proxy() const 84 { 85 notImplemented(); 86 return nullptr; 87 } 88 #elif USE(TEXTURE_MAPPER) 83 89 void GraphicsContext3DPrivate::paintToTextureMapper(TextureMapper* textureMapper, const FloatRect& targetRect, const TransformationMatrix& matrix, float opacity) 84 90 { -
trunk/Source/WebCore/platform/graphics/GraphicsContext3DPrivate.h
r177786 r193630 24 24 #include "GraphicsContext3D.h" 25 25 26 #if USE(TEXTURE_MAPPER) 26 #if USE(COORDINATED_GRAPHICS_THREADED) 27 #include "TextureMapperPlatformLayerProxy.h" 28 #elif USE(TEXTURE_MAPPER) 27 29 #include "TextureMapperPlatformLayer.h" 28 30 #endif … … 31 33 32 34 class GraphicsContext3DPrivate 33 #if USE(TEXTURE_MAPPER) 35 #if USE(COORDINATED_GRAPHICS_THREADED) 36 : public TextureMapperPlatformLayerProxyProvider 37 #elif USE(TEXTURE_MAPPER) 34 38 : public TextureMapperPlatformLayer 35 39 #endif … … 43 47 GraphicsContext3D::RenderStyle renderStyle() { return m_renderStyle; } 44 48 45 #if USE(TEXTURE_MAPPER) 49 #if USE(COORDINATED_GRAPHICS_THREADED) 50 virtual RefPtr<TextureMapperPlatformLayerProxy> proxy() const override; 51 virtual void swapBuffersIfNeeded() override { }; 52 #elif USE(TEXTURE_MAPPER) 46 53 virtual void paintToTextureMapper(TextureMapper*, const FloatRect& target, const TransformationMatrix&, float opacity); 47 54 #endif -
trunk/Source/WebCore/platform/graphics/PlatformLayer.h
r165676 r193630 32 32 #elif PLATFORM(WIN) && USE(CA) 33 33 typedef struct _CACFLayer PlatformLayer; 34 #elif USE(COORDINATED_GRAPHICS_THREADED) 35 namespace WebCore { 36 class TextureMapperPlatformLayerProxyProvider; 37 typedef TextureMapperPlatformLayerProxyProvider PlatformLayer; 38 }; 34 39 #elif USE(TEXTURE_MAPPER) 35 40 namespace WebCore { -
trunk/Source/WebCore/platform/graphics/cairo/ImageBufferCairo.cpp
r192140 r193630 53 53 #include "TextureMapperGL.h" 54 54 #include <cairo-gl.h> 55 #if USE(COORDINATED_GRAPHICS_THREADED) 56 #include "TextureMapperPlatformLayerProxy.h" 57 #endif 55 58 #endif 56 59 … … 410 413 411 414 #if ENABLE(ACCELERATED_2D_CANVAS) 415 #if USE(COORDINATED_GRAPHICS_THREADED) 416 RefPtr<TextureMapperPlatformLayerProxy> ImageBufferData::proxy() const 417 { 418 notImplemented(); 419 return nullptr; 420 } 421 #else 412 422 void ImageBufferData::paintToTextureMapper(TextureMapper* textureMapper, const FloatRect& targetRect, const TransformationMatrix& matrix, float opacity) 413 423 { … … 421 431 static_cast<TextureMapperGL*>(textureMapper)->drawTexture(m_texture, TextureMapperGL::ShouldBlend, m_size, targetRect, matrix, opacity); 422 432 } 433 #endif 423 434 #endif 424 435 -
trunk/Source/WebCore/platform/graphics/cairo/ImageBufferDataCairo.h
r183265 r193630 34 34 #if ENABLE(ACCELERATED_2D_CANVAS) 35 35 #include "TextureMapper.h" 36 #if USE(COORDINATED_GRAPHICS_THREADED) 37 #include "TextureMapperPlatformLayerProxy.h" 38 #else 36 39 #include "TextureMapperPlatformLayer.h" 40 #endif 37 41 #endif 38 42 … … 43 47 class ImageBufferData 44 48 #if ENABLE(ACCELERATED_2D_CANVAS) 49 #if USE(COORDINATED_GRAPHICS_THREADED) 50 : public TextureMapperPlatformLayerProxyProvider 51 #else 45 52 : public TextureMapperPlatformLayer 53 #endif 46 54 #endif 47 55 { … … 55 63 56 64 #if ENABLE(ACCELERATED_2D_CANVAS) 65 #if USE(COORDINATED_GRAPHICS_THREADED) 66 virtual RefPtr<TextureMapperPlatformLayerProxy> proxy() const override; 67 virtual void swapBuffersIfNeeded() override { }; 68 #else 57 69 virtual void paintToTextureMapper(TextureMapper*, const FloatRect& target, const TransformationMatrix&, float opacity); 70 #endif 58 71 uint32_t m_texture; 59 72 #endif -
trunk/Source/WebCore/platform/graphics/texmap/BitmapTextureGL.h
r191541 r193630 70 70 TextureMapperGL::ClipStack& clipStack() { return m_clipStack; } 71 71 72 GC3Dint internalFormat() const { return m_internalFormat; } 73 72 74 private: 73 75 -
trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp
r190344 r193630 27 27 #include <wtf/CurrentTime.h> 28 28 29 #if USE(TEXTURE_MAPPER) 29 #if USE(TEXTURE_MAPPER) && !USE(COORDINATED_GRAPHICS) 30 30 31 31 namespace WebCore { -
trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h
r186156 r193630 21 21 #define GraphicsLayerTextureMapper_h 22 22 23 #if USE(TEXTURE_MAPPER) 23 #if USE(TEXTURE_MAPPER) && !USE(COORDINATED_GRAPHICS) 24 24 25 25 #include "GraphicsLayer.h" -
trunk/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
r192900 r193630 446 446 } 447 447 448 #if !USE(COORDINATED_GRAPHICS) 448 449 void TextureMapperLayer::setChildren(const Vector<GraphicsLayer*>& newChildren) 449 450 { … … 452 453 addChild(&downcast<GraphicsLayerTextureMapper>(child)->layer()); 453 454 } 455 #endif 454 456 455 457 void TextureMapperLayer::setChildren(const Vector<TextureMapperLayer*>& newChildren) -
trunk/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h
r187002 r193630 79 79 void setTextureMapper(TextureMapper* texmap) { m_textureMapper = texmap; } 80 80 81 #if !USE(COORDINATED_GRAPHICS) 81 82 void setChildren(const Vector<GraphicsLayer*>&); 83 #endif 82 84 void setChildren(const Vector<TextureMapperLayer*>&); 83 85 void setMaskLayer(TextureMapperLayer*); -
trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp
r192900 r193630 31 31 #include "GraphicsContext.h" 32 32 #include "GraphicsLayer.h" 33 #include "GraphicsLayerFactory.h" 33 34 #include "Page.h" 34 35 #include "ScrollableArea.h" 35 #include "TextureMapperPlatformLayer.h"36 36 #include <wtf/CurrentTime.h> 37 37 #include <wtf/HashMap.h> … … 42 42 43 43 namespace WebCore { 44 45 std::unique_ptr<GraphicsLayer> GraphicsLayer::create(GraphicsLayerFactory* factory, GraphicsLayerClient& client, Type layerType) 46 { 47 if (!factory) 48 return std::make_unique<CoordinatedGraphicsLayer>(layerType, client); 49 50 return factory->createGraphicsLayer(layerType, client); 51 } 44 52 45 53 static CoordinatedLayerID toCoordinatedLayerID(GraphicsLayer* layer) … … 122 130 , m_pendingPlatformLayerOperation(None) 123 131 #endif 132 #if USE(COORDINATED_GRAPHICS_THREADED) 133 , m_shouldSyncPlatformLayer(false) 134 #endif 124 135 , m_coordinator(0) 125 136 , m_compositedNativeImagePtr(0) … … 407 418 408 419 notifyFlushRequired(); 420 #elif USE(COORDINATED_GRAPHICS_THREADED) 421 if (m_platformLayer != platformLayer) 422 m_shouldSyncPlatformLayer = true; 423 424 m_platformLayer = platformLayer; 425 notifyFlushRequired(); 409 426 #else 410 427 UNUSED_PARAM(platformLayer); … … 695 712 } 696 713 714 void CoordinatedGraphicsLayer::syncPlatformLayer() 715 { 697 716 #if USE(GRAPHICS_SURFACE) 698 void CoordinatedGraphicsLayer::syncPlatformLayer()699 {700 717 destroyPlatformLayerIfNeeded(); 701 718 createPlatformLayerIfNeeded(); … … 712 729 m_layerState.platformLayerFrontBuffer = m_platformLayer->copyToGraphicsSurface(); 713 730 m_layerState.platformLayerShouldSwapBuffers = true; 714 } 715 731 #elif USE(COORDINATED_GRAPHICS_THREADED) 732 if (!m_shouldSyncPlatformLayer) 733 return; 734 735 m_shouldSyncPlatformLayer = false; 736 m_layerState.platformLayerChanged = true; 737 if (m_platformLayer) { 738 m_platformLayer->swapBuffersIfNeeded(); 739 m_layerState.platformLayerProxy = m_platformLayer->proxy(); 740 } 741 #endif 742 } 743 744 #if USE(GRAPHICS_SURFACE) 716 745 void CoordinatedGraphicsLayer::destroyPlatformLayerIfNeeded() 717 746 { … … 764 793 syncChildren(); 765 794 syncFilters(); 766 #if USE(GRAPHICS_SURFACE)767 795 syncPlatformLayer(); 768 #endif769 796 770 797 // Only unset m_movingVisibleRect after we have updated the visible rect after the animation stopped. … … 1190 1217 client().notifyAnimationStarted(this, "", m_lastAnimationStartTime); 1191 1218 } 1219 1220 #if USE(COORDINATED_GRAPHICS_THREADED) 1221 void CoordinatedGraphicsLayer::platformLayerWillBeDestroyed() 1222 { 1223 } 1224 1225 void CoordinatedGraphicsLayer::setPlatformLayerNeedsDisplay() 1226 { 1227 } 1228 #endif 1229 1192 1230 } // namespace WebCore 1231 1193 1232 #endif // USE(COORDINATED_GRAPHICS) -
trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h
r190095 r193630 30 30 #include "IntSize.h" 31 31 #include "TextureMapperAnimation.h" 32 #include "TextureMapperPlatformLayer.h" 32 33 #include "TiledBackingStore.h" 33 34 #include "TiledBackingStoreClient.h" … … 58 59 class CoordinatedGraphicsLayer : public GraphicsLayer 59 60 , public TiledBackingStoreClient 61 #if USE(COORDINATED_GRAPHICS_THREADED) 62 , public TextureMapperPlatformLayer::Client 63 #endif 60 64 , public CoordinatedImageBacking::Host { 61 65 public: … … 156 160 }; 157 161 158 void syncPlatformLayer();159 162 void destroyPlatformLayerIfNeeded(); 160 163 void createPlatformLayerIfNeeded(); 164 #endif 165 void syncPlatformLayer(); 166 #if USE(COORDINATED_GRAPHICS_THREADED) 167 void platformLayerWillBeDestroyed(); 168 void setPlatformLayerNeedsDisplay(); 161 169 #endif 162 170 … … 224 232 unsigned m_pendingPlatformLayerOperation : 3; 225 233 #endif 234 #if USE(COORDINATED_GRAPHICS_THREADED) 235 bool m_shouldSyncPlatformLayer : 1; 236 #endif 226 237 227 238 CoordinatedGraphicsLayerClient* m_coordinator; -
trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h
r180580 r193630 43 43 #include "GraphicsSurface.h" 44 44 #include "GraphicsSurfaceToken.h" 45 #endif 46 47 #if USE(COORDINATED_GRAPHICS_THREADED) 48 #include "TextureMapperPlatformLayerProxy.h" 45 49 #endif 46 50 … … 131 135 , platformLayerFrontBuffer(0) 132 136 #endif 137 #if USE(COORDINATED_GRAPHICS_THREADED) 138 , platformLayerProxy(0) 139 #endif 133 140 { 134 141 } … … 165 172 #endif 166 173 174 #if USE(COORDINATED_GRAPHICS_THREADED) 175 RefPtr<TextureMapperPlatformLayerProxy> platformLayerProxy; 176 #endif 177 167 178 IntSize committedScrollOffset; 168 179 -
trunk/Source/WebKit2/ChangeLog
r193626 r193630 1 2015-12-07 Gwang Yoon Hwang <yoon@igalia.com> 2 3 [ThreadedCompositor] Add support for PlatformLayer. 4 https://bugs.webkit.org/show_bug.cgi?id=143299 5 6 Reviewed by Žan Doberšek. 7 8 * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: 9 (WebKit::CoordinatedGraphicsScene::paintToCurrentGLContext): 10 Swap pending buffers of TextureMapperPlatformLayerProxies before painting contents. 11 (WebKit::CoordinatedGraphicsScene::syncPlatformLayerIfNeeded): 12 In threaded compositor, CoordinatedGraphicsScence only cares about creation and deletion 13 of platform layers. 14 15 (WebKit::CoordinatedGraphicsScene::onNewBufferAvailable): 16 Whenever new buffer comes via TextureMapperPlatformLayerProxy, CoordinatedGraphicsScene will 17 update the scene if it is needed. 18 1 19 2015-12-07 Mario Sanchez Prada <mario@endlessm.com> 2 20 -
trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp
r188594 r193630 83 83 if (!currentRootLayer) 84 84 return; 85 86 #if USE(COORDINATED_GRAPHICS_THREADED) 87 for (auto& proxy : m_platformLayerProxies.values()) 88 proxy->swapBuffer(); 89 #endif 85 90 86 91 currentRootLayer->setTextureMapper(m_textureMapper.get()); … … 165 170 } 166 171 172 void CoordinatedGraphicsScene::syncPlatformLayerIfNeeded(TextureMapperLayer* layer, const CoordinatedGraphicsLayerState& state) 173 { 167 174 #if USE(GRAPHICS_SURFACE) 168 void CoordinatedGraphicsScene::createPlatformLayerIfNeeded(TextureMapperLayer* layer, const CoordinatedGraphicsLayerState& state)169 {170 if (!state.platformLayerToken.isValid())171 return;172 173 RefPtr<TextureMapperSurfaceBackingStore> platformLayerBackingStore(TextureMapperSurfaceBackingStore::create());174 m_surfaceBackingStores.set(layer, platformLayerBackingStore);175 platformLayerBackingStore->setGraphicsSurface(GraphicsSurface::create(state.platformLayerSize, state.platformLayerSurfaceFlags, state.platformLayerToken));176 layer->setContentsLayer(platformLayerBackingStore.get());177 }178 179 void CoordinatedGraphicsScene::syncPlatformLayerIfNeeded(TextureMapperLayer* layer, const CoordinatedGraphicsLayerState& state)180 {181 175 ASSERT(m_textureMapper); 182 176 … … 192 186 platformLayerBackingStore->swapBuffersIfNeeded(state.platformLayerFrontBuffer); 193 187 } 188 #elif USE(COORDINATED_GRAPHICS_THREADED) 189 if (!state.platformLayerChanged) 190 return; 191 192 if (state.platformLayerProxy) { 193 m_platformLayerProxies.set(layer, state.platformLayerProxy); 194 state.platformLayerProxy->activateOnCompositingThread(this, layer); 195 } else 196 m_platformLayerProxies.remove(layer); 197 #else 198 UNUSED_PARAM(layer); 199 UNUSED_PARAM(state); 200 #endif 201 } 202 203 #if USE(COORDINATED_GRAPHICS_THREADED) 204 void CoordinatedGraphicsScene::onNewBufferAvailable() 205 { 206 RefPtr<CoordinatedGraphicsScene> protector(this); 207 dispatchOnClientRunLoop([=] { 208 protector->updateViewport(); 209 }); 210 } 211 #endif 212 213 #if USE(GRAPHICS_SURFACE) 214 void CoordinatedGraphicsScene::createPlatformLayerIfNeeded(TextureMapperLayer* layer, const CoordinatedGraphicsLayerState& state) 215 { 216 if (!state.platformLayerToken.isValid()) 217 return; 218 219 RefPtr<TextureMapperSurfaceBackingStore> platformLayerBackingStore(TextureMapperSurfaceBackingStore::create()); 220 m_surfaceBackingStores.set(layer, platformLayerBackingStore); 221 platformLayerBackingStore->setGraphicsSurface(GraphicsSurface::create(state.platformLayerSize, state.platformLayerSurfaceFlags, state.platformLayerToken)); 222 layer->setContentsLayer(platformLayerBackingStore.get()); 194 223 } 195 224 … … 314 343 setLayerFiltersIfNeeded(layer, layerState); 315 344 setLayerAnimationsIfNeeded(layer, layerState); 316 #if USE(GRAPHICS_SURFACE)317 345 syncPlatformLayerIfNeeded(layer, layerState); 318 #endif319 346 setLayerRepaintCountIfNeeded(layer, layerState); 320 347 } … … 354 381 #if USE(GRAPHICS_SURFACE) 355 382 m_surfaceBackingStores.remove(layer.get()); 383 #endif 384 #if USE(COORDINATED_GRAPHICS_THREADED) 385 if (auto platformLayerProxy = m_platformLayerProxies.take(layer.get())) 386 platformLayerProxy->invalidate(); 356 387 #endif 357 388 } … … 632 663 #if USE(GRAPHICS_SURFACE) 633 664 m_surfaceBackingStores.clear(); 665 #endif 666 #if USE(COORDINATED_GRAPHICS_THREADED) 667 m_platformLayerProxies.clear(); 634 668 #endif 635 669 m_surfaces.clear(); -
trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h
r188594 r193630 46 46 #endif 47 47 48 #if USE(COORDINATED_GRAPHICS_THREADED) 49 #include <WebCore/TextureMapperPlatformLayerProxy.h> 50 #endif 51 48 52 namespace WebKit { 49 53 … … 59 63 }; 60 64 61 class CoordinatedGraphicsScene : public ThreadSafeRefCounted<CoordinatedGraphicsScene>, public WebCore::TextureMapperLayer::ScrollingClient { 65 class CoordinatedGraphicsScene : public ThreadSafeRefCounted<CoordinatedGraphicsScene>, public WebCore::TextureMapperLayer::ScrollingClient 66 #if USE(COORDINATED_GRAPHICS_THREADED) 67 , public WebCore::TextureMapperPlatformLayerProxy::Compositor 68 #endif 69 { 62 70 public: 63 71 explicit CoordinatedGraphicsScene(CoordinatedGraphicsSceneClient*); … … 95 103 void setLayerFiltersIfNeeded(WebCore::TextureMapperLayer*, const WebCore::CoordinatedGraphicsLayerState&); 96 104 void setLayerAnimationsIfNeeded(WebCore::TextureMapperLayer*, const WebCore::CoordinatedGraphicsLayerState&); 105 void syncPlatformLayerIfNeeded(WebCore::TextureMapperLayer*, const WebCore::CoordinatedGraphicsLayerState&); 97 106 #if USE(GRAPHICS_SURFACE) 98 107 void createPlatformLayerIfNeeded(WebCore::TextureMapperLayer*, const WebCore::CoordinatedGraphicsLayerState&); 99 void syncPlatformLayerIfNeeded(WebCore::TextureMapperLayer*, const WebCore::CoordinatedGraphicsLayerState&);100 108 void destroyPlatformLayerIfNeeded(WebCore::TextureMapperLayer*, const WebCore::CoordinatedGraphicsLayerState&); 101 109 #endif … … 145 153 void dispatchCommitScrollOffset(uint32_t layerID, const WebCore::IntSize& offset); 146 154 155 #if USE(COORDINATED_GRAPHICS_THREADED) 156 virtual void onNewBufferAvailable() override; 157 #endif 158 147 159 // Render queue can be accessed ony from main thread or updatePaintNode call stack! 148 160 Vector<std::function<void()>> m_renderQueue; … … 163 175 typedef HashMap<WebCore::TextureMapperLayer*, RefPtr<WebCore::TextureMapperSurfaceBackingStore>> SurfaceBackingStoreMap; 164 176 SurfaceBackingStoreMap m_surfaceBackingStores; 177 #endif 178 179 #if USE(COORDINATED_GRAPHICS_THREADED) 180 typedef HashMap<WebCore::TextureMapperLayer*, RefPtr<WebCore::TextureMapperPlatformLayerProxy>> PlatformLayerProxyMap; 181 PlatformLayerProxyMap m_platformLayerProxies; 165 182 #endif 166 183
Note: See TracChangeset
for help on using the changeset viewer.