|Summary:||Turn on compile time switch for WebGL, but have runtime switch default to off|
|Product:||WebKit||Reporter:||Chris Marrin <cmarrin>|
|Severity:||Normal||CC:||darin, kbr, mjs, oliver|
|Version:||528+ (Nightly build)|
|OS:||OS X 10.5|
Description Chris Marrin 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.
Comment 1 Mark Rowe (bdash) 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?
Comment 2 Chris Marrin 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.
Comment 3 Chris Marrin 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.
Comment 4 Darin Adler 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.
Comment 5 Chris Marrin 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.
Comment 6 Chris Marrin 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.