From b4400b84fbb899a1984c8e145b91a09de3a35516 Mon Sep 17 00:00:00 2001 From: Carlos Garcia Campos Date: Sun, 1 Jul 2007 08:47:51 +0000 Subject: [PATCH] Do not connect selection changed signal more than once. Fixes bug #349433. 2007-07-01 Carlos Garcia Campos * shell/ev-sidebar-links.c: (job_finished_callback): Do not connect selection changed signal more than once. Fixes bug #349433. svn path=/branches/gnome-2-18/; revision=2532 --- ChangeLog | 7 +++++++ shell/ev-sidebar-links.c | 18 ++++++++++++------ 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index d948bd11..4c7215a6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2007-07-01 Carlos Garcia Campos + + * shell/ev-sidebar-links.c: (job_finished_callback): + + Do not connect selection changed signal more than once. Fixes bug + #349433. + 2007-06-29 Carlos Garcia Campos * shell/ev-window.c: (ev_window_view_sidebar_cb): diff --git a/shell/ev-sidebar-links.c b/shell/ev-sidebar-links.c index 5d346954..e36c17e7 100644 --- a/shell/ev-sidebar-links.c +++ b/shell/ev-sidebar-links.c @@ -648,18 +648,24 @@ job_finished_callback (EvJobLinks *job, selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (priv->tree_view)); gtk_tree_selection_set_mode (selection, GTK_SELECTION_SINGLE); - priv->selection_id = g_signal_connect (selection, "changed", - G_CALLBACK (selection_changed_callback), - sidebar_links); + if (priv->selection_id <= 0) { + priv->selection_id = + g_signal_connect (selection, "changed", + G_CALLBACK (selection_changed_callback), + sidebar_links); + } priv->page_changed_id = g_signal_connect (priv->page_cache, "page-changed", G_CALLBACK (update_page_callback), sidebar_links); - priv->row_activated_id = g_signal_connect (G_OBJECT (priv->tree_view), "row-activated", - G_CALLBACK (row_activated_callback), sidebar_links); + if (priv->row_activated_id <= 0) { + priv->row_activated_id = + g_signal_connect (G_OBJECT (priv->tree_view), "row-activated", + G_CALLBACK (row_activated_callback), + sidebar_links); + } update_page_callback (priv->page_cache, ev_page_cache_get_current_page (priv->page_cache), sidebar_links); - } static void -- 2.43.5