[Webkit-unassigned] [Bug 116020] [GTK][WK2] Java applets remain visible even if you navigate to a different page

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon May 13 04:04:04 PDT 2013


https://bugs.webkit.org/show_bug.cgi?id=116020





--- Comment #1 from Manuel Rego Casasnovas <rego at igalia.com>  2013-05-13 04:02:30 PST ---
Some more information about the bug.

In WebPageProxy::createPluginContainer() we connect a callback to "plug-removed" signal (https://developer.gnome.org/gtk3/stable/GtkSocket.html#GtkSocket-plug-removed). But this signal is never emitted.

I've been doing some tests and if I emit manually the signal from WebKitWebView::webkit_web_view_load_uri() the applet is still visible in the other page.

I had to destroy manually the applet to make it disappear.

I've added the following lines to WebKitWebView::webkit_web_view_load_uri() in order to do this quick hack:

    GList* items = gtk_container_get_children(GTK_CONTAINER(webView));
    GList* iter;

    for (iter = items; iter; iter = g_list_next(iter)) {
        GtkWidget* item = GTK_WIDGET(iter->data);

        if (GTK_IS_SOCKET(item)) {
            gboolean result;
            // With this the callback is called, but the applet is not destroyed.
            g_signal_emit_by_name(item, "plug-removed", &result);
            // This destroys the applet, gtk_container_remove() also works here.
            gtk_widget_destroy(item);
        }
    }

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the webkit-unassigned mailing list