Title: [98846] trunk/Source/WebKit2
Revision
98846
Author
carlo...@webkit.org
Date
2011-10-31 04:55:52 -0700 (Mon, 31 Oct 2011)

Log Message

[GTK] Add webkit_settings_new_with_settings() to WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=71111

Reviewed by Martin Robinson.

Convenient method to create a WebKitSettings object with initial
settings.

* UIProcess/API/gtk/WebKitSettings.cpp:
(webkit_settings_new_with_settings):
* UIProcess/API/gtk/WebKitSettings.h:
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
* UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
(testWebKitSettingsNewWithSettings):
(beforeAll):

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (98845 => 98846)


--- trunk/Source/WebKit2/ChangeLog	2011-10-31 11:45:37 UTC (rev 98845)
+++ trunk/Source/WebKit2/ChangeLog	2011-10-31 11:55:52 UTC (rev 98846)
@@ -1,5 +1,23 @@
 2011-10-31  Carlos Garcia Campos  <cgar...@igalia.com>
 
+        [GTK] Add webkit_settings_new_with_settings() to WebKit2 GTK+ API
+        https://bugs.webkit.org/show_bug.cgi?id=71111
+
+        Reviewed by Martin Robinson.
+
+        Convenient method to create a WebKitSettings object with initial
+        settings.
+
+        * UIProcess/API/gtk/WebKitSettings.cpp:
+        (webkit_settings_new_with_settings):
+        * UIProcess/API/gtk/WebKitSettings.h:
+        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
+        * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
+        (testWebKitSettingsNewWithSettings):
+        (beforeAll):
+
+2011-10-31  Carlos Garcia Campos  <cgar...@igalia.com>
+
         [GTK] Add methods to get/set the settings of a web view to WebKit2 GTK+ API
         https://bugs.webkit.org/show_bug.cgi?id=71109
 

Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp (98845 => 98846)


--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp	2011-10-31 11:45:37 UTC (rev 98845)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp	2011-10-31 11:55:52 UTC (rev 98846)
@@ -388,7 +388,8 @@
  * webkit_settings_new:
  *
  * Creates a new #WebKitSettings instance with default values. It must
- * be manually attached to a WebView.
+ * be manually attached to a #WebKitWebView.
+ * See also webkit_settings_new_with_settings().
  *
  * Returns: a new #WebKitSettings instance.
  */
@@ -398,6 +399,26 @@
 }
 
 /**
+ * webkit_settings_new_with_settings:
+ * @first_setting_name: name of first setting to set
+ * @...: value of first setting, followed by more settings,
+ *    %NULL-terminated
+ *
+ * Creates a new #WebKitSettings instance with the given settings. It must
+ * be manually attached to a #WebKitWebView.
+ *
+ * Returns: a new #WebKitSettings instance.
+ */
+WebKitSettings* webkit_settings_new_with_settings(const gchar* firstSettingName, ...)
+{
+    va_list args;
+    va_start(args, firstSettingName);
+    WebKitSettings* settings = WEBKIT_SETTINGS(g_object_new_valist(WEBKIT_TYPE_SETTINGS, firstSettingName, args));
+    va_end(args);
+    return settings;
+}
+
+/**
  * webkit_settings_get_enable_javascript:
  * @settings: a #WebKitSettings
  *

Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.h (98845 => 98846)


--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.h	2011-10-31 11:45:37 UTC (rev 98845)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.h	2011-10-31 11:55:52 UTC (rev 98846)
@@ -71,90 +71,94 @@
 webkit_settings_get_type(void);
 
 WEBKIT_API WebKitSettings *
-webkit_settings_new(void);
+webkit_settings_new                                            (void);
 
+WEBKIT_API WebKitSettings *
+webkit_settings_new_with_settings                              (const gchar    *first_setting_name,
+                                                                ...);
+
 WEBKIT_API gboolean
-webkit_settings_get_enable_javascript                          (WebKitSettings* settings);
+webkit_settings_get_enable_javascript                          (WebKitSettings *settings);
 
 WEBKIT_API void
-webkit_settings_set_enable_javascript                          (WebKitSettings* settings,
-                                                                gboolean enabled);
+webkit_settings_set_enable_javascript                          (WebKitSettings *settings,
+                                                                gboolean        enabled);
 
 WEBKIT_API gboolean
-webkit_settings_get_auto_load_images                           (WebKitSettings* settings);
+webkit_settings_get_auto_load_images                           (WebKitSettings *settings);
 
 WEBKIT_API void
-webkit_settings_set_auto_load_images                           (WebKitSettings* settings,
-                                                                gboolean enabled);
+webkit_settings_set_auto_load_images                           (WebKitSettings *settings,
+                                                                gboolean        enabled);
 
 WEBKIT_API gboolean
-webkit_settings_get_load_icons_ignoring_image_load_setting     (WebKitSettings* settings);
+webkit_settings_get_load_icons_ignoring_image_load_setting     (WebKitSettings *settings);
 
 WEBKIT_API void
-webkit_settings_set_load_icons_ignoring_image_load_setting     (WebKitSettings* settings,
-                                                                gboolean enabled);
+webkit_settings_set_load_icons_ignoring_image_load_setting     (WebKitSettings *settings,
+                                                                gboolean        enabled);
 
 WEBKIT_API gboolean
-webkit_settings_get_enable_offline_web_application_cache       (WebKitSettings* settings);
+webkit_settings_get_enable_offline_web_application_cache       (WebKitSettings *settings);
 
 WEBKIT_API void
-webkit_settings_set_enable_offline_web_application_cache       (WebKitSettings* settings,
-                                                                gboolean enabled);
+webkit_settings_set_enable_offline_web_application_cache       (WebKitSettings *settings,
+                                                                gboolean        enabled);
 
 WEBKIT_API gboolean
-webkit_settings_get_enable_html5_local_storage                 (WebKitSettings* settings);
+webkit_settings_get_enable_html5_local_storage                 (WebKitSettings *settings);
 
 WEBKIT_API void
-webkit_settings_set_enable_html5_local_storage                 (WebKitSettings* settings,
-                                                                gboolean enabled);
+webkit_settings_set_enable_html5_local_storage                 (WebKitSettings *settings,
+                                                                gboolean        enabled);
 
 WEBKIT_API gboolean
-webkit_settings_get_enable_html5_database                      (WebKitSettings* settings);
+webkit_settings_get_enable_html5_database                      (WebKitSettings *settings);
 
 WEBKIT_API void
-webkit_settings_set_enable_html5_database                      (WebKitSettings* settings,
-                                                                gboolean enabled);
+webkit_settings_set_enable_html5_database                      (WebKitSettings *settings,
+                                                                gboolean        enabled);
 WEBKIT_API gboolean
-webkit_settings_get_enable_xss_auditor                         (WebKitSettings* settings);
+webkit_settings_get_enable_xss_auditor                         (WebKitSettings *settings);
 
 WEBKIT_API void
-webkit_settings_set_enable_xss_auditor                         (WebKitSettings* settings,
-                                                                gboolean enabled);
+webkit_settings_set_enable_xss_auditor                         (WebKitSettings *settings,
+                                                                gboolean        enabled);
 
 WEBKIT_API gboolean
-webkit_settings_get_enable_frame_flattening                    (WebKitSettings* settings);
+webkit_settings_get_enable_frame_flattening                    (WebKitSettings *settings);
 
 WEBKIT_API void
-webkit_settings_set_enable_frame_flattening                    (WebKitSettings* settings,
-                                                                gboolean enabled);
+webkit_settings_set_enable_frame_flattening                    (WebKitSettings *settings,
+                                                                gboolean        enabled);
 
 WEBKIT_API gboolean
-webkit_settings_get_enable_plugins                             (WebKitSettings* settings);
+webkit_settings_get_enable_plugins                             (WebKitSettings *settings);
 
 WEBKIT_API void
-webkit_settings_set_enable_plugins                             (WebKitSettings* settings,
-                                                                gboolean enabled);
+webkit_settings_set_enable_plugins                             (WebKitSettings *settings,
+                                                                gboolean        enabled);
 
 WEBKIT_API gboolean
-webkit_settings_get_enable_java                                (WebKitSettings* settings);
+webkit_settings_get_enable_java                                (WebKitSettings *settings);
 
 WEBKIT_API void
-webkit_settings_set_enable_java                                (WebKitSettings* settings,
-                                                                gboolean enabled);
+webkit_settings_set_enable_java                                (WebKitSettings *settings,
+                                                                gboolean        enabled);
 
 WEBKIT_API gboolean
-webkit_settings_get_javascript_can_open_windows_automatically  (WebKitSettings* settings);
+webkit_settings_get_javascript_can_open_windows_automatically  (WebKitSettings *settings);
 
 WEBKIT_API void
-webkit_settings_set_javascript_can_open_windows_automatically  (WebKitSettings* settings,
-                                                                gboolean enabled);
+webkit_settings_set_javascript_can_open_windows_automatically  (WebKitSettings *settings,
+                                                                gboolean        enabled);
 
 WEBKIT_API gboolean
-webkit_settings_get_enable_hyperlink_auditing                  (WebKitSettings* settings);
+webkit_settings_get_enable_hyperlink_auditing                  (WebKitSettings *settings);
 
 WEBKIT_API void
-webkit_settings_set_enable_hyperlink_auditing                  (WebKitSettings* settings,
-                                                                gboolean enabled);
+webkit_settings_set_enable_hyperlink_auditing                  (WebKitSettings *settings,
+                                                                gboolean        enabled);
 
 G_END_DECLS
 

Modified: trunk/Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-sections.txt (98845 => 98846)


--- trunk/Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-sections.txt	2011-10-31 11:45:37 UTC (rev 98845)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-sections.txt	2011-10-31 11:55:52 UTC (rev 98846)
@@ -151,6 +151,7 @@
 <FILE>WebKitSettings</FILE>
 WebKitSettings
 webkit_settings_new
+webkit_settings_new_with_settings
 webkit_settings_get_auto_load_images
 webkit_settings_set_auto_load_images
 webkit_settings_get_enable_frame_flattening

Modified: trunk/Source/WebKit2/UIProcess/API/gtk/tests/TestWebKitSettings.cpp (98845 => 98846)


--- trunk/Source/WebKit2/UIProcess/API/gtk/tests/TestWebKitSettings.cpp	2011-10-31 11:45:37 UTC (rev 98845)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/tests/TestWebKitSettings.cpp	2011-10-31 11:55:52 UTC (rev 98846)
@@ -31,6 +31,7 @@
 #include "config.h"
 
 #include "TestMain.h"
+#include <_javascript_Core/GRefPtr.h>
 #include <gtk/gtk.h>
 #include <webkit2/webkit2.h>
 
@@ -105,9 +106,22 @@
 #endif
 }
 
+void testWebKitSettingsNewWithSettings(Test* test, gconstpointer)
+{
+    GRefPtr<WebKitSettings> settings = adoptGRef(webkit_settings_new_with_settings("enable-_javascript_", FALSE,
+                                                                                   "auto-load-images", FALSE,
+                                                                                   "load-icons-ignoring-image-load-setting", TRUE,
+                                                                                   NULL));
+    test->assertObjectIsDeletedWhenTestFinishes(G_OBJECT(settings.get()));
+    g_assert(!webkit_settings_get_enable_javascript(settings.get()));
+    g_assert(!webkit_settings_get_auto_load_images(settings.get()));
+    g_assert(webkit_settings_get_load_icons_ignoring_image_load_setting(settings.get()));
+}
+
 void beforeAll()
 {
     Test::add("WebKitSettings", "webkit-settings", testWebKitSettings);
+    Test::add("WebKitSettings", "new-with-settings", testWebKitSettingsNewWithSettings);
 }
 
 void afterAll()
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to