#endif
#include <string.h>
+
#include <glib/gi18n.h>
#include <gtk/gtk.h>
-#include "ev-sidebar-page.h"
-#include "ev-sidebar-links.h"
-#include "ev-job-queue.h"
#include "ev-document-links.h"
+#include "ev-job-scheduler.h"
+#include "ev-sidebar-links.h"
+#include "ev-sidebar-page.h"
#include "ev-window.h"
struct _EvSidebarLinksPrivate {
if (sidebar->priv->job) {
g_signal_handlers_disconnect_by_func (sidebar->priv->job,
job_finished_callback, sidebar);
- ev_job_queue_remove_job (sidebar->priv->job);
+ ev_job_cancel (sidebar->priv->job);
g_object_unref (sidebar->priv->job);
sidebar->priv->job = NULL;
}
window = gtk_widget_get_toplevel (GTK_WIDGET (sidebar));
if (EV_IS_WINDOW (window)) {
-#ifdef WITH_PRINT
- ev_window_print_range (EV_WINDOW (window),
- first_page, last_page);
-#endif
+ ev_window_print_range (EV_WINDOW (window), first_page, last_page);
}
}
}
renderer = gtk_cell_renderer_text_new ();
gtk_tree_view_column_pack_end (GTK_TREE_VIEW_COLUMN (column), renderer, FALSE);
gtk_tree_view_column_set_attributes (GTK_TREE_VIEW_COLUMN (column), renderer,
- "markup", EV_DOCUMENT_LINKS_COLUMN_PAGE_LABEL,
+ "text", EV_DOCUMENT_LINKS_COLUMN_PAGE_LABEL,
NULL);
+ g_object_set (G_OBJECT (renderer), "style", PANGO_STYLE_ITALIC, NULL);
g_signal_connect (GTK_TREE_VIEW (priv->tree_view),
"button_press_event",
EvLink *link;
gint page;
gchar *page_label;
- gchar *page_string;
-
gtk_tree_model_get (tree_model, iter,
EV_DOCUMENT_LINKS_COLUMN_LINK, &link,
page_label = ev_page_cache_get_page_label (sidebar_links->priv->page_cache,
page);
- page_string = g_markup_printf_escaped ("<i>%s</i>", page_label);
-
gtk_tree_store_set (GTK_TREE_STORE (tree_model), iter,
- EV_DOCUMENT_LINKS_COLUMN_PAGE_LABEL, page_string,
- -1);
+ EV_DOCUMENT_LINKS_COLUMN_PAGE_LABEL, page_label,
+ -1);
g_free (page_label);
- g_free (page_string);
g_object_unref (link);
return FALSE;
GtkTreePath *arg1,
GtkTreeViewColumn *arg2,
gpointer user_data)
-{
+{
if (gtk_tree_view_row_expanded (GTK_TREE_VIEW (treeview), arg1)) {
gtk_tree_view_collapse_row (GTK_TREE_VIEW (treeview), arg1);
} else {
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);
- priv->page_changed_id = g_signal_connect (priv->page_cache, "page-changed",
+
+ 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
G_CALLBACK (job_finished_callback),
sidebar_links);
/* The priority doesn't matter for this job */
- ev_job_queue_add_job (priv->job, EV_JOB_PRIORITY_LOW);
+ ev_job_scheduler_push_job (priv->job, EV_JOB_PRIORITY_NONE);
}
static gboolean