]> www.fi.muni.cz Git - evince.git/blobdiff - shell/ev-sidebar-thumbnails.c
Fix the mess we did with thumbnails and 1-basedness
[evince.git] / shell / ev-sidebar-thumbnails.c
index de31e478a2304baa2dabdece72381a23d63188d7..b4622f6ebb9523d0975cfedf98226f87346bc3f0 100644 (file)
@@ -35,7 +35,8 @@
 #include "ev-window.h"
 #include "ev-utils.h"
 
-#define THUMBNAIL_WIDTH 75
+#define THUMBNAIL_WIDTH 100
+
 /* Amount of time we devote to each iteration of the idle, in microseconds */
 #define IDLE_WORK_LENGTH 5000
 
@@ -110,7 +111,7 @@ adjustment_changed_cb (GtkAdjustment       *adjustment,
        if (!path)
                return;
 
-       page = gtk_tree_path_get_indices (path)[0];
+       page = gtk_tree_path_get_indices (path)[0] + 1;
        if (page == priv->current_page)
                return;
        gtk_tree_model_get_iter (GTK_TREE_MODEL (priv->list_store),
@@ -118,7 +119,7 @@ adjustment_changed_cb (GtkAdjustment       *adjustment,
        gtk_tree_model_get (GTK_TREE_MODEL (priv->list_store), &iter,
                            COLUMN_THUMBNAIL_SET, &thumbnail_set,
                            -1);
-       if (! thumbnail_set) {
+       if (!thumbnail_set) {
                priv->current_page = page;
                priv->current_page_iter = iter;
                
@@ -222,8 +223,9 @@ do_one_iteration (EvSidebarThumbnails *ev_sidebar_thumbnails)
                            COLUMN_THUMBNAIL_SET, &thumbnail_set,
                            -1);
        if (!thumbnail_set) {
-               pixbuf = ev_document_thumbnails_get_thumbnail (EV_DOCUMENT_THUMBNAILS (priv->document),
-                                                              priv->current_page, THUMBNAIL_WIDTH);
+               pixbuf = ev_document_thumbnails_get_thumbnail
+                               (EV_DOCUMENT_THUMBNAILS (priv->document),
+                                priv->current_page, THUMBNAIL_WIDTH, TRUE);
 
                gtk_list_store_set (priv->list_store,
                                    &(priv->current_page_iter),
@@ -237,8 +239,8 @@ do_one_iteration (EvSidebarThumbnails *ev_sidebar_thumbnails)
 
        priv->current_page++;
 
-       if (priv->current_page == priv->n_pages) {
-               priv->current_page = 0;
+       if (priv->current_page > priv->n_pages) {
+               priv->current_page = 1;
                gtk_tree_model_get_iter_first (GTK_TREE_MODEL (priv->list_store),
                                               &(priv->current_page_iter));
        } else {
@@ -376,7 +378,7 @@ ev_sidebar_thumbnails_set_document (EvSidebarThumbnails *sidebar_thumbnails,
        g_object_unref (loading_icon);
        gtk_tree_model_get_iter_first (GTK_TREE_MODEL (priv->list_store),
                                       &(priv->current_page_iter));
-       priv->current_page = 0;
+       priv->current_page = 1;
        priv->pages_done = 0;
 }