[webkit-changes] [215613] trunk/Source/WebCore
Title: [215613] trunk/Source/WebCore Revision 215613 Author y...@igalia.com Date 2017-04-21 09:58:49 -0700 (Fri, 21 Apr 2017) Log Message Do not paint the border of the box if the dirty region does not intersect with border area https://bugs.webkit.org/show_bug.cgi?id=170988 Reviewed by Simon Fraser. No new tests, since there is no change in behavior. * platform/graphics/GeometryUtilities.cpp: (WebCore::ellipseContainsPoint): Checks if a point is within an ellipse. * platform/graphics/GeometryUtilities.h: Replace header-guards with #pragma once. * platform/graphics/RoundedRect.cpp: (WebCore::RoundedRect::contains): Implemented to know the dirty rectangle intersects with rounded rectangle or not. * platform/graphics/RoundedRect.h: * rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::paintBorder): When typing in decorated text box, the dirty rect generated only for the inside of the text box, not for the decorations. So we can avoid the calculations to draw borders if the inner border totally covers the target surface. It will optimize the rendering process since we don't have to render border decorations whenever we type somethings in side of the text input element. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/GeometryUtilities.cpp trunk/Source/WebCore/platform/graphics/GeometryUtilities.h trunk/Source/WebCore/platform/graphics/RoundedRect.cpp trunk/Source/WebCore/platform/graphics/RoundedRect.h trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (215612 => 215613) --- trunk/Source/WebCore/ChangeLog 2017-04-21 16:40:57 UTC (rev 215612) +++ trunk/Source/WebCore/ChangeLog 2017-04-21 16:58:49 UTC (rev 215613) @@ -1,3 +1,32 @@ +2017-04-21 Gwang Yoon Hwang <y...@igalia.com> + +Do not paint the border of the box if the dirty region does not intersect with border area +https://bugs.webkit.org/show_bug.cgi?id=170988 + +Reviewed by Simon Fraser. + +No new tests, since there is no change in behavior. + +* platform/graphics/GeometryUtilities.cpp: +(WebCore::ellipseContainsPoint): +Checks if a point is within an ellipse. + +* platform/graphics/GeometryUtilities.h: +Replace header-guards with #pragma once. + +* platform/graphics/RoundedRect.cpp: +(WebCore::RoundedRect::contains): +Implemented to know the dirty rectangle intersects with rounded rectangle or not. +* platform/graphics/RoundedRect.h: +* rendering/RenderBoxModelObject.cpp: +(WebCore::RenderBoxModelObject::paintBorder): +When typing in decorated text box, the dirty rect generated only for the +inside of the text box, not for the decorations. So we can avoid the +calculations to draw borders if the inner border totally covers the +target surface. It will optimize the rendering process since we don't +have to render border decorations whenever we type somethings in side of +the text input element. + 2017-04-21 Anders Carlsson <ander...@apple.com> Remove another use of toPaymentAuthorizationStatus Modified: trunk/Source/WebCore/platform/graphics/GeometryUtilities.cpp (215612 => 215613) --- trunk/Source/WebCore/platform/graphics/GeometryUtilities.cpp 2017-04-21 16:40:57 UTC (rev 215612) +++ trunk/Source/WebCore/platform/graphics/GeometryUtilities.cpp 2017-04-21 16:58:49 UTC (rev 215613) @@ -146,4 +146,18 @@ return destRect; } +bool ellipseContainsPoint(const FloatPoint& center, const FloatSize& radii, const FloatPoint& point) +{ +FloatPoint transformedPoint(point); +transformedPoint.move(-center.x(), -center.y()); +transformedPoint.scale(radii.height(), radii.width()); +float radius = radii.width() * radii.height(); + +if (transformedPoint.x() > radius || transformedPoint.y() > radius) +return false; +if (transformedPoint.x() + transformedPoint.y() <= radius) +return true; +return (transformedPoint.lengthSquared() <= radius * radius); } + +} Modified: trunk/Source/WebCore/platform/graphics/GeometryUtilities.h (215612 => 215613) --- trunk/Source/WebCore/platform/graphics/GeometryUtilities.h 2017-04-21 16:40:57 UTC (rev 215612) +++ trunk/Source/WebCore/platform/graphics/GeometryUtilities.h 2017-04-21 16:58:49 UTC (rev 215613) @@ -23,8 +23,7 @@ * THE POSSIBILITY OF SUCH DAMAGE. */ -#ifndef GeometryUtilities_h -#define GeometryUtilities_h +#pragma once #include "FloatRect.h" #include "IntRect.h" @@ -51,6 +50,5 @@ // Compute a rect that encloses all points covered by the given rect if it were rotated a full turn around (0,0). FloatRect boundsOfRotatingRect(const FloatRect&); +bool ellipseContainsPoint(const FloatPoint& center, const FloatSize& radii, const FloatPoint&); } - -#endif // GeometryUtili
[webkit-changes] [206907] trunk/Source/WebCore
Title: [206907] trunk/Source/WebCore Revision 206907 Author y...@igalia.com Date 2016-10-07 04:45:22 -0700 (Fri, 07 Oct 2016) Log Message [GTK] Remove unneeded creation of TextureMapperPlatformLayerProxy https://bugs.webkit.org/show_bug.cgi?id=163101 Reviewed by Žan Doberšek. Covered by existing tests. * platform/graphics/cairo/ImageBufferCairo.cpp: (WebCore::ImageBufferData::ImageBufferData): Modified not to create TextureMapperPlatformLayerProxy if it is not created for the accelerated 2d canvas. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/cairo/ImageBufferCairo.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (206906 => 206907) --- trunk/Source/WebCore/ChangeLog 2016-10-07 09:28:27 UTC (rev 206906) +++ trunk/Source/WebCore/ChangeLog 2016-10-07 11:45:22 UTC (rev 206907) @@ -1,3 +1,17 @@ +2016-10-07 Gwang Yoon Hwang <y...@igalia.com> + +[GTK] Remove unneeded creation of TextureMapperPlatformLayerProxy +https://bugs.webkit.org/show_bug.cgi?id=163101 + +Reviewed by Žan Doberšek. + +Covered by existing tests. + +* platform/graphics/cairo/ImageBufferCairo.cpp: +(WebCore::ImageBufferData::ImageBufferData): Modified not to create +TextureMapperPlatformLayerProxy if it is not created for the +accelerated 2d canvas. + 2016-10-07 Fujii Hironori <hironori.fu...@sony.com> Use 'use lib $FindBin::Bin' to append Perl module include path Modified: trunk/Source/WebCore/platform/graphics/cairo/ImageBufferCairo.cpp (206906 => 206907) --- trunk/Source/WebCore/platform/graphics/cairo/ImageBufferCairo.cpp 2016-10-07 09:28:27 UTC (rev 206906) +++ trunk/Source/WebCore/platform/graphics/cairo/ImageBufferCairo.cpp 2016-10-07 11:45:22 UTC (rev 206907) @@ -74,12 +74,15 @@ , m_renderingMode(renderingMode) #if ENABLE(ACCELERATED_2D_CANVAS) #if USE(COORDINATED_GRAPHICS_THREADED) -, m_platformLayerProxy(adoptRef(new TextureMapperPlatformLayerProxy)) , m_compositorTexture(0) #endif , m_texture(0) #endif { +#if ENABLE(ACCELERATED_2D_CANVAS) && USE(COORDINATED_GRAPHICS_THREADED) +if (m_renderingMode == RenderingMode::Accelerated) +m_platformLayerProxy = adoptRef(new TextureMapperPlatformLayerProxy); +#endif } ImageBufferData::~ImageBufferData() ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [206861] trunk/Source/WebCore
Title: [206861] trunk/Source/WebCore Revision 206861 Author y...@igalia.com Date 2016-10-06 03:44:31 -0700 (Thu, 06 Oct 2016) Log Message [GTK] Build fix for X11 and GStreamerGL after r183731 https://bugs.webkit.org/show_bug.cgi?id=163000 Reviewed by Philippe Normand. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: Include gstgldisplay_egl.h if platform uses EGL. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (206860 => 206861) --- trunk/Source/WebCore/ChangeLog 2016-10-06 10:38:13 UTC (rev 206860) +++ trunk/Source/WebCore/ChangeLog 2016-10-06 10:44:31 UTC (rev 206861) @@ -1,3 +1,13 @@ +2016-10-06 Gwang Yoon Hwang <y...@igalia.com> + +[GTK] Build fix for X11 and GStreamerGL after r183731 +https://bugs.webkit.org/show_bug.cgi?id=163000 + +Reviewed by Philippe Normand. + +* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: +Include gstgldisplay_egl.h if platform uses EGL. + 2016-10-06 Mario Sanchez Prada <ma...@endlessm.com> [GStreamer] Can't play any video with GSTREAMER_GL enabled Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp (206860 => 206861) --- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2016-10-06 10:38:13 UTC (rev 206860) +++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2016-10-06 10:44:31 UTC (rev 206861) @@ -54,7 +54,9 @@ #if USE(GLX) #include "GLContextGLX.h" #include -#elif USE(EGL) +#endif + +#if USE(EGL) #include "GLContextEGL.h" #include #endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [201076] trunk
Title: [201076] trunk Revision 201076 Author y...@igalia.com Date 2016-05-18 07:30:41 -0700 (Wed, 18 May 2016) Log Message [GStreamer] Use FakeSink to get a decoded texture from a pipeline https://bugs.webkit.org/show_bug.cgi?id=153641 Reviewed by Philippe Normand. .: * Source/cmake/FindGStreamer.cmake: Bump gst-gl version to 1.8.0 Source/WebCore: Relying on GstGLImageSink to use GStreamerGL brings a lot of overheads such as window handling, context switching and overlay handling which are not needed in our case. This patch replaces GstGLImageSink with a custom GstBin which has a GstGLUpload, GstGLColorConvert, and GstFakeSink. GstFakeSink sends decoded frames via handoff signal from the vqueue thread of GStreamer. Previously, GstGLImageSink passes frames through GStreamer's GL thread, which adds additional overhead. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: (WebCore::GstVideoFrameHolder::~GstVideoFrameHolder): Modified to unmap GstVideoFrame without async call. GstGLMemory will unmap itself in gl-thread. (WebCore::MediaPlayerPrivateGStreamerBase::drawCallback): (WebCore::MediaPlayerPrivateGStreamerBase::createVideoSinkGL): Split out creating of the gst-gl video sink into the separte method. (WebCore::MediaPlayerPrivateGStreamerBase::paint): Remove assertion for the threaded compositor. It can be called by focusing event. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h: Modified Paths trunk/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h trunk/Source/cmake/FindGStreamer.cmake Diff Modified: trunk/ChangeLog (201075 => 201076) --- trunk/ChangeLog 2016-05-18 14:21:37 UTC (rev 201075) +++ trunk/ChangeLog 2016-05-18 14:30:41 UTC (rev 201076) @@ -1,3 +1,12 @@ +2016-05-18 Gwang Yoon Hwang <y...@igalia.com> + +[GStreamer] Use FakeSink to get a decoded texture from a pipeline +https://bugs.webkit.org/show_bug.cgi?id=153641 + +Reviewed by Philippe Normand. + +* Source/cmake/FindGStreamer.cmake: Bump gst-gl version to 1.8.0 + 2016-05-17 Dean Jackson <d...@apple.com> Remove ES6_GENERATORS flag Modified: trunk/Source/WebCore/ChangeLog (201075 => 201076) --- trunk/Source/WebCore/ChangeLog 2016-05-18 14:21:37 UTC (rev 201075) +++ trunk/Source/WebCore/ChangeLog 2016-05-18 14:30:41 UTC (rev 201076) @@ -1,3 +1,32 @@ +2016-05-18 Gwang Yoon Hwang <y...@igalia.com> + +[GStreamer] Use FakeSink to get a decoded texture from a pipeline +https://bugs.webkit.org/show_bug.cgi?id=153641 + +Reviewed by Philippe Normand. + +Relying on GstGLImageSink to use GStreamerGL brings a lot of overheads such as +window handling, context switching and overlay handling which are not needed in +our case. + +This patch replaces GstGLImageSink with a custom GstBin which has a +GstGLUpload, GstGLColorConvert, and GstFakeSink. + +GstFakeSink sends decoded frames via handoff signal from the vqueue thread of +GStreamer. Previously, GstGLImageSink passes frames through GStreamer's GL +thread, which adds additional overhead. + +* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: +(WebCore::GstVideoFrameHolder::~GstVideoFrameHolder): Modified to +unmap GstVideoFrame without async call. GstGLMemory will unmap itself +in gl-thread. +(WebCore::MediaPlayerPrivateGStreamerBase::drawCallback): +(WebCore::MediaPlayerPrivateGStreamerBase::createVideoSinkGL): Split +out creating of the gst-gl video sink into the separte method. +(WebCore::MediaPlayerPrivateGStreamerBase::paint): Remove assertion +for the threaded compositor. It can be called by focusing event. +* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h: + 2016-05-18 Antti Koivisto <an...@apple.com> Resolve !important properties from different shadow trees in a single pass. Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp (201075 => 201076) --- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2016-05-18 14:21:37 UTC (rev 201075) +++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2016-05-18 14:30:41 UTC (rev 201076) @@ -115,13 +115,10 @@ m_flags = GST_VIDEO_INFO_HAS_ALPHA() ? TextureMapperGL::ShouldBlend : 0; GstBuffer* buffer = gst_sample_get_buffer(sample); -m_videoFrame = new GstVideoFrame(); -if (UNLIKELY(!gst_video_frame_map(m_videoFrame, , buffer, static_cast(GST_MAP_READ | GST_MAP_GL { -delete m_videoFrame; +if (UNLIKELY(!gst_video_frame_map(_videoFrame, , buffer, static_cast(GST_MAP_READ | G
[webkit-changes] [196803] trunk/Source
Title: [196803] trunk/Source Revision 196803 Author y...@igalia.com Date 2016-02-18 23:27:28 -0800 (Thu, 18 Feb 2016) Log Message [GTK] Limit the number of tiles according to the visible area https://bugs.webkit.org/show_bug.cgi?id=126122 Reviewed by Carlos Garcia Campos. Source/WebCore: TextureMapperTiledBackingStore creates tiles for whole layer bounds, which means it creates the huge amount of textures if there is an excessively big layer. Not only it wastes the memory and the CPU time, it even can crash GPU drivers. This patch modifies TextureMapperTiledBackingStore to take into account the visible area with a coverage multiplier when creating tiles. * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: (WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper): Set a flag to recalculate the visible area of the layer when there are geometric changes. (WebCore::GraphicsLayerTextureMapper::setContentsToImage): (WebCore::GraphicsLayerTextureMapper::flushCompositingStateForThisLayerOnly): (WebCore::GraphicsLayerTextureMapper::updateBackingStoreIncludingSubLayers): (WebCore::GraphicsLayerTextureMapper::updateBackingStoreIfNeeded): (WebCore::GraphicsLayerTextureMapper::markVisibleRectAsDirty): (WebCore::GraphicsLayerTextureMapper::selfOrAncestorHasActiveTransformAnimation): (WebCore::GraphicsLayerTextureMapper::computeTransformedVisibleRect): Compute the inverse transform matrix to map a global visible are to the local visible area. (WebCore::clampToContentsRectIfRectIsInfinite): (WebCore::GraphicsLayerTextureMapper::transformedVisibleRect): * platform/graphics/texmap/TextureMapperTiledBackingStore.cpp: (WebCore::TextureMapperTiledBackingStore::paintToTextureMapper): In HiDPI, the directly composited image is uploaded to the unscaled texture to reduce memory usages. So we should apply device scale factor to render it correctly. (WebCore::TextureMapperTiledBackingStore::createOrDestroyTilesIfNeeded): Create tiles which covered by visible rect with a coverage multiplier. Source/WebKit2: * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: (WebKit::LayerTreeHostGtk::initialize): Because we creates nonCompositingLayer with a size of current view, we should not apply the currently visible rect when creating / deleting tiles. (WebKit::LayerTreeHostGtk::flushPendingLayerChanges): Passes the current visible rect to the GraphicsLayers. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h trunk/Source/WebCore/platform/graphics/texmap/TextureMapperTiledBackingStore.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperTiledBackingStore.h trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (196802 => 196803) --- trunk/Source/WebCore/ChangeLog 2016-02-19 07:22:36 UTC (rev 196802) +++ trunk/Source/WebCore/ChangeLog 2016-02-19 07:27:28 UTC (rev 196803) @@ -1,3 +1,41 @@ +2016-02-18 Gwang Yoon Hwang <y...@igalia.com> + +[GTK] Limit the number of tiles according to the visible area +https://bugs.webkit.org/show_bug.cgi?id=126122 + +Reviewed by Carlos Garcia Campos. + +TextureMapperTiledBackingStore creates tiles for whole layer bounds, which +means it creates the huge amount of textures if there is an excessively big +layer. Not only it wastes the memory and the CPU time, it even can crash GPU +drivers. + +This patch modifies TextureMapperTiledBackingStore to take into account the +visible area with a coverage multiplier when creating tiles. + +* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: +(WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper): +Set a flag to recalculate the visible area of the layer when there are +geometric changes. +(WebCore::GraphicsLayerTextureMapper::setContentsToImage): +(WebCore::GraphicsLayerTextureMapper::flushCompositingStateForThisLayerOnly): +(WebCore::GraphicsLayerTextureMapper::updateBackingStoreIncludingSubLayers): +(WebCore::GraphicsLayerTextureMapper::updateBackingStoreIfNeeded): +(WebCore::GraphicsLayerTextureMapper::markVisibleRectAsDirty): +(WebCore::GraphicsLayerTextureMapper::selfOrAncestorHasActiveTransformAnimation): +(WebCore::GraphicsLayerTextureMapper::computeTransformedVisibleRect): +Compute the inverse transform matrix to map a global visible are to +the local visible area. +(WebCore::clampToContentsRectIfRectIsInfinite): +(WebCore::GraphicsLayerTextureMapper::transformedVisibleRect): +* platform/graphics/texmap/TextureMapperTiledBackingStore.cpp: +(WebCore::TextureMapperTiledBackingStore::paintToTextureMapper): +In HiDPI, the directly composited image is
[webkit-changes] [195736] trunk
Title: [195736] trunk Revision 195736 Author y...@igalia.com Date 2016-01-28 07:16:02 -0800 (Thu, 28 Jan 2016) Log Message [GStreamer] Clean up includes and headers related with GStreamerGL https://bugs.webkit.org/show_bug.cgi?id=153590 Reviewed by Philippe Normand. Source/WebCore: Remove gstglmemory from the including list and reorder includes to organize GSTREAMER_GL related headers. It violates style rules of the include order, but there is no clean way to include gst/gl/gl.h without violating it. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h: Tools: * Scripts/webkitpy/style/checker.py: Skips include_order check for MediaPlayerPrivateGStreamerBase.cpp Removes VideoSinkGStreamer1.cpp which doesn't exist anymore. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/style/checker.py Diff Modified: trunk/Source/WebCore/ChangeLog (195735 => 195736) --- trunk/Source/WebCore/ChangeLog 2016-01-28 09:06:30 UTC (rev 195735) +++ trunk/Source/WebCore/ChangeLog 2016-01-28 15:16:02 UTC (rev 195736) @@ -1,5 +1,20 @@ 2016-01-28 Gwang Yoon Hwang <y...@igalia.com> +[GStreamer] Clean up includes and headers related with GStreamerGL +https://bugs.webkit.org/show_bug.cgi?id=153590 + +Reviewed by Philippe Normand. + +Remove gstglmemory from the including list and reorder includes to +organize GSTREAMER_GL related headers. It violates style rules of the +include order, but there is no clean way to include gst/gl/gl.h +without violating it. + +* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: +* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h: + +2016-01-28 Gwang Yoon Hwang <y...@igalia.com> + [GStreamer] MediaPlayerPrivateGStreamerBase::handleSyncMessage leaks GstContext https://bugs.webkit.org/show_bug.cgi?id=153580 Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp (195735 => 195736) --- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2016-01-28 09:06:30 UTC (rev 195735) +++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2016-01-28 15:16:02 UTC (rev 195736) @@ -46,26 +46,10 @@ #if USE(GSTREAMER_GL) #define GST_USE_UNSTABLE_API -#include -#undef GST_USE_UNSTABLE_API -#endif - -#if GST_CHECK_VERSION(1, 1, 0) && USE(TEXTURE_MAPPER_GL) -#include "BitmapTextureGL.h" -#include "BitmapTexturePool.h" -#include "TextureMapperGL.h" -#endif -#if USE(COORDINATED_GRAPHICS_THREADED) -#include "TextureMapperPlatformLayerBuffer.h" -#endif - -#if USE(GSTREAMER_GL) -#include "GLContext.h" - -#define GST_USE_UNSTABLE_API #include #undef GST_USE_UNSTABLE_API +#include "GLContext.h" #if USE(GLX) #include "GLContextGLX.h" #include @@ -84,9 +68,18 @@ // defines None, breaking MediaPlayer::None enum #if PLATFORM(X11) && GST_GL_HAVE_PLATFORM_EGL #undef None -#endif +#endif // PLATFORM(X11) && GST_GL_HAVE_PLATFORM_EGL #endif // USE(GSTREAMER_GL) +#if GST_CHECK_VERSION(1, 1, 0) && USE(TEXTURE_MAPPER_GL) +#include "BitmapTextureGL.h" +#include "BitmapTexturePool.h" +#include "TextureMapperGL.h" +#endif +#if USE(COORDINATED_GRAPHICS_THREADED) +#include "TextureMapperPlatformLayerBuffer.h" +#endif + #if USE(CAIRO) && ENABLE(ACCELERATED_2D_CANVAS) #include #endif @@ -166,7 +159,7 @@ GLuint m_textureID; bool m_isValid { false }; }; -#endif +#endif // USE(COORDINATED_GRAPHICS_THREADED) && USE(GSTREAMER_GL) MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase(MediaPlayer* player) : m_player(player) Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h (195735 => 195736) --- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h 2016-01-28 09:06:30 UTC (rev 195735) +++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h 2016-01-28 15:16:02 UTC (rev 195736) @@ -119,7 +119,7 @@ #endif #if USE(GSTREAMER_GL) -virtual PassNativeImagePtr nativeImageForCurrentTime(); +virtual PassNativeImagePtr nativeImageForCurrentTime() override; #endif protected: Modified: trunk/Tools/ChangeLog (195735 => 195736) --- trunk/Tools/ChangeLog 2016-01-28 09:06:30 UTC (rev 195735) +++ trunk/Tools/ChangeLog 2016-01-28 15:16:02 UTC (rev 195736) @@ -1,3 +1,14 @@ +2016-01-28 Gwang Yoon Hwang <y...@igalia.com> + +[GStreamer] Clean up includes
[webkit-changes] [195735] trunk/Source/WebCore
Title: [195735] trunk/Source/WebCore Revision 195735 Author y...@igalia.com Date 2016-01-28 01:06:30 -0800 (Thu, 28 Jan 2016) Log Message [GStreamer] MediaPlayerPrivateGStreamerBase::handleSyncMessage leaks GstContext https://bugs.webkit.org/show_bug.cgi?id=153580 Reviewed by Philippe Normand. When we creates GstContext using gst_context_new it increases refcount itself. And the refcount of GstContext is increased when it is passed to gst_element_set_context, also. Therefore We should unref GstContext after using it to prevent GstContext leaks. * platform/graphics/gstreamer/GRefPtrGStreamer.cpp: (WTF::adoptGRef): Added for GstContext. (WTF::refGPtr): Ditto (WTF::derefGPtr): Ditto * platform/graphics/gstreamer/GRefPtrGStreamer.h: * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: (WebCore::MediaPlayerPrivateGStreamerBase::handleSyncMessage): Use GRefPtr to handle currect refcounting Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.cpp trunk/Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.h trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (195734 => 195735) --- trunk/Source/WebCore/ChangeLog 2016-01-28 08:52:44 UTC (rev 195734) +++ trunk/Source/WebCore/ChangeLog 2016-01-28 09:06:30 UTC (rev 195735) @@ -1,3 +1,24 @@ +2016-01-28 Gwang Yoon Hwang <y...@igalia.com> + +[GStreamer] MediaPlayerPrivateGStreamerBase::handleSyncMessage leaks GstContext +https://bugs.webkit.org/show_bug.cgi?id=153580 + +Reviewed by Philippe Normand. + +When we creates GstContext using gst_context_new it increases refcount itself. +And the refcount of GstContext is increased when it is passed to +gst_element_set_context, also. Therefore We should unref GstContext after +using it to prevent GstContext leaks. + +* platform/graphics/gstreamer/GRefPtrGStreamer.cpp: +(WTF::adoptGRef): Added for GstContext. +(WTF::refGPtr): Ditto +(WTF::derefGPtr): Ditto +* platform/graphics/gstreamer/GRefPtrGStreamer.h: +* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: +(WebCore::MediaPlayerPrivateGStreamerBase::handleSyncMessage): +Use GRefPtr to handle currect refcounting + 2016-01-27 Alex Christensen <achristen...@webkit.org> Fix clean CMake build after r195711. Modified: trunk/Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.cpp (195734 => 195735) --- trunk/Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.cpp 2016-01-28 08:52:44 UTC (rev 195734) +++ trunk/Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.cpp 2016-01-28 09:06:30 UTC (rev 195735) @@ -103,7 +103,25 @@ gst_caps_unref(ptr); } +template <> GRefPtr adoptGRef(GstContext* ptr) +{ +ASSERT(!g_object_is_floating(G_OBJECT(ptr))); +return GRefPtr(ptr, GRefPtrAdopt); +} +template <> GstContext* refGPtr(GstContext* ptr) +{ +if (ptr) +gst_context_ref(ptr); +return ptr; +} + +template <> void derefGPtr(GstContext* ptr) +{ +if (ptr) +gst_context_unref(ptr); +} + template <> GRefPtr adoptGRef(GstTask* ptr) { ASSERT(!g_object_is_floating(G_OBJECT(ptr))); Modified: trunk/Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.h (195734 => 195735) --- trunk/Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.h 2016-01-28 08:52:44 UTC (rev 195734) +++ trunk/Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.h 2016-01-28 09:06:30 UTC (rev 195735) @@ -27,6 +27,7 @@ typedef struct _GstPad GstPad; typedef struct _GstPadTemplate GstPadTemplate; typedef struct _GstCaps GstCaps; +typedef struct _GstContext GstContext; typedef struct _GstTask GstTask; typedef struct _GstBus GstBus; typedef struct _GstElementFactory GstElementFactory; @@ -58,6 +59,10 @@ template<> GstCaps* refGPtr(GstCaps* ptr); template<> void derefGPtr(GstCaps* ptr); +template<> GRefPtr adoptGRef(GstContext* ptr); +template<> GstContext* refGPtr(GstContext* ptr); +template<> void derefGPtr(GstContext* ptr); + template<> GRefPtr adoptGRef(GstTask* ptr); template<> GstTask* refGPtr(GstTask* ptr); template<> void derefGPtr(GstTask* ptr); Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp (195734 => 195735) --- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2016-01-28 08:52:44 UTC (rev 195734) +++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2016-01-28 09:06:30 UTC (rev 195735) @@ -220,17 +220,17 @@ return false; if (!g_strcmp0(contextType, GST_GL_DISPLAY_CONTEXT_TYPE)) { -GstContext* displayContext = gst_context_new(GST_GL_
[webkit-changes] [193836] trunk/Source/WebCore
Title: [193836] trunk/Source/WebCore Revision 193836 Author y...@igalia.com Date 2015-12-09 09:37:29 -0800 (Wed, 09 Dec 2015) Log Message [ThreadedCompositor] Support HTML5 Video https://bugs.webkit.org/show_bug.cgi?id=143301 Reviewed by Žan Doberšek. This patch implements HTML5 Video supports in Threaded Compositor. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: (WebCore::GstVideoFrameHolder::GstVideoFrameHolder): Added to support GStreamer GL by ensuring unmapping of the swapped GstVideoFrame performed at GStreamer GL's gl thread. (WebCore::MediaPlayerPrivateGStreamerBase::updateTexture): Modified to upload decoded frame to the given texture instead of creating a texture itself because we should use a texture from the proxy when we are using the threaded compositor. (WebCore::MediaPlayerPrivateGStreamerBase::pushTextureToCompositor): Implements two ways to send a texture from GStreamer to the compositor. 1. If we are not using GStreamer GL, we are going to acquire a free texture from a TextureMapperPlatformLayerProxy and upload the decoded frame to the texture. This should be done at the compositing thread because we don't have a Gst's GL thread. 2. If we are using GStreamer GL, we map a texture for the given frame and passes it to the compositing thread. The mapped frame will be freed if it is swapped out or the layer is removed. (WebCore::MediaPlayerPrivateGStreamerBase::paintToTextureMapper): Modified to aquire a new texture itself. * platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp: Adds a way to pass a function to the compositing thread to allocate / upload textures at the compositing thread. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxy.h Diff Modified: trunk/Source/WebCore/ChangeLog (193835 => 193836) --- trunk/Source/WebCore/ChangeLog 2015-12-09 17:34:04 UTC (rev 193835) +++ trunk/Source/WebCore/ChangeLog 2015-12-09 17:37:29 UTC (rev 193836) @@ -1,3 +1,38 @@ +2015-12-09 Gwang Yoon Hwang <y...@igalia.com> + +[ThreadedCompositor] Support HTML5 Video +https://bugs.webkit.org/show_bug.cgi?id=143301 + +Reviewed by Žan Doberšek. + +This patch implements HTML5 Video supports in Threaded Compositor. + +* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: +(WebCore::GstVideoFrameHolder::GstVideoFrameHolder): +Added to support GStreamer GL by ensuring unmapping of the swapped +GstVideoFrame performed at GStreamer GL's gl thread. +(WebCore::MediaPlayerPrivateGStreamerBase::updateTexture): +Modified to upload decoded frame to the given texture instead of +creating a texture itself because we should use a texture from the +proxy when we are using the threaded compositor. +(WebCore::MediaPlayerPrivateGStreamerBase::pushTextureToCompositor): +Implements two ways to send a texture from GStreamer to the compositor. +1. If we are not using GStreamer GL, we are going to acquire a free texture +from a TextureMapperPlatformLayerProxy and upload the decoded frame to the +texture. This should be done at the compositing thread because we +don't have a Gst's GL thread. +2. If we are using GStreamer GL, we map a texture for the given frame +and passes it to the compositing thread. The mapped frame will be +freed if it is swapped out or the layer is removed. + +(WebCore::MediaPlayerPrivateGStreamerBase::paintToTextureMapper): +Modified to aquire a new texture itself. + +* platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp: +Adds a way to pass a function to the compositing thread to allocate / +upload textures at the compositing thread. + + 2015-12-09 Xabier Rodriguez Calvar <calva...@igalia.com> [Streams API] pipeThrough test failing Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp (193835 => 193836) --- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2015-12-09 17:34:04 UTC (rev 193835) +++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2015-12-09 17:37:29 UTC (rev 193836) @@ -55,6 +55,9 @@ #include "BitmapTexturePool.h" #include "TextureMapperGL.h" #endif +#if USE(COORDINATED_GRAPHICS_THREADED) +#include "TextureMapperPlatformLayerBuffer.h" +#endif #if USE(GSTREAMER_GL) #include "GLContext.h" @@ -102,6 +105,67 @@ return ABS(a); } +#if USE(COORDINATED_GRAPHICS_THREADED) && USE(GSTREAMER_GL) +c
[webkit-changes] [193844] trunk/Source/WebKit2
Title: [193844] trunk/Source/WebKit2 Revision 193844 Author y...@igalia.com Date 2015-12-09 10:52:16 -0800 (Wed, 09 Dec 2015) Log Message [ThreadedCompositor] Add support for HiDPI https://bugs.webkit.org/show_bug.cgi?id=152071 Reviewed by Carlos Garcia Campos. * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: (WebKit::ThreadedCompositor::setDeviceScaleFactor): Added to receive the device scale factor from the layer tree host. (WebKit::ThreadedCompositor::renderLayerTree): Apply device scale factor before rendering the page. * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h: * WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp: (WebKit::ThreadedCoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged): Send a updated device scale factor to the compositing thread. Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp Diff Modified: trunk/Source/WebKit2/ChangeLog (193843 => 193844) --- trunk/Source/WebKit2/ChangeLog 2015-12-09 18:32:22 UTC (rev 193843) +++ trunk/Source/WebKit2/ChangeLog 2015-12-09 18:52:16 UTC (rev 193844) @@ -1,3 +1,20 @@ +2015-12-09 Gwang Yoon Hwang <y...@igalia.com> + +[ThreadedCompositor] Add support for HiDPI +https://bugs.webkit.org/show_bug.cgi?id=152071 + +Reviewed by Carlos Garcia Campos. + +* Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: +(WebKit::ThreadedCompositor::setDeviceScaleFactor): Added to receive the +device scale factor from the layer tree host. +(WebKit::ThreadedCompositor::renderLayerTree): +Apply device scale factor before rendering the page. +* Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h: +* WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp: +(WebKit::ThreadedCoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged): +Send a updated device scale factor to the compositing thread. + 2015-12-09 Ryuan Choi <ryuan.c...@navercorp.com> [CoordinatedGraphics] Remove unnecessary guards in CoordinatedDrawingArea Modified: trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp (193843 => 193844) --- trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp 2015-12-09 18:32:22 UTC (rev 193843) +++ trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp 2015-12-09 18:52:16 UTC (rev 193844) @@ -116,6 +116,7 @@ ThreadedCompositor::ThreadedCompositor(Client* client) : m_client(client) +, m_deviceScaleFactor(1) , m_threadIdentifier(0) { createCompositingThread(); @@ -143,6 +144,14 @@ }); } +void ThreadedCompositor::setDeviceScaleFactor(float scale) +{ +RefPtr protector(this); +callOnCompositingThread([=] { +protector->m_deviceScaleFactor = scale; +protector->scheduleDisplayImmediately(); +}); +} void ThreadedCompositor::didChangeViewportSize(const IntSize& newSize) { @@ -262,7 +271,7 @@ TransformationMatrix viewportTransform; FloatPoint scrollPostion = viewportController()->visibleContentsRect().location(); -viewportTransform.scale(viewportController()->pageScaleFactor()); +viewportTransform.scale(viewportController()->pageScaleFactor() * m_deviceScaleFactor); viewportTransform.translate(-scrollPostion.x(), -scrollPostion.y()); m_scene->paintToCurrentGLContext(viewportTransform, 1, clipRect, Color::white, false, scrollPostion); Modified: trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h (193843 => 193844) --- trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h 2015-12-09 18:32:22 UTC (rev 193843) +++ trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h 2015-12-09 18:52:16 UTC (rev 193844) @@ -67,6 +67,7 @@ void setNeedsDisplay(); void setNativeSurfaceHandleForCompositing(uint64_t); +void setDeviceScaleFactor(float); void updateSceneState(const WebCore::CoordinatedGraphicsState&); @@ -106,6 +107,7 @@ std::unique_ptr m_context; WebCore::IntSize m_viewportSize; +float m_deviceScaleFactor; uint64_t m_nativeSurfaceHandle; std::unique_ptr m_compositingRunLoop; Modified: trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp (193843 => 193844) --- trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp 2015-12-09 18:32:22 UTC (rev 193843) +++ trunk/Sou
[webkit-changes] [193723] trunk/Source/WebCore
Title: [193723] trunk/Source/WebCore Revision 193723 Author y...@igalia.com Date 2015-12-08 00:36:02 -0800 (Tue, 08 Dec 2015) Log Message [ThreadedCompositor] Support WebGL for OpenGL. https://bugs.webkit.org/show_bug.cgi?id=143300 Reviewed by Žan Doberšek. To remove pixel transfer operation, this patch adds m_compositorFBO which uses same depth and stencil buffer with m_fbo but uses m_compositorTexture as a color attachment in GraphicsContext3D. Because switching target framebuffer is cheaper than pixel transfer operation and switching color attachment of m_fbo. In Threaded Compositor, when WebGL renders a scene, prepareTexture swaps m_fbo with m_compositorFBO and send the color attachment to the compositor thread. This patch only supports WebGL for OpenGL. OpenGLES will be covered in following-up patches. No new tests needed. * platform/graphics/GraphicsContext3D.h: * platform/graphics/GraphicsContext3DPrivate.cpp: (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate): (WebCore::GraphicsContext3DPrivate::proxy): (WebCore::GraphicsContext3DPrivate::swapBuffersIfNeeded): Implement interfaces to pass a rendered texture to the compositing thread. * platform/graphics/GraphicsContext3DPrivate.h: * platform/graphics/cairo/GraphicsContext3DCairo.cpp: (WebCore::GraphicsContext3D::GraphicsContext3D): (WebCore::GraphicsContext3D::~GraphicsContext3D): Create additional compositing texture and FBO to swaping buffers for threaded compositor. * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: (WebCore::GraphicsContext3D::reshapeFBOs): (WebCore::GraphicsContext3D::attachDepthAndStencilBufferIfNeeded): Split attaching depth and stencil buffer codes from reshapeFBOs to make complete framebuffer with not only m_fbo but m_compositorFBO also. * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp: (WebCore::GraphicsContext3D::prepareTexture): If we are in the threaded compositor, we will swap m_fbo with m_compositorFBO instead of copying it. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/GraphicsContext3D.h trunk/Source/WebCore/platform/graphics/GraphicsContext3DPrivate.cpp trunk/Source/WebCore/platform/graphics/GraphicsContext3DPrivate.h trunk/Source/WebCore/platform/graphics/cairo/GraphicsContext3DCairo.cpp trunk/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp trunk/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (193722 => 193723) --- trunk/Source/WebCore/ChangeLog 2015-12-08 08:35:25 UTC (rev 193722) +++ trunk/Source/WebCore/ChangeLog 2015-12-08 08:36:02 UTC (rev 193723) @@ -1,3 +1,42 @@ +2015-12-08 Gwang Yoon Hwang <y...@igalia.com> + +[ThreadedCompositor] Support WebGL for OpenGL. +https://bugs.webkit.org/show_bug.cgi?id=143300 + +Reviewed by Žan Doberšek. + +To remove pixel transfer operation, this patch adds m_compositorFBO which uses same depth and stencil +buffer with m_fbo but uses m_compositorTexture as a color attachment in GraphicsContext3D. +Because switching target framebuffer is cheaper than pixel transfer operation and switching color +attachment of m_fbo. In Threaded Compositor, when WebGL renders a scene, prepareTexture swaps +m_fbo with m_compositorFBO and send the color attachment to the compositor thread. +This patch only supports WebGL for OpenGL. OpenGLES will be covered in following-up patches. + +No new tests needed. + +* platform/graphics/GraphicsContext3D.h: +* platform/graphics/GraphicsContext3DPrivate.cpp: +(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate): +(WebCore::GraphicsContext3DPrivate::proxy): +(WebCore::GraphicsContext3DPrivate::swapBuffersIfNeeded): +Implement interfaces to pass a rendered texture to the compositing +thread. +* platform/graphics/GraphicsContext3DPrivate.h: +* platform/graphics/cairo/GraphicsContext3DCairo.cpp: +(WebCore::GraphicsContext3D::GraphicsContext3D): +(WebCore::GraphicsContext3D::~GraphicsContext3D): +Create additional compositing texture and FBO to swaping buffers for +threaded compositor. +* platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: +(WebCore::GraphicsContext3D::reshapeFBOs): +(WebCore::GraphicsContext3D::attachDepthAndStencilBufferIfNeeded): +Split attaching depth and stencil buffer codes from reshapeFBOs +to make complete framebuffer with not only m_fbo but m_compositorFBO also. +* platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp: +(WebCore::GraphicsContext3D::prepareTexture): +If we are in the threaded compositor, we will swap m_fbo with +m_compositorFBO instead of copying it. + 2015-12-07 Zalan Bu
[webkit-changes] [193748] trunk/Source/WebCore
Title: [193748] trunk/Source/WebCore Revision 193748 Author y...@igalia.com Date 2015-12-08 06:20:28 -0800 (Tue, 08 Dec 2015) Log Message [ThreadedCompositor] Add support for Cairo GL-backed ImageBuffer. https://bugs.webkit.org/show_bug.cgi?id=151986 Reviewed by Žan Doberšek. This patch adds a support for accelerated 2d canvas which uses cairo-gl as its backend to the threaded compositor. Basically, it applies same way to support WebGL for the threaded compositor. Unfortunately, we cannot swap the buffer for the accelerated 2d canvas because it should preserve the buffer of the previous frame when drawing new contents. Because of that, the surface of the accelerated 2d canvas will be copied for each frame. * platform/graphics/cairo/ImageBufferCairo.cpp: (WebCore::ImageBufferData::ImageBufferData): (WebCore::ImageBufferData::createCompositorBuffer): Prepare a texture surface to push the rendered result to the compositing thread. (WebCore::ImageBufferData::swapBuffersIfNeeded): Copies the contents of the canvas's surface to the compositing texture. (WebCore::ImageBufferData::createCairoGLSurface): Moved to the inside of ImageBufferData. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/cairo/ImageBufferCairo.cpp trunk/Source/WebCore/platform/graphics/cairo/ImageBufferDataCairo.h Diff Modified: trunk/Source/WebCore/ChangeLog (193747 => 193748) --- trunk/Source/WebCore/ChangeLog 2015-12-08 11:18:12 UTC (rev 193747) +++ trunk/Source/WebCore/ChangeLog 2015-12-08 14:20:28 UTC (rev 193748) @@ -1,3 +1,28 @@ +2015-12-08 Gwang Yoon Hwang <y...@igalia.com> + +[ThreadedCompositor] Add support for Cairo GL-backed ImageBuffer. +https://bugs.webkit.org/show_bug.cgi?id=151986 + +Reviewed by Žan Doberšek. + +This patch adds a support for accelerated 2d canvas which uses cairo-gl as its +backend to the threaded compositor. Basically, it applies same way to support +WebGL for the threaded compositor. + +Unfortunately, we cannot swap the buffer for the accelerated 2d canvas because +it should preserve the buffer of the previous frame when drawing new contents. +Because of that, the surface of the accelerated 2d canvas will be copied for +each frame. + +* platform/graphics/cairo/ImageBufferCairo.cpp: +(WebCore::ImageBufferData::ImageBufferData): +(WebCore::ImageBufferData::createCompositorBuffer): Prepare a texture +surface to push the rendered result to the compositing thread. +(WebCore::ImageBufferData::swapBuffersIfNeeded): Copies the contents +of the canvas's surface to the compositing texture. +(WebCore::ImageBufferData::createCairoGLSurface): Moved to the inside +of ImageBufferData. + 2015-12-08 Joanmarie Diggs <jdi...@igalia.com> [GTK] 15 accessibility tests fail since r186692. Modified: trunk/Source/WebCore/platform/graphics/cairo/ImageBufferCairo.cpp (193747 => 193748) --- trunk/Source/WebCore/platform/graphics/cairo/ImageBufferCairo.cpp 2015-12-08 11:18:12 UTC (rev 193747) +++ trunk/Source/WebCore/platform/graphics/cairo/ImageBufferCairo.cpp 2015-12-08 14:20:28 UTC (rev 193748) @@ -53,6 +53,7 @@ #include "TextureMapperGL.h" #include #if USE(COORDINATED_GRAPHICS_THREADED) +#include "TextureMapperPlatformLayerBuffer.h" #include "TextureMapperPlatformLayerProxy.h" #endif #endif @@ -65,12 +66,58 @@ : m_platformContext(0) , m_size(size) #if ENABLE(ACCELERATED_2D_CANVAS) +#if USE(COORDINATED_GRAPHICS_THREADED) +, m_platformLayerProxy(adoptRef(new TextureMapperPlatformLayerProxy)) +, m_compositorTexture(0) +#endif , m_texture(0) #endif { } #if ENABLE(ACCELERATED_2D_CANVAS) +#if USE(COORDINATED_GRAPHICS_THREADED) +void ImageBufferData::createCompositorBuffer() +{ +GLContext::sharingContext()->makeContextCurrent(); + +glGenTextures(1, _compositorTexture); +glBindTexture(GL_TEXTURE_2D, m_compositorTexture); +glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); +glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); +glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); +glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); +glPixelStorei(GL_UNPACK_ALIGNMENT, 1); +glTexImage2D(GL_TEXTURE_2D, 0 , GL_RGBA, m_size.width(), m_size.height(), 0, GL_RGBA, GL_UNSIGNED_BYTE, 0); + +cairo_device_t* device = GLContext::sharingContext()->cairoDevice(); +m_compositorSurface = adoptRef(cairo_gl_surface_create_for_texture(device, CAIRO_CONTENT_COLOR_ALPHA, m_compositorTexture, m_size.width(), m_size.height())); +m_compositorCr = adoptRef(cairo_create(m_compositorSurface.get())); +cairo_set_antialias(m_compositorCr.get(), CAIRO_ANTIALIAS_NONE); +} + +void ImageBufferData::swapBuffersIfNeeded() +{ +GL
[webkit-changes] [193630] trunk/Source
/TextureMapperPlatformLayerProxy.h Diff Modified: trunk/Source/WebCore/ChangeLog (193629 => 193630) --- trunk/Source/WebCore/ChangeLog 2015-12-07 17:12:18 UTC (rev 193629) +++ trunk/Source/WebCore/ChangeLog 2015-12-07 17:15:56 UTC (rev 193630) @@ -1,5 +1,62 @@ 2015-12-07 Gwang Yoon Hwang <y...@igalia.com> +[ThreadedCompositor] Add support for PlatformLayer. +https://bugs.webkit.org/show_bug.cgi?id=143299 + +Reviewed by Žan Doberšek. + +This patch implements TextureMapperPlatformLayerProxy and TextureMapperPlatformLayerBuffer to +send a texture (actual texture or BitmapTexture) to the compositing thread directly. +Platform layer renderers should implement TextureMapperPlatformLayerProxyProvider to establish +a connection to the compositing thread. After the connection has been established, the renderer +can render its contents to the TextureMapperPlatformLayerBuffer and pass it to the compositing thread +via TextureMapperPlatformLayer proxy. +The buffer can be an unmanaged texture (a.k.a. platform texture) or BitmapTexture. +For the unmanaged texture, the renderer should manage its life cycle itself. For the BitmapTexture, +it will be managed by TextureMapperPlatformLayerProxy. In that case, used (swapped) buffer will be +recycled because the renderer will use same size and format until it changes its size. + +No new tests needed. + +* PlatformGTK.cmake: +Adds TextureMapperPlatformLayerBuffer and TextureMapperPlaytformLayerProxy. + +* platform/graphics/GraphicsContext3DPrivate.cpp: +* platform/graphics/GraphicsContext3DPrivate.h: +* platform/graphics/cairo/ImageBufferCairo.cpp: +* platform/graphics/cairo/ImageBufferDataCairo.h: +Adds mock implementation. + +* platform/graphics/PlatformLayer.h: +Adds TextureMapperPlatformLayerProxyProvider as a PlatformLayer for the Threaded Compositor + +* platform/graphics/texmap/BitmapTextureGL.h: +(WebCore::BitmapTextureGL::internalFormat): Adds a getter to check the +internal format of texture to check reusability. + +* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: +* platform/graphics/texmap/GraphicsLayerTextureMapper.h: +* platform/graphics/texmap/TextureMapperLayer.cpp: +* platform/graphics/texmap/TextureMapperLayer.h: +Exclude GraphicsLayerTextureMapper from build when we are using Coordinated Graphics. + +* platform/graphics/texmap/TextureMapperPlatformLayerBuffer.cpp: Added. +* platform/graphics/texmap/TextureMapperPlatformLayerBuffer.h: Added. +* platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp: Added. +* platform/graphics/texmap/TextureMapperPlatformLayerProxy.h: Added. + +* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp: +(WebCore::GraphicsLayer::create): +Because we removed GraphicsLayerTextureMapper from build, we need to add own factory function. + +(WebCore::CoordinatedGraphicsLayer::setContentsToPlatformLayer): +(WebCore::CoordinatedGraphicsLayer::syncPlatformLayer): +(WebCore::CoordinatedGraphicsLayer::platformLayerWillBeDestroyed): +(WebCore::CoordinatedGraphicsLayer::setPlatformLayerNeedsDisplay): +Implements sync operations for TextureMapperPlatformLayerProxy + +2015-12-07 Gwang Yoon Hwang <y...@igalia.com> + Fix GTK+ build with GStreamer GL https://bugs.webkit.org/show_bug.cgi?id=151939 Modified: trunk/Source/WebCore/PlatformGTK.cmake (193629 => 193630) --- trunk/Source/WebCore/PlatformGTK.cmake 2015-12-07 17:12:18 UTC (rev 193629) +++ trunk/Source/WebCore/PlatformGTK.cmake 2015-12-07 17:15:56 UTC (rev 193630) @@ -442,6 +442,8 @@ page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp page/scrolling/coordinatedgraphics/ScrollingStateNodeCoordinatedGraphics.cpp +platform/graphics/texmap/TextureMapperPlatformLayerBuffer.cpp +platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp platform/graphics/texmap/coordinated/AreaAllocator.cpp platform/graphics/texmap/coordinated/CompositingCoordinator.cpp platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp Modified: trunk/Source/WebCore/platform/graphics/GraphicsContext3DPrivate.cpp (193629 => 193630) --- trunk/Source/WebCore/platform/graphics/GraphicsContext3DPrivate.cpp 2015-12-07 17:12:18 UTC (rev 193629) +++ trunk/Source/WebCore/platform/graphics/GraphicsContext3DPrivate.cpp 2015-12-07 17:15:56 UTC (rev 193630) @@ -63,7 +63,7 @@ GraphicsContext3DPrivate::~GraphicsContext3DPrivate() { -#if USE(TEXTURE_MAPPER) +#if USE(TEXTURE_MAPPER) && !USE(COORDINATED_GRAPHICS_THREADED) if (client()) client()->platformLayerWillBeDestroyed(); #endi
[webkit-changes] [193621] trunk/Source/WebCore
Title: [193621] trunk/Source/WebCore Revision 193621 Author y...@igalia.com Date 2015-12-07 04:02:11 -0800 (Mon, 07 Dec 2015) Log Message Fix GTK+ build with GStreamer GL https://bugs.webkit.org/show_bug.cgi?id=151939 Reviewed by Žan Doberšek. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: (WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase): (WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint): (WebCore::MediaPlayerPrivateGStreamerBase::drawCallback): * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h Diff Modified: trunk/Source/WebCore/ChangeLog (193620 => 193621) --- trunk/Source/WebCore/ChangeLog 2015-12-07 11:56:25 UTC (rev 193620) +++ trunk/Source/WebCore/ChangeLog 2015-12-07 12:02:11 UTC (rev 193621) @@ -1,3 +1,16 @@ +2015-12-07 Gwang Yoon Hwang <y...@igalia.com> + +Fix GTK+ build with GStreamer GL +https://bugs.webkit.org/show_bug.cgi?id=151939 + +Reviewed by Žan Doberšek. + +* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: +(WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase): +(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint): +(WebCore::MediaPlayerPrivateGStreamerBase::drawCallback): +* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h: + 2015-12-06 Simon Fraser <simon.fra...@apple.com> Show more information about SVG renderers in showLayerTree() output Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp (193620 => 193621) --- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2015-12-07 11:56:25 UTC (rev 193620) +++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2015-12-07 12:02:11 UTC (rev 193621) @@ -108,7 +108,7 @@ , m_readyState(MediaPlayer::HaveNothing) , m_networkState(MediaPlayer::Empty) #if USE(GSTREAMER_GL) -, m_drawTimer(RunLoop::main(), this, ::repaint()) +, m_drawTimer(RunLoop::main(), this, ::repaint) #endif , m_usingFallbackVideoSink(false) { @@ -444,7 +444,7 @@ LockHolder locker(m_drawMutex); m_drawTimer.startOneShot(0); -m_drawCondition.wait(); +m_drawCondition.wait(m_drawMutex); } #else repaint(); @@ -457,7 +457,7 @@ } #if USE(GSTREAMER_GL) -gboolean MediaPlayerPrivateGStreamerBase::drawCallback(MediaPlayerPrivateGStreamerBase* player, GstContext*, GstSample* sample) +gboolean MediaPlayerPrivateGStreamerBase::drawCallback(MediaPlayerPrivateGStreamerBase* player, GstGLContext*, GstSample* sample) { player->triggerRepaint(sample); return TRUE; Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h (193620 => 193621) --- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h 2015-12-07 11:56:25 UTC (rev 193620) +++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h 2015-12-07 12:02:11 UTC (rev 193621) @@ -122,7 +122,7 @@ static void repaintCallback(MediaPlayerPrivateGStreamerBase*, GstSample*); #if USE(GSTREAMER_GL) -static gboolean drawCallback(MediaPlayerPrivateGStreamerBase*, GstContext*, GstSample*); +static gboolean drawCallback(MediaPlayerPrivateGStreamerBase*, GstGLContext*, GstSample*); #endif void notifyPlayerOfVolumeChange(); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [193651] trunk/Source/WebCore
Title: [193651] trunk/Source/WebCore Revision 193651 Author y...@igalia.com Date 2015-12-07 14:23:19 -0800 (Mon, 07 Dec 2015) Log Message [GTK] Clean up virtual functions in MediaPlayerPrivateGStreamerBase https://bugs.webkit.org/show_bug.cgi?id=151940 Reviewed by Carlos Garcia Campos. - Using 'override' when appropriate - Explicitly marking methods as virtual when they are inherently virtual * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h Diff Modified: trunk/Source/WebCore/ChangeLog (193650 => 193651) --- trunk/Source/WebCore/ChangeLog 2015-12-07 22:14:25 UTC (rev 193650) +++ trunk/Source/WebCore/ChangeLog 2015-12-07 22:23:19 UTC (rev 193651) @@ -1,3 +1,15 @@ +2015-12-07 Gwang Yoon Hwang <y...@igalia.com> + +[GTK] Clean up virtual functions in MediaPlayerPrivateGStreamerBase +https://bugs.webkit.org/show_bug.cgi?id=151940 + +Reviewed by Carlos Garcia Campos. + +- Using 'override' when appropriate +- Explicitly marking methods as virtual when they are inherently virtual + +* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h: + 2015-12-07 Saam barati <sbar...@apple.com> Add op_watchdog opcode that is generated when VM has a watchdog Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h (193650 => 193651) --- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h 2015-12-07 22:14:25 UTC (rev 193650) +++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h 2015-12-07 22:23:19 UTC (rev 193651) @@ -56,53 +56,53 @@ public: virtual ~MediaPlayerPrivateGStreamerBase(); -FloatSize naturalSize() const; +virtual FloatSize naturalSize() const override; -void setVolume(float); -float volume() const; +virtual void setVolume(float) override; +virtual float volume() const; #if USE(GSTREAMER_GL) bool ensureGstGLContext(); #endif -bool supportsMuting() const { return true; } -void setMuted(bool); +virtual bool supportsMuting() const override { return true; } +virtual void setMuted(bool) override; bool muted() const; -MediaPlayer::NetworkState networkState() const; -MediaPlayer::ReadyState readyState() const; +virtual MediaPlayer::NetworkState networkState() const override; +virtual MediaPlayer::ReadyState readyState() const override; -void setVisible(bool) { } -void setSize(const IntSize&); +virtual void setVisible(bool) override { } +virtual void setSize(const IntSize&) override; void sizeChanged(); -void paint(GraphicsContext&, const FloatRect&); +virtual void paint(GraphicsContext&, const FloatRect&) override; -virtual bool hasSingleSecurityOrigin() const { return true; } +virtual bool hasSingleSecurityOrigin() const override { return true; } virtual float maxTimeLoaded() const { return 0.0; } -bool supportsFullscreen() const; -PlatformMedia platformMedia() const; +virtual bool supportsFullscreen() const override; +virtual PlatformMedia platformMedia() const override; -MediaPlayer::MovieLoadType movieLoadType() const; +virtual MediaPlayer::MovieLoadType movieLoadType() const override; virtual bool isLiveStream() const = 0; MediaPlayer* mediaPlayer() const { return m_player; } -unsigned decodedFrameCount() const; -unsigned droppedFrameCount() const; -unsigned audioDecodedByteCount() const; -unsigned videoDecodedByteCount() const; +virtual unsigned decodedFrameCount() const override; +virtual unsigned droppedFrameCount() const override; +virtual unsigned audioDecodedByteCount() const override; +virtual unsigned videoDecodedByteCount() const override; #if USE(TEXTURE_MAPPER_GL) && !USE(COORDINATED_GRAPHICS) -virtual PlatformLayer* platformLayer() const { return const_cast<MediaPlayerPrivateGStreamerBase*>(this); } +virtual PlatformLayer* platformLayer() const override { return const_cast<MediaPlayerPrivateGStreamerBase*>(this); } #if PLATFORM(WIN_CAIRO) // FIXME: Accelerated rendering has not been implemented for WinCairo yet. -virtual bool supportsAcceleratedRendering() const { return false; } +virtual bool supportsAcceleratedRendering() const override { return false; } #else -virtual bool supportsAcceleratedRendering() const { return true; } +virtual bool supportsAcceleratedRendering() const override { return true; } #endif -virtual void paintToTextureMapper(TextureMapper*, const FloatRect&, const TransformationMatrix&, float); +virtual void paintToTextureMapper(TextureMapper*, const FloatRect&, const TransformationMatrix&, float) override; #endif protected
[webkit-changes] [191549] trunk/Source/WebCore
Title: [191549] trunk/Source/WebCore Revision 191549 Author y...@igalia.com Date 2015-10-25 08:10:29 -0700 (Sun, 25 Oct 2015) Log Message [TexMap] Fix a misused flag for GstGL https://bugs.webkit.org/show_bug.cgi?id=150545 Reviewed by Žan Doberšek. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: (WebCore::MediaPlayerPrivateGStreamerBase::paintToTextureMapper): We should pass TextureMapperGL::Flags to the TextureMapperGL::drawTexture instead of BitmapTexture::Flags. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (191548 => 191549) --- trunk/Source/WebCore/ChangeLog 2015-10-25 09:17:32 UTC (rev 191548) +++ trunk/Source/WebCore/ChangeLog 2015-10-25 15:10:29 UTC (rev 191549) @@ -1,3 +1,15 @@ +2015-10-25 Gwang Yoon Hwang <y...@igalia.com> + +[TexMap] Fix a misused flag for GstGL +https://bugs.webkit.org/show_bug.cgi?id=150545 + +Reviewed by Žan Doberšek. + +* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: +(WebCore::MediaPlayerPrivateGStreamerBase::paintToTextureMapper): +We should pass TextureMapperGL::Flags to the TextureMapperGL::drawTexture instead of +BitmapTexture::Flags. + 2015-10-25 Youenn Fablet <youenn.fab...@crf.canon.fr> Use ImplementedAs for MediaDevices.getUserMediaFromJS Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp (191548 => 191549) --- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2015-10-25 09:17:32 UTC (rev 191548) +++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2015-10-25 15:10:29 UTC (rev 191549) @@ -560,9 +560,7 @@ return; unsigned textureID = *reinterpret_cast<unsigned*>(videoFrame.data[0]); -BitmapTexture::Flags flags = BitmapTexture::NoFlag; -if (GST_VIDEO_INFO_HAS_ALPHA()) -flags |= BitmapTexture::SupportsAlpha; +TextureMapperGL::Flags flags = GST_VIDEO_INFO_HAS_ALPHA() ? TextureMapperGL::ShouldBlend : 0; IntSize size = IntSize(GST_VIDEO_INFO_WIDTH(), GST_VIDEO_INFO_HEIGHT()); TextureMapperGL* textureMapperGL = reinterpret_cast<TextureMapperGL*>(textureMapper); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [191541] trunk/Source/WebCore
Title: [191541] trunk/Source/WebCore Revision 191541 Author y...@igalia.com Date 2015-10-24 19:23:20 -0700 (Sat, 24 Oct 2015) Log Message [TexMap] Clean up BitmapTexture and BitmapTextureGL. https://bugs.webkit.org/show_bug.cgi?id=143298 Reviewed by Žan Doberšek. No new tests, this is just a refactor. * platform/graphics/texmap/BitmapTexture.h: (WebCore::BitmapTexture::canReuseWith): Deleted. Reuseability of a BitmapTexture is only decided by its size. We can use size() instead of this method. * platform/graphics/texmap/BitmapTextureGL.h: (WebCore::driverSupportsExternalTextureBGRA): Deleted. We do not have to check a suitable texture format in every update/reset. It is enough to store the formats in construction time and reuse them. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/texmap/BitmapTexture.h trunk/Source/WebCore/platform/graphics/texmap/BitmapTextureGL.cpp trunk/Source/WebCore/platform/graphics/texmap/BitmapTextureGL.h trunk/Source/WebCore/platform/graphics/texmap/BitmapTexturePool.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (191540 => 191541) --- trunk/Source/WebCore/ChangeLog 2015-10-25 01:33:02 UTC (rev 191540) +++ trunk/Source/WebCore/ChangeLog 2015-10-25 02:23:20 UTC (rev 191541) @@ -1,3 +1,23 @@ +2015-10-24 Gwang Yoon Hwang <y...@igalia.com> + +[TexMap] Clean up BitmapTexture and BitmapTextureGL. +https://bugs.webkit.org/show_bug.cgi?id=143298 + +Reviewed by Žan Doberšek. + +No new tests, this is just a refactor. + +* platform/graphics/texmap/BitmapTexture.h: +(WebCore::BitmapTexture::canReuseWith): Deleted. +Reuseability of a BitmapTexture is only decided by its size. +We can use size() instead of this method. + +* platform/graphics/texmap/BitmapTextureGL.h: +(WebCore::driverSupportsExternalTextureBGRA): Deleted. +We do not have to check a suitable texture format in every +update/reset. It is enough to store the formats in construction time +and reuse them. + 2015-10-24 Simon Fraser <simon.fra...@apple.com> REGRESSION (r187121): Delayed instantaneous animations not honouring ' forwards' fill-mode Modified: trunk/Source/WebCore/platform/graphics/texmap/BitmapTexture.h (191540 => 191541) --- trunk/Source/WebCore/platform/graphics/texmap/BitmapTexture.h 2015-10-25 01:33:02 UTC (rev 191540) +++ trunk/Source/WebCore/platform/graphics/texmap/BitmapTexture.h 2015-10-25 02:23:20 UTC (rev 191541) @@ -75,7 +75,6 @@ inline Flags flags() const { return m_flags; } virtual int bpp() const { return 32; } -virtual bool canReuseWith(const IntSize& /* contentsSize */, Flags = 0) { return false; } void reset(const IntSize& size, Flags flags = 0) { m_flags = flags; Modified: trunk/Source/WebCore/platform/graphics/texmap/BitmapTextureGL.cpp (191540 => 191541) --- trunk/Source/WebCore/platform/graphics/texmap/BitmapTextureGL.cpp 2015-10-25 01:33:02 UTC (rev 191540) +++ trunk/Source/WebCore/platform/graphics/texmap/BitmapTextureGL.cpp 2015-10-25 02:23:20 UTC (rev 191541) @@ -69,19 +69,23 @@ , m_depthBufferObject(0) , m_shouldClear(true) , m_context3D(context3D) -{ -} - -bool BitmapTextureGL::canReuseWith(const IntSize& contentsSize, Flags) -{ -return contentsSize == m_textureSize; -} - #if OS(DARWIN) -#define DEFAULT_TEXTURE_PIXEL_TRANSFER_TYPE GL_UNSIGNED_INT_8_8_8_8_REV +, m_type(GL_UNSIGNED_INT_8_8_8_8_REV) #else -#define DEFAULT_TEXTURE_PIXEL_TRANSFER_TYPE GraphicsContext3D::UNSIGNED_BYTE +, m_type(GraphicsContext3D::UNSIGNED_BYTE) #endif +{ +// If GL_EXT_texture_format_BGRA is supported in the OpenGLES +// internal and external formats need to be BGRA +m_internalFormat = GraphicsContext3D::RGBA; +m_format = GraphicsContext3D::BGRA; +if (m_context3D->isGLES2Compliant()) { +if (m_context3D->getExtensions()->supports("GL_EXT_texture_format_BGRA")) +m_internalFormat = GraphicsContext3D::BGRA; +else +m_format = GraphicsContext3D::RGBA; +} +} static void swizzleBGRAToRGBA(uint32_t* data, const IntRect& rect, int stride = 0) { @@ -93,18 +97,6 @@ } } -// If GL_EXT_texture_format_BGRA is supported in the OpenGLES -// internal and external formats need to be BGRA -static bool driverSupportsExternalTextureBGRA(GraphicsContext3D* context) -{ -if (context->isGLES2Compliant()) { -static bool supportsExternalTextureBGRA = context->getExtensions()->supports("GL_EXT_texture_format_BGRA"); -return supportsExternalTextureBGRA; -} - -return true; -} - static bool driverSupportsSubImage(GraphicsContext3D* context) { if (context->isGLES2Compliant()) { @@ -124,7 +116,6 @@ if (m_textureSize == contentSize()) return; - m_textureSize = contentSize(); m
[webkit-changes] [191544] trunk/Source/WebCore
Title: [191544] trunk/Source/WebCore Revision 191544 Author y...@igalia.com Date 2015-10-24 22:41:47 -0700 (Sat, 24 Oct 2015) Log Message Remove setApplyDeviceScaleFactorInCompositor https://bugs.webkit.org/show_bug.cgi?id=150538 Reviewed by Tim Horton. It was used to support the device scale factor for chromium port and blackberry port. But it was removed quite a while ago. * page/Settings.in: applyDeviceScaleFactorInCompositor: Deleted * platform/graphics/texmap/coordinated/CompositingCoordinator.cpp: (WebCore::CompositingCoordinator::CompositingCoordinator): Remove uses of applyDeviceScaleFactorInCompositor. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/Settings.in trunk/Source/WebCore/platform/graphics/texmap/coordinated/CompositingCoordinator.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (191543 => 191544) --- trunk/Source/WebCore/ChangeLog 2015-10-25 05:37:09 UTC (rev 191543) +++ trunk/Source/WebCore/ChangeLog 2015-10-25 05:41:47 UTC (rev 191544) @@ -1,3 +1,19 @@ +2015-10-24 Gwang Yoon Hwang <y...@igalia.com> + +Remove setApplyDeviceScaleFactorInCompositor +https://bugs.webkit.org/show_bug.cgi?id=150538 + +Reviewed by Tim Horton. + +It was used to support the device scale factor for chromium port and blackberry +port. But it was removed quite a while ago. + +* page/Settings.in: +applyDeviceScaleFactorInCompositor: Deleted +* platform/graphics/texmap/coordinated/CompositingCoordinator.cpp: +(WebCore::CompositingCoordinator::CompositingCoordinator): Remove uses +of applyDeviceScaleFactorInCompositor. + 2015-10-24 Tim Horton <timothy_hor...@apple.com> Expose more information about the exception in WKErrorJavaScriptExceptionOccurred errors Modified: trunk/Source/WebCore/page/Settings.in (191543 => 191544) --- trunk/Source/WebCore/page/Settings.in 2015-10-25 05:37:09 UTC (rev 191543) +++ trunk/Source/WebCore/page/Settings.in 2015-10-25 05:41:47 UTC (rev 191544) @@ -163,7 +163,6 @@ windowFocusRestricted initial=true diagnosticLoggingEnabled initial=false -applyDeviceScaleFactorInCompositor initial=true delegatesPageScaling initial=false plugInSnapshottingEnabled initial=false snapshotAllPlugIns initial=false Modified: trunk/Source/WebCore/platform/graphics/texmap/coordinated/CompositingCoordinator.cpp (191543 => 191544) --- trunk/Source/WebCore/platform/graphics/texmap/coordinated/CompositingCoordinator.cpp 2015-10-25 05:37:09 UTC (rev 191543) +++ trunk/Source/WebCore/platform/graphics/texmap/coordinated/CompositingCoordinator.cpp 2015-10-25 05:41:47 UTC (rev 191544) @@ -64,7 +64,6 @@ , m_lastAnimationServiceTime(0) #endif { -m_page->settings().setApplyDeviceScaleFactorInCompositor(true); } void CompositingCoordinator::setRootCompositingLayer(GraphicsLayer* compositingLayer, GraphicsLayer* overlayLayer) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [190344] trunk/Source
Title: [190344] trunk/Source Revision 190344 Author y...@igalia.com Date 2015-09-30 02:55:59 -0700 (Wed, 30 Sep 2015) Log Message [GTK] Support HiDPI Properly in WebKitGtk+ with the TextureMapper https://bugs.webkit.org/show_bug.cgi?id=141782 Reviewed by Carlos Garcia Campos. Source/WebCore: This patch fixes HiDPI issue in the TextureMapper. To support HiDPI in the TextureMapper, we need to draw scaled contents in the TextureMapperTile, and apply the global scale in the root layer to apply transforms correctly. Supporting the device scale is handled at LayerTreeHostGtk and TextureMapperBackingStore, and GraphicsLayerTextureMapper doesn't handle the device scale directly. >From the TextureMapperLayer, deviceScale and pageScale do not have to be handled differently. These are multiplied and provided to TextureMapperBackingStore. * platform/graphics/texmap/TextureMapperTile.cpp: (WebCore::TextureMapperTile::updateContents): * platform/graphics/texmap/TextureMapperTile.h: * platform/graphics/texmap/TextureMapperTiledBackingStore.cpp: Modified to increase the cover rect for tiles creation. For the image contents, it just creates texture with a image size, regardless of the contents scale. * platform/graphics/texmap/BitmapTexture.cpp: (WebCore::BitmapTexture::updateContents): Apply the device scale to the graphics context before painting contents. * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: (WebCore::GraphicsLayerTextureMapper::setContentsToImage): (WebCore::GraphicsLayerTextureMapper::updateBackingStoreIfNeeded): Apply the device scale and the page scale to the backing store Source/WebKit2: * UIProcess/API/gtk/WebKitWebViewBase.cpp: * UIProcess/gtk/RedirectedXCompositeWindow.cpp: Modified to create scaled size of window. * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: (WebKit::LayerTreeHostGtk::initialize): (WebKit::LayerTreeHostGtk::deviceOrPageScaleFactorChanged): We should apply device scale factor to the root layer to apply the scale matrix before applying other transform matrices. (WebKit::LayerTreeHostGtk::deviceScaleFactor): Added. (WebKit::LayerTreeHostGtk::pageScaleFactor): Added. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/texmap/BitmapTexture.cpp trunk/Source/WebCore/platform/graphics/texmap/BitmapTexture.h trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperTile.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperTile.h trunk/Source/WebCore/platform/graphics/texmap/TextureMapperTiledBackingStore.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperTiledBackingStore.h trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp trunk/Source/WebKit2/UIProcess/gtk/RedirectedXCompositeWindow.cpp trunk/Source/WebKit2/UIProcess/gtk/RedirectedXCompositeWindow.h trunk/Source/WebKit2/WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp trunk/Source/WebKit2/WebProcess/WebPage/gtk/LayerTreeHostGtk.h Diff Modified: trunk/Source/WebCore/ChangeLog (190343 => 190344) --- trunk/Source/WebCore/ChangeLog 2015-09-30 06:00:03 UTC (rev 190343) +++ trunk/Source/WebCore/ChangeLog 2015-09-30 09:55:59 UTC (rev 190344) @@ -1,3 +1,43 @@ +2015-09-30 Gwang Yoon Hwang <y...@igalia.com> + +[GTK] Support HiDPI Properly in WebKitGtk+ with the TextureMapper +https://bugs.webkit.org/show_bug.cgi?id=141782 + +Reviewed by Carlos Garcia Campos. + +This patch fixes HiDPI issue in the TextureMapper. +To support HiDPI in the TextureMapper, we need to draw scaled contents +in the TextureMapperTile, and apply the global scale in the root layer +to apply transforms correctly. + +Supporting the device scale is handled at LayerTreeHostGtk and +TextureMapperBackingStore, and GraphicsLayerTextureMapper doesn't handle +the device scale directly. + +From the TextureMapperLayer, deviceScale and pageScale do not have to be +handled differently. These are multiplied and provided to +TextureMapperBackingStore. + +* platform/graphics/texmap/TextureMapperTile.cpp: +(WebCore::TextureMapperTile::updateContents): +* platform/graphics/texmap/TextureMapperTile.h: +* platform/graphics/texmap/TextureMapperTiledBackingStore.cpp: + +Modified to increase the cover rect for tiles creation. For the image +contents, it just creates texture with a image size, regardless of the +contents scale. + +* platform/graphics/texmap/BitmapTexture.cpp: +(WebCore::BitmapTexture::updateContents): + +Apply the device scale to the graphics context before painting contents. + +* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: +(WebCore::GraphicsLayerTextureMapper::setContentsToImage): +
[webkit-changes] [190095] trunk/Source
Title: [190095] trunk/Source Revision 190095 Author y...@igalia.com Date 2015-09-21 17:51:41 -0700 (Mon, 21 Sep 2015) Log Message [Threaded Compositor] Modified to use reference of GraphicsContext instead of pointer https://bugs.webkit.org/show_bug.cgi?id=149399 Reviewed by Darin Adler. This fixes build failure after r189144 Source/WebCore: * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp: (WebCore::CoordinatedGraphicsLayer::tiledBackingStorePaint): * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h: * platform/graphics/texmap/coordinated/CoordinatedImageBacking.cpp: * platform/graphics/texmap/coordinated/CoordinatedSurface.h: * platform/graphics/texmap/coordinated/Tile.cpp: (WebCore::Tile::paintToSurfaceContext): * platform/graphics/texmap/coordinated/Tile.h: * platform/graphics/texmap/coordinated/TiledBackingStoreClient.h: * platform/graphics/texmap/coordinated/UpdateAtlas.cpp: Source/WebKit2: * Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.cpp: (WebKit::ThreadSafeCoordinatedSurface::paintToSurface): (WebKit::ThreadSafeCoordinatedSurface::beginPaint): (WebKit::ThreadSafeCoordinatedSurface::endPaint): * Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedImageBacking.cpp trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedSurface.h trunk/Source/WebCore/platform/graphics/texmap/coordinated/Tile.cpp trunk/Source/WebCore/platform/graphics/texmap/coordinated/Tile.h trunk/Source/WebCore/platform/graphics/texmap/coordinated/TiledBackingStoreClient.h trunk/Source/WebCore/platform/graphics/texmap/coordinated/UpdateAtlas.cpp trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.cpp trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.h Diff Modified: trunk/Source/WebCore/ChangeLog (190094 => 190095) --- trunk/Source/WebCore/ChangeLog 2015-09-22 00:38:14 UTC (rev 190094) +++ trunk/Source/WebCore/ChangeLog 2015-09-22 00:51:41 UTC (rev 190095) @@ -1,3 +1,23 @@ +2015-09-21 Gwang Yoon Hwang <y...@igalia.com> + +[Threaded Compositor] Modified to use reference of GraphicsContext instead of pointer +https://bugs.webkit.org/show_bug.cgi?id=149399 + +Reviewed by Darin Adler. + +This fixes build failure after r189144 + +* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp: +(WebCore::CoordinatedGraphicsLayer::tiledBackingStorePaint): +* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h: +* platform/graphics/texmap/coordinated/CoordinatedImageBacking.cpp: +* platform/graphics/texmap/coordinated/CoordinatedSurface.h: +* platform/graphics/texmap/coordinated/Tile.cpp: +(WebCore::Tile::paintToSurfaceContext): +* platform/graphics/texmap/coordinated/Tile.h: +* platform/graphics/texmap/coordinated/TiledBackingStoreClient.h: +* platform/graphics/texmap/coordinated/UpdateAtlas.cpp: + 2015-09-21 Ryosuke Niwa <rn...@webkit.org> The binding for getDistributedNodes unnecessarily makes a vector of nodes Modified: trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp (190094 => 190095) --- trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp 2015-09-22 00:38:14 UTC (rev 190094) +++ trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp 2015-09-22 00:51:41 UTC (rev 190095) @@ -869,11 +869,11 @@ m_mainBackingStore->setSupportsAlpha(!contentsOpaque()); } -void CoordinatedGraphicsLayer::tiledBackingStorePaint(GraphicsContext* context, const IntRect& rect) +void CoordinatedGraphicsLayer::tiledBackingStorePaint(GraphicsContext& context, const IntRect& rect) { if (rect.isEmpty()) return; -paintGraphicsLayerContents(*context, rect); +paintGraphicsLayerContents(context, rect); } void CoordinatedGraphicsLayer::didUpdateTileBuffers() Modified: trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h (190094 => 190095) --- trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h 2015-09-22 00:38:14 UTC (rev 190094) +++ trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h 2015-09-22 00:51:41 UTC (rev 190095) @@ -129,7 +129,7 @@ IntRect transformedVisibleRect(); // TiledBackingStoreClient -virtual void tiledBackingStoreP
[webkit-changes] [187416] trunk/Source/WebKit2
Title: [187416] trunk/Source/WebKit2 Revision 187416 Author y...@igalia.com Date 2015-07-26 23:34:05 -0700 (Sun, 26 Jul 2015) Log Message [ThreadedCompositor] Unreviewed build fix after r186059 https://bugs.webkit.org/show_bug.cgi?id=147315 * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: (WebKit::ThreadedCompositor::glContext): Explicitly cast u_int64 to GLNativeWindowType. * WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h: (WebKit::ThreadedCoordinatedLayerTreeHost::create): Update declaration to match with modified definition. Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h Diff Modified: trunk/Source/WebKit2/ChangeLog (187415 => 187416) --- trunk/Source/WebKit2/ChangeLog 2015-07-27 05:54:35 UTC (rev 187415) +++ trunk/Source/WebKit2/ChangeLog 2015-07-27 06:34:05 UTC (rev 187416) @@ -1,3 +1,16 @@ +2015-07-26 Gwang Yoon Hwang y...@igalia.com + +[ThreadedCompositor] Unreviewed build fix after r186059 +https://bugs.webkit.org/show_bug.cgi?id=147315 + +* Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: +(WebKit::ThreadedCompositor::glContext): +Explicitly cast u_int64 to GLNativeWindowType. +* WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h: +(WebKit::ThreadedCoordinatedLayerTreeHost::create): +Update declaration to match with modified definition. + + 2015-07-26 Chris Dumez cdu...@apple.com [WK2][iOS] WebContent process main thread should have fixed priority Modified: trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp (187415 => 187416) --- trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp 2015-07-27 05:54:35 UTC (rev 187415) +++ trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp 2015-07-27 06:34:05 UTC (rev 187416) @@ -230,7 +230,7 @@ if (!m_nativeSurfaceHandle) return 0; -m_context = GLContext::createContextForWindow(m_nativeSurfaceHandle, GLContext::sharingContext()); +m_context = GLContext::createContextForWindow(reinterpret_castGLNativeWindowType(m_nativeSurfaceHandle), GLContext::sharingContext()); return m_context.get(); } Modified: trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h (187415 => 187416) --- trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h 2015-07-27 05:54:35 UTC (rev 187415) +++ trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h 2015-07-27 06:34:05 UTC (rev 187416) @@ -61,7 +61,7 @@ class ThreadedCoordinatedLayerTreeHost : public LayerTreeHost, public WebCore::CompositingCoordinator::Client, public ThreadedCompositor::Client { WTF_MAKE_NONCOPYABLE(ThreadedCoordinatedLayerTreeHost); WTF_MAKE_FAST_ALLOCATED; public: -static PassRefPtrThreadedCoordinatedLayerTreeHost create(WebPage*); +static RefThreadedCoordinatedLayerTreeHost create(WebPage*); virtual ~ThreadedCoordinatedLayerTreeHost(); virtual const LayerTreeContext layerTreeContext() override { return m_layerTreeContext; }; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [182230] trunk
Title: [182230] trunk Revision 182230 Author y...@igalia.com Date 2015-04-01 04:15:01 -0700 (Wed, 01 Apr 2015) Log Message Use colored diagnostics when building with cmake + ninja + clang https://bugs.webkit.org/show_bug.cgi?id=143297 Reviewed by Žan Doberšek. Because that ninja sets subprocess stdout/stderr to a pipe, clang disables colored output. This patch forces clang to use colored diagnostics when we are using the ninja. * Source/cmake/OptionsCommon.cmake: Modified Paths trunk/ChangeLog trunk/Source/cmake/OptionsCommon.cmake Diff Modified: trunk/ChangeLog (182229 => 182230) --- trunk/ChangeLog 2015-04-01 10:46:19 UTC (rev 182229) +++ trunk/ChangeLog 2015-04-01 11:15:01 UTC (rev 182230) @@ -1,3 +1,17 @@ +2015-04-01 Gwang Yoon Hwang y...@igalia.com + +Use colored diagnostics when building with cmake + ninja + clang +https://bugs.webkit.org/show_bug.cgi?id=143297 + +Reviewed by Žan Doberšek. + +Because that ninja sets subprocess stdout/stderr to a pipe, clang +disables colored output. +This patch forces clang to use colored diagnostics when we are using +the ninja. + +* Source/cmake/OptionsCommon.cmake: + 2015-03-29 Gyuyoung Kim gyuyoung@samsung.com [CMake] Update old CMakeList.txt in gtest Modified: trunk/Source/cmake/OptionsCommon.cmake (182229 => 182230) --- trunk/Source/cmake/OptionsCommon.cmake 2015-04-01 10:46:19 UTC (rev 182229) +++ trunk/Source/cmake/OptionsCommon.cmake 2015-04-01 11:15:01 UTC (rev 182230) @@ -30,6 +30,11 @@ set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} -std=c++11) endif () +if (${CMAKE_CXX_COMPILER_ID} STREQUAL Clang AND CMAKE_GENERATOR STREQUAL Ninja) +set(CMAKE_C_FLAGS ${CMAKE_C_FLAGS} -fcolor-diagnostics) +set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} -fcolor-diagnostics) +endif () + # Detect Cortex-A53 core if CPU is ARM64 and OS is Linux. # Query /proc/cpuinfo for each available core and check reported CPU part number: 0xd03 signals Cortex-A53. # (see Main ID Register in ARM Cortex-A53 MPCore Processor Technical Reference Manual) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [182159] trunk/Source/WebCore
Title: [182159] trunk/Source/WebCore Revision 182159 Author y...@igalia.com Date 2015-03-30 15:59:58 -0700 (Mon, 30 Mar 2015) Log Message [Threaded Compositor] Crash when animation changes frequently. https://bugs.webkit.org/show_bug.cgi?id=143213 Reviewed by Simon Fraser. CompositingCoordinator copies CoordinatedGraphicsLayerState when flushing GraphicsLayer changes, and ThreadedCoordinatedCompositor passes it to compositing thread. To ensure thread-safety, we need to provide copy constructor to copy Animation object in TextureMapperAnimation instead of referencing it. Since TimingFunction and TransformOperation used by KeyframeValueList are not ThreadSafeRefCounted, these should be cloned also. No new tests needed. * platform/graphics/GraphicsLayer.h: (WebCore::AnimationValue::AnimationValue): (WebCore::FloatAnimationValue::FloatAnimationValue): (WebCore::TransformAnimationValue::TransformAnimationValue): (WebCore::FilterAnimationValue::FilterAnimationValue): Adds deep copy constructor. * platform/graphics/texmap/TextureMapperAnimation.cpp: (WebCore::TextureMapperAnimation::TextureMapperAnimation): Because the name of the animation can be AtomicString, we need to create isolated version of string to ensure thread safty. * platform/graphics/texmap/TextureMapperAnimation.h: * platform/graphics/transforms/IdentityTransformOperation.h: * platform/graphics/transforms/Matrix3DTransformOperation.h: * platform/graphics/transforms/MatrixTransformOperation.h: * platform/graphics/transforms/PerspectiveTransformOperation.h: * platform/graphics/transforms/RotateTransformOperation.h: * platform/graphics/transforms/ScaleTransformOperation.h: * platform/graphics/transforms/SkewTransformOperation.h: * platform/graphics/transforms/TransformOperation.h: * platform/graphics/transforms/TranslateTransformOperation.h: Adds TransformOperation::clone() for threadsafety. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/GraphicsLayer.h trunk/Source/WebCore/platform/graphics/texmap/TextureMapperAnimation.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperAnimation.h trunk/Source/WebCore/platform/graphics/transforms/IdentityTransformOperation.h trunk/Source/WebCore/platform/graphics/transforms/Matrix3DTransformOperation.h trunk/Source/WebCore/platform/graphics/transforms/MatrixTransformOperation.h trunk/Source/WebCore/platform/graphics/transforms/PerspectiveTransformOperation.h trunk/Source/WebCore/platform/graphics/transforms/RotateTransformOperation.h trunk/Source/WebCore/platform/graphics/transforms/ScaleTransformOperation.h trunk/Source/WebCore/platform/graphics/transforms/SkewTransformOperation.h trunk/Source/WebCore/platform/graphics/transforms/TransformOperation.h trunk/Source/WebCore/platform/graphics/transforms/TranslateTransformOperation.h Diff Modified: trunk/Source/WebCore/ChangeLog (182158 => 182159) --- trunk/Source/WebCore/ChangeLog 2015-03-30 22:58:22 UTC (rev 182158) +++ trunk/Source/WebCore/ChangeLog 2015-03-30 22:59:58 UTC (rev 182159) @@ -1,3 +1,46 @@ +2015-03-30 Gwang Yoon Hwang y...@igalia.com + +[Threaded Compositor] Crash when animation changes frequently. +https://bugs.webkit.org/show_bug.cgi?id=143213 + +Reviewed by Simon Fraser. + +CompositingCoordinator copies CoordinatedGraphicsLayerState when +flushing GraphicsLayer changes, and ThreadedCoordinatedCompositor passes +it to compositing thread. + +To ensure thread-safety, we need to provide copy constructor to copy +Animation object in TextureMapperAnimation instead of referencing it. + +Since TimingFunction and TransformOperation used by KeyframeValueList are +not ThreadSafeRefCounted, these should be cloned also. + +No new tests needed. + +* platform/graphics/GraphicsLayer.h: +(WebCore::AnimationValue::AnimationValue): +(WebCore::FloatAnimationValue::FloatAnimationValue): +(WebCore::TransformAnimationValue::TransformAnimationValue): +(WebCore::FilterAnimationValue::FilterAnimationValue): +Adds deep copy constructor. + +* platform/graphics/texmap/TextureMapperAnimation.cpp: +(WebCore::TextureMapperAnimation::TextureMapperAnimation): +Because the name of the animation can be AtomicString, we need to create +isolated version of string to ensure thread safty. + +* platform/graphics/texmap/TextureMapperAnimation.h: +* platform/graphics/transforms/IdentityTransformOperation.h: +* platform/graphics/transforms/Matrix3DTransformOperation.h: +* platform/graphics/transforms/MatrixTransformOperation.h: +* platform/graphics/transforms/PerspectiveTransformOperation.h: +* platform/graphics/transforms/RotateTransformOperation.h: +* platform/graphics/transforms/ScaleTransformOperation.h: +* platform/graphics/transforms/SkewTransformOperation.h: +* platf
[webkit-changes] [182101] trunk/Source
Title: [182101] trunk/Source Revision 182101 Author y...@igalia.com Date 2015-03-27 20:15:07 -0700 (Fri, 27 Mar 2015) Log Message [TexMap] Seperate BitmapTexture related classes implementations from TextureMapper https://bugs.webkit.org/show_bug.cgi?id=142386 Reviewed by Žan Doberšek. TextureMapper and TextureMapperGL are bloated and tightly coupled with BitmapTexture. We should move these classes to seperated file of their own. Also, this patch removes friend relationship from TextureMapperGL and its subsidiary classes. The main purpose of this refactoring is to expose BitmapTexturePool to renderers of platformlayers like Video and Canvas. By doing this, each renderer can acquire textures from the global texture pool to paint their contents directly. Source/WebCore: No new tests needed. * PlatformEfl.cmake: * PlatformGTK.cmake: * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: Include BitmapTextureGL and BitmapTexturePool explicitly * platform/graphics/texmap/BitmapTexture.cpp: Added. * platform/graphics/texmap/BitmapTexture.h: Added. (WebCore::BitmapTexture::updateContents): Exclude BitmapTexture class from TextureMapper * platform/graphics/texmap/BitmapTextureGL.cpp: Added. * platform/graphics/texmap/BitmapTextureGL.h: Added. Exclude BitmapTextureGL class from TextureMapperGL (WebCore::BitmapTextureGL::clipStack): Added. Add the getter for clipStack for TextureMapperGL (WebCore::BitmapTextureGL::Bind): Deleted. (WebCore::BitmapTextureGL::BindAsSurface): Added. Bind used TextureMapperGL's internal data directly to compute projection matrix as a friend class, However, TextureMapperGL can compute projection matrix itself after binding job, so this friend ship is not needed. Also, this patch renames Bind to BindAsSurface to remove ambiguity. * platform/graphics/texmap/BitmapTextureImageBuffer.cpp: Added. * platform/graphics/texmap/BitmapTextureImageBuffer.h: Added. Exclude BitmapTextureImageBuffer class from TextureMapperImageBuffer * platform/graphics/texmap/BitmapTexturePool.cpp: Added. * platform/graphics/texmap/BitmapTexturePool.h: Added. Exclude BitmapTexturePool class from TextureMapperGL (WebCore::BitmapTexturePool::acquireTexture): Modified to use passed GraphicsContext3D instead of TextureMapperGL to remove redundant coupling * platform/graphics/texmap/TextureMapper.cpp: * platform/graphics/texmap/TextureMapper.h: Remove BitmapTexturePool and BitmapTexture from its implementation. * platform/graphics/texmap/TextureMapperGL.cpp: * platform/graphics/texmap/TextureMapperGL.h: Remove BitmapTextureGL from its implementation. (WebCore::TextureMapperGL::TextureMapperGL): (WebCore::TextureMapperGL::clipStack): (WebCore::TextureMapperGL::bindSurface): (WebCore::TextureMapperGL::currentSurface): Add a getter of the current surface for filtering operation in BitmapTextureGL. It would be clear to move filtering operation from BitmapTextureGL to TextureMapperGL later. (WebCore::TextureMapperGL::ClipStack): Move inner class declaration to public. * platform/graphics/texmap/TextureMapperImageBuffer.cpp: * platform/graphics/texmap/TextureMapperImageBuffer.h: Remove BitmapTextureImageBuffer from its implementation. Source/WebKit2: * Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp: Include BitmapTextureGL.h explicitly Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/PlatformEfl.cmake trunk/Source/WebCore/PlatformGTK.cmake trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapper.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapper.h trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.h trunk/Source/WebCore/platform/graphics/texmap/TextureMapperImageBuffer.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperImageBuffer.h trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp Added Paths trunk/Source/WebCore/platform/graphics/texmap/BitmapTexture.cpp trunk/Source/WebCore/platform/graphics/texmap/BitmapTexture.h trunk/Source/WebCore/platform/graphics/texmap/BitmapTextureGL.cpp trunk/Source/WebCore/platform/graphics/texmap/BitmapTextureGL.h trunk/Source/WebCore/platform/graphics/texmap/BitmapTextureImageBuffer.cpp trunk/Source/WebCore/platform/graphics/texmap/BitmapTextureImageBuffer.h trunk/Source/WebCore/platform/graphics/texmap/BitmapTexturePool.cpp trunk/Source/WebCore/platform/graphics/texmap/BitmapTexturePool.h Diff Modified: trunk/Source/WebCore/ChangeLog (182100 => 182101) --- trunk/Source/WebCore/ChangeLog 2015-03-28 03:09:20 UTC (rev 182100) +++ trunk/Source/WebCore/ChangeLog 2015-03-28 03:15:07 UTC (rev 182101) @@ -1,3 +1,74 @@ +2015-03-27 Gwang Yoon Hwang y...@igalia.com + +[TexMap] Seperate BitmapTexture related classes implementations from TextureMapper +https://bugs.webkit.
[webkit-changes] [181620] trunk/Source/WebKit2
Title: [181620] trunk/Source/WebKit2 Revision 181620 Author y...@igalia.com Date 2015-03-17 00:31:38 -0700 (Tue, 17 Mar 2015) Log Message REGRESSION(r180924): Unable to build WebKitGTK+ with threaded compositor Unreviewed build fix. * WebProcess/WebPage/LayerTreeHost.h: Remove duplicated declaration of setNativeSurfaceHandleForCompositing. Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/WebProcess/WebPage/LayerTreeHost.h Diff Modified: trunk/Source/WebKit2/ChangeLog (181619 => 181620) --- trunk/Source/WebKit2/ChangeLog 2015-03-17 07:15:26 UTC (rev 181619) +++ trunk/Source/WebKit2/ChangeLog 2015-03-17 07:31:38 UTC (rev 181620) @@ -1,3 +1,12 @@ +2015-03-17 Gwang Yoon Hwang y...@igalia.com + +REGRESSION(r180924): Unable to build WebKitGTK+ with threaded compositor + +Unreviewed build fix. + +* WebProcess/WebPage/LayerTreeHost.h: +Remove duplicated declaration of setNativeSurfaceHandleForCompositing. + 2015-03-16 Ryosuke Niwa rn...@webkit.org Enable ES6 classes by default Modified: trunk/Source/WebKit2/WebProcess/WebPage/LayerTreeHost.h (181619 => 181620) --- trunk/Source/WebKit2/WebProcess/WebPage/LayerTreeHost.h 2015-03-17 07:15:26 UTC (rev 181619) +++ trunk/Source/WebKit2/WebProcess/WebPage/LayerTreeHost.h 2015-03-17 07:31:38 UTC (rev 181620) @@ -84,7 +84,6 @@ #endif #if USE(COORDINATED_GRAPHICS_THREADED) -virtual void setNativeSurfaceHandleForCompositing(uint64_t) = 0; virtual void viewportSizeChanged(const WebCore::IntSize) = 0; virtual void didChangeViewportProperties(const WebCore::ViewportAttributes) = 0; #endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [178412] trunk/Source/WebKit2
Title: [178412] trunk/Source/WebKit2 Revision 178412 Author y...@igalia.com Date 2015-01-14 00:34:21 -0800 (Wed, 14 Jan 2015) Log Message Unreviewed GTK build fix after r178385. WebUserContentControllerProxy is not RefCounted anymore. * UIProcess/API/gtk/WebKitUserContentManager.cpp: (_WebKitUserContentManagerPrivate::_WebKitUserContentManagerPrivate): Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/UIProcess/API/gtk/WebKitUserContentManager.cpp Diff Modified: trunk/Source/WebKit2/ChangeLog (178411 => 178412) --- trunk/Source/WebKit2/ChangeLog 2015-01-14 08:10:05 UTC (rev 178411) +++ trunk/Source/WebKit2/ChangeLog 2015-01-14 08:34:21 UTC (rev 178412) @@ -1,3 +1,12 @@ +2015-01-14 Gwang Yoon Hwang y...@igalia.com + +Unreviewed GTK build fix after r178385. + +WebUserContentControllerProxy is not RefCounted anymore. + +* UIProcess/API/gtk/WebKitUserContentManager.cpp: +(_WebKitUserContentManagerPrivate::_WebKitUserContentManagerPrivate): + 2015-01-13 Chris Dumez cdu...@apple.com Unreviewed GTK build fix after r178375. Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitUserContentManager.cpp (178411 => 178412) --- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitUserContentManager.cpp 2015-01-14 08:10:05 UTC (rev 178411) +++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitUserContentManager.cpp 2015-01-14 08:34:21 UTC (rev 178412) @@ -34,11 +34,11 @@ struct _WebKitUserContentManagerPrivate { _WebKitUserContentManagerPrivate() -: userContentController(WebUserContentControllerProxy::create()) +: userContentController(std::make_uniqueWebUserContentControllerProxy()) { } -RefPtrWebUserContentControllerProxy userContentController; +std::unique_ptrWebUserContentControllerProxy userContentController; }; /** ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [178238] trunk/Source/WebKit2
Title: [178238] trunk/Source/WebKit2 Revision 178238 Author y...@igalia.com Date 2015-01-10 04:07:26 -0800 (Sat, 10 Jan 2015) Log Message [ThreadedCompositor] Prevent excessive rendering call. https://bugs.webkit.org/show_bug.cgi?id=140297 Reviewed by Žan Doberšek. Not to waste CPU time on waiting V-Sync interval, the update timer of compositing thread should be throttled. In case of updating scene state, this update timer should be called as soon as possible. However, when CoordinatedGraphicsScene requests update viewport to advance the animations, this call should be scheduled for a next frame. No new tests. No change in functionality. * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: (WebKit::CompositingRunLoop::CompositingRunLoop): (WebKit::CompositingRunLoop::setUpdateTimer): (WebKit::CompositingRunLoop::updateTimerFired): (WebKit::ThreadedCompositor::setNeedsDisplay): (WebKit::ThreadedCompositor::updateViewport): (WebKit::ThreadedCompositor::scheduleDisplayImmediately): (WebKit::ThreadedCompositor::didChangeVisibleRect): (WebKit::ThreadedCompositor::scheduleDisplayIfNeeded): Deleted. * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h: Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h Diff Modified: trunk/Source/WebKit2/ChangeLog (178237 => 178238) --- trunk/Source/WebKit2/ChangeLog 2015-01-10 08:49:32 UTC (rev 178237) +++ trunk/Source/WebKit2/ChangeLog 2015-01-10 12:07:26 UTC (rev 178238) @@ -1,3 +1,31 @@ +2015-01-10 Gwang Yoon Hwang y...@igalia.com + +[ThreadedCompositor] Prevent excessive rendering call. +https://bugs.webkit.org/show_bug.cgi?id=140297 + +Reviewed by Žan Doberšek. + +Not to waste CPU time on waiting V-Sync interval, the update timer of +compositing thread should be throttled. + +In case of updating scene state, this update timer should be called as +soon as possible. However, when CoordinatedGraphicsScene requests update +viewport to advance the animations, this call should be scheduled for +a next frame. + +No new tests. No change in functionality. + +* Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: +(WebKit::CompositingRunLoop::CompositingRunLoop): +(WebKit::CompositingRunLoop::setUpdateTimer): +(WebKit::CompositingRunLoop::updateTimerFired): +(WebKit::ThreadedCompositor::setNeedsDisplay): +(WebKit::ThreadedCompositor::updateViewport): +(WebKit::ThreadedCompositor::scheduleDisplayImmediately): +(WebKit::ThreadedCompositor::didChangeVisibleRect): +(WebKit::ThreadedCompositor::scheduleDisplayIfNeeded): Deleted. +* Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h: + 2015-01-09 Sam Weinig s...@webkit.org Try to fix the GTK and EFL builds. Modified: trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp (178237 => 178238) --- trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp 2015-01-10 08:49:32 UTC (rev 178237) +++ trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp 2015-01-10 12:07:26 UTC (rev 178238) @@ -47,10 +47,16 @@ WTF_MAKE_NONCOPYABLE(CompositingRunLoop); WTF_MAKE_FAST_ALLOCATED; public: +enum UpdateTiming { +Immediate, +WaitUntilNextFrame, +}; + CompositingRunLoop(std::functionvoid() updateFunction) : m_runLoop(RunLoop::current()) , m_updateTimer(m_runLoop, this, CompositingRunLoop::updateTimerFired) , m_updateFunction(WTF::move(updateFunction)) +, m_lastUpdateTime(0) { } @@ -64,12 +70,17 @@ m_runLoop.dispatch(WTF::move(function)); } -void setUpdateTimer(double interval = 0) +void setUpdateTimer(UpdateTiming timing = Immediate) { if (m_updateTimer.isActive()) return; -m_updateTimer.startOneShot(interval); +const static double targetFPS = 60; +double nextUpdateTime = 0; +if (timing == WaitUntilNextFrame) +nextUpdateTime = std::max((1 / targetFPS) - (monotonicallyIncreasingTime() - m_lastUpdateTime), 0.0); + +m_updateTimer.startOneShot(nextUpdateTime); } void stopUpdateTimer() @@ -88,11 +99,14 @@ void updateTimerFired() { m_updateFunction(); +m_lastUpdateTime = monotonicallyIncreasingTime(); } RunLoop m_runLoop; RunLoop::TimerCompositingRunLoop m_updateTimer; std::functionvoid() m_updateFunction; + +double m_lastUpdateTime; }; PassRefPtrThreadedCompositor ThreadedCompositor::create(Client* client) @@ -116,7 +130,7 @@ { RefPtrThreadedCompositor pro
[webkit-changes] [178182] trunk/Source
Title: [178182] trunk/Source Revision 178182 Author y...@igalia.com Date 2015-01-09 11:55:56 -0800 (Fri, 09 Jan 2015) Log Message Rename GraphicsLayerAnimation to TextureMapperAnimation https://bugs.webkit.org/show_bug.cgi?id=140296 Reviewed by Martin Robinson. Source/WebCore: GraphicsLayerAnimation is only used by TextureMapper and CoordinatedGraphics. This should be placed in the platform/graphics/texmap. And this patch also changes its name to TextureMapperAnimation to remove ambiguity. No new tests because this is a simply refactoring. * CMakeLists.txt: * WebCore.vcxproj/WebCore.vcxproj: * WebCore.vcxproj/WebCore.vcxproj.filters: * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: (WebCore::GraphicsLayerTextureMapper::addAnimation): (WebCore::GraphicsLayerTextureMapper::setAnimations): * platform/graphics/texmap/GraphicsLayerTextureMapper.h: * platform/graphics/texmap/TextureMapperAnimation.cpp: Renamed from Source/WebCore/platform/graphics/GraphicsLayerAnimation.cpp. * platform/graphics/texmap/TextureMapperAnimation.h: Renamed from Source/WebCore/platform/graphics/GraphicsLayerAnimation.h. * platform/graphics/texmap/TextureMapperLayer.cpp: (WebCore::TextureMapperLayer::setAnimations): * platform/graphics/texmap/TextureMapperLayer.h: * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp: (WebCore::CoordinatedGraphicsLayer::addAnimation): * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h: * platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h: Source/WebKit2: GraphicsLayerAnimation is changed to TextureMapperAnimation * Scripts/webkit/messages.py: (headers_for_type): * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp: (IPC::ArgumentCoderTextureMapperAnimation::encode): (IPC::ArgumentCoderTextureMapperAnimation::decode): (IPC::ArgumentCoderTextureMapperAnimations::encode): (IPC::ArgumentCoderTextureMapperAnimations::decode): (IPC::ArgumentCoderGraphicsLayerAnimation::encode): Deleted. (IPC::ArgumentCoderGraphicsLayerAnimation::decode): Deleted. (IPC::ArgumentCoderGraphicsLayerAnimations::encode): Deleted. (IPC::ArgumentCoderGraphicsLayerAnimations::decode): Deleted. * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h: * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h: Modified Paths trunk/Source/WebCore/CMakeLists.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h trunk/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/Scripts/webkit/messages.py trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h Added Paths trunk/Source/WebCore/platform/graphics/texmap/TextureMapperAnimation.cpp trunk/Source/WebCore/platform/graphics/texmap/TextureMapperAnimation.h Removed Paths trunk/Source/WebCore/platform/graphics/GraphicsLayerAnimation.cpp trunk/Source/WebCore/platform/graphics/GraphicsLayerAnimation.h Diff Modified: trunk/Source/WebCore/CMakeLists.txt (178181 => 178182) --- trunk/Source/WebCore/CMakeLists.txt 2015-01-09 19:41:13 UTC (rev 178181) +++ trunk/Source/WebCore/CMakeLists.txt 2015-01-09 19:55:56 UTC (rev 178182) @@ -2079,7 +2079,6 @@ platform/graphics/GradientImage.cpp platform/graphics/GraphicsContext.cpp platform/graphics/GraphicsLayer.cpp -platform/graphics/GraphicsLayerAnimation.cpp platform/graphics/GraphicsLayerTransform.cpp platform/graphics/GraphicsLayerUpdater.cpp platform/graphics/GraphicsTypes.cpp @@ -2141,6 +2140,7 @@ platform/graphics/opentype/OpenTypeMathData.cpp platform/graphics/texmap/TextureMapper.cpp +platform/graphics/texmap/TextureMapperAnimation.cpp platform/graphics/texmap/TextureMapperBackingStore.cpp platform/graphics/texmap/TextureMapperFPSCounter.cpp platform/graphics/texmap/TextureMapperImageBuffer.cpp Modified: trunk/Source/WebCore/ChangeLog (178181 => 178182) --- trunk/Source/WebCore/ChangeLog 2015-01-09 19:41:13 UTC (rev 178181) +++ trunk/Source/WebCore/ChangeLog 2015-01-09 19:55:56 UTC (rev 178182) @@ -1,3 +1,33 @@ +2015-01-09 Gwang Yoon Hwang y...@igalia.com + +Rename GraphicsLayerAnimation to TextureMapperAnimation +https://bugs.webkit.org/show_bug.
[webkit-changes] [178111] trunk/Source
Title: [178111] trunk/Source Revision 178111 Author y...@igalia.com Date 2015-01-08 05:29:41 -0800 (Thu, 08 Jan 2015) Log Message [GTK] Seperate updateBackingStore from flushCompositingState. https://bugs.webkit.org/show_bug.cgi?id=136887 Reviewed by Žan Doberšek. Source/WebCore: When LayerTreeHostGtk flushes pending layer changes, it updates backing stores using same loop. This makes requesting layer flush during flushing in certain condition which causes a assertion failure. Animated GIF's animations are drived by the painting cycle, GraphicsLayerTextureMapper::updateBackingStoreIfNeeded would request scheduleLayerFlush during flushing layers, if animated GIF needs to advance its frame immediately. It doesn't mean the advanced frame should be painted in this painting phase. This frame advancing happens after painting a current frame to the backing store. It means the advanced frame should be painted ASAP without using its frame timer. This patch seperates updateBackingStore from flushCompositingState to avoid above behavior. No new tests. The bug is timing-dependent. * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: (WebCore::GraphicsLayerTextureMapper::flushCompositingStateForThisLayerOnly): (WebCore::toGraphicsLayerTextureMapper): (WebCore::GraphicsLayerTextureMapper::updateBackingStoreIncludingSubLayers): * platform/graphics/texmap/GraphicsLayerTextureMapper.h: Source/WebKit2: * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: (WebKit::LayerTreeHostGtk::flushPendingLayerChanges): Modified to call GraphicsLayerTextureMapper::updateBackingStoreIncludingSubLayers Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (178110 => 178111) --- trunk/Source/WebCore/ChangeLog 2015-01-08 11:43:00 UTC (rev 178110) +++ trunk/Source/WebCore/ChangeLog 2015-01-08 13:29:41 UTC (rev 178111) @@ -1,3 +1,33 @@ +2015-01-08 Gwang Yoon Hwang y...@igalia.com + +[GTK] Seperate updateBackingStore from flushCompositingState. +https://bugs.webkit.org/show_bug.cgi?id=136887 + +Reviewed by Žan Doberšek. + +When LayerTreeHostGtk flushes pending layer changes, it updates backing +stores using same loop. This makes requesting layer flush during +flushing in certain condition which causes a assertion failure. + +Animated GIF's animations are drived by the painting cycle, +GraphicsLayerTextureMapper::updateBackingStoreIfNeeded would request +scheduleLayerFlush during flushing layers, if animated GIF needs to +advance its frame immediately. It doesn't mean the advanced frame should +be painted in this painting phase. This frame advancing happens after +painting a current frame to the backing store. It means the advanced +frame should be painted ASAP without using its frame timer. + +This patch seperates updateBackingStore from flushCompositingState +to avoid above behavior. + +No new tests. The bug is timing-dependent. + +* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: +(WebCore::GraphicsLayerTextureMapper::flushCompositingStateForThisLayerOnly): +(WebCore::toGraphicsLayerTextureMapper): +(WebCore::GraphicsLayerTextureMapper::updateBackingStoreIncludingSubLayers): +* platform/graphics/texmap/GraphicsLayerTextureMapper.h: + 2015-01-07 Chris Dumez cdu...@apple.com Move -webkit-tap-highlight-color / -webkit-overflow-scrolling / -webkit-touch-callout to the new StyleBuilder Modified: trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp (178110 => 178111) --- trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp 2015-01-08 11:43:00 UTC (rev 178110) +++ trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp 2015-01-08 13:29:41 UTC (rev 178111) @@ -368,7 +368,6 @@ prepareBackingStoreIfNeeded(); commitLayerChanges(); m_layer.syncAnimations(); -updateBackingStoreIfNeeded(); } void GraphicsLayerTextureMapper::prepareBackingStoreIfNeeded() @@ -512,6 +511,21 @@ child-flushCompositingState(rect); } +void GraphicsLayerTextureMapper::updateBackingStoreIncludingSubLayers() +{ +if (!m_layer.textureMapper()) +return; + +updateBackingStoreIfNeeded(); + +if (maskLayer()) +downcastGraphicsLayerTextureMapper(*maskLayer()).updateBackingStoreIfNeeded(); +if (replicaLayer()) +downcastGraphicsLayerTextureMapper(*replicaLayer()).updateBackingStoreIfNeeded(); +for (auto* child : children()) +downcastGraphicsLayerTextureMapper(*child).updateBackingStoreIncludingSubLayers(); +} +
[webkit-changes] [178119] trunk/Source/WebCore
Title: [178119] trunk/Source/WebCore Revision 178119 Author y...@igalia.com Date 2015-01-08 10:03:21 -0800 (Thu, 08 Jan 2015) Log Message [CoordinatedGraphics] Update fixedVisibleContentRect only it is actually changed https://bugs.webkit.org/show_bug.cgi?id=140244 Reviewed by Martin Robinson. CompositingCoordinator::setVisibleContentsRect already knows whether the rect has been changed. Therefore, there is no need to call FrameView::setFixedVisibleContentRect every time. No new tests, covered by existing tests. * platform/graphics/texmap/coordinated/CompositingCoordinator.cpp: (WebCore::CompositingCoordinator::setVisibleContentsRect): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/texmap/coordinated/CompositingCoordinator.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (178118 => 178119) --- trunk/Source/WebCore/ChangeLog 2015-01-08 18:02:09 UTC (rev 178118) +++ trunk/Source/WebCore/ChangeLog 2015-01-08 18:03:21 UTC (rev 178119) @@ -1,3 +1,19 @@ +2015-01-08 Gwang Yoon Hwang y...@igalia.com + +[CoordinatedGraphics] Update fixedVisibleContentRect only it is actually changed +https://bugs.webkit.org/show_bug.cgi?id=140244 + +Reviewed by Martin Robinson. + +CompositingCoordinator::setVisibleContentsRect already knows whether the +rect has been changed. Therefore, there is no need to call +FrameView::setFixedVisibleContentRect every time. + +No new tests, covered by existing tests. + +* platform/graphics/texmap/coordinated/CompositingCoordinator.cpp: +(WebCore::CompositingCoordinator::setVisibleContentsRect): + 2015-01-08 Carlos Garcia Campos cgar...@igalia.com REGRESSION(r177637) [HarfBuzz][GTK][EFL] It made 3 performance tests crash and +24 layout tests crashes/failures Modified: trunk/Source/WebCore/platform/graphics/texmap/coordinated/CompositingCoordinator.cpp (178118 => 178119) --- trunk/Source/WebCore/platform/graphics/texmap/coordinated/CompositingCoordinator.cpp 2015-01-08 18:02:09 UTC (rev 178118) +++ trunk/Source/WebCore/platform/graphics/texmap/coordinated/CompositingCoordinator.cpp 2015-01-08 18:03:21 UTC (rev 178119) @@ -316,7 +316,7 @@ } FrameView* view = m_page-mainFrame().view(); -if (view-useFixedLayout()) { +if (view-useFixedLayout() contentsRectDidChange) { // Round the rect instead of enclosing it to make sure that its size stays // the same while panning. This can have nasty effects on layout. view-setFixedVisibleContentRect(roundedIntRect(rect)); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [178120] trunk/Source/WebKit2
Title: [178120] trunk/Source/WebKit2 Revision 178120 Author y...@igalia.com Date 2015-01-08 10:11:19 -0800 (Thu, 08 Jan 2015) Log Message [ThreadedCompositor] Update active animations without interrupting the main-thread https://bugs.webkit.org/show_bug.cgi?id=140245 Reviewed by Martin Robinson. In the Threaded Compositor, CoordinatedGraphicsScene can directly request updateViewport to the compositing thread if it has any active animation. To keep current behavior of CoordinatedGraphics, this patch modifies CoordinatedGraphicsScene to remember the constructed thread as a clientRunLoop, and dispatch updateViewport calls to clientRunLoop. No new tests. No change in functionality. * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: (WebKit::CoordinatedGraphicsScene::dispatchOnClientRunLoop): (WebKit::CoordinatedGraphicsScene::CoordinatedGraphicsScene): (WebKit::CoordinatedGraphicsScene::paintToCurrentGLContext): (WebKit::CoordinatedGraphicsScene::updateViewport): * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h: * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: (WebKit::ThreadedCompositor::ThreadedCompositor): (WebKit::ThreadedCompositor::runCompositingThread): Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp Diff Modified: trunk/Source/WebKit2/ChangeLog (178119 => 178120) --- trunk/Source/WebKit2/ChangeLog 2015-01-08 18:03:21 UTC (rev 178119) +++ trunk/Source/WebKit2/ChangeLog 2015-01-08 18:11:19 UTC (rev 178120) @@ -1,5 +1,32 @@ 2015-01-08 Gwang Yoon Hwang y...@igalia.com +[ThreadedCompositor] Update active animations without interrupting the main-thread +https://bugs.webkit.org/show_bug.cgi?id=140245 + +Reviewed by Martin Robinson. + +In the Threaded Compositor, CoordinatedGraphicsScene can directly +request updateViewport to the compositing thread if it has any active +animation. + +To keep current behavior of CoordinatedGraphics, this patch modifies +CoordinatedGraphicsScene to remember the constructed thread as a +clientRunLoop, and dispatch updateViewport calls to clientRunLoop. + +No new tests. No change in functionality. + +* Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: +(WebKit::CoordinatedGraphicsScene::dispatchOnClientRunLoop): +(WebKit::CoordinatedGraphicsScene::CoordinatedGraphicsScene): +(WebKit::CoordinatedGraphicsScene::paintToCurrentGLContext): +(WebKit::CoordinatedGraphicsScene::updateViewport): +* Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h: +* Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: +(WebKit::ThreadedCompositor::ThreadedCompositor): +(WebKit::ThreadedCompositor::runCompositingThread): + +2015-01-08 Gwang Yoon Hwang y...@igalia.com + [GTK] Seperate updateBackingStore from flushCompositingState. https://bugs.webkit.org/show_bug.cgi?id=136887 Modified: trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp (178119 => 178120) --- trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp 2015-01-08 18:03:21 UTC (rev 178119) +++ trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp 2015-01-08 18:11:19 UTC (rev 178120) @@ -43,6 +43,14 @@ callOnMainThread(WTF::move(function)); } +void CoordinatedGraphicsScene::dispatchOnClientRunLoop(std::functionvoid() function) +{ +if (m_clientRunLoop == RunLoop::current()) +function(); +else +m_clientRunLoop.dispatch(WTF::move(function)); +} + static bool layerShouldHaveBackingStore(TextureMapperLayer* layer) { return layer-drawsContent() layer-contentsAreVisible() !layer-size().isEmpty(); @@ -53,6 +61,7 @@ , m_isActive(false) , m_rootLayerID(InvalidCoordinatedLayerID) , m_viewBackgroundColor(Color::white) +, m_clientRunLoop(RunLoop::current()) { } @@ -103,7 +112,7 @@ if (currentRootLayer-descendantsOrSelfHaveRunningAnimations()) { RefPtrCoordinatedGraphicsScene protector(this); -dispatchOnMainThread([=] { +dispatchOnClientRunLoop([=] { protector-updateViewport(); }); } @@ -138,7 +147,7 @@ void CoordinatedGraphicsScene::updateViewport() { -ASSERT(isMainThread()); +ASSERT(m_clientRunLoop == RunLoop::current()); if (m_client) m_client-updateViewport(); } Modified: trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h (178119 => 178120) --- trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h 2015-01-08 18:03:21 UTC (rev 178119) +++ trunk/Source/WebKit2/Shared/Coordinate
[webkit-changes] [178095] trunk
trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h trunk/Source/WebKit2/WebProcess/WebPage/DrawingArea.cpp trunk/Source/WebKit2/WebProcess/WebPage/DrawingArea.h trunk/Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp trunk/Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.h trunk/Source/WebKit2/WebProcess/WebPage/LayerTreeHost.cpp trunk/Source/WebKit2/WebProcess/WebPage/LayerTreeHost.h trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h trunk/Source/WebKit2/WebProcess/WebPage/WebPage.messages.in trunk/Source/WebKit2/WebProcess/gtk/WebProcessMainGtk.cpp trunk/Source/cmake/OptionsEfl.cmake trunk/Source/cmake/OptionsGTK.cmake trunk/Source/cmake/WebKitFeatures.cmake trunk/Source/cmakeconfig.h.cmake trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitperl/FeatureList.pm Added Paths trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h Diff Modified: trunk/ChangeLog (178094 => 178095) --- trunk/ChangeLog 2015-01-08 04:17:50 UTC (rev 178094) +++ trunk/ChangeLog 2015-01-08 04:29:24 UTC (rev 178095) @@ -1,3 +1,20 @@ +2015-01-07 Gwang Yoon Hwang y...@igalia.com + +[GTK][ThreadedCompositor] Add support for threaded compositor. +https://bugs.webkit.org/show_bug.cgi?id=118265 + +Reviewed by Martin Robinson. + +Added the ENABLE_THREADED_COMPOSITOR feature flag to the cmake and +autotools build systems. The feature is disabled by default. +And remove deprecated the WTF_USE_TILED_BACKING_STORE feature flag +from the feature flags. + +* Source/cmake/OptionsEfl.cmake: +* Source/cmake/OptionsGTK.cmake: +* Source/cmake/WebKitFeatures.cmake: +* Source/cmakeconfig.h.cmake: + 2014-12-23 Alexey Proskuryakov a...@apple.com Simplify building with ASan Modified: trunk/Source/WebCore/ChangeLog (178094 => 178095) --- trunk/Source/WebCore/ChangeLog 2015-01-08 04:17:50 UTC (rev 178094) +++ trunk/Source/WebCore/ChangeLog 2015-01-08 04:29:24 UTC (rev 178095) @@ -1,3 +1,19 @@ +2015-01-07 Gwang Yoon Hwang y...@igalia.com + +[GTK][ThreadedCompositor] Add support for threaded compositor. +https://bugs.webkit.org/show_bug.cgi?id=118265 + +Reviewed by Martin Robinson. + +* PlatformGTK.cmake: +Adds CoodinatedGraphics and threaded compositor related classes to +support threaded compositor + +* platform/graphics/texmap/coordinated/CoordinatedTile.cpp: +* platform/graphics/texmap/coordinated/CoordinatedTile.h: +This class should be guarded by COORDINATED_GRAPHICS instead of +TILED_BACKING_STORE + 2015-01-07 Daniel Bates daba...@apple.com [iOS] Make WebKit2 build with public iOS SDK and more build fixes for DRT Modified: trunk/Source/WebCore/PlatformGTK.cmake (178094 => 178095) --- trunk/Source/WebCore/PlatformGTK.cmake 2015-01-08 04:17:50 UTC (rev 178094) +++ trunk/Source/WebCore/PlatformGTK.cmake 2015-01-08 04:29:24 UTC (rev 178095) @@ -374,6 +374,31 @@ ) endif () +if (ENABLE_THREADED_COMPOSITOR) +list(APPEND WebCore_INCLUDE_DIRECTORIES +${WEBCORE_DIR}/page/scrolling/coordinatedgraphics +${WEBCORE_DIR}/platform/graphics/texmap/coordinated +${WEBCORE_DIR}/platform/graphics/texmap/threadedcompositor +) +list(APPEND WebCore_SOURCES +page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp +page/scrolling/coordinatedgraphics/ScrollingStateNodeCoordinatedGraphics.cpp +page/scrolling/coordinatedgraphics/ScrollingStateScrollingNodeCoordinatedGraphics.cpp +page/scrolling/ScrollingStateStickyNode.cpp +page/scrolling/ScrollingThread.cpp +page/scrolling/ScrollingTreeNode.cpp +page/scrolling/ScrollingTreeScrollingNode.cpp +platform/graphics/TiledBackingStore.cpp +platform/graphics/texmap/coordinated/AreaAllocator.cpp +platform/graphics/texmap/coordinated/CompositingCoordinator.cpp +platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp +platform/graphics/texmap/coordinated/CoordinatedImageBacking.cpp +platform/graphics/texmap/coordinated/CoordinatedSurface.cpp +platform/graphics/texmap/coordinated/CoordinatedTile.cpp +platform/graphics/texmap/coordinated/UpdateAtlas.cpp +) +endif () + if (WTF_USE_EGL) list(APPEND WebCore_LIBRARIES ${EGL_LIBRARY} Modified: trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedTile.cpp (178094 => 178095) --- trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedTile.cpp 2015-01-08 04:17:50 UTC (rev 178094) +++ trunk/Source/WebCore/platform/graphics/texmap
[webkit-changes] [178024] trunk/Source/WebKit2
Title: [178024] trunk/Source/WebKit2 Revision 178024 Author y...@igalia.com Date 2015-01-06 23:18:01 -0800 (Tue, 06 Jan 2015) Log Message Remove the remaining uses of OwnPtr in threaded compositor. https://bugs.webkit.org/show_bug.cgi?id=140172 Reviewed by Sam Weinig. * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: (WebKit::ThreadedCompositor::runCompositingThread): * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h: Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h Diff Modified: trunk/Source/WebKit2/ChangeLog (178023 => 178024) --- trunk/Source/WebKit2/ChangeLog 2015-01-07 07:16:00 UTC (rev 178023) +++ trunk/Source/WebKit2/ChangeLog 2015-01-07 07:18:01 UTC (rev 178024) @@ -1,3 +1,14 @@ +2015-01-06 Gwang Yoon Hwang y...@igalia.com + +Remove the remaining uses of OwnPtr in threaded compositor. +https://bugs.webkit.org/show_bug.cgi?id=140172 + +Reviewed by Sam Weinig. + +* Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: +(WebKit::ThreadedCompositor::runCompositingThread): +* Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h: + 2015-01-06 Timothy Horton timothy_hor...@apple.com View state change callbacks are sometimes dropped on the floor Modified: trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp (178023 => 178024) --- trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp 2015-01-07 07:16:00 UTC (rev 178023) +++ trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp 2015-01-07 07:18:01 UTC (rev 178024) @@ -305,7 +305,7 @@ { MutexLocker locker(m_terminateRunLoopConditionMutex); m_compositingRunLoop = nullptr; -m_context.clear(); +m_context = nullptr; m_terminateRunLoopCondition.signal(); } Modified: trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h (178023 => 178024) --- trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h 2015-01-07 07:16:00 UTC (rev 178023) +++ trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h 2015-01-07 07:18:01 UTC (rev 178024) @@ -102,7 +102,7 @@ RefPtrCoordinatedGraphicsScene m_scene; std::unique_ptrSimpleViewportController m_viewportController; -OwnPtrWebCore::GLContext m_context; +std::unique_ptrWebCore::GLContext m_context; WebCore::IntSize m_viewportSize; uint64_t m_nativeSurfaceHandle; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [177276] trunk/Source/WebKit2
Title: [177276] trunk/Source/WebKit2 Revision 177276 Author y...@igalia.com Date 2014-12-15 02:39:49 -0800 (Mon, 15 Dec 2014) Log Message Add initial implementation of ThreadSafeCoordinatedSurface, ThreadedCompositor, and SimpleViewportController https://bugs.webkit.org/show_bug.cgi?id=118383 Reviewed by Martin Robinson. Implements an initial version of the Threaded Compositor. Threaded Compositor is a variant of Coordinated Graphics implementation. Basic structure of the implementaion is simliar, thus, Threaded Compositor reuses lots of classes from Coordinated Graphics. However, instead of compositing on UI Process, Threaded Compositor performs compositing on a dedicate thread of Web Process. No new test, because it is in experimental stage. * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: (WebKit::CoordinatedGraphicsScene::CoordinatedGraphicsScene): Removed a assertion not to force its creation in the main thread. In the Threaded Compositor, it can be created in the dedicated thread. * Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.cpp: Added. * Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.h: Added. Implements a surface using ImageBuffer as a backend to use in the Web Process. * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h: Added. * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: Added. Implements a compositor which runs on the created thread. It owns SimpleViewportController and CoordinatedGraphicsScene to render scene on the actual surface. * Shared/CoordinatedGraphics/SimpleViewportController.cpp: Added. * Shared/CoordinatedGraphics/SimpleViewportController.h: Added. This class is responsible to handle scale factor and scrolling position with a simplifed logic in the compositing thread. Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp Added Paths trunk/Source/WebKit2/Shared/CoordinatedGraphics/SimpleViewportController.cpp trunk/Source/WebKit2/Shared/CoordinatedGraphics/SimpleViewportController.h trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.cpp trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.h trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp trunk/Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h Diff Modified: trunk/Source/WebKit2/ChangeLog (177275 => 177276) --- trunk/Source/WebKit2/ChangeLog 2014-12-15 09:58:39 UTC (rev 177275) +++ trunk/Source/WebKit2/ChangeLog 2014-12-15 10:39:49 UTC (rev 177276) @@ -1,3 +1,41 @@ +2014-12-15 Gwang Yoon Hwang y...@igalia.com + +Add initial implementation of ThreadSafeCoordinatedSurface, ThreadedCompositor, and SimpleViewportController +https://bugs.webkit.org/show_bug.cgi?id=118383 + +Reviewed by Martin Robinson. + +Implements an initial version of the Threaded Compositor. + +Threaded Compositor is a variant of Coordinated Graphics implementation. +Basic structure of the implementaion is simliar, thus, Threaded +Compositor reuses lots of classes from Coordinated Graphics. However, +instead of compositing on UI Process, Threaded Compositor performs +compositing on a dedicate thread of Web Process. + +No new test, because it is in experimental stage. + +* Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: +(WebKit::CoordinatedGraphicsScene::CoordinatedGraphicsScene): +Removed a assertion not to force its creation in the main thread. In +the Threaded Compositor, it can be created in the dedicated thread. + +* Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.cpp: Added. +* Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.h: Added. +Implements a surface using ImageBuffer as a backend to use in the Web +Process. + +* Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h: Added. +* Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: Added. +Implements a compositor which runs on the created thread. It owns +SimpleViewportController and CoordinatedGraphicsScene to render scene on the +actual surface. + +* Shared/CoordinatedGraphics/SimpleViewportController.cpp: Added. +* Shared/CoordinatedGraphics/SimpleViewportController.h: Added. +This class is responsible to handle scale factor and scrolling position +with a simplifed logic in the compositing thread. + 2014-12-14 Andreas Kling akl...@apple.com Replace PassRef with Ref/Ref across the board. Modified: trunk/Source/WebKit2/Shared/CoordinatedGraph
[webkit-changes] [176946] trunk/Source/WebKit2
Title: [176946] trunk/Source/WebKit2 Revision 176946 Author y...@igalia.com Date 2014-12-08 04:09:30 -0800 (Mon, 08 Dec 2014) Log Message [CoordinatedGraphics] Move CoordinatedBackingStore and CoordinatedGraphicsScene to Shared https://bugs.webkit.org/show_bug.cgi?id=139385 Reviewed by Martin Robinson. For the Threaded Compositor, CoordinatedBackingStore and CoordinatedGraphicsScene should be placed at the Shared instead of UIProcess because it can be used in the WebProcess also. No new tests because there is no behavior change. * PlatformEfl.cmake: * Shared/CoordinatedGraphics/CoordinatedBackingStore.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp. * Shared/CoordinatedGraphics/CoordinatedBackingStore.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h. * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp. * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.h. Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/PlatformEfl.cmake Added Paths trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedBackingStore.cpp trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedBackingStore.h trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h Removed Paths trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.h Diff Modified: trunk/Source/WebKit2/ChangeLog (176945 => 176946) --- trunk/Source/WebKit2/ChangeLog 2014-12-08 11:34:48 UTC (rev 176945) +++ trunk/Source/WebKit2/ChangeLog 2014-12-08 12:09:30 UTC (rev 176946) @@ -1,3 +1,22 @@ +2014-12-08 Gwang Yoon Hwang y...@igalia.com + +[CoordinatedGraphics] Move CoordinatedBackingStore and CoordinatedGraphicsScene to Shared +https://bugs.webkit.org/show_bug.cgi?id=139385 + +Reviewed by Martin Robinson. + +For the Threaded Compositor, CoordinatedBackingStore and +CoordinatedGraphicsScene should be placed at the Shared instead of +UIProcess because it can be used in the WebProcess also. + +No new tests because there is no behavior change. + +* PlatformEfl.cmake: +* Shared/CoordinatedGraphics/CoordinatedBackingStore.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp. +* Shared/CoordinatedGraphics/CoordinatedBackingStore.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h. +* Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp. +* Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.h. + 2014-12-08 Shivakumar JM shiva...@samsung.com Fix build warning in WebKit2/UIProcess module. Modified: trunk/Source/WebKit2/PlatformEfl.cmake (176945 => 176946) --- trunk/Source/WebKit2/PlatformEfl.cmake 2014-12-08 11:34:48 UTC (rev 176945) +++ trunk/Source/WebKit2/PlatformEfl.cmake 2014-12-08 12:09:30 UTC (rev 176946) @@ -23,7 +23,9 @@ Shared/API/c/efl/WKArrayEfl.cpp +Shared/CoordinatedGraphics/CoordinatedBackingStore.cpp Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp +Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp Shared/Downloads/efl/DownloadSoupErrorsEfl.cpp @@ -113,9 +115,7 @@ UIProcess/API/efl/ewk_view.cpp UIProcess/API/efl/ewk_window_features.cpp -UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp -UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp UIProcess/CoordinatedGraphics/PageViewportController.cpp UIProcess/CoordinatedGraphics/WebPageProxyCoordinatedGraphics.cpp Copied: trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedBackingStore.cpp (from rev 176945, trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp) (0 => 176946) --- trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedBackingStore.cpp (rev 0) +++ trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedBackingStore.cpp 2014-12-08 12:09:30 UTC (rev 176946) @@ -0,0 +1,188 @@ +/* + Copyright (C) 2012 Nokia Corporation and/or its subsid
[webkit-changes] [176954] trunk/Source/WebKit2
Title: [176954] trunk/Source/WebKit2 Revision 176954 Author y...@igalia.com Date 2014-12-08 10:46:49 -0800 (Mon, 08 Dec 2014) Log Message [GTK] Let DrawingArea manages setAcceleratedCompositingWindowId https://bugs.webkit.org/show_bug.cgi?id=117230 Reviewed by Anders Carlsson. This is a preparation patch for Threaded Coordinated Graphics. LayerTreeHostGtk uses a native window handle to make glContext for accelerated compositing. Therefore it is natural for DrawingArea to take responsibility for the native window handle. And, in Coordinated Graphics case, WebPage creates LayerTreeHost before receiving a native window handle from UIProcess. It means we need a method to pass the native window handle to already created LayerTreeHost. This patch uses DrawingAreaProxy::setNativeSurfaceHandleForCompositing instead of WebCoreProxy::setAcceleratedCompositingWindowId to set window ID for accelerated compositing. Also, this patch renames the setAcceleratedCompositingWindowId with a more generic name, setNativeSurfaceHandleForCompositing. No new tests. No change in functionality. * UIProcess/API/gtk/WebKitWebViewBase.cpp: (webkitWebViewBaseCreateWebPage): * UIProcess/DrawingAreaProxyImpl.cpp: (WebKit::DrawingAreaProxyImpl::setNativeSurfaceHandleForCompositing): * UIProcess/DrawingAreaProxyImpl.h: * UIProcess/WebPageProxy.h: * UIProcess/gtk/WebPageProxyGtk.cpp: (WebKit::WebPageProxy::setAcceleratedCompositingWindowId): Deleted. * WebProcess/WebPage/DrawingArea.h: (WebKit::DrawingArea::nativeSurfaceHandleForCompositing): * WebProcess/WebPage/DrawingArea.messages.in: * WebProcess/WebPage/DrawingAreaImpl.cpp: (WebKit::DrawingAreaImpl::setNativeSurfaceHandleForCompositing): * WebProcess/WebPage/DrawingAreaImpl.h: * WebProcess/WebPage/WebPage.h: * WebProcess/WebPage/WebPage.messages.in: * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: (WebKit::LayerTreeHostGtk::glContext): (WebKit::LayerTreeHostGtk::initialize): * WebProcess/WebPage/gtk/WebPageGtk.cpp: (WebKit::WebPage::platformInitialize): (WebKit::WebPage::setAcceleratedCompositingWindowId): Deleted. Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp trunk/Source/WebKit2/UIProcess/DrawingAreaProxyImpl.cpp trunk/Source/WebKit2/UIProcess/DrawingAreaProxyImpl.h trunk/Source/WebKit2/UIProcess/WebPageProxy.h trunk/Source/WebKit2/UIProcess/gtk/WebPageProxyGtk.cpp trunk/Source/WebKit2/WebProcess/WebPage/DrawingArea.h trunk/Source/WebKit2/WebProcess/WebPage/DrawingArea.messages.in trunk/Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp trunk/Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.h trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h trunk/Source/WebKit2/WebProcess/WebPage/WebPage.messages.in trunk/Source/WebKit2/WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp trunk/Source/WebKit2/WebProcess/WebPage/gtk/WebPageGtk.cpp Diff Modified: trunk/Source/WebKit2/ChangeLog (176953 => 176954) --- trunk/Source/WebKit2/ChangeLog 2014-12-08 18:42:12 UTC (rev 176953) +++ trunk/Source/WebKit2/ChangeLog 2014-12-08 18:46:49 UTC (rev 176954) @@ -1,3 +1,51 @@ +2014-12-08 Gwang Yoon Hwang y...@igalia.com + +[GTK] Let DrawingArea manages setAcceleratedCompositingWindowId +https://bugs.webkit.org/show_bug.cgi?id=117230 + +Reviewed by Anders Carlsson. + +This is a preparation patch for Threaded Coordinated Graphics. + +LayerTreeHostGtk uses a native window handle to make glContext for +accelerated compositing. Therefore it is natural for DrawingArea to take +responsibility for the native window handle. And, in Coordinated +Graphics case, WebPage creates LayerTreeHost before receiving a native +window handle from UIProcess. It means we need a method to pass the +native window handle to already created LayerTreeHost. + +This patch uses DrawingAreaProxy::setNativeSurfaceHandleForCompositing +instead of WebCoreProxy::setAcceleratedCompositingWindowId to set window +ID for accelerated compositing. + +Also, this patch renames the setAcceleratedCompositingWindowId with a +more generic name, setNativeSurfaceHandleForCompositing. + +No new tests. No change in functionality. + +* UIProcess/API/gtk/WebKitWebViewBase.cpp: +(webkitWebViewBaseCreateWebPage): +* UIProcess/DrawingAreaProxyImpl.cpp: +(WebKit::DrawingAreaProxyImpl::setNativeSurfaceHandleForCompositing): +* UIProcess/DrawingAreaProxyImpl.h: +* UIProcess/WebPageProxy.h: +* UIProcess/gtk/WebPageProxyGtk.cpp: +(WebKit::WebPageProxy::setAcceleratedCompositingWindowId): Deleted. +* WebProcess/WebPage/DrawingArea.h: +(WebKit::DrawingArea::nativeSurfaceHandleForCompositing): +* WebProcess/WebPage/DrawingArea.messages.in: +* WebProcess/WebPage/DrawingAreaImpl.cpp: +(WebKit::DrawingAreaImpl::setNativeSurfaceHandleForComposit
[webkit-changes] [176929] trunk/Tools
Title: [176929] trunk/Tools Revision 176929 Author y...@igalia.com Date 2014-12-07 11:58:13 -0800 (Sun, 07 Dec 2014) Log Message Update style checker to deal with const override https://bugs.webkit.org/show_bug.cgi?id=139371 Reviewed by Csaba Osztrogonác. check-webkit-style shouldn't complain about an open brace to start a line after a function definition with const override. * Scripts/webkitpy/style/checkers/cpp.py: (check_braces): * Scripts/webkitpy/style/checkers/cpp_unittest.py: (CppStyleTest.test_brace_at_begin_of_line): Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/style/checkers/cpp.py trunk/Tools/Scripts/webkitpy/style/checkers/cpp_unittest.py Diff Modified: trunk/Tools/ChangeLog (176928 => 176929) --- trunk/Tools/ChangeLog 2014-12-07 19:24:14 UTC (rev 176928) +++ trunk/Tools/ChangeLog 2014-12-07 19:58:13 UTC (rev 176929) @@ -1,3 +1,18 @@ +2014-12-07 Gwang Yoon Hwang y...@igalia.com + +Update style checker to deal with const override +https://bugs.webkit.org/show_bug.cgi?id=139371 + +Reviewed by Csaba Osztrogonác. + +check-webkit-style shouldn't complain about an open brace to start a +line after a function definition with const override. + +* Scripts/webkitpy/style/checkers/cpp.py: +(check_braces): +* Scripts/webkitpy/style/checkers/cpp_unittest.py: +(CppStyleTest.test_brace_at_begin_of_line): + 2014-12-07 Carlos Garcia Campos cgar...@igalia.com [GTK] Fix GObject DOM bindings API break tests after r176920 Modified: trunk/Tools/Scripts/webkitpy/style/checkers/cpp.py (176928 => 176929) --- trunk/Tools/Scripts/webkitpy/style/checkers/cpp.py 2014-12-07 19:24:14 UTC (rev 176928) +++ trunk/Tools/Scripts/webkitpy/style/checkers/cpp.py 2014-12-07 19:58:13 UTC (rev 176929) @@ -2421,7 +2421,7 @@ # We also allow '#' for #endif and '=' for array initialization, # and '- (' and '+ (' for Objective-C methods. previous_line = get_previous_non_blank_line(clean_lines, line_number)[0] -if ((not search(r'[;:}{)=]\s*$|\)\s*((const|override)\s*)?(-\s*\S+)?\s*$', previous_line) +if ((not search(r'[;:}{)=]\s*$|\)\s*((const|override|const override)\s*)?(-\s*\S+)?\s*$', previous_line) or search(r'\b(if|for|while|switch|else|NS_ENUM)\b', previous_line)) and previous_line.find('#') 0 and previous_line.find('- (') != 0 Modified: trunk/Tools/Scripts/webkitpy/style/checkers/cpp_unittest.py (176928 => 176929) --- trunk/Tools/Scripts/webkitpy/style/checkers/cpp_unittest.py 2014-12-07 19:24:14 UTC (rev 176928) +++ trunk/Tools/Scripts/webkitpy/style/checkers/cpp_unittest.py 2014-12-07 19:58:13 UTC (rev 176929) @@ -1651,6 +1651,11 @@ '{\n' '}\n', '') +self.assert_multi_line_lint( +'int foo() const override\n' +'{\n' +'}\n', +'') def test_mismatching_spaces_in_parens(self): self.assert_lint('if (foo ) {', 'Extra space before ) in if' ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [176931] trunk/Source/WebCore
Title: [176931] trunk/Source/WebCore Revision 176931 Author y...@igalia.com Date 2014-12-07 14:00:59 -0800 (Sun, 07 Dec 2014) Log Message [TextureMapper] Normalize pattern transform for pattern compositing https://bugs.webkit.org/show_bug.cgi?id=139374 Reviewed by Martin Robinson. In CoordGfx/TexMapGL, pattern compositing (for background image) uses the patternTransform shader uniform. However, current implementation miscalculates its transform matrix. It uses simple rectToRect transformationMatrix which produces unnormalized garbage term. This causes unexpected behavior at the fragmentation stage in some mobile GPUs. It should calculate its scale based on tileSize and contentSize, and its position based on tilePhase and contentSize. No new tests because the bug only occurs on some mobile GPUs. * platform/graphics/texmap/TextureMapperLayer.cpp: (WebCore::TextureMapperLayer::computePatternTransformIfNeeded): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (176930 => 176931) --- trunk/Source/WebCore/ChangeLog 2014-12-07 20:05:17 UTC (rev 176930) +++ trunk/Source/WebCore/ChangeLog 2014-12-07 22:00:59 UTC (rev 176931) @@ -1,3 +1,25 @@ +2014-12-07 Gwang Yoon Hwang y...@igalia.com + +[TextureMapper] Normalize pattern transform for pattern compositing +https://bugs.webkit.org/show_bug.cgi?id=139374 + +Reviewed by Martin Robinson. + +In CoordGfx/TexMapGL, pattern compositing (for background image) uses +the patternTransform shader uniform. However, current implementation +miscalculates its transform matrix. It uses simple rectToRect +transformationMatrix which produces unnormalized garbage term. +This causes unexpected behavior at the fragmentation stage in some +mobile GPUs. + +It should calculate its scale based on tileSize and contentSize, +and its position based on tilePhase and contentSize. + +No new tests because the bug only occurs on some mobile GPUs. + +* platform/graphics/texmap/TextureMapperLayer.cpp: +(WebCore::TextureMapperLayer::computePatternTransformIfNeeded): + 2014-12-07 Youenn Fablet youenn.fab...@crf.canon.fr [Soup][Curl] HTTP header values should be treated as latin1, not UTF-8 Modified: trunk/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp (176930 => 176931) --- trunk/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp 2014-12-07 20:05:17 UTC (rev 176930) +++ trunk/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp 2014-12-07 22:00:59 UTC (rev 176931) @@ -99,7 +99,7 @@ m_patternTransformDirty = false; m_patternTransform = -TransformationMatrix::rectToRect(FloatRect(FloatPoint::zero(), m_state.contentsTileSize), m_state.contentsRect) +TransformationMatrix::rectToRect(FloatRect(FloatPoint::zero(), m_state.contentsTileSize), FloatRect(FloatPoint::zero(), m_state.contentsRect.size())) .multiply(TransformationMatrix().translate(m_state.contentsTilePhase.x() / m_state.contentsRect.width(), m_state.contentsTilePhase.y() / m_state.contentsRect.height())); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [176934] trunk/Source/WebKit2
Title: [176934] trunk/Source/WebKit2 Revision 176934 Author y...@igalia.com Date 2014-12-07 19:50:34 -0800 (Sun, 07 Dec 2014) Log Message [CoordinatedGraphics] Change the namespace of CoordinatedBackingStore and CoordinatedGraphicsScene https://bugs.webkit.org/show_bug.cgi?id=139372 Reviewed by Gyuyoung Kim. CoordinatedBackingStore and CoordinatedGraphicsScene should be declared in the WebKit namespace instead of WebCore namespace. * UIProcess/API/CoordinatedGraphics/WKCoordinatedScene.cpp: * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp: * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h: (WebKit::CoordinatedBackingStoreTile::CoordinatedBackingStoreTile): (WebKit::CoordinatedBackingStore::rect): (WebCore::CoordinatedBackingStoreTile::CoordinatedBackingStoreTile): Deleted. (WebCore::CoordinatedBackingStore::rect): Deleted. * UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: * UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.h: (WebKit::CoordinatedGraphicsScene::setViewBackgroundColor): (WebKit::CoordinatedGraphicsScene::viewBackgroundColor): (WebKit::CoordinatedGraphicsScene::layerByID): (WebKit::CoordinatedGraphicsScene::rootLayer): (WebCore::CoordinatedGraphicsScene::setViewBackgroundColor): Deleted. (WebCore::CoordinatedGraphicsScene::viewBackgroundColor): Deleted. (WebCore::CoordinatedGraphicsScene::layerByID): Deleted. (WebCore::CoordinatedGraphicsScene::rootLayer): Deleted. * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h: (WebKit::CoordinatedLayerTreeHostProxy::coordinatedGraphicsScene): * UIProcess/CoordinatedGraphics/WKCoordinatedSceneAPICast.h: (WebKit::toImpl): (WebKit::toAPI): (toImpl): Deleted. (toAPI): Deleted. * UIProcess/CoordinatedGraphics/WebView.h: Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/UIProcess/API/CoordinatedGraphics/WKCoordinatedScene.cpp trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.h trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/WKCoordinatedSceneAPICast.h trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/WebView.h Diff Modified: trunk/Source/WebKit2/ChangeLog (176933 => 176934) --- trunk/Source/WebKit2/ChangeLog 2014-12-07 23:25:59 UTC (rev 176933) +++ trunk/Source/WebKit2/ChangeLog 2014-12-08 03:50:34 UTC (rev 176934) @@ -1,3 +1,39 @@ +2014-12-07 Gwang Yoon Hwang y...@igalia.com + +[CoordinatedGraphics] Change the namespace of CoordinatedBackingStore and CoordinatedGraphicsScene +https://bugs.webkit.org/show_bug.cgi?id=139372 + +Reviewed by Gyuyoung Kim. + +CoordinatedBackingStore and CoordinatedGraphicsScene should be declared in the WebKit namespace +instead of WebCore namespace. + +* UIProcess/API/CoordinatedGraphics/WKCoordinatedScene.cpp: +* UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp: +* UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h: +(WebKit::CoordinatedBackingStoreTile::CoordinatedBackingStoreTile): +(WebKit::CoordinatedBackingStore::rect): +(WebCore::CoordinatedBackingStoreTile::CoordinatedBackingStoreTile): Deleted. +(WebCore::CoordinatedBackingStore::rect): Deleted. +* UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: +* UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.h: +(WebKit::CoordinatedGraphicsScene::setViewBackgroundColor): +(WebKit::CoordinatedGraphicsScene::viewBackgroundColor): +(WebKit::CoordinatedGraphicsScene::layerByID): +(WebKit::CoordinatedGraphicsScene::rootLayer): +(WebCore::CoordinatedGraphicsScene::setViewBackgroundColor): Deleted. +(WebCore::CoordinatedGraphicsScene::viewBackgroundColor): Deleted. +(WebCore::CoordinatedGraphicsScene::layerByID): Deleted. +(WebCore::CoordinatedGraphicsScene::rootLayer): Deleted. +* UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h: +(WebKit::CoordinatedLayerTreeHostProxy::coordinatedGraphicsScene): +* UIProcess/CoordinatedGraphics/WKCoordinatedSceneAPICast.h: +(WebKit::toImpl): +(WebKit::toAPI): +(toImpl): Deleted. +(toAPI): Deleted. +* UIProcess/CoordinatedGraphics/WebView.h: + 2014-12-07 Dan Bernstein m...@apple.com Introduce and deploy a function that allocates and returns an instance of a soft-linked class Modified: trunk/Source/WebKit2/UIProcess/API/CoordinatedGraphics/WKCoordinatedScene.cpp (176933 => 176934) --- trunk/Source/WebKit2/UIProcess/API/CoordinatedGraphics/WKCoordinatedScene.cpp 2014-12-07 23:25:59 UTC (rev 176933) +++ trunk/Source/W
[webkit-changes] [175208] trunk/LayoutTests
Title: [175208] trunk/LayoutTests Revision 175208 Author y...@igalia.com Date 2014-10-25 21:44:01 -0700 (Sat, 25 Oct 2014) Log Message [GTK] Unreviewed GTK gardening after r174685. * platform/gtk/TestExpectations: Report new failures and update expectations. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/gtk/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (175207 => 175208) --- trunk/LayoutTests/ChangeLog 2014-10-26 04:12:04 UTC (rev 175207) +++ trunk/LayoutTests/ChangeLog 2014-10-26 04:44:01 UTC (rev 175208) @@ -1,3 +1,9 @@ +2014-10-25 Gwang Yoon Hwang y...@igalia.com + +[GTK] Unreviewed GTK gardening after r174685. + +* platform/gtk/TestExpectations: Report new failures and update expectations. + 2014-10-25 Alexey Proskuryakov a...@apple.com Land Yosemite results for six editing/selection/vertical* tests. Modified: trunk/LayoutTests/platform/gtk/TestExpectations (175207 => 175208) --- trunk/LayoutTests/platform/gtk/TestExpectations 2014-10-26 04:12:04 UTC (rev 175207) +++ trunk/LayoutTests/platform/gtk/TestExpectations 2014-10-26 04:44:01 UTC (rev 175208) @@ -1146,7 +1146,7 @@ webkit.org/b/135095 fast/loader/child-frame-add-after-back-forward.html [ Timeout Pass ] -webkit.org/b/135531 fast/dom/Geolocation/requestQueuingForHiddenPage.html [ Timeout ] +webkit.org/b/135531 fast/dom/Geolocation/requestQueuingForHiddenPage.html [ Timeout Crash ] webkit.org/b/136069 fast/forms/mailto/formenctype-attribute-input-2.html [ Timeout Pass ] @@ -2136,9 +2136,23 @@ webkit.org/b/136754 css3/flexbox/csswg/flexbox_direction-row-reverse.html [ ImageOnlyFailure ] webkit.org/b/137109 accessibility/legend-children-are-visible.html [ Failure ] +webkit.org/b/138069 accessibility/table-column-headers-with-captions.html [ Failure ] webkit.org/b/137695 media/video-controls-audiotracks-trackmenu.html [ Failure ] +webkit.org/b/138074 media/video-volume-slider-drag.html [ Failure ] +webkit.org/b/138072 http/tests/xmlhttprequest/cross-origin-redirect-responseURL.html [ Failure ] +webkit.org/b/138073 http/tests/media/hls/hls-audio-tracks.html [ Failure ] + +# Font is clipped incorrectly +webkit.org/b/138077 editing/caret/color-span-inside-editable-background.html [ ImageOnlyFailure ] +webkit.org/b/138077 fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping.html [ ImageOnlyFailure ] + +# Smooth scrolling causes failure of scrolling tests +webkit.org/b/138078 fast/dom/vertical-scrollbar-in-rtl.html [ Failure ] +webkit.org/b/138078 fast/repaint/fixed-move-after-keyboard-scroll.html [ Failure ] +webkit.org/b/138078 fast/frames/flattening/scrolling-in-object.html [ ImageOnlyFailure ] + # Incomplete implementation of eventSender causes this test to fail webkit.org/b/42194 fast/scrolling/scroll-select-list.html [ ImageOnlyFailure ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [170284] trunk/Source/WebKit2
Title: [170284] trunk/Source/WebKit2 Revision 170284 Author y...@igalia.com Date 2014-06-23 00:27:05 -0700 (Mon, 23 Jun 2014) Log Message Unreviewed, GTK build fix after r170274. * WebProcess/WebPage/DrawingAreaImpl.cpp: Drawing::m_webPage changed to reference. (WebKit::DrawingAreaImpl::DrawingAreaImpl): (WebKit::DrawingAreaImpl::setNeedsDisplay): (WebKit::DrawingAreaImpl::setNeedsDisplayInRect): (WebKit::DrawingAreaImpl::forceRepaint): (WebKit::DrawingAreaImpl::updatePreferences): (WebKit::DrawingAreaImpl::layerHostDidFlushLayers): (WebKit::DrawingAreaImpl::updateBackingStoreState): (WebKit::DrawingAreaImpl::sendDidUpdateBackingStoreState): (WebKit::DrawingAreaImpl::enterAcceleratedCompositingMode): (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode): (WebKit::DrawingAreaImpl::display): * WebProcess/WebPage/DrawingAreaImpl.h: Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp trunk/Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.h Diff Modified: trunk/Source/WebKit2/ChangeLog (170283 => 170284) --- trunk/Source/WebKit2/ChangeLog 2014-06-23 07:10:45 UTC (rev 170283) +++ trunk/Source/WebKit2/ChangeLog 2014-06-23 07:27:05 UTC (rev 170284) @@ -1,3 +1,23 @@ +2014-06-23 Gwang Yoon Hwang y...@igalia.com + +Unreviewed, GTK build fix after r170274. + +* WebProcess/WebPage/DrawingAreaImpl.cpp: +Drawing::m_webPage changed to reference. + +(WebKit::DrawingAreaImpl::DrawingAreaImpl): +(WebKit::DrawingAreaImpl::setNeedsDisplay): +(WebKit::DrawingAreaImpl::setNeedsDisplayInRect): +(WebKit::DrawingAreaImpl::forceRepaint): +(WebKit::DrawingAreaImpl::updatePreferences): +(WebKit::DrawingAreaImpl::layerHostDidFlushLayers): +(WebKit::DrawingAreaImpl::updateBackingStoreState): +(WebKit::DrawingAreaImpl::sendDidUpdateBackingStoreState): +(WebKit::DrawingAreaImpl::enterAcceleratedCompositingMode): +(WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode): +(WebKit::DrawingAreaImpl::display): +* WebProcess/WebPage/DrawingAreaImpl.h: + 2014-06-22 Gyuyoung Kim gyuyoung@samsung.com REGRESSION(r170163): It made everything crash on EFL Modified: trunk/Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp (170283 => 170284) --- trunk/Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp 2014-06-23 07:10:45 UTC (rev 170283) +++ trunk/Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp 2014-06-23 07:27:05 UTC (rev 170284) @@ -48,7 +48,7 @@ m_layerTreeHost-invalidate(); } -DrawingAreaImpl::DrawingAreaImpl(WebPage* webPage, const WebPageCreationParameters parameters) +DrawingAreaImpl::DrawingAreaImpl(WebPage webPage, const WebPageCreationParameters parameters) : DrawingArea(DrawingAreaTypeImpl, webPage) , m_backingStoreStateID(0) , m_isPaintingEnabled(true) @@ -63,7 +63,7 @@ , m_displayTimer(RunLoop::main(), this, DrawingAreaImpl::displayTimerFired) , m_exitCompositingTimer(RunLoop::main(), this, DrawingAreaImpl::exitAcceleratedCompositingMode) { -if (webPage-corePage()-settings().acceleratedDrawingEnabled() || webPage-corePage()-settings().forceCompositingMode()) +if (webPage.corePage()-settings().acceleratedDrawingEnabled() || webPage.corePage()-settings().forceCompositingMode()) m_alwaysUseCompositing = true; if (m_alwaysUseCompositing) @@ -81,7 +81,7 @@ return; } -setNeedsDisplayInRect(m_webPage-bounds()); +setNeedsDisplayInRect(m_webPage.bounds()); } void DrawingAreaImpl::setNeedsDisplayInRect(const IntRect rect) @@ -96,7 +96,7 @@ } IntRect dirtyRect = rect; -dirtyRect.intersect(m_webPage-bounds()); +dirtyRect.intersect(m_webPage.bounds()); if (dirtyRect.isEmpty()) return; @@ -189,7 +189,7 @@ { setNeedsDisplay(); -m_webPage-layoutIfNeeded(); +m_webPage.layoutIfNeeded(); if (m_layerTreeHost) { // FIXME: We need to do the same work as the layerHostDidFlushLayers function here, @@ -252,7 +252,7 @@ void DrawingAreaImpl::updatePreferences(const WebPreferencesStore store) { -m_webPage-corePage()-settings().setForceCompositingMode(store.getBoolValueForKey(WebPreferencesKey::forceCompositingModeKey())); +m_webPage.corePage()-settings().setForceCompositingMode(store.getBoolValueForKey(WebPreferencesKey::forceCompositingModeKey())); } void DrawingAreaImpl::layerHostDidFlushLayers() @@ -271,7 +271,7 @@ ASSERT(!m_compositingAccordingToProxyMessages); if (!exitAcceleratedCompositingModePending()) { -m_webPage-send(Messages::DrawingAreaProxy::EnterAcceleratedCompositingMode(m_backingStoreStateID, m_layerTreeHost-layerTreeContext())); +m_webPage.send(Messages::DrawingAreaProxy::EnterAcceleratedCompositingMode(m_backingStoreStateID, m_layerTreeHost-layerTreeContext())); m_compositingAccordingToProxyMe
[webkit-changes] [170040] trunk/Tools
Title: [170040] trunk/Tools Revision 170040 Author y...@igalia.com Date 2014-06-16 19:26:36 -0700 (Mon, 16 Jun 2014) Log Message [GTK] Add llvmpipe (Mesa) to the JHBuild moduleset and force it when running layout tests https://bugs.webkit.org/show_bug.cgi?id=131472 Reviewed by Martin Robinson. This patch reapplies r167510 with fixes to add llvm as a dependency for llvmpipe. * Scripts/webkitpy/port/xvfbdriver.py: (XvfbDriver._start): Use the LLVMPIPE_LIBGL_PATH to set the LD_LIBRARY_PATH when running WebKitTestRunner with the Xvfb driver. * gtk/install-dependencies: Add LLVM as a dependency to build llvmpipe. * gtk/jhbuild.modules: Add Mesa to the modulelist so that the llvmpipe libGL is build, but not installed. * gtk/jhbuildrc: Set the LLVMPIPE_LIBGL_PATH environment variable so that the test driver knows how to properly set the LD_LIBRARY_PATH variable. We do this because it is much easier to calculate the path in the jhbuildrc than in the test driver code. This simplifies things a great deal. Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/port/xvfbdriver.py trunk/Tools/gtk/install-dependencies trunk/Tools/gtk/jhbuild.modules trunk/Tools/gtk/jhbuildrc Diff Modified: trunk/Tools/ChangeLog (170039 => 170040) --- trunk/Tools/ChangeLog 2014-06-17 02:17:56 UTC (rev 170039) +++ trunk/Tools/ChangeLog 2014-06-17 02:26:36 UTC (rev 170040) @@ -1,3 +1,23 @@ +2014-06-16 Gwang Yoon Hwang y...@igalia.com + +[GTK] Add llvmpipe (Mesa) to the JHBuild moduleset and force it when running layout tests +https://bugs.webkit.org/show_bug.cgi?id=131472 + +Reviewed by Martin Robinson. + +This patch reapplies r167510 with fixes to add llvm as a dependency for llvmpipe. + +* Scripts/webkitpy/port/xvfbdriver.py: +(XvfbDriver._start): Use the LLVMPIPE_LIBGL_PATH to set the LD_LIBRARY_PATH +when running WebKitTestRunner with the Xvfb driver. +* gtk/install-dependencies: Add LLVM as a dependency to build llvmpipe. +* gtk/jhbuild.modules: Add Mesa to the modulelist so that the llvmpipe libGL is build, but not +installed. +* gtk/jhbuildrc: Set the LLVMPIPE_LIBGL_PATH environment variable so that the test driver knows +how to properly set the LD_LIBRARY_PATH variable. We do this because it is much easier to +calculate the path in the jhbuildrc than in the test driver code. This simplifies things a great +deal. + 2014-06-16 Tanay C tana...@samsung.com Remove deprecated API warnings in WebKit/Tools/MiniBrowser/efl/main.c Modified: trunk/Tools/Scripts/webkitpy/port/xvfbdriver.py (170039 => 170040) --- trunk/Tools/Scripts/webkitpy/port/xvfbdriver.py 2014-06-17 02:17:56 UTC (rev 170039) +++ trunk/Tools/Scripts/webkitpy/port/xvfbdriver.py 2014-06-17 02:26:36 UTC (rev 170040) @@ -77,6 +77,13 @@ display_id = self._next_free_display() self._lock_file = /tmp/.X%d-lock % display_id +server_name = self._port.driver_name() +environment = self._port.setup_environ_for_server(server_name) + +llvmpipe_libgl_path = os.environ.get('LLVMPIPE_LIBGL_PATH') +if llvmpipe_libgl_path: +environment['LD_LIBRARY_PATH'] = '%s:%s' % (llvmpipe_libgl_path, os.environ.get('LD_LIBRARY_PATH', '')) + run_xvfb = [Xvfb, :%d % display_id, -screen, 0, 800x600x%s % self._xvfb_screen_depth(), -nolisten, tcp] with open(os.devnull, 'w') as devnull: self._xvfb_process = self._port.host.executive.popen(run_xvfb, stderr=devnull) @@ -85,8 +92,6 @@ # worker because the Xvfb display isn't ready yet. Halting execution a bit should avoid that. time.sleep(self._startup_delay_secs) -server_name = self._port.driver_name() -environment = self._port.setup_environ_for_server(server_name) # We must do this here because the DISPLAY number depends on _worker_number environment['DISPLAY'] = :%d % display_id self._driver_tempdir = self._port.host.filesystem.mkdtemp(prefix='%s-' % self._port.driver_name()) Modified: trunk/Tools/gtk/install-dependencies (170039 => 170040) --- trunk/Tools/gtk/install-dependencies 2014-06-17 02:17:56 UTC (rev 170039) +++ trunk/Tools/gtk/install-dependencies 2014-06-17 02:26:36 UTC (rev 170040) @@ -109,6 +109,7 @@ libtiff5-dev \ libxfont-dev \ libxkbfile-dev \ +llvm \ python-dev \ ragel \ x11proto-bigreqs-dev \ @@ -206,6 +207,7 @@ libpciaccess-devel \ libtiff-devel \ libxkbfile-devel \ +llvm \ mesa-libEGL-devel \ ragel \ xorg-x11-font-utils \ Modified: trunk/Tools/gtk/jhbuild.modules (170039 => 170040) --- trunk/Tools/gtk/jhbuild.modules 2014-06-17 02:17:56 UTC (rev 170039) +++ trunk/Tools/gtk/jhbuild.modules 2014-06-17 02:26:36 UTC (rev 170040) @@ -29,6 +29,7 @@ dep package=gst-plugins-bad/
[webkit-changes] [169610] trunk/Source/WebCore
Title: [169610] trunk/Source/WebCore Revision 169610 Author y...@igalia.com Date 2014-06-05 02:25:30 -0700 (Thu, 05 Jun 2014) Log Message [GTK] Remove ScrollViewGtk.cpp https://bugs.webkit.org/show_bug.cgi?id=133535 Reviewed by Carlos Garcia Campos. Because GTK+ WK1 was removed, we don't have to consider special cases handled in ScrollViewGtk.cpp. No new tests are necessary because there is no behavior change. * PlatformGTK.cmake: * platform/ScrollView.cpp: (WebCore::ScrollView::setScrollbarModes): (WebCore::ScrollView::visibleContentRectInternal): * platform/gtk/ScrollViewGtk.cpp: Removed. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/PlatformGTK.cmake trunk/Source/WebCore/platform/ScrollView.cpp Removed Paths trunk/Source/WebCore/platform/gtk/ScrollViewGtk.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (169609 => 169610) --- trunk/Source/WebCore/ChangeLog 2014-06-05 09:23:08 UTC (rev 169609) +++ trunk/Source/WebCore/ChangeLog 2014-06-05 09:25:30 UTC (rev 169610) @@ -1,3 +1,21 @@ +2014-06-05 Gwang Yoon Hwang y...@igalia.com + +[GTK] Remove ScrollViewGtk.cpp +https://bugs.webkit.org/show_bug.cgi?id=133535 + +Reviewed by Carlos Garcia Campos. + +Because GTK+ WK1 was removed, we don't have to consider special cases +handled in ScrollViewGtk.cpp. + +No new tests are necessary because there is no behavior change. + +* PlatformGTK.cmake: +* platform/ScrollView.cpp: +(WebCore::ScrollView::setScrollbarModes): +(WebCore::ScrollView::visibleContentRectInternal): +* platform/gtk/ScrollViewGtk.cpp: Removed. + 2014-06-05 Frédéric Wang fred.w...@free.fr MathML operators not stretched horizontally Modified: trunk/Source/WebCore/PlatformGTK.cmake (169609 => 169610) --- trunk/Source/WebCore/PlatformGTK.cmake 2014-06-05 09:23:08 UTC (rev 169609) +++ trunk/Source/WebCore/PlatformGTK.cmake 2014-06-05 09:25:30 UTC (rev 169610) @@ -225,7 +225,6 @@ platform/gtk/RenderThemeGtk.cpp platform/gtk/RenderThemeGtk2.cpp platform/gtk/RenderThemeGtk3.cpp -platform/gtk/ScrollViewGtk.cpp platform/gtk/ScrollbarThemeGtk.cpp platform/gtk/ScrollbarThemeGtk2.cpp platform/gtk/ScrollbarThemeGtk3.cpp Modified: trunk/Source/WebCore/platform/ScrollView.cpp (169609 => 169610) --- trunk/Source/WebCore/platform/ScrollView.cpp 2014-06-05 09:23:08 UTC (rev 169609) +++ trunk/Source/WebCore/platform/ScrollView.cpp 2014-06-05 09:25:30 UTC (rev 169610) @@ -132,7 +132,6 @@ return false; } -#if !PLATFORM(GTK) PassRefPtrScrollbar ScrollView::createScrollbar(ScrollbarOrientation orientation) { return Scrollbar::createNativeScrollbar(this, orientation, RegularScrollbar); @@ -167,7 +166,6 @@ else updateScrollbars(scrollOffset()); } -#endif void ScrollView::scrollbarModes(ScrollbarMode horizontalMode, ScrollbarMode verticalMode) const { @@ -307,7 +305,6 @@ return visibleContentSize; } -#if !PLATFORM(GTK) IntRect ScrollView::visibleContentRectInternal(VisibleContentRectIncludesScrollbars scrollbarInclusion, VisibleContentRectBehavior visibleContentRectBehavior) const { #if PLATFORM(IOS) @@ -332,7 +329,6 @@ return unobscuredContentRect(scrollbarInclusion); } -#endif IntSize ScrollView::layoutSize() const { Deleted: trunk/Source/WebCore/platform/gtk/ScrollViewGtk.cpp (169609 => 169610) --- trunk/Source/WebCore/platform/gtk/ScrollViewGtk.cpp 2014-06-05 09:23:08 UTC (rev 169609) +++ trunk/Source/WebCore/platform/gtk/ScrollViewGtk.cpp 2014-06-05 09:25:30 UTC (rev 169610) @@ -1,134 +0,0 @@ -/* - * Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved. - * Copyright (C) 2006 Michael Emmel mike.em...@gmail.com - * Copyright (C) 2007, 2009 Holger Hans Peter Freyther - * Copyright (C) 2008, 2010 Collabora Ltd. - * - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - *notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - *notice, this list of conditions and the following disclaimer in the - *documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY - *
[webkit-changes] [169441] trunk/Tools
Title: [169441] trunk/Tools Revision 169441 Author y...@igalia.com Date 2014-05-28 21:06:17 -0700 (Wed, 28 May 2014) Log Message Unreviewed. Update my email addresses in contributors.json. * Scripts/webkitpy/common/config/contributors.json: Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/common/config/contributors.json Diff Modified: trunk/Tools/ChangeLog (169440 => 169441) --- trunk/Tools/ChangeLog 2014-05-29 03:22:12 UTC (rev 169440) +++ trunk/Tools/ChangeLog 2014-05-29 04:06:17 UTC (rev 169441) @@ -1,3 +1,9 @@ +2014-05-28 Gwang Yoon Hwang y...@igalia.com + +Unreviewed. Update my email addresses in contributors.json. + +* Scripts/webkitpy/common/config/contributors.json: + 2014-05-27 Jon Honeycutt jhoneyc...@apple.com Need an API test for bug #133193 (r169315) Modified: trunk/Tools/Scripts/webkitpy/common/config/contributors.json (169440 => 169441) --- trunk/Tools/Scripts/webkitpy/common/config/contributors.json 2014-05-29 03:22:12 UTC (rev 169440) +++ trunk/Tools/Scripts/webkitpy/common/config/contributors.json 2014-05-29 04:06:17 UTC (rev 169441) @@ -974,10 +974,11 @@ }, Gwang Yoon Hwang : { emails : [ -ryum...@company100.net, -ryum...@company100.com +y...@igalia.com, +y...@webkit.org, +ryum...@company100.net ], - expertise : Accelerated Compositing, + expertise : Accelerated Compositing, WebKitGTK+, nicks : [ ryumiel ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes