[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.15.1-1414-gc69ee75
dglazkov at chromium.org
dglazkov at chromium.org
Thu Oct 29 20:36:14 UTC 2009
The following commit has been merged in the webkit-1.1 branch:
commit 5063cff94b98acc0a5c7500b8cbc69ffa5601afa
Author: dglazkov at chromium.org <dglazkov at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Tue Sep 29 19:49:13 2009 +0000
WebCore:
2009-09-29 Kenneth Russell <kbr at google.com>
Reviewed by Dimitri Glazkov.
Add support for run-time flag for 3D canvas
https://bugs.webkit.org/show_bug.cgi?id=29826
* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::getContext): Check page settings for
experimental WebGL flag before returning 3D graphics context.
* page/Settings.cpp:
(WebCore::Settings::Settings): Initialize new flag to false.
(WebCore::Settings::setExperimentalWebGLEnabled):
* page/Settings.h: Set new flag.
(WebCore::Settings::experimentalWebGLEnabled): Return new flag.
WebKit/mac:
2009-09-29 Kenneth Russell <kbr at google.com>
Reviewed by Dimitri Glazkov.
Add support for run-time flag for 3D canvas
https://bugs.webkit.org/show_bug.cgi?id=29826
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]): Enable experimental
WebGL flag when 3D_CANVAS is enabled in the build.
WebKit/win:
2009-09-29 Kenneth Russell <kbr at google.com>
Reviewed by Dimitri Glazkov.
Add support for run-time flag for 3D canvas
https://bugs.webkit.org/show_bug.cgi?id=29826
* WebView.cpp:
(WebView::notifyPreferencesChanged): Enable experimental WebGL
flag when 3D_CANVAS is enabled in the build.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48893 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 02b0cf4..3938c9f 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,19 @@
+2009-09-29 Kenneth Russell <kbr at google.com>
+
+ Reviewed by Dimitri Glazkov.
+
+ Add support for run-time flag for 3D canvas
+ https://bugs.webkit.org/show_bug.cgi?id=29826
+
+ * html/HTMLCanvasElement.cpp:
+ (WebCore::HTMLCanvasElement::getContext): Check page settings for
+ experimental WebGL flag before returning 3D graphics context.
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings): Initialize new flag to false.
+ (WebCore::Settings::setExperimentalWebGLEnabled):
+ * page/Settings.h: Set new flag.
+ (WebCore::Settings::experimentalWebGLEnabled): Return new flag.
+
2009-09-29 Jeremy Orlow <jorlow at chromium.org>
Reviewed by Darin Fisher.
diff --git a/WebCore/WebCore.base.exp b/WebCore/WebCore.base.exp
index 7542741..a43aab1 100644
--- a/WebCore/WebCore.base.exp
+++ b/WebCore/WebCore.base.exp
@@ -636,6 +636,7 @@ __ZN7WebCore8Settings25setShouldPrintBackgroundsEb
__ZN7WebCore8Settings25setUserStyleSheetLocationERKNS_4KURLE
__ZN7WebCore8Settings26setDefaultTextEncodingNameERKNS_6StringE
__ZN7WebCore8Settings26setNeedsSiteSpecificQuirksEb
+__ZN7WebCore8Settings27setExperimentalWebGLEnabledEb
__ZN7WebCore8Settings27setFTPDirectoryTemplatePathERKNS_6StringE
__ZN7WebCore8Settings27setLoadsImagesAutomaticallyEb
__ZN7WebCore8Settings27setLocalStorageDatabasePathERKNS_6StringE
diff --git a/WebCore/html/HTMLCanvasElement.cpp b/WebCore/html/HTMLCanvasElement.cpp
index c8202fd..9b2f70c 100644
--- a/WebCore/html/HTMLCanvasElement.cpp
+++ b/WebCore/html/HTMLCanvasElement.cpp
@@ -165,17 +165,20 @@ CanvasRenderingContext* HTMLCanvasElement::getContext(const String& type)
return m_context.get();
}
#if ENABLE(3D_CANVAS)
- if ((type == "webkit-3d") ||
- (type == "GL")) {
- if (m_context && !m_context->is3d())
- return 0;
- if (!m_context) {
- m_context = new CanvasRenderingContext3D(this);
-
- // Need to make sure a RenderLayer and compositing layer get created for the Canvas
- setNeedsStyleRecalc(SyntheticStyleChange);
+ Settings* settings = document()->settings();
+ if (settings && settings->experimentalWebGLEnabled()) {
+ if ((type == "webkit-3d") ||
+ (type == "GL")) {
+ if (m_context && !m_context->is3d())
+ return 0;
+ if (!m_context) {
+ m_context = new CanvasRenderingContext3D(this);
+
+ // Need to make sure a RenderLayer and compositing layer get created for the Canvas
+ setNeedsStyleRecalc(SyntheticStyleChange);
+ }
+ return m_context.get();
}
- return m_context.get();
}
#endif
return 0;
diff --git a/WebCore/page/Settings.cpp b/WebCore/page/Settings.cpp
index 4426587..ab438a1 100644
--- a/WebCore/page/Settings.cpp
+++ b/WebCore/page/Settings.cpp
@@ -117,6 +117,7 @@ Settings::Settings(Page* page)
, m_acceleratedCompositingEnabled(true)
, m_experimentalNotificationsEnabled(false)
, m_pluginHalterEnabled(false)
+ , m_experimentalWebGLEnabled(false)
#if ENABLE(WEB_SOCKETS)
, m_experimentalWebSocketsEnabled(false)
#endif
@@ -531,6 +532,11 @@ void Settings::setShouldUseHighResolutionTimers(bool shouldUseHighResolutionTime
}
#endif
+void Settings::setExperimentalWebGLEnabled(bool enabled)
+{
+ m_experimentalWebGLEnabled = enabled;
+}
+
#if ENABLE(WEB_SOCKETS)
void Settings::setExperimentalWebSocketsEnabled(bool enabled)
{
diff --git a/WebCore/page/Settings.h b/WebCore/page/Settings.h
index 2e6b4e6..ec9c8f9 100644
--- a/WebCore/page/Settings.h
+++ b/WebCore/page/Settings.h
@@ -267,6 +267,11 @@ namespace WebCore {
void setPluginAllowedRunTime(unsigned);
unsigned pluginAllowedRunTime() const { return m_pluginAllowedRunTime; }
+ // This run-time flag is only temporary while the WebGL
+ // specification is being developed.
+ void setExperimentalWebGLEnabled(bool);
+ bool experimentalWebGLEnabled() const { return m_experimentalWebGLEnabled; }
+
#if ENABLE(WEB_SOCKETS)
void setExperimentalWebSocketsEnabled(bool);
bool experimentalWebSocketsEnabled() const { return m_experimentalWebSocketsEnabled; }
@@ -339,6 +344,7 @@ namespace WebCore {
bool m_acceleratedCompositingEnabled : 1;
bool m_experimentalNotificationsEnabled : 1;
bool m_pluginHalterEnabled : 1;
+ bool m_experimentalWebGLEnabled : 1;
#if ENABLE(WEB_SOCKETS)
bool m_experimentalWebSocketsEnabled : 1;
diff --git a/WebKit/mac/ChangeLog b/WebKit/mac/ChangeLog
index 8de4587..61a8f6a 100644
--- a/WebKit/mac/ChangeLog
+++ b/WebKit/mac/ChangeLog
@@ -1,3 +1,14 @@
+2009-09-29 Kenneth Russell <kbr at google.com>
+
+ Reviewed by Dimitri Glazkov.
+
+ Add support for run-time flag for 3D canvas
+ https://bugs.webkit.org/show_bug.cgi?id=29826
+
+ * WebView/WebView.mm:
+ (-[WebView _preferencesChangedNotification:]): Enable experimental
+ WebGL flag when 3D_CANVAS is enabled in the build.
+
2009-09-28 Fumitoshi Ukai <ukai at chromium.org>
Reviewed by Eric Seidel.
diff --git a/WebKit/mac/WebView/WebView.mm b/WebKit/mac/WebView/WebView.mm
index b1b4165..04b8950 100644
--- a/WebKit/mac/WebView/WebView.mm
+++ b/WebKit/mac/WebView/WebView.mm
@@ -1313,6 +1313,9 @@ static bool fastDocumentTeardownEnabled()
settings->setXSSAuditorEnabled([preferences isXSSAuditorEnabled]);
settings->setEnforceCSSMIMETypeInStrictMode(!WKAppVersionCheckLessThan(@"com.apple.iWeb", -1, 2.1));
settings->setAcceleratedCompositingEnabled([preferences acceleratedCompositingEnabled]);
+#if ENABLE(3D_CANVAS)
+ settings->setExperimentalWebGLEnabled(true);
+#endif // ENABLE(3D_CANVAS)
}
static inline IMP getMethod(id o, SEL s)
diff --git a/WebKit/win/ChangeLog b/WebKit/win/ChangeLog
index ab6e38e..0746516 100644
--- a/WebKit/win/ChangeLog
+++ b/WebKit/win/ChangeLog
@@ -1,3 +1,14 @@
+2009-09-29 Kenneth Russell <kbr at google.com>
+
+ Reviewed by Dimitri Glazkov.
+
+ Add support for run-time flag for 3D canvas
+ https://bugs.webkit.org/show_bug.cgi?id=29826
+
+ * WebView.cpp:
+ (WebView::notifyPreferencesChanged): Enable experimental WebGL
+ flag when 3D_CANVAS is enabled in the build.
+
2009-09-28 Alexey Proskuryakov <ap at apple.com>
Reviewed by Darin Adler and Sam Weinig.
diff --git a/WebKit/win/WebView.cpp b/WebKit/win/WebView.cpp
index 89e4688..07e3ad1 100644
--- a/WebKit/win/WebView.cpp
+++ b/WebKit/win/WebView.cpp
@@ -4452,6 +4452,10 @@ HRESULT WebView::notifyPreferencesChanged(IWebNotification* notification)
return hr;
settings->setPluginAllowedRunTime(runTime);
+#if ENABLE(3D_CANVAS)
+ settings->setExperimentalWebGLEnabled(true);
+#endif // ENABLE(3D_CANVAS)
+
if (!m_closeWindowTimer.isActive())
m_mainFrame->invalidate(); // FIXME
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list