[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
commit-queue at webkit.org
commit-queue at webkit.org
Wed Dec 22 15:32:16 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit 955a9e0002acaded28827018b91dba4ea89ec278
Author: commit-queue at webkit.org <commit-queue at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Sat Nov 6 05:52:23 2010 +0000
2010-11-05 Nicolas Dufresne <nicolas.dufresne at collabora.co.uk>
Reviewed by Martin Robinson.
[GTK] Link with target name set does not work correctly
https://bugs.webkit.org/show_bug.cgi?id=48865
When a new page is created with a name (target=myFrame), the new
mainFrame could not be found because they where not stored in the
same PageGroup. As PageGroup are not exposed externally so the
simpliest solution is to use a global page group name. This also fixes
issue with visited link coloration across pages. After this change the
private function webkit_web_view_set_group_name() was no longer used
so it was removed completly.
* WebCoreSupport/ChromeClientGtk.cpp:
(WebKit::ChromeClient::closeWindowSoon):
* webkit/webkitprivate.h:
* webkit/webkitwebview.cpp:
(webkit_web_view_init):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@71466 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit/gtk/ChangeLog b/WebKit/gtk/ChangeLog
index bb6dd84..2d49d64 100644
--- a/WebKit/gtk/ChangeLog
+++ b/WebKit/gtk/ChangeLog
@@ -1,3 +1,24 @@
+2010-11-05 Nicolas Dufresne <nicolas.dufresne at collabora.co.uk>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Link with target name set does not work correctly
+ https://bugs.webkit.org/show_bug.cgi?id=48865
+
+ When a new page is created with a name (target=myFrame), the new
+ mainFrame could not be found because they where not stored in the
+ same PageGroup. As PageGroup are not exposed externally so the
+ simpliest solution is to use a global page group name. This also fixes
+ issue with visited link coloration across pages. After this change the
+ private function webkit_web_view_set_group_name() was no longer used
+ so it was removed completly.
+
+ * WebCoreSupport/ChromeClientGtk.cpp:
+ (WebKit::ChromeClient::closeWindowSoon):
+ * webkit/webkitprivate.h:
+ * webkit/webkitwebview.cpp:
+ (webkit_web_view_init):
+
2010-11-05 Chris Marrin <cmarrin at apple.com>
Reviewed by Simon Fraser.
diff --git a/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp b/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp
index e864ea7..f330fca 100644
--- a/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp
+++ b/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp
@@ -255,10 +255,6 @@ void ChromeClient::closeWindowSoon()
if (isHandled)
return;
-
- // FIXME: should we clear the frame group name here explicitly? Mac does it.
- // But this gets cleared in Page's destructor anyway.
- // webkit_web_view_set_group_name(m_webView, "");
}
bool ChromeClient::canTakeFocus(FocusDirection)
diff --git a/WebKit/gtk/webkit/webkitprivate.h b/WebKit/gtk/webkit/webkitprivate.h
index 3ac3563..7385677 100644
--- a/WebKit/gtk/webkit/webkitprivate.h
+++ b/WebKit/gtk/webkit/webkitprivate.h
@@ -388,9 +388,6 @@ extern "C" {
webkit_web_view_get_selected_text (WebKitWebView* web_view);
WEBKIT_API void
- webkit_web_view_set_group_name(WebKitWebView* web_view, const gchar* group_name);
-
- WEBKIT_API void
webkit_web_settings_add_extra_plugin_directory (WebKitWebView *web_view, const gchar* directory);
GSList*
diff --git a/WebKit/gtk/webkit/webkitwebview.cpp b/WebKit/gtk/webkit/webkitwebview.cpp
index a3d6c21..4da9e3a 100644
--- a/WebKit/gtk/webkit/webkitwebview.cpp
+++ b/WebKit/gtk/webkit/webkitwebview.cpp
@@ -3248,6 +3248,12 @@ static void webkit_web_view_init(WebKitWebView* webView)
pageClients.inspectorClient = new WebKit::InspectorClient(webView);
priv->corePage = new Page(pageClients);
+ // Pages within a same session need to be linked together otherwise some functionalities such
+ // as visited link coloration (across pages) and changing popup window location will not work.
+ // To keep the default behavior simple (and because no PageGroup API exist in WebKitGTK at the
+ // time of writing this comment), we simply set all the pages to the same group.
+ priv->corePage->setGroupName("WebKitGTK");
+
// We also add a simple wrapper class to provide the public
// interface for the Web Inspector.
priv->webInspector = adoptPlatformRef(WEBKIT_WEB_INSPECTOR(g_object_new(WEBKIT_TYPE_WEB_INSPECTOR, NULL)));
@@ -4513,18 +4519,6 @@ void webkit_web_view_move_cursor(WebKitWebView* webView, GtkMovementStep step, g
g_signal_emit(webView, webkit_web_view_signals[MOVE_CURSOR], 0, step, count, &handled);
}
-void webkit_web_view_set_group_name(WebKitWebView* webView, const gchar* groupName)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- WebKitWebViewPrivate* priv = webView->priv;
-
- if (!priv->corePage)
- return;
-
- priv->corePage->setGroupName(String::fromUTF8(groupName));
-}
-
/**
* webkit_web_view_can_undo:
* @webView: a #WebKitWebView
diff --git a/WebKitTools/DumpRenderTree/gtk/DumpRenderTree.cpp b/WebKitTools/DumpRenderTree/gtk/DumpRenderTree.cpp
index 54acc49..5aa61e3 100644
--- a/WebKitTools/DumpRenderTree/gtk/DumpRenderTree.cpp
+++ b/WebKitTools/DumpRenderTree/gtk/DumpRenderTree.cpp
@@ -69,7 +69,6 @@ extern guint webkit_web_frame_get_pending_unload_event_count(WebKitWebFrame* fra
extern void webkit_web_settings_add_extra_plugin_directory(WebKitWebView* view, const gchar* directory);
extern gchar* webkit_web_frame_get_response_mime_type(WebKitWebFrame* frame);
extern void webkit_web_frame_clear_main_frame_name(WebKitWebFrame* frame);
-extern void webkit_web_view_set_group_name(WebKitWebView* view, const gchar* groupName);
extern void webkit_reset_origin_access_white_lists();
}
@@ -1000,10 +999,6 @@ static WebKitWebView* createWebView()
DumpRenderTreeSupportGtk::setDumpRenderTreeModeEnabled(true);
- // From bug 11756: Use a frame group name for all WebViews created by
- // DumpRenderTree to allow testing of cross-page frame lookup.
- webkit_web_view_set_group_name(view, "org.webkit.gtk.DumpRenderTree");
-
g_object_connect(G_OBJECT(view),
"signal::load-started", webViewLoadStarted, 0,
"signal::load-finished", webViewLoadFinished, 0,
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list