From edcb42096f0f467b0681025ac7e7ea6a3f4643c2 Mon Sep 17 00:00:00 2001 From: Ettore Perazzoli Date: Wed, 26 Jul 2000 17:24:35 +0000 Subject: Fix the pop-up tree so that it does not set up the grab when shown through the menu item. svn path=/trunk/; revision=4349 --- shell/ChangeLog | 5 +++++ shell/e-shell-view.c | 45 +++++++++++++++++++++++++++------------------ 2 files changed, 32 insertions(+), 18 deletions(-) diff --git a/shell/ChangeLog b/shell/ChangeLog index 1ce1944770..46aef4d286 100644 --- a/shell/ChangeLog +++ b/shell/ChangeLog @@ -1,3 +1,8 @@ +2000-07-26 Ettore Perazzoli + + * e-shell-view.c (disconnect_popup_signals): Disconnect the "map" + signal handler too. + 2000-07-25 Ettore Perazzoli * e-shell-folder-creation-dialog.c (add_folder_types): Work around diff --git a/shell/e-shell-view.c b/shell/e-shell-view.c index 38ba7d6487..e1d3acefa9 100644 --- a/shell/e-shell-view.c +++ b/shell/e-shell-view.c @@ -149,6 +149,8 @@ storage_set_view_box_button_release_event_cb (GtkWidget *widget, EShellView *shell_view; EShellViewPrivate *priv; + puts (__FUNCTION__); + shell_view = E_SHELL_VIEW (data); priv = shell_view->priv; @@ -169,6 +171,8 @@ popup_storage_set_view_close_button_clicked (ETitleBar *title_bar, EShellView *shell_view; EShellViewPrivate *priv; + puts (__FUNCTION__); + shell_view = E_SHELL_VIEW (data); priv = shell_view->priv; @@ -181,24 +185,6 @@ popup_storage_set_view_close_button_clicked (ETitleBar *title_bar, e_shell_folder_title_bar_set_toggle_state (E_SHELL_FOLDER_TITLE_BAR (priv->view_title_bar), FALSE); } -static void -disconnect_popup_signals (EShellView *shell_view) -{ - EShellViewPrivate *priv; - - priv = shell_view->priv; - - gtk_signal_disconnect_by_func (GTK_OBJECT (priv->storage_set_view_box), - GTK_SIGNAL_FUNC (storage_set_view_box_button_release_event_cb), - shell_view); - gtk_signal_disconnect_by_func (GTK_OBJECT (priv->storage_set_view), - GTK_SIGNAL_FUNC (storage_set_view_box_button_release_event_cb), - shell_view); - gtk_signal_disconnect_by_func (GTK_OBJECT (priv->storage_set_title_bar), - GTK_SIGNAL_FUNC (popup_storage_set_view_close_button_clicked), - shell_view); -} - static void storage_set_view_box_map_cb (GtkWidget *widget, void *data) @@ -230,6 +216,29 @@ storage_set_view_box_map_cb (GtkWidget *widget, GTK_SIGNAL_FUNC (popup_storage_set_view_close_button_clicked), shell_view); } +static void +disconnect_popup_signals (EShellView *shell_view) +{ + EShellViewPrivate *priv; + + puts (__FUNCTION__); + + priv = shell_view->priv; + + gtk_signal_disconnect_by_func (GTK_OBJECT (priv->storage_set_view_box), + GTK_SIGNAL_FUNC (storage_set_view_box_button_release_event_cb), + shell_view); + gtk_signal_disconnect_by_func (GTK_OBJECT (priv->storage_set_view), + GTK_SIGNAL_FUNC (storage_set_view_box_button_release_event_cb), + shell_view); + gtk_signal_disconnect_by_func (GTK_OBJECT (priv->storage_set_title_bar), + GTK_SIGNAL_FUNC (popup_storage_set_view_close_button_clicked), + shell_view); + gtk_signal_disconnect_by_func (GTK_OBJECT (priv->storage_set_view_box), + GTK_SIGNAL_FUNC (storage_set_view_box_map_cb), + shell_view); +} + static void pop_up_folder_bar (EShellView *shell_view) { -- cgit