WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
[patch]
Updated patch
bug-16123-20120302110556.patch (text/plain), 7.48 KB, created by
Zan Dobersek
on 2012-03-02 02:05:57 PST
(
hide
)
Description:
Updated patch
Filename:
MIME Type:
Creator:
Zan Dobersek
Created:
2012-03-02 02:05:57 PST
Size:
7.48 KB
patch
obsolete
>Subversion Revision: 109536 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index b5264b47e9cd5718a171c0829740d0a21ae3e30d..8a4dff4b8de737c68f3bc1b016aeabb6055fb4c8 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,18 @@ >+2012-03-02 Zan Dobersek <zandobersek@gmail.com> >+ >+ [GTK] Smooth scrolling support >+ https://bugs.webkit.org/show_bug.cgi?id=16123 >+ >+ Reviewed by Martin Robinson. >+ >+ No new tests - no new functionality. >+ >+ Add the ScrollAnimatorNone class to compilation and enable >+ the smooth scrolling feature by default at compilation time. >+ >+ * GNUmakefile.am: >+ * GNUmakefile.list.am: >+ > 2012-03-01 Vsevolod Vlasov <vsevik@chromium.org> > > Web Inspector: [InspectorIndexedDB] Show meaningful description for object store items values. >diff --git a/Source/WebKit/gtk/ChangeLog b/Source/WebKit/gtk/ChangeLog >index 0d484838b0f04f6d2ff1ca58db41d48acf85437d..7cb6da5ae1352134678c17474feae8cfee3bb194 100644 >--- a/Source/WebKit/gtk/ChangeLog >+++ b/Source/WebKit/gtk/ChangeLog >@@ -1,3 +1,21 @@ >+2012-03-02 Zan Dobersek <zandobersek@gmail.com> >+ >+ [GTK] Smooth scrolling support >+ https://bugs.webkit.org/show_bug.cgi?id=16123 >+ >+ Reviewed by Martin Robinson. >+ >+ Add a new settings option to enable smooth scrolling. >+ >+ * webkit/webkitwebsettings.cpp: >+ (webkit_web_settings_class_init): >+ (webkit_web_settings_set_property): >+ (webkit_web_settings_get_property): >+ * webkit/webkitwebsettingsprivate.h: >+ * webkit/webkitwebview.cpp: >+ (webkit_web_view_update_settings): >+ (webkit_web_view_settings_notify): >+ > 2012-03-01 Carlos Garcia Campos <cgarcia@igalia.com> > > [GTK] Simplify the code to adjust font sizes depending on screen DPI >diff --git a/Source/WebCore/GNUmakefile.am b/Source/WebCore/GNUmakefile.am >index 3c676879514f65546611a57340beb88e0b4ae836..f21e0f7b6a4df87eb07f283e6f08feca0fc9aec5 100644 >--- a/Source/WebCore/GNUmakefile.am >+++ b/Source/WebCore/GNUmakefile.am >@@ -112,6 +112,12 @@ webcoregtk_cppflags += \ > -I$(srcdir)/Source/WebCore/platform/network/soup > > # --- >+# Features enabled by default at compilation time >+# --- >+FEATURE_DEFINES += ENABLE_SMOOTH_SCROLLING=1 >+webcore_cppflags += -DENABLE_SMOOTH_SCROLLING=1 >+ >+# --- > # Channel mesaging support > # --- > if ENABLE_CHANNEL_MESSAGING >diff --git a/Source/WebCore/GNUmakefile.list.am b/Source/WebCore/GNUmakefile.list.am >index 956bb3a9350320149645f871cee494c488d16ced..0e3df767d6621c257cefda3246d4e3a97461d2ba 100644 >--- a/Source/WebCore/GNUmakefile.list.am >+++ b/Source/WebCore/GNUmakefile.list.am >@@ -3382,6 +3382,8 @@ webcore_sources += \ > Source/WebCore/platform/SchemeRegistry.h \ > Source/WebCore/platform/ScrollAnimator.cpp \ > Source/WebCore/platform/ScrollAnimator.h \ >+ Source/WebCore/platform/ScrollAnimatorNone.cpp \ >+ Source/WebCore/platform/ScrollAnimatorNone.h \ > Source/WebCore/platform/ScrollableArea.cpp \ > Source/WebCore/platform/ScrollableArea.h \ > Source/WebCore/platform/Scrollbar.cpp \ >diff --git a/Source/WebKit/gtk/webkit/webkitwebsettings.cpp b/Source/WebKit/gtk/webkit/webkitwebsettings.cpp >index bf6ff600d54a6b71d74725f21ff57b9457495683..2531258b3833e38540000cf8fad4263af0dca6e8 100644 >--- a/Source/WebKit/gtk/webkit/webkitwebsettings.cpp >+++ b/Source/WebKit/gtk/webkit/webkitwebsettings.cpp >@@ -120,7 +120,8 @@ enum { > PROP_ENABLE_DNS_PREFETCHING, > PROP_ENABLE_WEBGL, > PROP_ENABLE_WEB_AUDIO, >- PROP_ENABLE_ACCELERATED_COMPOSITING >+ PROP_ENABLE_ACCELERATED_COMPOSITING, >+ PROP_ENABLE_SMOOTH_SCROLLING > }; > > // Create a default user agent string >@@ -953,6 +954,22 @@ static void webkit_web_settings_class_init(WebKitWebSettingsClass* klass) > _("Whether WebKit prefetches domain names"), > TRUE, > flags)); >+ >+ /** >+ * WebKitWebSettings:enable-smooth-scrolling >+ * >+ * Enable or disable support for smooth scrolling. The current implementation relies upon >+ * CPU work to produce a smooth scrolling experience. >+ * >+ * Since: 1.9.0 >+ */ >+ g_object_class_install_property(gobject_class, >+ PROP_ENABLE_SMOOTH_SCROLLING, >+ g_param_spec_boolean("enable-smooth-scrolling", >+ _("Enable smooth scrolling"), >+ _("Whether to enable smooth scrolling"), >+ FALSE, >+ flags)); > } > > static void webkit_web_settings_init(WebKitWebSettings* web_settings) >@@ -1128,6 +1145,9 @@ static void webkit_web_settings_set_property(GObject* object, guint prop_id, con > case PROP_ENABLE_ACCELERATED_COMPOSITING: > priv->enableAcceleratedCompositing = g_value_get_boolean(value); > break; >+ case PROP_ENABLE_SMOOTH_SCROLLING: >+ priv->enableSmoothScrolling = g_value_get_boolean(value); >+ break; > default: > G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec); > break; >@@ -1293,6 +1313,9 @@ static void webkit_web_settings_get_property(GObject* object, guint prop_id, GVa > case PROP_ENABLE_ACCELERATED_COMPOSITING: > g_value_set_boolean(value, priv->enableAcceleratedCompositing); > break; >+ case PROP_ENABLE_SMOOTH_SCROLLING: >+ g_value_set_boolean(value, priv->enableSmoothScrolling); >+ break; > default: > G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec); > break; >diff --git a/Source/WebKit/gtk/webkit/webkitwebsettingsprivate.h b/Source/WebKit/gtk/webkit/webkitwebsettingsprivate.h >index d7d082e5bb3ffabbef4debc6a8e125afc7c72631..240d79fad75a027aaa5dff6b5df9c9730cc58e70 100644 >--- a/Source/WebKit/gtk/webkit/webkitwebsettingsprivate.h >+++ b/Source/WebKit/gtk/webkit/webkitwebsettingsprivate.h >@@ -80,6 +80,7 @@ struct _WebKitWebSettingsPrivate { > gboolean enableWebgl; > gboolean enableWebAudio; > gboolean enableAcceleratedCompositing; >+ gboolean enableSmoothScrolling; > }; > > WEBKIT_API void webkit_web_settings_add_extra_plugin_directory(WebKitWebView*, const gchar* directory); >diff --git a/Source/WebKit/gtk/webkit/webkitwebview.cpp b/Source/WebKit/gtk/webkit/webkitwebview.cpp >index 312c2e53cb2937751b4ead8fdd6ae9c3855b84db..ff5504e0fc80980b4df1eb31d282fe886356b234 100644 >--- a/Source/WebKit/gtk/webkit/webkitwebview.cpp >+++ b/Source/WebKit/gtk/webkit/webkitwebview.cpp >@@ -3341,6 +3341,10 @@ static void webkit_web_view_update_settings(WebKitWebView* webView) > coreSettings->setUseHixie76WebSocketProtocol(false); > #endif > >+#if ENABLE(SMOOTH_SCROLLING) >+ coreSettings->setEnableScrollAnimator(settingsPrivate->enableSmoothScrolling); >+#endif >+ > if (Page* page = core(webView)) > page->setTabKeyCyclesThroughElements(settingsPrivate->tabKeyCyclesThroughElements); > >@@ -3470,6 +3474,11 @@ static void webkit_web_view_settings_notify(WebKitWebSettings* webSettings, GPar > settings->setWebAudioEnabled(g_value_get_boolean(&value)); > #endif > >+#if ENABLE(SMOOTH_SCROLLING) >+ else if (name == g_intern_string("enable-smooth-scrolling")) >+ settings->setEnableScrollAnimator(g_value_get_boolean(&value)); >+#endif >+ > else if (!g_object_class_find_property(G_OBJECT_GET_CLASS(webSettings), name)) > g_warning("Unexpected setting '%s'", name); > g_value_unset(&value);
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 16123
:
95622
|
102527
|
127560
|
127700
|
127937
|
128212
| 129852