RESOLVED WONTFIX 108735
[CAIRO][EFL][QT][WebGL] Share common code in GraphicsContext3D.
https://bugs.webkit.org/show_bug.cgi?id=108735
Summary [CAIRO][EFL][QT][WebGL] Share common code in GraphicsContext3D.
Kalyan
Reported 2013-02-01 18:06:40 PST
Currently all the three ports have almost the same code related to Gl Resources (initialization ,deletion etc) in GraphicsContext3D. All the platform layer stuff is handled in Private part. ImageExtractor code could also be shared between efl and cairo atleast.
Attachments
WIP (70.81 KB, patch)
2013-02-01 18:30 PST, Kalyan
no flags
WIP (70.64 KB, patch)
2013-02-01 19:24 PST, Kalyan
no flags
WIP (85.61 KB, patch)
2013-02-02 17:18 PST, Kalyan
no flags
WIP (53.85 KB, patch)
2013-02-07 10:02 PST, Kalyan
no flags
patch (53.21 KB, patch)
2013-02-07 13:21 PST, Kalyan
no flags
patch (66.03 KB, patch)
2013-02-12 16:18 PST, Kalyan
webkit-ews: commit-queue-
patchv3 (92.21 KB, patch)
2013-02-14 01:59 PST, Kalyan
webkit-ews: commit-queue-
patchv4 (92.70 KB, patch)
2013-02-14 05:42 PST, Kalyan
no flags
patchv5 (92.69 KB, patch)
2013-02-14 06:19 PST, Kalyan
no flags
patchv6 (92.78 KB, patch)
2013-02-14 12:18 PST, Kalyan
no flags
Kalyan
Comment 1 2013-02-01 18:30:40 PST
Kalyan
Comment 2 2013-02-01 19:24:58 PST
Kalyan
Comment 3 2013-02-02 17:18:15 PST
Created attachment 186242 [details] WIP Now we have the common code in GraphicsContext3DCommon.cpp. I placed it under texmap for now. Cairo specific part is still present in GraphicsContext3DCairo and qt specific in GraphicsContext3DQt.cpp PlatformLayer(GraphicsContext3DPrivate) specific code exists as before.
Zeno Albisser
Comment 4 2013-02-04 02:41:53 PST
Comment on attachment 186242 [details] WIP View in context: https://bugs.webkit.org/attachment.cgi?id=186242&action=review > Source/WebCore/GNUmakefile.list.am:6416 > + Source/WebCore/platform/graphics/texmap/GraphicsContext3DCommon.cpp indentation? > Source/WebCore/GNUmakefile.list.am:6474 > + Source/WebCore/platform/graphics/texmap/GraphicsContext3DPlatformLayer.h \ indentation? > Source/WebCore/GNUmakefile.list.am:6483 > + Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayer.h whitespace change only? > Source/WebCore/platform/graphics/cairo/GraphicsContext3DCairo.cpp:68 > + // 2. For texImage2D with HTMLCanvasElement input in which Alpha is already Premultiplied in this port, whitespace change only? ... in some more spaces as well. May be check your editor settings. I think this looks generally okay. :)
Kalyan
Comment 5 2013-02-07 10:02:21 PST
Martin Robinson
Comment 6 2013-02-07 10:12:58 PST
Comment on attachment 187131 [details] WIP View in context: https://bugs.webkit.org/attachment.cgi?id=187131&action=review > Source/WebCore/platform/graphics/texmap/GraphicsContext3DCommon.cpp:1 > +/* The TextureMapper sits logically on top of GraphicsContext3D, so storing GraphicsContext3D in the texmap directory may not be the most accurate. Perhaps somewhere in opengl?
Kalyan
Comment 7 2013-02-07 10:21:03 PST
(In reply to comment #6) > (From update of attachment 187131 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=187131&action=review > The TextureMapper sits logically on top of GraphicsContext3D, so storing GraphicsContext3D in the texmap directory may not be the most accurate. Perhaps somewhere in opengl? Agree, this was temporary. Any suggestions for the file name :) I already see GraphicsContext3DOpenGLCommon.cpp under opengl folder
Kenneth Rohde Christiansen
Comment 8 2013-02-07 10:30:13 PST
What about OpenGLShared... seems more common in the webkit project
Kalyan
Comment 9 2013-02-07 13:21:27 PST
Kalyan
Comment 10 2013-02-07 13:22:52 PST
(In reply to comment #8) > What about OpenGLShared... seems more common in the webkit project K, I moved the Common part under opengl and renamed it as SharedGraphicsContext3DOpenGL. Does that sound k or any other proposals are welcome. Other option we have is to include this in GraphicsContext3DOpenGLCommon.cpp and if def it for three ports.
Kalyan
Comment 11 2013-02-12 16:18:23 PST
WebKit Review Bot
Comment 12 2013-02-12 16:21:23 PST
Attachment 187957 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCore/GNUmakefile.list.am', u'Source/WebCore/PlatformEfl.cmake', u'Source/WebCore/Target.pri', u'Source/WebCore/platform/graphics/efl/GraphicsContext3DEfl.cpp', u'Source/WebCore/platform/graphics/opengl/SharedGraphicsContext3DOpenGL.cpp', u'Source/WebCore/platform/graphics/qt/GraphicsContext3DPrivate.cpp', u'Source/WebCore/platform/graphics/qt/GraphicsContext3DPrivate.h', u'Source/WebCore/platform/graphics/qt/GraphicsContext3DQt.cpp', u'Source/WebCore/platform/graphics/surfaces/GraphicsSurface.h', u'Source/WebCore/platform/graphics/surfaces/GraphicsSurfaceToken.h', u'Source/WebCore/platform/graphics/texmap/GraphicsContext3DPlatformLayer.cpp', u'Source/WebCore/platform/graphics/texmap/GraphicsContext3DPlatformLayer.h', u'Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayer.h', u'Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h']" exit_code: 1 Source/WebCore/platform/graphics/qt/GraphicsContext3DPrivate.cpp:103: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Total errors found: 1 in 13 files If any of these errors are false positives, please file a bug against check-webkit-style.
Early Warning System Bot
Comment 13 2013-02-12 16:24:11 PST
Early Warning System Bot
Comment 14 2013-02-12 16:24:38 PST
EFL EWS Bot
Comment 15 2013-02-12 16:28:27 PST
Kalyan
Comment 16 2013-02-14 01:59:28 PST
Created attachment 188292 [details] patchv3 second try with ews
Early Warning System Bot
Comment 17 2013-02-14 02:09:31 PST
Early Warning System Bot
Comment 18 2013-02-14 02:11:21 PST
Kalyan
Comment 19 2013-02-14 05:42:32 PST
Created attachment 188330 [details] patchv4 qtbuild break fix
WebKit Review Bot
Comment 20 2013-02-14 05:46:13 PST
Attachment 188330 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCore/GNUmakefile.list.am', u'Source/WebCore/PlatformEfl.cmake', u'Source/WebCore/Target.pri', u'Source/WebCore/platform/graphics/GraphicsContext3D.h', u'Source/WebCore/platform/graphics/cairo/GraphicsContext3DCairo.cpp', u'Source/WebCore/platform/graphics/cairo/GraphicsContext3DPrivate.cpp', u'Source/WebCore/platform/graphics/cairo/GraphicsContext3DPrivate.h', u'Source/WebCore/platform/graphics/efl/GraphicsContext3DEfl.cpp', u'Source/WebCore/platform/graphics/efl/GraphicsContext3DPrivate.cpp', u'Source/WebCore/platform/graphics/efl/GraphicsContext3DPrivate.h', u'Source/WebCore/platform/graphics/opengl/SharedGraphicsContext3DOpenGL.cpp', u'Source/WebCore/platform/graphics/qt/GraphicsContext3DPrivate.cpp', u'Source/WebCore/platform/graphics/qt/GraphicsContext3DPrivate.h', u'Source/WebCore/platform/graphics/qt/GraphicsContext3DQt.cpp', u'Source/WebCore/platform/graphics/surfaces/GraphicsSurface.cpp', u'Source/WebCore/platform/graphics/surfaces/GraphicsSurface.h', u'Source/WebCore/platform/graphics/surfaces/GraphicsSurfaceToken.h', u'Source/WebCore/platform/graphics/surfaces/qt/GraphicsSurfaceQt.cpp', u'Source/WebCore/platform/graphics/texmap/GraphicsContext3DPlatformLayer.cpp', u'Source/WebCore/platform/graphics/texmap/GraphicsContext3DPlatformLayer.h', u'Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayer.h', u'Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h']" exit_code: 1 Source/WebCore/platform/graphics/surfaces/qt/GraphicsSurfaceQt.cpp:26: Alphabetical sorting problem. [build/include_order] [4] Total errors found: 1 in 21 files If any of these errors are false positives, please file a bug against check-webkit-style.
Kalyan
Comment 21 2013-02-14 06:19:24 PST
Kenneth Rohde Christiansen
Comment 22 2013-02-14 06:32:28 PST
Comment on attachment 188333 [details] patchv5 View in context: https://bugs.webkit.org/attachment.cgi?id=188333&action=review > Source/WebCore/ChangeLog:13 > + that the common code is shared by all three > + ports. why newline? > Source/WebCore/GNUmakefile.list.am:1309 > $(WebCore)/Modules/webaudio/OfflineAudioCompletionEvent.idl \ > - $(WebCore)/Modules/webaudio/OscillatorNode.idl \ > + $(WebCore)/Modules/webaudio/OscillatorNode.idl \ > $(WebCore)/Modules/webaudio/AnalyserNode.idl \ > $(WebCore)/Modules/webaudio/WaveShaperNode.idl \ > - $(WebCore)/Modules/webaudio/WaveTable.idl \ > + $(WebCore)/Modules/webaudio/WaveTable.idl \ > $(WebCore)/Modules/webdatabase/DOMWindowWebDatabase.idl \ This seems very unrelated > Source/WebCore/platform/graphics/cairo/GraphicsContext3DCairo.cpp:5 > + * Copyright (C) 2012 Intel Corporation. Dont we write All rights reserved?
Kalyan
Comment 23 2013-02-14 12:18:17 PST
Kalyan
Comment 24 2013-02-14 12:24:21 PST
(In reply to comment #22) > (From update of attachment 188333 [details]) > > $(WebCore)/Modules/webaudio/OfflineAudioCompletionEvent.idl \ > > - $(WebCore)/Modules/webaudio/OscillatorNode.idl \ > > + $(WebCore)/Modules/webaudio/OscillatorNode.idl \ > > $(WebCore)/Modules/webaudio/AnalyserNode.idl \ > > $(WebCore)/Modules/webaudio/WaveShaperNode.idl \ > > - $(WebCore)/Modules/webaudio/WaveTable.idl \ > > + $(WebCore)/Modules/webaudio/WaveTable.idl \ > > $(WebCore)/Modules/webdatabase/DOMWindowWebDatabase.idl \ > > This seems very unrelated Cleaned it up as I was making changes to the file. I will try to separate them into another patch. > > Dont we write All rights reserved? Fixed.
Kalyan
Comment 25 2013-02-14 15:06:05 PST
Comment on attachment 188398 [details] patchv6 removing request for review and marking the patch obsolete. I will try to break down the patch into smaller ones and create separate issues for each part.
Michael Catanzaro
Comment 26 2017-03-11 10:41:37 PST
Closing this bug because the EFL port has been removed from trunk. If you feel this bug applies to a different upstream WebKit port and was closed in error, please either update the title and reopen the bug, or leave a comment to request this.
Note You need to log in before you can comment on or make changes to this bug.