]> www.fi.muni.cz Git - evince.git/blobdiff - shell/ev-view.c
Updated Bulgarian translation by Alexander Shopov <ash@contact.bg>
[evince.git] / shell / ev-view.c
index 32ba7c3ee28f8161f07d91978c66b7af1da1ee55..757194d7800814c2f8adadf3d918145c5e48f829 100644 (file)
@@ -1080,22 +1080,20 @@ static void
 goto_fitr_dest (EvView *view, EvLinkDest *dest)
 {
        EvPoint doc_point;
-       int page;
        double zoom;
 
        zoom = zoom_for_size_best_fit (ev_link_dest_get_right (dest) - ev_link_dest_get_left (dest),
-                                      ev_link_dest_get_top (dest) - ev_link_dest_get_bottom (dest),
+                                      ev_link_dest_get_bottom (dest) - ev_link_dest_get_top (dest),
                                       ev_view_get_width (view),
                                       ev_view_get_height (view), 0, 0);
 
        ev_view_set_sizing_mode (view, EV_SIZING_FREE);
        ev_view_set_zoom (view, zoom, FALSE);
 
-       page = ev_link_dest_get_page (dest);
        doc_point.x = ev_link_dest_get_left (dest);
        doc_point.y = ev_link_dest_get_top (dest);
        
-       view->current_page = page;
+       view->current_page = ev_link_dest_get_page (dest);
        view->pending_point = doc_point;
        view->pending_scroll = SCROLL_TO_PAGE_POSITION;
 
@@ -1140,13 +1138,13 @@ goto_fith_dest (EvView *view, EvLinkDest *dest)
        ev_page_cache_get_size (view->page_cache, page, 0, 1.0, &doc_width, &doc_height);
 
        doc_point.x = 0;
-       doc_point.y = doc_height - ev_link_dest_get_top (dest);
+       doc_point.y = ev_link_dest_get_top (dest);
 
        zoom = zoom_for_size_fit_width (doc_width, ev_link_dest_get_top (dest),
                                        ev_view_get_width (view),
                                        ev_view_get_height (view), 0);
 
-       ev_view_set_sizing_mode (view, EV_SIZING_FREE);
+       ev_view_set_sizing_mode (view, EV_SIZING_FIT_WIDTH);
        ev_view_set_zoom (view, zoom, FALSE);
 
        view->current_page = page;
@@ -1169,7 +1167,7 @@ goto_fit_dest (EvView *view, EvLinkDest *dest)
        zoom = zoom_for_size_best_fit (doc_width, doc_height, ev_view_get_width (view),
                                       ev_view_get_height (view), 0, 0);
 
-       ev_view_set_sizing_mode (view, EV_SIZING_FREE);
+       ev_view_set_sizing_mode (view, EV_SIZING_BEST_FIT);
        ev_view_set_zoom (view, zoom, FALSE);
 
        view->current_page = page;
@@ -1182,20 +1180,19 @@ static void
 goto_xyz_dest (EvView *view, EvLinkDest *dest)
 {
        EvPoint doc_point;
-       int height, page;
+       gint page;
        double zoom;
 
        zoom = ev_link_dest_get_zoom (dest);
        page = ev_link_dest_get_page (dest);
-       ev_page_cache_get_size (view->page_cache, page, 0, 1.0, NULL, &height);
 
-       if (zoom != 0) {
+       if (zoom > 1) {
                ev_view_set_sizing_mode (view, EV_SIZING_FREE);
                ev_view_set_zoom (view, zoom, FALSE);
        }
 
        doc_point.x = ev_link_dest_get_left (dest);
-       doc_point.y = height - ev_link_dest_get_top (dest);
+       doc_point.y = ev_link_dest_get_top (dest);
 
        view->current_page = page;
        view->pending_point = doc_point;
@@ -1379,10 +1376,10 @@ tip_from_link (EvView *view, EvLink *link)
                        break;
                case EV_LINK_ACTION_TYPE_GOTO_REMOTE:
                        if (title) {
-                               msg = g_strdup_printf (_("Go to %s on file %s"), title,
+                               msg = g_strdup_printf (_("Go to %s on file ā€œ%sā€"), title,
                                                       ev_link_action_get_filename (action));
                        } else {
-                               msg = g_strdup_printf (_("Go to file %s"),
+                               msg = g_strdup_printf (_("Go to file ā€œ%sā€"),
                                                       ev_link_action_get_filename (action));
                        }
                        
@@ -2280,7 +2277,7 @@ draw_one_page (EvView          *view,
        gint current_page;
 
        g_assert (view->document);
-       
+
        if (! gdk_rectangle_intersect (page_area, expose_area, &overlap))
                return;
        
@@ -2409,6 +2406,7 @@ ev_view_destroy (GtkObject *object)
 
        if (view->link_tooltip) {
                gtk_widget_destroy (view->link_tooltip);
+               view->link_tooltip = NULL;
        }
 
        if (view->selection_scroll_id) {