RESOLVED FIXED 29906
Turn on compile time switch for WebGL, but have runtime switch default to off
https://bugs.webkit.org/show_bug.cgi?id=29906
Summary Turn on compile time switch for WebGL, but have runtime switch default to off
Chris Marrin
Reported 2009-09-29 16:40:29 PDT
A decision has been (nearly) made to turn on the ENABLE_3D_CANVAS switch in nightlies but to have the runtime switch (recently added in https://bugs.webkit.org/show_bug.cgi?id=29826) default to off.
Attachments
Patch (10.47 KB, patch)
2009-09-30 14:51 PDT, Chris Marrin
oliver: review+
Replacement patch fixes LayoutTests (35.23 KB, patch)
2009-10-01 17:17 PDT, Chris Marrin
oliver: review+
Mark Rowe (bdash)
Comment 1 2009-09-29 18:27:39 PDT
Presumably this will involve adding a user default to control the preference so that people can enable this for testing without having to recompile?
Chris Marrin
Comment 2 2009-09-30 09:44:01 PDT
Right. There will be a flag in prefs, "webGLEnabled" which will be off by default and you can use 'default write' to turn it on. We could also add a menu item to the Debug menu in Safari if we want, like we did for acceleratedCompositingEnabled.
Chris Marrin
Comment 3 2009-09-30 14:51:32 PDT
Created attachment 40401 [details] Patch This patch also changes the name of the flag from experimentalWebGLEnabled to webGLEnabled. While it's true this feature is still in development, it's a standard in-progress so I don't want people to get the idea that this is a WebKit specific experiment. And I don't want to either have this legacy when the standard is ratified or have to change the name of the flag (which is in the plist) when it is ratified.
Darin Adler
Comment 4 2009-10-01 11:21:45 PDT
(In reply to comment #3) > This patch also changes the name of the flag from experimentalWebGLEnabled to > webGLEnabled. While it's true this feature is still in development, it's a > standard in-progress so I don't want people to get the idea that this is a > WebKit specific experiment. Keep in mind that often for standards-track things we still use things like -webkit- prefixes on CSS properties in case the standard changes after we ship an initial version. The name of the flag is not important, but shipping an early version of something that becomes standard with some changes later can cause compatibility problems down the road, so is something we should think about. In that sense this is "experimental" as all implementations before a standard is relatively firm and stable are. I don't object to your decision, but wanted to make the point.
Chris Marrin
Comment 5 2009-10-01 17:17:57 PDT
Created attachment 40486 [details] Replacement patch fixes LayoutTests More extensive layout tests revealed some problems, which revealed a bug in WebGL. All fixed now.
Chris Marrin
Comment 6 2009-10-01 17:25:36 PDT
Sending LayoutTests/ChangeLog Sending LayoutTests/fast/canvas/webgl/gl-get-calls.html Sending LayoutTests/fast/dom/Window/window-properties.html Sending LayoutTests/fast/dom/script-tests/constructed-objects-prototypes.js Sending LayoutTests/fast/dom/script-tests/prototype-inheritance-2.js Sending LayoutTests/fast/dom/script-tests/prototype-inheritance.js Sending LayoutTests/fast/js/script-tests/global-constructors.js Sending WebCore/ChangeLog Sending WebCore/Configurations/FeatureDefines.xcconfig Sending WebCore/WebCore.base.exp Sending WebCore/bindings/js/JSCanvasArrayBufferConstructor.h Sending WebCore/html/HTMLCanvasElement.cpp Sending WebCore/html/canvas/CanvasArray.cpp Sending WebCore/html/canvas/CanvasByteArray.cpp Sending WebCore/html/canvas/CanvasFloatArray.cpp Sending WebCore/html/canvas/CanvasIntArray.cpp Sending WebCore/html/canvas/CanvasShortArray.cpp Sending WebCore/html/canvas/CanvasUnsignedByteArray.cpp Sending WebCore/html/canvas/CanvasUnsignedIntArray.cpp Sending WebCore/html/canvas/CanvasUnsignedShortArray.cpp Sending WebCore/page/Settings.cpp Sending WebCore/page/Settings.h Sending WebKit/mac/ChangeLog Sending WebKit/mac/Configurations/FeatureDefines.xcconfig Sending WebKit/mac/WebView/WebPreferenceKeysPrivate.h Sending WebKit/mac/WebView/WebPreferences.mm Sending WebKit/mac/WebView/WebPreferencesPrivate.h Sending WebKit/mac/WebView/WebView.mm Sending WebKitTools/ChangeLog Sending WebKitTools/Scripts/build-webkit Transmitting file data .............................. Committed revision 49006.
Note You need to log in before you can comment on or make changes to this bug.