Title: [98327] trunk/Source/WebKit2
Revision
98327
Author
carlo...@webkit.org
Date
2011-10-25 01:37:35 -0700 (Tue, 25 Oct 2011)

Log Message

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

Reviewed by Martin Robinson.

* UIProcess/API/gtk/WebKitBackForwardListItem.cpp:
(webkitBackForwardListItemGetWKItem):
* UIProcess/API/gtk/WebKitBackForwardListPrivate.h:
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_go_to_back_forward_list_item):
* UIProcess/API/gtk/WebKitWebView.h:
* UIProcess/API/gtk/tests/TestBackForwardList.cpp:
(testBackForwardListNavigation):

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (98326 => 98327)


--- trunk/Source/WebKit2/ChangeLog	2011-10-25 08:24:14 UTC (rev 98326)
+++ trunk/Source/WebKit2/ChangeLog	2011-10-25 08:37:35 UTC (rev 98327)
@@ -1,3 +1,19 @@
+2011-10-25  Carlos Garcia Campos  <cgar...@igalia.com>
+
+        [GTK] Add go_to_back_forward_list_item() to WebKit2 GTK+ API
+        https://bugs.webkit.org/show_bug.cgi?id=69825
+
+        Reviewed by Martin Robinson.
+
+        * UIProcess/API/gtk/WebKitBackForwardListItem.cpp:
+        (webkitBackForwardListItemGetWKItem):
+        * UIProcess/API/gtk/WebKitBackForwardListPrivate.h:
+        * UIProcess/API/gtk/WebKitWebView.cpp:
+        (webkit_web_view_go_to_back_forward_list_item):
+        * UIProcess/API/gtk/WebKitWebView.h:
+        * UIProcess/API/gtk/tests/TestBackForwardList.cpp:
+        (testBackForwardListNavigation):
+
 2011-10-25  Vamshikrishna Yellenki  <vam...@motorola.com>
 
         [WK2]Critical warning while building WebKit2 GTK+

Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitBackForwardListItem.cpp (98326 => 98327)


--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitBackForwardListItem.cpp	2011-10-25 08:24:14 UTC (rev 98326)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitBackForwardListItem.cpp	2011-10-25 08:37:35 UTC (rev 98327)
@@ -93,6 +93,11 @@
     return listItem;
 }
 
+WKBackForwardListItemRef webkitBackForwardListItemGetWKItem(WebKitBackForwardListItem* listItem)
+{
+    return listItem->priv->wkListItem.get();
+}
+
 /**
  * webkit_back_forward_list_item_get_uri:
  * @back_forward_list_item: a #WebKitBackForwardListItem

Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitBackForwardListPrivate.h (98326 => 98327)


--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitBackForwardListPrivate.h	2011-10-25 08:24:14 UTC (rev 98326)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitBackForwardListPrivate.h	2011-10-25 08:37:35 UTC (rev 98327)
@@ -32,6 +32,7 @@
 
 WebKitBackForwardList* webkitBackForwardListCreate(WKBackForwardListRef);
 WebKitBackForwardListItem* webkitBackForwardListItemGetOrCreate(WKBackForwardListItemRef);
+WKBackForwardListItemRef webkitBackForwardListItemGetWKItem(WebKitBackForwardListItem*);
 void webkitBackForwardListChanged(WebKitBackForwardList*, WKBackForwardListItemRef wkAddedItem, WKArrayRef wkRemovedItems);
 
 #endif // WebKitBackForwardListPrivate_h

Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp (98326 => 98327)


--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp	2011-10-25 08:24:14 UTC (rev 98326)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp	2011-10-25 08:37:35 UTC (rev 98327)
@@ -482,3 +482,21 @@
 
     return webView->priv->backForwardList.get();
 }
+
+/**
+ * webkit_web_view_go_to_back_forward_list_item:
+ * @web_view: a #WebKitWebView
+ * @list_item: a #WebKitBackForwardListItem
+ *
+ * Loads the specific history item @list_item.
+ * You can monitor the status of the load operation using the
+ * #WebKitWebLoaderClient of @web_view. See webkit_web_view_get_loader_client().
+ */
+void webkit_web_view_go_to_back_forward_list_item(WebKitWebView* webView, WebKitBackForwardListItem* listItem)
+{
+    g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
+    g_return_if_fail(WEBKIT_IS_BACK_FORWARD_LIST_ITEM(listItem));
+
+    WKPageGoToBackForwardListItem(toAPI(webkitWebViewBaseGetPage(WEBKIT_WEB_VIEW_BASE(webView))),
+                                  webkitBackForwardListItemGetWKItem(listItem));
+}

Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebView.h (98326 => 98327)


--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebView.h	2011-10-25 08:24:14 UTC (rev 98326)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebView.h	2011-10-25 08:37:35 UTC (rev 98327)
@@ -66,69 +66,72 @@
 };
 
 WEBKIT_API GType
-webkit_web_view_get_type                    (void);
+webkit_web_view_get_type                     (void);
 
 WEBKIT_API GtkWidget *
-webkit_web_view_new                         (void);
+webkit_web_view_new                          (void);
 
 WEBKIT_API GtkWidget *
-webkit_web_view_new_with_context            (WebKitWebContext      *context);
+webkit_web_view_new_with_context             (WebKitWebContext          *context);
 
 WEBKIT_API WebKitWebContext *
-webkit_web_view_get_context                 (WebKitWebView         *web_view);
+webkit_web_view_get_context                  (WebKitWebView             *web_view);
 
 WEBKIT_API WebKitWebLoaderClient *
-webkit_web_view_get_loader_client           (WebKitWebView         *web_view);
+webkit_web_view_get_loader_client            (WebKitWebView             *web_view);
 
 WEBKIT_API void
-webkit_web_view_set_loader_client           (WebKitWebView         *web_view,
-                                             WebKitWebLoaderClient *loader_client);
+webkit_web_view_set_loader_client            (WebKitWebView             *web_view,
+                                              WebKitWebLoaderClient     *loader_client);
 
 WEBKIT_API void
-webkit_web_view_load_uri                    (WebKitWebView         *web_view,
-                                             const gchar           *uri);
+webkit_web_view_load_uri                     (WebKitWebView             *web_view,
+                                              const gchar               *uri);
 
 WEBKIT_API void
-webkit_web_view_load_alternate_html         (WebKitWebView         *web_view,
-                                             const gchar           *content,
-                                             const gchar           *base_uri,
-                                             const gchar           *unreachable_uri);
+webkit_web_view_load_alternate_html          (WebKitWebView             *web_view,
+                                              const gchar               *content,
+                                              const gchar               *base_uri,
+                                              const gchar               *unreachable_uri);
 
 WEBKIT_API void
-webkit_web_view_stop_loading                (WebKitWebView         *web_view);
+webkit_web_view_stop_loading                 (WebKitWebView             *web_view);
 
 WEBKIT_API void
-webkit_web_view_reload                      (WebKitWebView         *web_view);
+webkit_web_view_reload                       (WebKitWebView             *web_view);
 
 WEBKIT_API void
-webkit_web_view_reload_bypass_cache         (WebKitWebView         *web_view);
+webkit_web_view_reload_bypass_cache          (WebKitWebView             *web_view);
 
+WEBKIT_API gdouble
+webkit_web_view_get_estimated_load_progress  (WebKitWebView             *web_vew);
+
 WEBKIT_API void
-webkit_web_view_go_back                     (WebKitWebView         *web_view);
+webkit_web_view_go_back                      (WebKitWebView             *web_view);
 
 WEBKIT_API gboolean
-webkit_web_view_can_go_back                 (WebKitWebView         *web_view);
+webkit_web_view_can_go_back                  (WebKitWebView             *web_view);
 
 WEBKIT_API void
-webkit_web_view_go_forward                  (WebKitWebView         *web_view);
+webkit_web_view_go_forward                   (WebKitWebView             *web_view);
 
+WEBKIT_API gboolean
+webkit_web_view_can_go_forward               (WebKitWebView             *web_view);
+
 WEBKIT_API WebKitBackForwardList *
-webkit_web_view_get_back_forward_list       (WebKitWebView         *web_view);
+webkit_web_view_get_back_forward_list        (WebKitWebView             *web_view);
 
-WEBKIT_API gboolean
-webkit_web_view_can_go_forward              (WebKitWebView         *web_view);
+WEBKIT_API void
+webkit_web_view_go_to_back_forward_list_item (WebKitWebView             *web_view,
+                                              WebKitBackForwardListItem *list_item);
 
 WEBKIT_API const gchar *
-webkit_web_view_get_custom_charset          (WebKitWebView         *web_view);
+webkit_web_view_get_custom_charset           (WebKitWebView             *web_view);
 
 WEBKIT_API void
-webkit_web_view_set_custom_charset          (WebKitWebView         *web_view,
-                                             const gchar           *charset);
+webkit_web_view_set_custom_charset           (WebKitWebView             *web_view,
+                                              const gchar               *charset);
 
-WEBKIT_API gdouble
-webkit_web_view_get_estimated_load_progress (WebKitWebView         *web_vew);
-
-
 G_END_DECLS
 
 #endif

Modified: trunk/Source/WebKit2/UIProcess/API/gtk/tests/TestBackForwardList.cpp (98326 => 98327)


--- trunk/Source/WebKit2/UIProcess/API/gtk/tests/TestBackForwardList.cpp	2011-10-25 08:24:14 UTC (rev 98326)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/tests/TestBackForwardList.cpp	2011-10-25 08:37:35 UTC (rev 98327)
@@ -230,6 +230,12 @@
     items[0] = itemPage1;
     BackForwardListTest::checkList(test->m_list, BackForwardListTest::Backward, items, 1);
     g_assert(!webkit_back_forward_list_get_forward_list(test->m_list));
+
+    test->m_changedFlags = BackForwardListTest::CurrentItem;
+    webkit_web_view_go_to_back_forward_list_item(test->m_webView, itemPage1);
+    test->waitUntilLoadFinished();
+
+    g_assert(itemPage1 == webkit_back_forward_list_get_current_item(test->m_list));
 }
 
 static void testBackForwardListLimitAndCache(BackForwardListTest* test, gconstpointer)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to