Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--shell/ev-view.c6
2 files changed, 12 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 0c20524..7c3a3f4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
2004-12-22 Mark McLoughlin <mark@skynet.ie>
+ * shell/ev-view.c:
+ (ev_view_best_fit), (ev_view_fit_width): because
+ get_page_size() returns the scaled page size, we
+ need to calculate the scale factor relative to
+ the previous scale factor. Should really just
+ add get_real_page_size().
+
+2004-12-22 Mark McLoughlin <mark@skynet.ie>
+
* shell/ev-view.[ch]:
(ev_view_zoom), (ev_view_zoom_in), (ev_view_zoom_out),
(ev_view_normal_size), (ev_view_best_fit), (ev_view_fit_width):
diff --git a/shell/ev-view.c b/shell/ev-view.c
index 78a75d9..dd8723d 100644
--- a/shell/ev-view.c
+++ b/shell/ev-view.c
@@ -613,8 +613,8 @@ ev_view_best_fit (EvView *view)
if (width != 0 && height != 0) {
double scale_w, scale_h;
- scale_w = (double)GTK_WIDGET (view)->allocation.width / width;
- scale_h = (double)GTK_WIDGET (view)->allocation.height / height;
+ scale_w = (double)GTK_WIDGET (view)->allocation.width * view->scale / width;
+ scale_h = (double)GTK_WIDGET (view)->allocation.height * view->scale / height;
scale = (scale_w < scale_h) ? scale_w : scale_h;
}
@@ -633,7 +633,7 @@ ev_view_fit_width (EvView *view)
scale = 1.0;
if (width != 0)
- scale = (double)GTK_WIDGET (view)->allocation.width / width;
+ scale = (double)GTK_WIDGET (view)->allocation.width * view->scale / width;
ev_view_zoom (view, scale, FALSE);
}