| Index: webkit/tools/test_shell/webview_host_gtk.cc
|
| diff --git a/webkit/tools/test_shell/webview_host_gtk.cc b/webkit/tools/test_shell/webview_host_gtk.cc
|
| index cd491aff868a86c6f279c08b34f13dfaa172b57d..e089052df7bc1fc24121fe8e677cd24f5370d6f8 100644
|
| --- a/webkit/tools/test_shell/webview_host_gtk.cc
|
| +++ b/webkit/tools/test_shell/webview_host_gtk.cc
|
| @@ -58,11 +58,16 @@ GtkWidget* WebViewHost::MapIDToWidget(GdkNativeWindow id) {
|
| return NULL;
|
| }
|
|
|
| -gboolean WebViewHost::OnPlugRemoved(GtkSocket* socket) {
|
| - // Remove the socket's id from our list of widgets.
|
| - GdkNativeWindow id = gtk_socket_get_id(socket);
|
| +void WebViewHost::OnPluginWindowDestroyed(GdkNativeWindow id) {
|
| + GtkWidget* plugin_container = MapIDToWidget(id);
|
| + if (!plugin_container)
|
| + return;
|
| +
|
| native_window_to_widget_map_.erase(id);
|
| + gtk_widget_destroy(plugin_container);
|
| +}
|
|
|
| - return FALSE; // Destroy our widget.
|
| +gboolean WebViewHost::OnPlugRemoved(GtkSocket* socket) {
|
| + return TRUE; // Don't destroy our widget; we manage it ourselves.
|
| }
|
|
|
|
|