In bug #118251 I reintroduced WebGL without graphics surfaces. It does however do inefficient pixel copies from one OpenGL context to the other. A few simple changes should allow us to do more effective texture copy.
Created attachment 205908 [details] Patch
Comment on attachment 205908 [details] Patch LGTM
Comment on attachment 205908 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=205908&action=review > Source/WebCore/platform/graphics/qt/GraphicsContext3DQt.cpp:257 > +#else What happens if we're running WebKit2 in a !USE(GRAPHICS_SURFACE) build? Maybe we also need runtime detection for WK1/2. > Source/WebCore/platform/graphics/qt/GraphicsContext3DQt.cpp:263 > + Not needed.
(In reply to comment #3) > (From update of attachment 205908 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=205908&action=review > > > Source/WebCore/platform/graphics/qt/GraphicsContext3DQt.cpp:257 > > +#else > > What happens if we're running WebKit2 in a !USE(GRAPHICS_SURFACE) build? Maybe we also need runtime detection for WK1/2. > There was a crash I have fixed, but we do not support canvas content in coordinated graphics without graphics-surfaces.
Created attachment 207244 [details] Patch
Comment on attachment 205908 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=205908&action=review >>> Source/WebCore/platform/graphics/qt/GraphicsContext3DQt.cpp:257 >>> +#else >> >> What happens if we're running WebKit2 in a !USE(GRAPHICS_SURFACE) build? Maybe we also need runtime detection for WK1/2. > > There was a crash I have fixed, but we do not support canvas content in coordinated graphics without graphics-surfaces. Ok I was wrong, paintToTextureMapper will never be called for WK2 and "textureMapper->accelerationMode() == TextureMapper::OpenGLMode" will be enough to pick the right code path.
Comment on attachment 207244 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=207244&action=review > Source/WebCore/platform/graphics/qt/GraphicsContext3DQt.cpp:98 > + bool m_canPaintDirectly; r=me if you remove this member.
Committed r152969: <http://trac.webkit.org/changeset/152969>