Changeset 112141 in webkit
- Timestamp:
- Mar 26, 2012 12:41:38 PM (12 years ago)
- Location:
- trunk/Source
- Files:
-
- 4 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r112138 r112141 1 2012-03-26 Joone Hur <joone.hur@collabora.co.uk> 2 3 [GTK] Build fix for Accelerated Compositing with Clutter 4 https://bugs.webkit.org/show_bug.cgi?id=81785 5 6 Reviewed by Martin Robinson. 7 8 AcceleratedCompositingContext was introduced to isolate different accelerated 9 compositing implementations(r104194), but the Clutter implementation doesn't 10 build with it. This includes an initial implementation of GraphicsContext3D 11 and fixes the build error. 12 13 * GNUmakefile.list.am: 14 * platform/graphics/clutter/DrawingBufferClutter.cpp: Added. 15 (WebCore): 16 (WebCore::DrawingBuffer::DrawingBuffer): 17 (WebCore::DrawingBuffer::~DrawingBuffer): 18 (WebCore::DrawingBuffer::platformColorBuffer): 19 (WebCore::DrawingBuffer::paintCompositedResultsToCanvas): 20 * platform/graphics/clutter/GraphicsContext3DClutter.cpp: Added. 21 (WebCore): 22 (WebCore::GraphicsContext3D::create): 23 (WebCore::GraphicsContext3D::GraphicsContext3D): 24 (WebCore::GraphicsContext3D::~GraphicsContext3D): 25 (WebCore::GraphicsContext3D::getImageData): 26 (WebCore::GraphicsContext3D::paintToCanvas): 27 (WebCore::GraphicsContext3D::setContextLostCallback): 28 (WebCore::GraphicsContext3D::setErrorMessageCallback): 29 (WebCore::GraphicsContext3D::makeContextCurrent): 30 (WebCore::GraphicsContext3D::platformGraphicsContext3D): 31 (WebCore::GraphicsContext3D::isGLES2Compliant): 32 (WebCore::GraphicsContext3D::platformLayer): 33 * platform/graphics/clutter/GraphicsContext3DPrivate.cpp: Added. 34 (WebCore): 35 (WebCore::GraphicsContext3DPrivate::create): 36 (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate): 37 (WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate): 38 (WebCore::GraphicsContext3DPrivate::makeContextCurrent): 39 (WebCore::GraphicsContext3DPrivate::platformContext): 40 (WebCore::GraphicsContext3DPrivate::paintToGraphicsLayerActor): 41 * platform/graphics/clutter/GraphicsContext3DPrivate.h: Added. 42 (WebCore): 43 (GraphicsContext3DPrivate): 44 (WebCore::GraphicsContext3DPrivate::platformLayer): 45 1 46 2012-03-26 Peter Rybin <prybin@chromium.org> 2 47 -
trunk/Source/WebCore/GNUmakefile.list.am
r112082 r112141 5806 5806 Source/WebCore/platform/graphics/ANGLEWebKitBridge.cpp \ 5807 5807 Source/WebCore/platform/graphics/ANGLEWebKitBridge.h \ 5808 Source/WebCore/platform/graphics/cairo/DrawingBufferCairo.cpp \5809 Source/WebCore/platform/graphics/cairo/GraphicsContext3DCairo.cpp \5810 Source/WebCore/platform/graphics/cairo/GraphicsContext3DPrivate.cpp \5811 Source/WebCore/platform/graphics/cairo/GraphicsContext3DPrivate.h \5812 5808 Source/WebCore/platform/graphics/gpu/DrawingBuffer.cpp \ 5813 5809 Source/WebCore/platform/graphics/gpu/DrawingBuffer.h \ … … 5820 5816 Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp \ 5821 5817 Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp 5818 if USE_CLUTTER 5819 webcore_sources += \ 5820 Source/WebCore/platform/graphics/clutter/DrawingBufferClutter.cpp \ 5821 Source/WebCore/platform/graphics/clutter/GraphicsContext3DClutter.cpp \ 5822 Source/WebCore/platform/graphics/clutter/GraphicsContext3DPrivate.cpp \ 5823 Source/WebCore/platform/graphics/clutter/GraphicsContext3DPrivate.h 5824 else 5825 webcore_sources += \ 5826 Source/WebCore/platform/graphics/cairo/DrawingBufferCairo.cpp \ 5827 Source/WebCore/platform/graphics/cairo/GraphicsContext3DCairo.cpp \ 5828 Source/WebCore/platform/graphics/cairo/GraphicsContext3DPrivate.cpp \ 5829 Source/WebCore/platform/graphics/cairo/GraphicsContext3DPrivate.h 5830 endif # END USE_CLUTTER 5831 5822 5832 endif # END ENABLE_WEBGL 5823 5833 -
trunk/Source/WebKit/gtk/ChangeLog
r112111 r112141 1 2012-03-26 Joone Hur <joone.hur@collabora.co.uk> 2 3 [GTK] Build fix for Accelerated Compositing with Clutter 4 https://bugs.webkit.org/show_bug.cgi?id=81785 5 6 Reviewed by Martin Robinson. 7 8 AcceleratedCompositingContext was introduced to isolate different accelerated 9 compositing implementations(r104194), but the Clutter implementation doesn't 10 build with it. This fixes the build error. 11 12 * WebCoreSupport/AcceleratedCompositingContext.h: 13 (AcceleratedCompositingContext): 14 * WebCoreSupport/AcceleratedCompositingContextClutter.cpp: 15 (WebKit::AcceleratedCompositingContext::AcceleratedCompositingContext): 16 (WebKit::AcceleratedCompositingContext::renderLayersToWindow): 17 (WebKit::AcceleratedCompositingContext::resizeRootLayer): 18 (WebKit::AcceleratedCompositingContext::syncLayersNow): 19 (WebKit::AcceleratedCompositingContext::syncLayersTimeout): 20 (WebKit): 21 1 22 2012-03-26 Gary Kramlich <grim@reaperworld.com> 2 23 -
trunk/Source/WebKit/gtk/WebCoreSupport/AcceleratedCompositingContext.h
r109605 r112141 64 64 private: 65 65 WebKitWebView* m_webView; 66 OwnPtr<WebCore::GraphicsLayer> m_rootGraphicsLayer;67 66 unsigned int m_syncTimerCallbackId; 68 67 69 68 #if USE(CLUTTER) 69 WebCore::GraphicsLayer* m_rootGraphicsLayer; 70 70 GtkWidget* m_rootLayerEmbedder; 71 71 #elif USE(TEXTURE_MAPPER_GL) 72 72 WebCore::GLContext* glContext(); 73 73 WebCore::TextureMapperLayer* m_rootTextureMapperLayer; 74 OwnPtr<WebCore::GraphicsLayer> m_rootGraphicsLayer; 74 75 OwnPtr<WebCore::TextureMapper> m_textureMapper; 75 76 #endif -
trunk/Source/WebKit/gtk/WebCoreSupport/AcceleratedCompositingContextClutter.cpp
r108104 r112141 26 26 #include "FrameView.h" 27 27 #include "GraphicsLayer.h" 28 #include "NotImplemented.h" 28 29 #include "webkitwebviewprivate.h" 29 30 #include <clutter-gtk/clutter-gtk.h> … … 36 37 AcceleratedCompositingContext::AcceleratedCompositingContext(WebKitWebView* webView) 37 38 : m_webView(webView) 39 , m_syncTimerCallbackId(0) 38 40 , m_rootGraphicsLayer(0) 39 , m_syncTimerCallbackId(0)40 41 , m_rootLayerEmbedder(0) 41 42 { … … 53 54 } 54 55 55 bool AcceleratedCompositingContext::renderLayersToWindow(c airo_t* widgetCr, const IntRect& clipRect)56 bool AcceleratedCompositingContext::renderLayersToWindow(const IntRect& clipRect) 56 57 { 57 58 notImplemented(); … … 109 110 allocation.width = size.width(); 110 111 allocation.height = size.height(); 111 gtk_widget_size_allocate(GTK_WIDGET(m_ webView->priv->rootLayerEmbedder), &allocation);112 gtk_widget_size_allocate(GTK_WIDGET(m_rootLayerEmbedder), &allocation); 112 113 } 113 114 … … 128 129 } 129 130 131 void AcceleratedCompositingContext::syncLayersNow() 132 { 133 if (m_rootGraphicsLayer) 134 m_rootGraphicsLayer->syncCompositingStateForThisLayerOnly(); 135 136 core(m_webView)->mainFrame()->view()->syncCompositingStateIncludingSubframes(); 137 } 138 130 139 void AcceleratedCompositingContext::syncLayersTimeout() 131 140 { 132 core(m_webView)->mainFrame()->view()->syncCompositingStateIncludingSubframes(); 141 m_syncTimerCallbackId = 0; 142 syncLayersNow(); 143 if (!m_rootGraphicsLayer) 144 return; 145 146 renderLayersToWindow(IntRect()); 133 147 } 134 148
Note: See TracChangeset
for help on using the changeset viewer.