]> www.fi.muni.cz Git - evince.git/blobdiff - shell/ev-sidebar-thumbnails.c
Updated Lithuanian translation.
[evince.git] / shell / ev-sidebar-thumbnails.c
index 26760a968115b8a0c456ad3e57cb7c69d2dab88b..6c20706de181396faecf1833f3ff06e293d10be0 100644 (file)
@@ -228,7 +228,7 @@ get_scale_for_page (EvSidebarThumbnails *sidebar_thumbnails,
        gint width, height;
 
        ev_page_cache_get_size (priv->page_cache,
-                               page, priv->rotation,
+                               page, 0,
                                1.0, &width, &height);
        
        return (gdouble)THUMBNAIL_WIDTH / (gdouble)width;
@@ -333,12 +333,22 @@ 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_widget_to_bin_window_coords (GTK_TREE_VIEW (priv->tree_view),
+                                                                  0, (int) priv->vadjustment->value,
+                                                                  NULL, &wy1);
+               gtk_tree_view_convert_widget_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);
@@ -397,18 +407,14 @@ ev_sidebar_thumbnails_set_loading_icon (EvSidebarThumbnails *sidebar_thumbnails)
                g_object_unref (sidebar_thumbnails->priv->loading_icon);
 
        if (sidebar_thumbnails->priv->document) {
-               gint width = THUMBNAIL_WIDTH;
-               gint height;
-               gint page_width, page_height;
+               gint width, height;
 
                /* We get the dimensions of the first page so that we can make a blank
                 * icon.  */
-               ev_page_cache_get_size (sidebar_thumbnails->priv->page_cache, 0,
-                                       sidebar_thumbnails->priv->rotation,
-                                       1.0, &page_width, &page_height);
+               ev_page_cache_get_thumbnail_size (sidebar_thumbnails->priv->page_cache, 0,
+                                                 sidebar_thumbnails->priv->rotation,
+                                                 &width, &height);
 
-               height = (gint) (page_height * ((gdouble)width / page_width));
-               
                sidebar_thumbnails->priv->loading_icon =
                        ev_document_misc_get_thumbnail_frame (width, height, NULL);
        } else {
@@ -557,8 +563,12 @@ ev_sidebar_thumbnails_init (EvSidebarThumbnails *ev_sidebar_thumbnails)
                                               EV_TYPE_JOB_THUMBNAIL);
 
        priv->swindow = gtk_scrolled_window_new (NULL, NULL);
+       
+       /* We actually don't want GTK_POLICY_AUTOMATIC for horizontal scrollbar here
+        * it's just a workaround for bug #449462
+        */
        gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (priv->swindow),
-                                       GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
+                                       GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
        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));