diff options
author | Daniel Friesel <derf@chaosdorf.de> | 2017-12-29 00:52:48 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-12-29 00:52:48 +0100 |
commit | 0911570bda04e4da541ef095bcdc8cc5cfd57412 (patch) | |
tree | 9b1f973b9fae8e3843761043c29704a15d1ad51a /src | |
parent | d01dd520445c11e64638a63ded15e315e8b6669a (diff) | |
parent | a06eae174885e998031dd179457a0faafa545c59 (diff) |
Merge pull request #360 from ulteq/minor-code-cleanup
Only calculate required zoom ratio when necessary
Diffstat (limited to 'src')
-rw-r--r-- | src/winwidget.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/winwidget.c b/src/winwidget.c index 7ee63c2..d636a85 100644 --- a/src/winwidget.c +++ b/src/winwidget.c @@ -498,12 +498,6 @@ void winwidget_render_image(winwidget winwid, int resize, int force_alias) && (winwid->im_h < max_h)); if (!smaller || opt.zoom_mode) { - double ratio = 0.0; - - /* Image is larger than the screen (so wants shrinking), or it's - smaller but wants expanding to fill it */ - ratio = feh_calc_needed_zoom(&(winwid->zoom), winwid->im_w, winwid->im_h, max_w, max_h); - /* contributed by Jens Laas <jens.laas@data.slu.se> * What it does: * zooms images by a fixed amount but never larger than the screen. @@ -535,6 +529,10 @@ void winwidget_render_image(winwidget winwid, int resize, int force_alias) winwid->im_y = ((int) (max_h - (winwid->im_h * winwid->zoom))) >> 1; } else { + /* Image is larger than the screen (so wants shrinking), or it's + smaller but wants expanding to fill it */ + double ratio = feh_calc_needed_zoom(&(winwid->zoom), winwid->im_w, winwid->im_h, max_w, max_h); + if (ratio > 1.0) { /* height is the factor */ winwid->im_x = 0; |