Hello community,

here is the log from the commit of package feh for openSUSE:Factory checked in 
at 2018-05-11 09:15:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/feh (Old)
 and      /work/SRC/openSUSE:Factory/.feh.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "feh"

Fri May 11 09:15:37 2018 rev:23 rq:605810 version:2.26

Changes:
--------
--- /work/SRC/openSUSE:Factory/feh/feh.changes  2018-03-08 10:59:41.084596439 
+0100
+++ /work/SRC/openSUSE:Factory/.feh.new/feh.changes     2018-05-11 
09:15:48.447879442 +0200
@@ -1,0 +2,18 @@
+Wed May  9 14:56:08 UTC 2018 - [email protected]
+
+- Update to 2.26
+  * Save absolute file paths in ~/.fehbg, similar to behaviour prior
+    to 2.21
+  * Add %g (window dimensions) and %Z (precise zoom level) format
+    specifiers
+  * Improve -z/--randomize randomness
+
+-------------------------------------------------------------------
+Mon Mar 12 23:17:43 UTC 2018 - [email protected]
+
+- Update to 2.25.1
+  * Re-render current image when toggle_fixed_geometry is input
+  * Fix issues when using CFLAGS=-m64 on some gcc versions
+- run spec-cleaner
+
+-------------------------------------------------------------------

Old:
----
  feh-2.25.tar.bz2
  feh-2.25.tar.bz2.asc

New:
----
  feh-2.26.tar.bz2
  feh-2.26.tar.bz2.asc

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ feh.spec ++++++
--- /var/tmp/diff_new_pack.6Yr8OI/_old  2018-05-11 09:15:49.515840752 +0200
+++ /var/tmp/diff_new_pack.6Yr8OI/_new  2018-05-11 09:15:49.519840607 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           feh
-Version:        2.25
+Version:        2.26
 Release:        0
 Summary:        X11 image viewer
 License:        MIT AND LGPL-2.0-or-later
@@ -102,8 +102,8 @@
 %{_datadir}/applications/%{name}.desktop
 %{_datadir}/icons/hicolor/48x48/apps/%{name}.png
 %{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
-%{_mandir}/man1/feh.1%{ext_man}
-%{_mandir}/man1/feh-cam.1%{ext_man}
-%{_mandir}/man1/gen-cam-menu.1%{ext_man}
+%{_mandir}/man1/feh.1%{?ext_man}
+%{_mandir}/man1/feh-cam.1%{?ext_man}
+%{_mandir}/man1/gen-cam-menu.1%{?ext_man}
 
 %changelog

++++++ feh-2.25.tar.bz2 -> feh-2.26.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.25/.travis.yml new/feh-2.26/.travis.yml
--- old/feh-2.25/.travis.yml    1970-01-01 01:00:00.000000000 +0100
+++ new/feh-2.26/.travis.yml    2018-04-19 21:44:35.000000000 +0200
@@ -0,0 +1,29 @@
+language: c
+addons:
+  apt:
+    packages:
+      - libcurl4-openssl-dev
+      - libx11-dev
+      - libxt-dev
+      - libimlib2-dev
+      - libxinerama-dev
+      - libjpeg-progs
+      - libtest-command-perl
+      - libtest-simple-perl
+      - libexif-dev
+      - libexif12
+script:
+  - make
+  - make test
+compiler:
+  - clang
+  - gcc
+env:
+  - default=1
+  - app=1
+  - curl=0
+  - exif=1
+  - help=1
+  - stat64=1
+  - verscmp=0
+  - xinerama=0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.25/ChangeLog new/feh-2.26/ChangeLog
--- old/feh-2.25/ChangeLog      2018-03-04 08:55:59.000000000 +0100
+++ new/feh-2.26/ChangeLog      2018-04-19 21:44:35.000000000 +0200
@@ -1,3 +1,17 @@
+Thu, 19 Apr 2018 21:43:12 +0200  Daniel Friesel <[email protected]>
+
+* Release v2.26
+    * Save absolute file paths in ~/.fehbg, similar to the behaviour prior to
+      feh 2.21
+    * Add %g (window dimensions) and %Z (precise zoom level) format specifiers
+    * Improve -z/--randomize randomness
+
+Wed, 07 Mar 2018 17:49:52 +0100  Daniel Friesel <[email protected]>
+
+* Release v2.25.1
+    * Fix compilation issues when using CFLAGS=-m64 on some gcc versions
+    * Re-render current image when toggle_fixed_geometry is input
+
 Sun, 04 Mar 2018 08:53:50 +0100  Daniel Friesel <[email protected]>
 
 * Release v2.25
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.25/README.md new/feh-2.26/README.md
--- old/feh-2.25/README.md      2018-03-04 08:55:59.000000000 +0100
+++ new/feh-2.26/README.md      2018-04-19 21:44:35.000000000 +0200
@@ -1,3 +1,5 @@
+[![build 
status](https://travis-ci.org/derf/feh.svg?branch=master)](https://travis-ci.org/derf/feh)
+
 # feh
 Imlib2 based image viewer
 ---
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.25/config.mk new/feh-2.26/config.mk
--- old/feh-2.25/config.mk      2018-03-04 08:55:59.000000000 +0100
+++ new/feh-2.26/config.mk      2018-04-19 21:44:35.000000000 +0200
@@ -1,5 +1,5 @@
 PACKAGE ?= feh
-VERSION ?= 2.25
+VERSION ?= 2.26
 
 app ?= 0
 cam ?= 0
@@ -87,7 +87,7 @@
        MAN_EXIF = disabled
 endif
 
-MAN_DATE ?= March 04, 2018
+MAN_DATE ?= April 19, 2018
 
 # Uncomment this to use dmalloc
 #CFLAGS += -DWITH_DMALLOC
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.25/man/feh.pre new/feh-2.26/man/feh.pre
--- old/feh-2.25/man/feh.pre    2018-03-04 08:55:59.000000000 +0100
+++ new/feh-2.26/man/feh.pre    2018-04-19 21:44:35.000000000 +0200
@@ -13,7 +13,7 @@
 .
 .Nm
 .Op Ar options
-.Op Ar files No | Ar directories No | Ar URLs ...
+.Op Ar files | Ar directories | Ar URLs ...
 .
 .
 .Sh VERSION
@@ -32,9 +32,9 @@
 .Sh DESCRIPTION
 .
 .Nm
-is a mode-based image viewer.  It is especially aimed at command line users who
-need a fast image viewer without huge GUI dependencies, though it can also be
-started by
+is a mode-based image viewer.
+It is especially aimed at command line users who need a fast image viewer
+without huge GUI dependencies, though it can also be started by
 .Pq graphical
 file managers to view an image.
 By default
@@ -75,8 +75,9 @@
 .
 .Pp
 .
-Slideshow mode is the default.  It opens a window and displays the first
-image in it; the slideshow position can be advanced
+Slideshow mode is the default.
+It opens a window and displays the first image in it;
+the slideshow position can be advanced
 .Pq or otherwise changed
 using keyboard and mouse shortcuts.
 In slideshow mode, images can be deleted either from the filelist or from the
@@ -87,14 +88,17 @@
 .
 .Pp
 .
-Montage mode forms a montage from the filelist.  The resulting image can be
-viewed or saved, and its size can be limited by height, width or both.
+Montage mode forms a montage from the filelist.
+The resulting image can be viewed or saved,
+and its size can be limited by height, width or both.
 .
 .Pp
 .
-Index mode forms an index print from the filelist.  Image thumbnails are shown
-along with the filename, filesize and pixel size, printed using a truetype
-font of your choice.  The resulting image can be viewed or saved, and its size
+Index mode forms an index print from the filelist.
+Image thumbnails are shown along with the filename,
+filesize and pixel size, printed using a truetype
+font of your choice.
+The resulting image can be viewed or saved, and its size
 can be limited by height, width or both.
 .
 .Pp
@@ -105,34 +109,40 @@
 .Pp
 .
 Multiwindow mode shows images in multiple windows, instead of as a slideshow
-in one window.  Don't use with a large filelist ;)
+in one window.
+Don't use with a large filelist ;)
 .
 .Pp
 .
-List mode doesn't display images.  Instead, it outputs an
+List mode doesn't display images.
+Instead, it outputs an
 .Cm ls Ns No - Ns style
 listing of the files in the filelist, including image info such as size, number
-of pixels, type, etc.  There is also a Customlist mode which prints image info
+of pixels, type, etc.
+There is also a Customlist mode which prints image info
 in a custom format specified by a printf-like format string.
 .
 .Pp
 .
 .Nm
 can also list either all the loadable files in a filelist or all the
-unloadable files.  This is useful for preening a directory.
+unloadable files.
+This is useful for preening a directory.
 .
 .
 .Sh SUPPORTED FORMATS
 .
 .Nm
 can open any format supported by Imlib2, most notably jpeg, png,
-pnm, tiff, and bmp. The gif format is also supported, but only for static
-images. In case of animations, only the first frame will be shown.
+pnm, tiff, and bmp.
+The gif format is also supported, but only for static images.
+In case of animations, only the first frame will be shown.
 .
 If the convert binary
 .Pq supplied by ImageMagick
 is available, it also has limited support for many other filetypes, such as
-svg, xcf and otf. Use
+svg, xcf and otf.
+Use
 .Cm --magick-timeout Ar num
 with a non-negative value to enable it.
 .
@@ -143,11 +153,13 @@
 .
 .It Cm -A , --action Oo Ar flag Oc Ns Oo [ Ar title ] Oc Ns Ar action
 .
-Specify a shell command as an action to perform on the image.  In slideshow or
-multiwindow mode, the action will be run when the action_0 key is pressed, in
-list mode, it will be run for each file.  In loadable/unloadable mode, it will
-be run for each loadable/unloadable file, respectively.  In thumbnail mode,
-clicking on an image will cause the action to run instead of opening the image.
+Specify a shell command as an action to perform on the image.
+In slideshow or multiwindow mode, the action will be run when
+the action_0 key is pressed, in list mode, it will be run for each file.
+In loadable/unloadable mode, it will be run for each loadable/unloadable
+file, respectively.
+In thumbnail mode, clicking on an image will cause the action to run instead
+of opening the image.
 .
 .Pp
 .
@@ -164,7 +176,7 @@
 executing the action.
 .
 If
-.No [ Ar title ]
+.Ar [ title ]
 is specified
 .Pq note the literal Qo \&[ Qc and Qo ] Qc ,
 .Cm --draw-actions
@@ -172,10 +184,12 @@
 .Ar title
 instead of
 .Ar action
-in the action list. Note that
+in the action list.
+Note that
 .Ar title
-must not start with a space. If it does, the action is handled as if it did
-not have a title. This special case exists for backwards compatibility reasons
+must not start with a space.
+If it does, the action is handled as if it did not have a title.
+This special case exists for backwards compatibility reasons
 and makes sure that actions like
 .Qq \&[ -L %F \&] && foo
 still work.
@@ -183,10 +197,11 @@
 .
 .Pp
 .
-The action will be executed by /bin/sh.  Use format specifiers to refer to
-image info, see
+The action will be executed by /bin/sh.
+Use format specifiers to refer to image info, see
 .Sx FORMAT SPECIFIERS
-for details.  Example usage:
+for details.
+Example usage:
 .Qq feh -A Qo mv ~/images/%N Qc * .
 .
 .It Cm --action1 No .. Cm --action9 Oo Ar flag Oc Ns Oo [ Ar title ] Oc Ns Ar 
action
@@ -196,7 +211,8 @@
 .It Cm --auto-rotate
 .
 .Pq optional feature, $MAN_EXIF$ in this build
-Automatically rotate images based on EXIF data. Does not alter the image files.
+Automatically rotate images based on EXIF data.
+Does not alter the image files.
 .
 .It Cm -Z , --auto-zoom
 .
@@ -210,9 +226,9 @@
 .
 Set Imlib2 in-memory cache to
 .Ar size
-MiB. A higher cache size can
-significantly improve performance especially for small slide shows, however at
-the cost of increased memory consumption.
+MiB.
+A higher cache size can significantly improve performance especially for small
+slide shows, however at the cost of increased memory consumption.
 .Ar size
 must be between 0 and 2048 MiB and defaults to 4.
 .
@@ -224,11 +240,12 @@
 .
 .It Cm -K , --caption-path Ar path
 .
-Path to directory containing image captions.  This turns on caption viewing,
-and if captions are found in
+Path to directory containing image captions.
+This turns on caption viewing, and if captions are found in
 .Ar path ,
 which is relative to the directory of each image, they are overlayed on the
-displayed image.  E.g. with caption path
+displayed image.
+E.g. with caption path
 .Qq captions/ ,
 and viewing image
 .Qq images/foo.jpg ,
@@ -239,7 +256,8 @@
 .
 Don't display images, print image info according to
 .Ar format
-instead.  See
+instead.
+See
 .Sx FORMAT SPECIFIERS .
 .
 .It Cm --cycle-once
@@ -271,7 +289,8 @@
 .
 .It Cm -f , --filelist Ar file
 .
-This option is similar to the playlists used by music software.  If
+This option is similar to the playlists used by music software.
+If
 .Ar file
 exists, it will be read for a list of files to load, in the order they appear.
 The format is a list of image filenames, absolute or relative to the current
@@ -282,7 +301,8 @@
 If
 .Ar file
 doesn't exist, it will be created from the internal filelist at the end of a
-viewing session.  This is best used to store the results of complex sorts
+viewing session.
+This is best used to store the results of complex sorts
 .Pq Cm -Spixels No for example
 for later viewing.
 .
@@ -294,7 +314,8 @@
 .Ar file
 when
 .Nm
-exits.  You can add files to filelists by specifying them on the command line
+exits.
+You can add files to filelists by specifying them on the command line
 when also specifying the list.
 .
 .Pp
@@ -308,8 +329,9 @@
 .
 .It Cm -e , --font Ar font
 .
-Set global font.  Should be a truetype font, resident in the current directory
-or the font directory, and should be defined in the form fontname/points, like
+Set global font.
+Should be a truetype font, resident in the current directory or the font
+directory, and should be defined in the form fontname/points, like
 .Qq myfont/12 .
 .
 .It Cm -C , --fontpath Ar path
@@ -337,7 +359,8 @@
 .Nm
 window, so when using it with many files it will take a while before a
 .Nm
-window is visible.  Use
+window is visible.
+Use
 .Cm --preload
 to get a progress bar.
 .
@@ -348,7 +371,8 @@
 screen,
 .Cm --zoom Ar zoom
 only affects smaller images and never scales larger than necessary to fit the
-screen size. The only exception is a
+screen size.
+The only exception is a
 .Ar zoom
 of 100, in which case images will always be shown at 100% zoom, no matter
 their dimensions.
@@ -357,20 +381,21 @@
 .
 When combined with
 .Cm --thumbnails ,
-this option only affects images opened from the thumbnail overview. The
-thumbnail list itself will still be windowed.
+this option only affects images opened from the thumbnail overview.
+The thumbnail list itself will still be windowed.
 .
-.It Cm -g , --geometry Oo Ar width No x Ar height Oc Op + Ar x No + Ar y
+.It Cm -g , --geometry Ar width Cm x Ar height | Cm + Ar x Cm + Ar y | Ar 
width Cm x Ar height Cm + Ar x Cm + Ar y
 .
-Limit (and don't change) the window size.  Takes an X-style geometry
+Limit (and don't change) the window size.
+Takes an X-style geometry
 .Ar string
 like 640x480 with optional +x+y window offset.
 Note that larger images will be zoomed out to fit, but you can see them at 1:1
 by clicking the zoom button.
 .
 Also note that this option does not enforce the geometry, changing it by a 
tiling
-WM or manually is still possible. After each resize, the resulting window size
-is used as the new size limit.
+WM or manually is still possible.
+After each resize, the resulting window size is used as the new size limit.
 .
 .It Cm -Y , --hide-pointer
 .
@@ -392,9 +417,11 @@
 .
 .It Cm -i , --index
 .
-Enable Index mode.  Index mode is similar to montage mode, and accepts the
-same options.  It creates an index print of thumbnails, printing the image
-name beneath each thumbnail.  Index mode enables certain other options, see
+Enable Index mode.
+Index mode is similar to montage mode, and accepts the same options.
+It creates an index print of thumbnails, printing the image name beneath
+each thumbnail.
+Index mode enables certain other options, see
 .Sx INDEX AND THUMBNAIL MODE OPTIONS
 and
 .Sx MONTAGE MODE OPTIONS .
@@ -403,8 +430,9 @@
 .
 Execute
 .Ar commandline
-and display its output in the bottom left corner of the image.  Can be used to
-display e.g. image dimensions or EXIF information.  Supports
+and display its output in the bottom left corner of the image.
+Can be used to display e.g. image dimensions or EXIF information.
+Supports
 .Sx FORMAT SPECIFIERS .
 .
 If
@@ -427,8 +455,9 @@
 .It Cm --insecure
 .
 When viewing files with HTTPS, this option disables strict hostname and peer
-checking. This allows images on sites with self-signed certificates to be
-opened, but is no more secure than plain HTTP.
+checking.
+This allows images on sites with self-signed certificates to be opened, but is
+no more secure than plain HTTP.
 .
 .It Cm --keep-zoom-vp
 .
@@ -437,25 +466,28 @@
 .
 .It Cm -l , --list
 .
-Don't display images.  Analyze them and display an
+Don't display images.
+Analyze them and display an
 .Xr ls 1 - No style
-listing.  Useful in scripts to hunt out images of a certain
-size/resolution/type etc.
+listing.
+Useful in scripts to hunt out images of a certain size/resolution/type etc.
 .
 .It Cm -U , --loadable
 .
-Don't display images.  Just print out their names if imlib2 can successfully
-load them.
+Don't display images.
+Just print out their names if imlib2 can successfully load them.
 Returns false if at least one image failed to load.
 .
 .It Cm --magick-timeout Ar timeout
 .
 Stop trying to convert unloadable files after
 .Ar timeout
-seconds. A negative value disables covert / magick support altogether, a value
+seconds.
+A negative value disables covert / magick support altogether, a value
 of zero causes
 .Nm
-to try indefinitely. By default, magick support is disabled.
+to try indefinitely.
+By default, magick support is disabled.
 .
 Note that feh may clutter
 .Pa /tmp
@@ -488,15 +520,18 @@
 .
 .It Cm -m , --montage
 .
-Enable montage mode.  Montage mode creates a new image consisting of a grid of
-thumbnails of the images in the filelist.  When montage mode is selected,
-certain other options become available.  See
+Enable montage mode.
+Montage mode creates a new image consisting of a grid of thumbnails of the
+images in the filelist.
+When montage mode is selected, certain other options become available.
+See
 .Sx MONTAGE MODE OPTIONS .
 .
 .It Cm -w , --multiwindow
 .
-Disable slideshow mode.  With this setting, instead of opening multiple files
-in slideshow mode, multiple windows will be opened; one per file.
+Disable slideshow mode.
+With this setting, instead of opening multiple files in slideshow mode,
+multiple windows will be opened; one per file.
 .
 .It Cm --no-jump-on-resort
 .
@@ -508,10 +543,10 @@
 .
 .It Cm --no-screen-clip
 .
-By default, window sizes are limited to the screen size.  With this option,
-windows will have the size of the image inside them.  Note that they may
-become very large this way, making them unmanageable in certain window
-managers.
+By default, window sizes are limited to the screen size.
+With this option, windows will have the size of the image inside them.
+Note that they may become very large this way, making them unmanageable
+in certain window managers.
 .
 .It Cm --no-xinerama
 .
@@ -527,23 +562,27 @@
 .
 .It Cm -p , --preload
 .
-Preload images.  This doesn't mean hold them in RAM, it means run through
-them and eliminate unloadable images first.  Otherwise they will be removed
-as you flick through.  This also analyses the images to get data for use in
-sorting, such as pixel size, type etc.  A preload run will be automatically
-performed if you specify one of these sort modes.
+Preload images.
+This doesn't mean hold them in RAM, it means run through them and eliminate
+unloadable images first.
+Otherwise they will be removed as you flick through.
+This also analyses the images to get data for use in sorting, such as pixel
+size, type etc.
+A preload run will be automatically performed if you specify one of these
+sort modes.
 .
 .It Cm -q , --quiet
 .
-Don't report non-fatal errors for failed loads.  Verbose and quiet modes are
-not mutually exclusive, the first controls informational messages, the second
-only errors.
+Don't report non-fatal errors for failed loads.
+Verbose and quiet modes are not mutually exclusive, the first controls
+informational messages, the second only errors.
 .
 .It Cm -z , --randomize
 .
 When viewing multiple files in a slideshow, randomize the file list before
-displaying. The list is re-randomized whenever the slideshow cycles (that is,
-transitions from last to first image).
+displaying.
+The list is re-randomized whenever the slideshow cycles (that is, transitions
+from last to first image).
 .
 .It Cm -r , --recursive
 .
@@ -559,29 +598,32 @@
 .
 Reload filelist and current image after
 .Ar int
-seconds.  Useful for viewing HTTP webcams or frequently changing directories.
+seconds.
+Useful for viewing HTTP webcams or frequently changing directories.
 .Pq Note that the filelist reloading is still experimental.
 .
 .Pp
 .
 If an image is removed,
 .Nm
-will either show the next one or quit.  However, if an image still exists, but
-can no longer be loaded,
+will either show the next one or quit.
+However, if an image still exists, but can no longer be loaded,
 .Nm
 will continue to try loading it.
 .
 .It Cm -n , --reverse
 .
-Reverse the sort order.  Use this to invert the order of the filelist.
+Reverse the sort order.
+Use this to invert the order of the filelist.
 E.g. to sort in reverse width order, use
 .Cm -nSwidth .
 .
 .It Cm -. , --scale-down
 .
 Scale images to fit window geometry (defaults to screen size when no geometry
-was specified). Note that the window geometry is not updated when changing
-images at the moment. This option is recommended for tiling window managers.
+was specified).
+Note that the window geometry is not updated when changing images at the 
moment.
+This option is recommended for tiling window managers.
 .
 This option is ignored when in fullscreen and thumbnail list mode.
 .
@@ -604,7 +646,8 @@
 .
 For slideshow mode, wait
 .Ar float
-seconds between automatically changing slides.  Useful for presentations.
+seconds between automatically changing slides.
+Useful for presentations.
 Specify a negative number to set the delay
 .Pq which will then be Ar float No * (-1) ,
 but start
@@ -613,15 +656,16 @@
 .
 .It Cm -S , --sort Ar sort_type
 .
-The file list may be sorted according to image parameters.  Allowed sort types
-are: name, filename, dirname, mtime, width, height, pixels, size, format.  For
-sort modes other than name, filename, dirname, or mtime, a preload run will be
-necessary, causing a delay proportional to the number of images in the list.
+The file list may be sorted according to image parameters.
+Allowed sort types are: name, filename, dirname, mtime, width, height, pixels,
+size, format.
+For sort modes other than name, filename, dirname, or mtime, a preload run will
+be necessary, causing a delay proportional to the number of images in the list.
 .
 .Pp
 .
-The mtime sort mode sorts images by most recently modified. To sort by oldest
-first, reverse the filelist with --reverse.
+The mtime sort mode sorts images by most recently modified.
+To sort by oldest first, reverse the filelist with --reverse.
 .
 .It Cm -| , --start-at Ar filename
 .
@@ -632,12 +676,14 @@
 .Ar filename
 must match an
 .Pq expanded
-path in the filelist. So, if the file to be matched is passed via an absolute
-path in the filelist,
+path in the filelist.
+So, if the file to be matched is passed via an absolute path in the filelist,
 .Ar filename
-must be an absolute path. If the file is passed via a relative path,
+must be an absolute path.
+If the file is passed via a relative path,
 .Ar filename
-must be an identical relative path. This is a known issue.
+must be an identical relative path.
+This is a known issue.
 See also
 .Sx USAGE EXAMPLES .
 .
@@ -647,7 +693,8 @@
 .Ar theme
 - see
 .Sx THEMES CONFIG SYNTAX
-for more info.  Note that commandline options always override theme options.
+for more info.
+Note that commandline options always override theme options.
 The theme can also be set via the program name
 .Pq e.g. with symlinks ,
 so by default
@@ -663,8 +710,8 @@
 .Cm --fullscreen
 and
 .Cm --scale-down
-do not affect the thumbnail window. They do, however, work for image windows
-launched from thumbnail mode.
+do not affect the thumbnail window.
+They do, however, work for image windows launched from thumbnail mode.
 Also supports
 .Sx INDEX AND THUMBNAIL MODE OPTIONS
 as well as
@@ -674,19 +721,21 @@
 .
 Set
 .Ar title
-for windows opened from thumbnail mode.  See also
+for windows opened from thumbnail mode.
+See also
 .Sx FORMAT SPECIFIERS .
 .
 .It Cm -^ , --title Ar title
 .
-Set window title.  Applies to all windows except those opened from thumbnail
-mode.  See
+Set window title.
+Applies to all windows except those opened from thumbnail mode.
+See
 .Sx FORMAT SPECIFIERS .
 .
 .It Cm -u , --unloadable
 .
-Don't display images.  Just print out their names if imlib2 can NOT
-successfully load them.
+Don't display images.
+Just print out their names if imlib2 can NOT successfully load them.
 Returns false if at least one image was loadable.
 .
 .It Cm -V , --verbose
@@ -700,8 +749,8 @@
 .It Cm --version-sort
 .
 .Pq optional feature, $MAN_VERSCMP$ in this build
-Use natural sorting for file and directory names. In this mode, filenames are
-sorted as an ordinary human would expect, e.g.
+Use natural sorting for file and directory names.
+In this mode, filenames are sorted as an ordinary human would expect, e.g.
 .Qq 2.jpg
 comes before
 .Qq 10.jpg .
@@ -711,8 +760,9 @@
 .Pq optional feature, $MAN_XINERAMA$ in this build
 Override
 .Nm Ns No 's
-idea of the active Xinerama screen. May be useful in certain circumstances
-where the window manager places the feh window on Xinerama screen A while
+idea of the active Xinerama screen.
+May be useful in certain circumstances where the window manager places the feh
+window on Xinerama screen A while
 .Nm
 assumes that it will be placed on screen B.
 .
@@ -724,18 +774,20 @@
 .Ar screen .
 All other screens will be filled black/white.
 .
-This is most useful in a Xinerama configuration with
-overlapping screens.  For instance, assume you have two overlapping displays
-(index 0 and 1), where index 0 is smaller. To center a background on the
-display with index 0 and fill the extra space on index 1 black/white, use
+This is most useful in a Xinerama configuration with overlapping screens.
+For instance, assume you have two overlapping displays (index 0 and 1),
+where index 0 is smaller.
+To center a background on the display with index 0 and fill the extra space
+on index 1 black/white, use
 .Qq --xinerama-index 0
 when setting the wallpaper.
 .
-.It Cm --zoom Ar percent No | Cm max No | Cm fill
+.It Cm --zoom Ar percent | Cm max | Cm fill
 .
 Zoom images by
 .Ar percent
-when in full screen mode or when window geometry is fixed.  When combined with
+when in full screen mode or when window geometry is fixed.
+When combined with
 .Cm --auto-zoom ,
 zooming will be limited to the specified
 .Ar percent .
@@ -768,14 +820,15 @@
 .Ar int
 .Pq 0 - 255 .
 .
-.It Cm -b , --bg Ar file No | Cm trans
+.It Cm -b , --bg Ar file | Cm trans
 .
 Use
 .Ar file
-as background for your montage.  With this option specified, the montage size
-will default to the size of
+as background for your montage.
+With this option specified, the montage size will default to the size of
 .Ar file
-if no size restrictions were specified.  Alternatively, if
+if no size restrictions were specified.
+Alternatively, if
 .Ar file
 is
 .Qq trans ,
@@ -784,8 +837,8 @@
 .It Cm -X , --ignore-aspect
 .
 By default, the montage thumbnails will retain their aspect ratios, while
-fitting into thumb-width/-height.  This options forces them to be the size set
-by
+fitting into thumb-width/-height.
+This options forces them to be the size set by
 .Cm --thumb-width No and Cm --thumb-height .
 This will prevent any empty space in the final montage.
 .
@@ -819,8 +872,9 @@
 .It Cm -s , --stretch
 .
 Normally, if an image is smaller than the specified thumbnail size, it will
-not be enlarged.  If this option is set, the image will be scaled up to fit
-the thumbnail size.  Aspect ratio will be maintained unless
+not be enlarged.
+If this option is set, the image will be scaled up to fit the thumbnail size.
+Aspect ratio will be maintained unless
 .Cm --ignore-aspect
 is specified.
 .
@@ -849,7 +903,8 @@
 .
 Show image information based on
 .Ar format
-below thumbnails in index / thumbnail mode.  See
+below thumbnails in index / thumbnail mode.
+See
 .Sx FORMAT SPECIFIERS .
 May contain newlines.
 .
@@ -865,7 +920,8 @@
 needs to load all images to calculate the dimensions of its own window.
 So when using them with many files, it will take a while before a
 .Nm
-window becomes visible.  Use
+window becomes visible.
+Use
 .Cm --preload
 to get a progress bar.
 .
@@ -878,15 +934,16 @@
 .
 Redraw thumbnail window every
 .Ar n
-images.  In
+images.
+In
 .Nm
 <= 1.5, the thumbnail image used to be redrawn after every computed thumbnail
 .Pq so, it updated immediately .
 However, since the redrawing takes quite long
 .Pq especially for thumbnail mode on a large filelist ,
 this turned out to be a major performance penalty.
-As a workaround, the thumbnail image is redrawn every 10th image now by
-default. Set
+As a workaround, the thumbnail image is redrawn every 10th image now by 
default.
+Set
 .Ar n No = 1
 to get the old behaviour,
 .Ar n No = 0
@@ -899,26 +956,30 @@
 .
 In many desktop environments,
 .Nm
-can also be used as a background setter.  Unless you pass the
+can also be used as a background setter.
+Unless you pass the
 .Cm --no-fehbg
 option, it will write a script to set the current background to
 .Pa ~/.fehbg .
 So to have your background restored every time you start X, you can add
-.Qq sh ~/.fehbg &
+.Qq ~/.fehbg &
 to your X startup script
 .Pq such as Pa ~/.xinitrc .
-As of
+Note that
+.Pq unless the wallpaper is set via the menu
 .Nm
-2.13, this script is executable, so
-.Qq ~/.fehbg &
-will work as well.
+saves the files and directories it was passed on the commandline, not the
+files which actually ended up as wallpaper.
+So, if you have randomization enabled,
+.Pa ~/.fehbg
+may set different wallpapers on each execution.
 .
 .Pp
 .
 Note that
 .Nm
-does not support setting the wallpaper of GNOME shell desktops. In this
-environment, you can use
+does not support setting the wallpaper of GNOME shell desktops.
+In this environment, you can use
 .Qq gsettings set org.gnome.desktop.background picture-uri file:/// Ns Ar path
 instead.
 .
@@ -930,10 +991,10 @@
 .Cm --bg-max ,
 you can use
 .Cm --geometry
-to specify an offset from one side of the screen instead of
-centering the image.  Positive values will offset from the left/top
-side, negative values from the bottom/right.  +0 and -0 are both
-valid and distinct values.
+to specify an offset from one side of the screen instead of centering the 
image.
+Positive values will offset from the left/top side, negative values from the
+bottom/right.
++0 and -0 are both valid and distinct values.
 .
 .Pp
 .
@@ -951,8 +1012,8 @@
 .
 Use
 .Cm --no-xinerama
-to treat the whole X display as one screen when setting wallpapers. You
-may also use
+to treat the whole X display as one screen when setting wallpapers.
+You may also use
 .Cm --xinerama-index
 to use
 .Nm
@@ -962,16 +1023,16 @@
 .
 .It Cm --bg-center
 .
-Center the file on the background.  If it is too small, it will be surrounded
-by a border as specified by
+Center the file on the background.
+If it is too small, it will be surrounded by a border as specified by
 .Cm --image-bg .
 .
 .It Cm --bg-fill
 .
 Like
 .Cm --bg-scale ,
-but preserves aspect ratio by zooming the image until it fits.  Either a
-horizontal or a vertical part of the image will be cut off
+but preserves aspect ratio by zooming the image until it fits.
+Either a horizontal or a vertical part of the image will be cut off
 .
 .It Cm --bg-max
 .
@@ -984,7 +1045,8 @@
 .It Cm --bg-scale
 .
 Fit the file into the background without repeating it, cutting off stuff or
-using borders.  But the aspect ratio is not preserved either
+using borders.
+But the aspect ratio is not preserved either
 .
 .It Cm --bg-tile
 .
@@ -1014,6 +1076,10 @@
 Escaped image path/filename
 .Pq for use in shell commands
 .
+.It %g
+.
+w,h window dimensions in pixels (mnemonic: geometry)
+.
 .It %h
 .
 Image height
@@ -1024,7 +1090,8 @@
 .
 .It %L
 .
-Temporary copy of filelist. Multiple uses of %L within the same format string 
will return the same copy.
+Temporary copy of filelist.
+Multiple uses of %L within the same format string will return the same copy.
 .
 .It %m
 .
@@ -1048,12 +1115,14 @@
 .
 .It \&%P
 .
-Number of image pixels
+Number of image pixels in human-readable format with k/M
 .Pq kilopixels / megapixels
+suffix
 .
 .It %r
 .
-Image rotation. A half right turn equals pi.
+Image rotation.
+A half right turn equals pi.
 .
 .It %s
 .
@@ -1087,7 +1156,11 @@
 .
 .It %z
 .
-current image zoom
+Current image zoom, rounded to two decimal places
+.
+.It %Z
+.
+Current image zoom, higher precision
 .
 .It %%
 .
@@ -1140,8 +1213,9 @@
 .
 Note that the option parser does not behave like a normal shell: filename
 expansion and backslash escape sequences are not supported and passed to
-feh's option parser as-is. However, quoting of arguments is respected
-and can be used for arguments with whitespace.
+feh's option parser as-is.
+However, quoting of arguments is respected and can be used for arguments
+with whitespace.
 .
 So, the sequence
 .Qq --info Qq foo bar
@@ -1161,15 +1235,16 @@
 .
 .Pp
 .
-You can use this theme in two ways.  Either call
+You can use this theme in two ways.
+Either call
 .Qo
 .Nm
 -Timagemap *.jpg
 .Qc ,
 or create a symbolic link to
 .Nm
-with the name of the theme you want it to use.  For the example above,
-this would be
+with the name of the theme you want it to use.
+For the example above, this would be
 .Qo
 ln -s `which
 .Nm
@@ -1236,9 +1311,9 @@
 .
 .Pp
 .
-.Em Note :
-Do not use the same keybinding for multiple actions. When binding an action
-to a new key
+.Em Note:\&
+Do not use the same keybinding for multiple actions.
+When binding an action to a new key
 .Pq or mouse button ,
 make sure to unbind it from its previous action, if present.
 .Nm
@@ -1268,8 +1343,9 @@
 If
 .Nm
 is running inside a terminal and its standard input is not used for images or
-filelists, key input from the terminal is also accepted. However, terminal
-input support is currently limited to most alphanumeric characters
+filelists, key input from the terminal is also accepted.
+However, terminal input support is currently limited to most alphanumeric
+characters
 .Pq 0-9 a-z A-Z and some more ,
 return and backspace.
 .
@@ -1286,12 +1362,13 @@
 .
 .It c Bq toggle_caption
 .
-Caption entry mode.  If
+Caption entry mode.
+If
 .Cm --caption-path
-has been specified, then this enables caption editing.  The caption at the
-bottom of the screen will turn yellow and can be edited.  Hit return to confirm
-and save the caption, or escape to cancel editing.  Note that you can insert
-an actual newline into the caption using
+has been specified, then this enables caption editing.
+The caption at the bottom of the screen will turn yellow and can be edited.
+Hit return to confirm and save the caption, or escape to cancel editing.
+Note that you can insert an actual newline into the caption using
 .Aq Ctrl+return .
 .
 .It d Bq toggle_filenames
@@ -1315,8 +1392,8 @@
 .
 .It h Bq toggle_pause
 .
-Pause/Continue the slideshow.  When it is paused, it will not automatically
-change slides based on
+Pause/Continue the slideshow.
+When it is paused, it will not automatically change slides based on
 .Cm --slideshow-delay .
 .
 .It i Bq toggle_info
@@ -1326,19 +1403,22 @@
 .
 .It k Bq toggle_keep_vp
 .
-Toggle zoom and viewport keeping. When enabled,
+Toggle zoom and viewport keeping.
+When enabled,
 .Nm
 will keep zoom and X, Y offset when switching images.
 .
 .It m Bq toggle_menu
 .
-Show menu.  Use the arrow keys and return to select items,
+Show menu.
+Use the arrow keys and return to select items,
 .Aq escape
 to close the menu.
 .
 .It n , Ao space Ac , Ao Right Ac Bq next_img
 .
-Show next image. Selects the next image in thumbnail mode.
+Show next image.
+Selects the next image in thumbnail mode.
 .
 .It o Bq toggle_pointer
 .
@@ -1346,7 +1426,8 @@
 .
 .It p , Ao BackSpace Ac , Ao Left Ac Bq prev_img
 .
-Show previous image. Selects the previous image in thumbnail mode.
+Show previous image.
+Selects the previous image in thumbnail mode.
 .
 .It q , Ao Escape Ac Bq quit
 .
@@ -1355,7 +1436,8 @@
 .
 .It r Bq reload_image
 .
-Reload current image.  Useful for webcams
+Reload current image.
+Useful for webcams
 .
 .It s Bq save_image
 .
@@ -1370,8 +1452,7 @@
 .
 Change window size to fit current image size
 .Pq plus/minus zoom, if set .
-In scale-down and fixed-geometry mode, this also updates the window size
-limits.
+In scale-down and fixed-geometry mode, this also updates the window size 
limits.
 .
 .It x Bq close
 .
@@ -1388,24 +1469,28 @@
 .It \&[, \&] Bq prev_dir, next_dir
 .
 Jump to the first image of the previous or next sequence of images sharing
-a directory name in the current filelist.  Use --sort dirname if you would
-like to ensure that all images in a directory are grouped together.
+a directory name in the current filelist.
+Use --sort dirname if you would like to ensure that all images in a directory
+are grouped together.
 .
 .It < , > Bq orient_3 , orient_1
 .
 In place editing - rotate the image 90 degrees (counter)clockwise.
 The rotation is lossless, but may create artifacts in some image corners when
-used with JPEG images.  Rotating in the reverse direction will make them go
-away.  See
+used with JPEG images.
+Rotating in the reverse direction will make them go away.
+See
 .Xr jpegtran 1
 for more about lossless JPEG rotation.
 .
-.Em Note:
+.Em Note:\&
 .Nm
-assumes that this feature is used to normalize image orientation. For JPEG
-images, it will unconditionally set the EXIF orientation tag to 1
+assumes that this feature is used to normalize image orientation.
+For JPEG images, it will unconditionally set the EXIF orientation
+tag to 1
 .Pq Qq 0,0 is top left
-after every rotation. See
+after every rotation.
+See
 .Xr jpegexiforient 1
 for details on how to change this flag.
 .
@@ -1566,8 +1651,8 @@
 .
 Each
 .Ar binding
-is a button number.  It may optionally start with modifiers for things like
-Control, in which case
+is a button number.
+It may optionally start with modifiers for things like Control, in which case
 .Ar binding
 looks like
 .Ar mod Ns No - Ns Ar button
@@ -1575,7 +1660,7 @@
 .
 .Pp
 .
-.Em Note :
+.Em Note:\&
 Do not use the same button for multiple actions.
 .Nm
 does not check for conflicting bindings, so their behaviour is undefined.
@@ -1677,11 +1762,12 @@
 .Pp
 .
 When clicking the zoom button and immediately releasing it, the image will be
-back at 100% zoom.  When clicking it and moving the mouse while holding the
-button down, the zoom will be continued at the previous zoom level.  The zoom
-will always happen so that the pixel on which you entered the zoom mode
-remains stationary.  So, to enlarge a specific part of an image, click the
-zoom button on that part.
+back at 100% zoom.
+When clicking it and moving the mouse while holding the button down, the zoom
+will be continued at the previous zoom level.
+The zoom will always happen so that the pixel on which you entered the zoom 
mode
+remains stationary.
+So, to enlarge a specific part of an image, click the zoom button on that part.
 .
 .
 .Sh SIGNALS
@@ -1705,7 +1791,8 @@
 .
 .Sh USAGE EXAMPLES
 .
-Here are some examples of useful option combinations. See also:
+Here are some examples of useful option combinations.
+See also:
 .Aq http://feh.finalrewind.org/examples/
 .
 .Bl -tag -width indent
@@ -1720,8 +1807,8 @@
 .
 .It feh -rSfilename --version-sort ~/Pictures
 .
-Same as above, but sort naturally. By default, feh will show files in the
-string order of their names, meaning e.g.
+Same as above, but sort naturally.
+By default, feh will show files in the string order of their names, meaning 
e.g.
 .Qq foo 10.jpg
 will come before
 .Qq foo 2.jpg .
@@ -1739,9 +1826,9 @@
 .It feh -irFarial/14 -O index.jpg ~/Pictures
 .
 Make an index print of ~/Pictures and all directories below it, using 14 point
-Arial to write the image info under each thumbnail.  Save the image as
-index.jpg and don't display it, just exit.  Note that this even works without
-a running X server
+Arial to write the image info under each thumbnail.
+Save the image as index.jpg and don't display it, just exit.
+Note that this even works without a running X server
 .
 .It feh --unloadable -r ~/Pictures
 .
@@ -1768,8 +1855,8 @@
 .
 .It feh --start-at ./foo.jpg \&.
 .
-View all images in the current directory, starting with foo.jpg.  All other
-images are still in the slideshow and can be viewed normally
+View all images in the current directory, starting with foo.jpg.
+All other images are still in the slideshow and can be viewed normally
 .
 .It feh --start-at foo.jpg *
 .
@@ -1802,24 +1889,25 @@
 .
 To view images from URLs such as http://, you need
 .Nm
-compiled with libcurl support (enabled by default).  See the
+compiled with libcurl support (enabled by default).
+See the
 .Sx VERSION
 section.
 .
 .
 .Sh BUGS
 .
-.Pp
-.
 On systems with giflib 5.1.2,
 .Nm
-may be unable to load gif images. For affected mips, mipsel and arm devices,
-gif support is completely broken, while on x86 / x86_64 gifs can usually
-only be loaded if they are the first image in the filelist.
+may be unable to load gif images.
+For affected mips, mipsel and arm devices, gif support is completely
+broken, while on x86 / x86_64 gifs can usually only be loaded if they are
+the first image in the filelist.
 This appears to be a bug in giflib,
 see
 .Aq https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=813729
-for details. Workaround: Use
+for details.
+Workaround: Use
 .Cm --magick-timeout 5
 .Pq or some other positive value
 to load gifs with imagemagick instead, or downgrade to giflib 5.1.1, or
@@ -1842,8 +1930,9 @@
 .Cm --magick-timeout
 may clutter
 .Pa /tmp
-with temporary files produced by ImageMagick. This happens whenever an image
-is not loaded due to the conversion taking longer than the specified timeout.
+with temporary files produced by ImageMagick.
+This happens whenever an image is not loaded due to the conversion taking
+longer than the specified timeout.
 .
 .Ss REPORTING BUGS
 .
@@ -1899,10 +1988,11 @@
 .
 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
-THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
 .
 .Pp
 .
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.25/src/filelist.c new/feh-2.26/src/filelist.c
--- old/feh-2.25/src/filelist.c 2018-03-04 08:55:59.000000000 +0100
+++ new/feh-2.26/src/filelist.c 2018-04-19 21:44:35.000000000 +0200
@@ -398,7 +398,7 @@
 }
 
 #ifdef HAVE_VERSCMP
-inline int strcmp_or_strverscmp(const char *s1, const char *s2)
+static inline int strcmp_or_strverscmp(const char *s1, const char *s2)
 {
        if (!opt.version_sort)
                return(strcmp(s1, s2));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.25/src/gib_list.c new/feh-2.26/src/gib_list.c
--- old/feh-2.25/src/gib_list.c 2018-03-04 08:55:59.000000000 +0100
+++ new/feh-2.26/src/gib_list.c 2018-04-19 21:44:35.000000000 +0200
@@ -360,7 +360,6 @@
    {
       farray[i] = f;
    }
-   srand(getpid() * time(NULL) % ((unsigned int) -1));
    for (i = 0; i < len - 1; i++)
    {
       r = i + rand() / (RAND_MAX / (len - i) + 1 );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.25/src/imlib.c new/feh-2.26/src/imlib.c
--- old/feh-2.25/src/imlib.c    2018-03-04 08:55:59.000000000 +0100
+++ new/feh-2.26/src/imlib.c    2018-04-19 21:44:35.000000000 +0200
@@ -133,9 +133,6 @@
 
        imlib_set_cache_size(opt.cache_size * 1024 * 1024);
 
-       /* Initialise random numbers */
-       srand(getpid() * time(NULL) % ((unsigned int) -1));
-
        return;
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.25/src/keyevents.c new/feh-2.26/src/keyevents.c
--- old/feh-2.25/src/keyevents.c        2018-03-04 08:55:59.000000000 +0100
+++ new/feh-2.26/src/keyevents.c        2018-04-19 21:44:35.000000000 +0200
@@ -774,6 +774,7 @@
                        opt.geom_w = winwid->w;
                        opt.geom_h = winwid->h;
                }
+               winwidget_render_image(winwid, 1, 0);
        }
        return;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.25/src/main.c new/feh-2.26/src/main.c
--- old/feh-2.25/src/main.c     2018-03-04 08:55:59.000000000 +0100
+++ new/feh-2.26/src/main.c     2018-04-19 21:44:35.000000000 +0200
@@ -42,6 +42,8 @@
 {
        atexit(feh_clean_exit);
 
+       srand(getpid() * time(NULL) % ((unsigned int) -1));
+
        setup_signal_handlers();
        init_parse_options(argc, argv);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.25/src/options.c new/feh-2.26/src/options.c
--- old/feh-2.25/src/options.c  2018-03-04 08:55:59.000000000 +0100
+++ new/feh-2.26/src/options.c  2018-04-19 21:44:35.000000000 +0200
@@ -416,6 +416,7 @@
                {"no-recursive"  , 0, 0, 241},
                {"cache-size"    , 1, 0, 243},
                {"version-sort"  , 0, 0, 246},
+               {"offset"        , 1, 0, 247},
                {0, 0, 0, 0}
        };
        int optch = 0, cmdx = 0;
@@ -784,6 +785,10 @@
                case 246:
                        opt.version_sort = 1;
                        break;
+               case 247:
+                       opt.offset_flags = XParseGeometry(optarg, &opt.offset_x,
+                                       &opt.offset_y, (unsigned int 
*)&discard, (unsigned int *)&discard);
+                       break;
                default:
                        break;
                }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.25/src/options.h new/feh-2.26/src/options.h
--- old/feh-2.25/src/options.h  2018-03-04 08:55:59.000000000 +0100
+++ new/feh-2.26/src/options.h  2018-04-19 21:44:35.000000000 +0200
@@ -111,6 +111,9 @@
        int geom_y;
        unsigned int geom_w;
        unsigned int geom_h;
+       int offset_flags;
+       int offset_x;
+       int offset_y;
        int default_zoom;
        int zoom_mode;
        unsigned char adjust_reload;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.25/src/slideshow.c new/feh-2.26/src/slideshow.c
--- old/feh-2.25/src/slideshow.c        2018-03-04 08:55:59.000000000 +0100
+++ new/feh-2.26/src/slideshow.c        2018-04-19 21:44:35.000000000 +0200
@@ -468,6 +468,12 @@
                                if (file)
                                        strncat(ret, 
shell_escape(file->filename), sizeof(ret) - strlen(ret) - 1);
                                break;
+                       case 'g':
+                               if (winwid) {
+                                       snprintf(buf, sizeof(buf), "%d,%d", 
winwid->w, winwid->h);
+                                       strncat(ret, buf, sizeof(ret) - 
strlen(ret) - 1);
+                               }
+                               break;
                        case 'h':
                                if (file && (file->info || 
!feh_file_info_load(file, NULL))) {
                                        snprintf(buf, sizeof(buf), "%d", 
file->info->height);
@@ -564,6 +570,12 @@
                                        strncat(ret, "1.00", sizeof(ret) - 
strlen(ret) - 1);
                                }
                                break;
+                       case 'Z':
+                               if (winwid) {
+                                       snprintf(buf, sizeof(buf), "%f", 
winwid->zoom);
+                                       strncat(ret, buf, sizeof(ret) - 
strlen(ret) - 1);
+                               }
+                               break;
                        case '%':
                                strncat(ret, "%", sizeof(ret) - strlen(ret) - 
1);
                                break;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.25/src/wallpaper.c new/feh-2.26/src/wallpaper.c
--- old/feh-2.25/src/wallpaper.c        2018-03-04 08:55:59.000000000 +0100
+++ new/feh-2.26/src/wallpaper.c        2018-04-19 21:44:35.000000000 +0200
@@ -453,7 +453,9 @@
                        if (home) {
                                FILE *fp;
                                char *path;
+                               char *absolute_path;
                                struct stat s;
+                               gib_list *filelist_pos = filelist;
                                path = estrjoin("/", home, ".fehbg", NULL);
                                if ((fp = fopen(path, "w")) == NULL) {
                                        weprintf("Can't write to %s", path);
@@ -461,7 +463,16 @@
                                        fputs("#!/bin/sh\n", fp);
                                        if (use_filelist) {
                                                for (int i = 0; i < cmdargc; 
i++) {
-                                                       
fputs(shell_escape(cmdargv[i]), fp);
+                                                       if (filelist_pos && 
!strcmp(FEH_FILE(filelist_pos->data)->filename, cmdargv[i])) {
+                                                               /* argument is 
a file */
+                                                               absolute_path = 
feh_absolute_path(cmdargv[i]);
+                                                               
fputs(shell_escape(absolute_path), fp);
+                                                               filelist_pos = 
filelist_pos->next;
+                                                               
free(absolute_path);
+                                                       } else {
+                                                               /* argument is 
an option / option arg */
+                                                               
fputs(shell_escape(cmdargv[i]), fp);
+                                                       }
                                                        fputc(' ', fp);
                                                }
                                        } else if (fil) {
@@ -482,7 +493,9 @@
                                                        fputs(" --no-xinerama", 
fp);
 #endif
                                                fputc(' ', fp);
-                                               fputs(shell_escape(fil), fp);
+                                               absolute_path = 
feh_absolute_path(fil);
+                                               
fputs(shell_escape(absolute_path), fp);
+                                               free(absolute_path);
                                        }
                                        fputc('\n', fp);
                                        fclose(fp);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.25/src/winwidget.c new/feh-2.26/src/winwidget.c
--- old/feh-2.25/src/winwidget.c        2018-03-04 08:55:59.000000000 +0100
+++ new/feh-2.26/src/winwidget.c        2018-04-19 21:44:35.000000000 +0200
@@ -555,6 +555,32 @@
                winwid->im_y = (int) (winwid->h - (winwid->im_h * 
winwid->zoom)) >> 1;
        }
 
+       /*
+        * Adjust X/Y offset if the image is larger than the window and
+        * --inner-geometry is set. This will cause odd behaviour when
+        * zooming an already large image in --inner-geometry mode, but in most
+        * cases this should be what the user wants. Plus, it doesn't require
+        * fiddling around in two or three places above, so it's the best
+        * solution considering a future refactoring of this function.
+        */
+
+       if (need_center || resize) {
+               if ((opt.offset_flags & XValue) && (winwid->im_w * 
winwid->zoom) > winwid->w) {
+                       if (opt.offset_flags & XNegative) {
+                               winwid->im_x = winwid->w - (winwid->im_w * 
winwid->zoom) - opt.offset_x;
+                       } else {
+                               winwid->im_x = - opt.offset_x * winwid->zoom;
+                       }
+               }
+               if ((opt.offset_flags & YValue) && (winwid->im_h * 
winwid->zoom) > winwid->h) {
+                       if (opt.offset_flags & YNegative) {
+                               winwid->im_y = winwid->h - (winwid->im_h * 
winwid->zoom) - opt.offset_y;
+                       } else {
+                               winwid->im_y = - opt.offset_y * winwid->zoom;
+                       }
+               }
+       }
+
        /* Now we ensure only to render the area we're looking at */
        dx = winwid->im_x;
        dy = winwid->im_y;


Reply via email to