X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=shell%2Fev-page-action.c;h=4bb63b2f1bc7c7f660e56e7403a1f86f5b58b551;hb=848665b157185945d190a7a746d054d7f5d5e6e0;hp=ee4802ab17cba72197c5a7642cb258e1daafaa14;hpb=f302b9a420aaf02e5805b3225ce4fef5a63e9b67;p=evince.git diff --git a/shell/ev-page-action.c b/shell/ev-page-action.c index ee4802ab..4bb63b2f 100644 --- a/shell/ev-page-action.c +++ b/shell/ev-page-action.c @@ -181,12 +181,13 @@ page_changed_cb (EvPageCache *page_cache, g_assert (proxy); if (page_cache != NULL && page >= 0) { - + gchar *page_label; + gtk_entry_set_width_chars (GTK_ENTRY (proxy->entry), CLAMP (ev_page_cache_get_max_label_chars (page_cache), 4, 12)); - gchar *page_label = ev_page_cache_get_page_label (page_cache, page); + page_label = ev_page_cache_get_page_label (page_cache, page); gtk_entry_set_text (GTK_ENTRY (proxy->entry), page_label); gtk_editable_set_position (GTK_EDITABLE (proxy->entry), -1); g_free (page_label); @@ -306,6 +307,9 @@ build_new_tree_cb (GtkTreeModel *model, -1); } + if (link) + g_object_unref (link); + return FALSE; } @@ -346,6 +350,9 @@ match_selected_cb (GtkEntryCompletion *completion, g_signal_emit (proxy, widget_signals[WIDGET_ACTIVATE_LINK], 0, link); + if (link) + g_object_unref (link); + gtk_tree_iter_free (iter); return TRUE; @@ -370,6 +377,9 @@ display_completion_text (GtkCellLayout *cell_layout, -1); g_object_set (renderer, "text", ev_link_get_title (link), NULL); + + if (link) + g_object_unref (link); gtk_tree_iter_free (iter); } @@ -395,6 +405,7 @@ match_completion (GtkEntryCompletion *completion, if (link) { text = ev_link_get_title (link); + g_object_unref (link); } gtk_tree_iter_free (iter); @@ -468,7 +479,8 @@ update_model (EvPageAction *page, GParamSpec *pspec, EvPageActionWidget *proxy) (GtkCellLayoutDataFunc) display_completion_text, proxy, NULL); gtk_entry_set_completion (GTK_ENTRY (proxy->entry), completion); - + + g_object_unref (completion); g_object_unref (model); } }