From 5cc835ba642f057395b3b79d48495a3ab55de6db Mon Sep 17 00:00:00 2001 From: Marco Pesenti Gritti Date: Sat, 24 Sep 2005 10:57:13 +0000 Subject: Implement FIT_HEIGHT mode (only for links). Implement FITH links 2005-09-24 Marco Pesenti Gritti * backend/ev-link.c: (ev_link_type_get_type), (ev_link_new_page_fith), (ev_link_new_page_fitv): * backend/ev-link.h: * pdf/ev-poppler.cc: * shell/ev-view.c: (goto_fitv_link), (goto_fith_link), (ev_view_goto_link), (ev_view_size_request_continuous_dual_page), (ev_view_size_request_continuous), (ev_view_size_request_dual_page), (ev_view_size_request_single_page), (ev_view_size_allocate), (zoom_for_size_fit_height), (ev_view_zoom_for_size_continuous_and_dual_page), (ev_view_zoom_for_size_continuous), (ev_view_zoom_for_size_dual_page), (ev_view_zoom_for_size_single_page), (ev_view_set_zoom_for_size), (ev_sizing_mode_get_type): * shell/ev-view.h: * shell/ev-window.c: (ev_window_sizing_mode_changed_cb): Implement FIT_HEIGHT mode (only for links). Implement FITH links --- (limited to 'shell/ev-window.c') diff --git a/shell/ev-window.c b/shell/ev-window.c index 9acf505..17baf74 100644 --- a/shell/ev-window.c +++ b/shell/ev-window.c @@ -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, -- cgit v0.9.1