summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog2
-rw-r--r--src/keyevents.c9
2 files changed, 9 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 249e349..54334e2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -29,6 +29,8 @@ git HEAD
<http://github.com/derf/feh/issues/44>
* The 'A' key (toggle_aliasing) now actually changes the current window,
and not just the default for new windows
+ * The zoom_default key now works fine with --scale-down
+ <http://github.com/derf/feh/issues/41>
Sat, 23 Apr 2011 22:00:27 +0200 Daniel Friesel <derf@finalrewind.org>
diff --git a/src/keyevents.c b/src/keyevents.c
index 9d5af5a..72b4168 100644
--- a/src/keyevents.c
+++ b/src/keyevents.c
@@ -530,10 +530,15 @@ void feh_event_handle_keypress(XEvent * ev)
winwidget_render_image(winwid, 0, 0);
}
else if (feh_is_kp(&keys.zoom_default, keysym, state)) {
- winwid->zoom = 1;
- winwid->old_zoom = 1.001; /* hack for --scale-down */
+ winwid->zoom = 1.0;
+ /* --scale-down will revert our operation if old_zoom == 1.0 */
+ if (opt.scale_down)
+ winwid->old_zoom = 1.001;
winwidget_center_image(winwid);
winwidget_render_image(winwid, 0, 0);
+ /* --scale-down will also do weird stuff if zoom is 1.0 */
+ if (opt.scale_down)
+ winwid->zoom = 1.001;
}
else if (feh_is_kp(&keys.zoom_fit, keysym, state)) {
feh_calc_needed_zoom(&winwid->zoom, winwid->im_w, winwid->im_h, winwid->w, winwid->h);