Changeset 220397 in webkit
- Timestamp:
- Aug 8, 2017 3:27:11 AM (7 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 1 added
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r220396 r220397 1 2017-08-08 Zan Dobersek <zdobersek@igalia.com> 2 3 [TexMap] Isolate the TextureMapperPlatformLayerProxyProvider class 4 https://bugs.webkit.org/show_bug.cgi?id=175316 5 6 Reviewed by Carlos Garcia Campos. 7 8 Move the TextureMapperPlatformLayerProxyProvider class (which is the type 9 aliased to PlatformLayer for threaded CoordGraphics) into its own header 10 file. This prevents including the TextureMapperPlatformLayerProxy.h header 11 file in MediaPlayerPrivateGStreamerBase.h, avoiding spilling OpenGL types 12 and function declarations before the GStreamer GL headers include them 13 later in the MediaPlayerPrivateGStreamerBase implementation file. 14 15 In the MediaPlayerPrivateGStreamerBase.h header file, only the new header 16 is included, and a forward declaration of the TextureMapperPlatformLayerProxy 17 class is used. proxy() and swapBuffersIfNeeded() methods are moved into 18 the implementation file to avoid requiring the full definition of the 19 TextureMapperPlatformLayerProxy class. 20 21 Similar is done for the TextureMapperGC3DPlatformLayer class and the 22 Cairo-specific implementation of the ImageBufferData class. The 23 CoordinatedGraphicsLayer implementation file also gains an include of the 24 TextureMapperPlatformLayerProxyProvider.h header since it requires the full 25 definition of that class. 26 27 No new tests -- no change in behavior. 28 29 * platform/graphics/cairo/ImageBufferCairo.cpp: 30 (WebCore::ImageBufferData::proxy const): 31 * platform/graphics/cairo/ImageBufferDataCairo.h: 32 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: 33 (WebCore::MediaPlayerPrivateGStreamerBase::updateTexture): 34 (WebCore::MediaPlayerPrivateGStreamerBase::proxy const): 35 (WebCore::MediaPlayerPrivateGStreamerBase::swapBuffersIfNeeded): 36 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h: 37 * platform/graphics/texmap/TextureMapperGC3DPlatformLayer.cpp: 38 * platform/graphics/texmap/TextureMapperGC3DPlatformLayer.h: 39 * platform/graphics/texmap/TextureMapperPlatformLayerProxy.h: 40 * platform/graphics/texmap/TextureMapperPlatformLayerProxyProvider.h: Added. 41 * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp: 42 1 43 2017-08-08 Zan Dobersek <zdobersek@igalia.com> 2 44 -
trunk/Source/WebCore/platform/graphics/cairo/ImageBufferCairo.cpp
r219819 r220397 133 133 } 134 134 135 RefPtr<TextureMapperPlatformLayerProxy> ImageBufferData::proxy() const 136 { 137 return m_platformLayerProxy.copyRef(); 138 } 139 135 140 void ImageBufferData::swapBuffersIfNeeded() 136 141 { -
trunk/Source/WebCore/platform/graphics/cairo/ImageBufferDataCairo.h
r199000 r220397 36 36 #include "TextureMapper.h" 37 37 #include "TextureMapperPlatformLayer.h" 38 #include "TextureMapperPlatformLayerProxy .h"38 #include "TextureMapperPlatformLayerProxyProvider.h" 39 39 #endif 40 40 … … 42 42 43 43 class IntSize; 44 class TextureMapperPlatformLayerProxy; 44 45 45 46 class ImageBufferData … … 62 63 63 64 #if USE(COORDINATED_GRAPHICS_THREADED) 64 RefPtr<TextureMapperPlatformLayerProxy> proxy() const override { return m_platformLayerProxy.copyRef(); }65 RefPtr<TextureMapperPlatformLayerProxy> proxy() const; 65 66 void swapBuffersIfNeeded() override; 66 67 void createCompositorBuffer(); -
trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp
r220396 r220397 105 105 #include "TextureMapperGL.h" 106 106 #include "TextureMapperPlatformLayerBuffer.h" 107 #include "TextureMapperPlatformLayerProxy.h" 107 108 #if USE(CAIRO) && ENABLE(ACCELERATED_2D_CANVAS) 108 109 #include <cairo-gl.h> … … 562 563 gst_video_frame_unmap(&videoFrame); 563 564 } 564 #endif 565 566 #if USE(TEXTURE_MAPPER_GL) 565 566 RefPtr<TextureMapperPlatformLayerProxy> MediaPlayerPrivateGStreamerBase::proxy() const 567 { 568 return m_platformLayerProxy.copyRef(); 569 } 570 571 void MediaPlayerPrivateGStreamerBase::swapBuffersIfNeeded() 572 { 573 } 574 567 575 void MediaPlayerPrivateGStreamerBase::pushTextureToCompositor() 568 576 { -
trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h
r218799 r220397 36 36 #include <wtf/RunLoop.h> 37 37 38 #if USE(TEXTURE_MAPPER )39 #include "TextureMapperPlatformLayerProxy .h"38 #if USE(TEXTURE_MAPPER_GL) 39 #include "TextureMapperPlatformLayerProxyProvider.h" 40 40 #endif 41 41 … … 55 55 class VideoTextureCopierGStreamer; 56 56 57 #if USE(TEXTURE_MAPPER_GL) 58 class TextureMapperPlatformLayerProxy; 59 #endif 60 57 61 void registerWebKitGStreamerElements(); 58 62 … … 146 150 #if USE(TEXTURE_MAPPER_GL) 147 151 void updateTexture(BitmapTextureGL&, GstVideoInfo&); 148 RefPtr<TextureMapperPlatformLayerProxy> proxy() const override { return m_platformLayerProxy.copyRef(); }149 void swapBuffersIfNeeded() override { };152 RefPtr<TextureMapperPlatformLayerProxy> proxy() const; 153 void swapBuffersIfNeeded() override; 150 154 void pushTextureToCompositor(); 151 155 #endif -
trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGC3DPlatformLayer.cpp
r219391 r220397 34 34 #include "GLContext.h" 35 35 #include "TextureMapperPlatformLayerBuffer.h" 36 #include "TextureMapperPlatformLayerProxy.h" 36 37 37 38 namespace WebCore { -
trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGC3DPlatformLayer.h
r216483 r220397 25 25 #include "PlatformLayer.h" 26 26 #include "TextureMapperPlatformLayer.h" 27 #include "TextureMapperPlatformLayerProxy .h"27 #include "TextureMapperPlatformLayerProxyProvider.h" 28 28 29 29 namespace WebCore { -
trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxy.h
r218799 r220397 45 45 class TextureMapperGL; 46 46 class TextureMapperLayer; 47 class TextureMapperPlatformLayerProxy;48 47 class TextureMapperPlatformLayerBuffer; 49 50 class TextureMapperPlatformLayerProxyProvider {51 public:52 virtual RefPtr<TextureMapperPlatformLayerProxy> proxy() const = 0;53 virtual void swapBuffersIfNeeded() = 0;54 };55 48 56 49 class TextureMapperPlatformLayerProxy : public ThreadSafeRefCounted<TextureMapperPlatformLayerProxy> { -
trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp
r216759 r220397 32 32 #include "GraphicsLayerFactory.h" 33 33 #include "ScrollableArea.h" 34 #include "TextureMapperPlatformLayerProxyProvider.h" 34 35 #include <wtf/CurrentTime.h> 35 36 #ifndef NDEBUG
Note: See TracChangeset
for help on using the changeset viewer.