]> www.fi.muni.cz Git - evince.git/blobdiff - shell/ev-window.c
Implement FIT_HEIGHT mode (only for links). Implement FITH links
[evince.git] / shell / ev-window.c
index 9acf50567134d089902c6e0607ddd9eb170ade4b..17baf74402de94012764ea89b02b86eb670e2480 100644 (file)
@@ -311,7 +311,9 @@ update_action_sensitivity (EvWindow *ev_window)
        set_action_sensitive (ev_window, PAGE_SELECTOR_ACTION, has_pages);
        set_action_sensitive (ev_window, ZOOM_CONTROL_ACTION,  has_pages);
 
-       if (has_pages && ev_view_get_sizing_mode (view) == EV_SIZING_FREE) {
+       if (has_pages &&
+           ev_view_get_sizing_mode (view) != EV_SIZING_FIT_WIDTH &&
+           ev_view_get_sizing_mode (view) != EV_SIZING_BEST_FIT) {
                GtkAction *action;
                float      zoom;
                float      real_zoom;
@@ -2343,6 +2345,15 @@ ev_window_sizing_mode_changed_cb (EvView *view, GParamSpec *pspec,
                                  G_CALLBACK (update_view_size),
                                  ev_window);
                break;
+       case EV_SIZING_FIT_HEIGHT:
+               g_object_set (G_OBJECT (scrolled_window),
+                             "hscrollbar-policy", GTK_POLICY_AUTOMATIC,
+                             "vscrollbar-policy", GTK_POLICY_NEVER,
+                             NULL);
+               g_signal_connect (ev_window->priv->view, "zoom_invalid",
+                                 G_CALLBACK (update_view_size),
+                                 ev_window);
+               break;
        case EV_SIZING_FREE:
                g_object_set (G_OBJECT (scrolled_window),
                              "hscrollbar-policy", GTK_POLICY_AUTOMATIC,