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,