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);
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);
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,