]> www.fi.muni.cz Git - evince.git/blobdiff - shell/ev-sidebar-thumbnails.c
Add --with-platform configure switch
[evince.git] / shell / ev-sidebar-thumbnails.c
index 9c0e21728d7ec3abc5390c92059dac50cba23691..d86e6a553befb0ed62d4af8071f7161dc4acfed9 100644 (file)
@@ -371,22 +371,12 @@ adjustment_changed_cb (EvSidebarThumbnails *sidebar_thumbnails)
                if (! GTK_WIDGET_REALIZED (priv->tree_view))
                        return;
 
-#if GTK_CHECK_VERSION (2, 11, 3)
                gtk_tree_view_convert_tree_to_bin_window_coords (GTK_TREE_VIEW (priv->tree_view),
                                                                 0, (int) priv->vadjustment->value,
                                                                 NULL, &wy1);
                gtk_tree_view_convert_tree_to_bin_window_coords (GTK_TREE_VIEW (priv->tree_view),
                                                                 0, (int) (priv->vadjustment->value + priv->vadjustment->page_size),
                                                                 NULL, &wy2);
-#else
-               gtk_tree_view_tree_to_widget_coords (GTK_TREE_VIEW (priv->tree_view),
-                                                    0, (int) priv->vadjustment->value,
-                                                    NULL, &wy1);
-               gtk_tree_view_tree_to_widget_coords (GTK_TREE_VIEW (priv->tree_view),
-                                                    0, (int) (priv->vadjustment->value + priv->vadjustment->page_size),
-                                                    NULL, &wy2);
-#endif /* GTK_CHECK_VERSION (2, 11, 3) */
-
                gtk_tree_view_get_path_at_pos (GTK_TREE_VIEW (priv->tree_view),
                                               1, wy1 + 1, &path,
                                               NULL, NULL, NULL);
@@ -603,11 +593,11 @@ ev_sidebar_thumbnails_init (EvSidebarThumbnails *ev_sidebar_thumbnails)
        gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (priv->swindow),
                                             GTK_SHADOW_IN);
        priv->vadjustment = gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (priv->swindow));
-       g_signal_connect_data (G_OBJECT (priv->vadjustment), "value-changed",
+       g_signal_connect_data (priv->vadjustment, "value-changed",
                               G_CALLBACK (adjustment_changed_cb),
                               ev_sidebar_thumbnails, NULL,
                               G_CONNECT_SWAPPED | G_CONNECT_AFTER);
-       g_signal_connect_swapped (G_OBJECT (priv->swindow), "size-allocate",
+       g_signal_connect_swapped (priv->swindow, "size-allocate",
                                  G_CALLBACK (adjustment_changed_cb),
                                  ev_sidebar_thumbnails);
        gtk_box_pack_start (GTK_BOX (ev_sidebar_thumbnails), priv->swindow, TRUE, TRUE, 0);
@@ -672,9 +662,14 @@ ev_sidebar_thumbnails_set_document (EvSidebarPage  *sidebar_page,
 
        EvSidebarThumbnailsPrivate *priv = sidebar_thumbnails->priv;
 
-       g_return_if_fail (EV_IS_DOCUMENT_THUMBNAILS (document));
-
        priv->page_cache = ev_page_cache_get (document);
+
+       if (!EV_IS_DOCUMENT_THUMBNAILS (document) ||
+           ev_page_cache_get_n_pages (priv->page_cache) <= 0 ||
+           ev_page_cache_check_dimensions (priv->page_cache)) {
+               return;
+       }
+
        priv->document = document;
        priv->n_pages = ev_page_cache_get_n_pages (priv->page_cache);
        priv->loading_icons = g_hash_table_new_full (g_str_hash,