Commit Graph

756 Commits

Author SHA1 Message Date
Bert Münnich
caec32d257 Merge branch 'autoreload'
Pull request #278.

Fixes issue #29 and issue #199.
2017-05-17 20:22:23 +02:00
Bert Münnich
a20173a42d Detect all file overwrites in autoreload_inotify
mv(1) inside the same filesystem was not detected.

Supporting this case made it necessary to always watch the directory. Turns out
the logic and state keeping between arl_setup() and arl_handle() is easier,
when using different watch descriptors for the file and the directory and not
using a oneshot descriptor for the file.

Requiring an absolute canonical path for arl_setup() simplifies dir and base
name splitting. No need for dirname(3) and basename(3) anymore.
2017-05-17 20:20:39 +02:00
Bert Münnich
de3d7827ce Compiler independent buffer alignment 2017-05-17 20:15:35 +02:00
Bert Münnich
0e1a85d224 Read all available inotify events
Loop reading from inotify fd in arl_handle(); requires non-blocking inotify fd.
2017-05-17 20:14:36 +02:00
Bert Münnich
6695cd4c34 Simplify inotify cleanup 2017-05-17 20:14:20 +02:00
Bert Münnich
8bce80fdae Revised error reporting in autoreload_inotify
No repeated error messages after failed initialization. No error messages on
failed inotify_rm_watch().
2017-05-17 20:13:32 +02:00
Bert Münnich
9ac8fc62df Fix code-style in autoreload_inotify.c 2017-05-17 20:12:22 +02:00
Bert Münnich
8aaa5c9398 Simplify autoreload backend selection in Makefile 2017-05-17 20:11:44 +02:00
Bert Münnich
3724d3fc17 Revised autoreload interface
Make the header only contain the public interface and nothing from the
implementation. All functions get a handle to their self object, like the img_
and tns_ and win_ functions. All necessary data (file path) is also passed as
an argument, so that no extern redeclarations are needed.

Make arl_setup_dir() private, it's not called outside the module.

Make arl_handle() return true if the file has changed, so that the reloading of
the file can be done by the caller.
2017-05-17 20:07:32 +02:00
Max Voit
edb117e3bd Add autoreload support by inotify (and dummy backend nop) 2017-05-17 15:52:40 +02:00
Bert Münnich
1fb3ec576c Properly quit when window gets closed; fixes issue #27 2017-05-17 15:51:47 +02:00
Bert Münnich
e98266b148 State the purpose of CLEANUP macro 2017-05-17 15:51:11 +02:00
Bert Münnich
7e9b4cee92 Merge branch 'diogocp/patch-1' 2017-02-15 20:47:21 +01:00
Jakub Wilk
c313edc0ad Fix typo 2017-02-15 20:20:41 +01:00
Bert Münnich
ba4b84a8b1 Fix missing quote in key-handler from commit 5c607ad 2017-02-13 11:20:58 +01:00
Diogo Pereira
109a38e76c Add Netpbm, TGA and XPM MIME types to sxiv.desktop
These formats are also supported by imlib2.
2017-01-27 13:50:29 +00:00
Bert Münnich
5c607ad495 Pass given file names to key-handler instead of real paths
Misbehaving command lines in the key-handler that rewrite the given files and
thus replace symbolic links instead of their targets shall call realpath(1).

Fixes issue #205 and reverts commit 92e3b578.
2017-01-07 14:44:33 +01:00
Bert Münnich
1c260e701b Fix unused-variable warnings in conditionally compiled code 2016-12-28 19:18:16 +01:00
Bert Münnich
5fb5d44cff Merge vaygr/opt-dep 2016-12-28 19:18:16 +01:00
Vlad Glagolev
22436f747d Add build options for optional dependencies 2016-12-26 19:20:59 -05:00
Bert Münnich
ff2ce99bf7 Merge djhejna/floatdelay 2016-12-01 21:18:41 +01:00
Bert Münnich
9a85dd41d8 Ignore button and key events while key-handler is running
Related to issue #253, which originally asked for a non-blocking key-handler.
2016-11-30 20:48:32 +01:00
Bert Münnich
c1ba841783 Merge dwminer/framerate 2016-11-28 19:10:31 +01:00
Don Hejna
27bbaab976 Support for DELAY as a floating point number including less than 1
second while maintaining backward compatibiitiy with integer
arguments.
2016-11-27 20:36:23 -08:00
dwminer
ec47ecb23a Document -A option 2016-11-27 03:05:26 -05:00
dwminer
2c566c5320 Add -A option to force framerate on animated images 2016-11-27 02:59:05 -05:00
Bert Münnich
32b29e61c1 Document new -e flag 2016-10-30 19:24:55 +01:00
Bert Münnich
c772d3c3f3 Use -e for X window embedding 2016-10-30 19:16:51 +01:00
shuall
0b758e08f2 added support for XEMBED into other windows (ie tabbed) with -w 2016-10-28 22:09:26 -04:00
Bert Münnich
878d97068c Only open regular files; fixes issue #252 2016-10-20 10:21:55 +02:00
Bert Münnich
891f389f0e Silence error messages in image-info script 2016-10-17 20:29:11 +02:00
Paride Legovini
86dc6860f9 Allow opening directories non-recursively 2016-09-28 19:27:48 +02:00
Bert Münnich
d69f39e3aa Update unstable version number 2016-08-10 21:13:14 +02:00
Bert Münnich
184d21035d Add TODO list 2016-08-08 09:34:37 +02:00
Bert Münnich
c280129cef Use Xft for font loading and text drawing 2016-08-06 15:27:58 +02:00
Bert Münnich
aabc2bddbd Provide image width and height to image-info script; fixes issue #159 2016-08-06 12:22:47 +02:00
Bert Münnich
f32771a647 Removed usage information from README, refer to man page 2016-02-12 20:18:54 +01:00
Bert Münnich
160dd62953 Refined grouping of key/mouse mappings in man page 2016-02-12 20:13:43 +01:00
Bert Münnich
53a72c7b65 Fix option -q; commit d3a70a2 completely broke it; fixes issue #223 2015-12-28 17:00:21 +01:00
Bert Münnich
f75fa78eca Make navigate_frame command respect a count prefix 2015-12-26 15:24:08 +01:00
Bert Münnich
4db3029bc6 Fix 32-bit unsigned integer shift 2015-12-26 10:14:35 +01:00
Sudo Nice
b32aefce3a Make image-info script more steady to special symbols in file names 2015-12-25 11:23:41 +01:00
Bert Münnich
93e2d03c73 Stable version 1.3.2 2015-12-20 13:21:25 +01:00
Bert Münnich
de4649fc28 Build-time option for default thumbnail size; fixes issue #207 2015-12-20 13:10:39 +01:00
Bert Münnich
a7d39b0ab8 Simplified r_mkdir() 2015-10-28 23:21:12 +01:00
Bert Münnich
d3a70a285d Revised error handling
- Functions warn() and die() replaced by GNU-like error(3) function
- Register cleanup() with atexit(3)
- Functions called by cleanup() are marked with CLEANUP and are not allowed to
  call exit(3)
2015-10-28 23:03:37 +01:00
Bert Münnich
851e4288c1 Prefix safe allocation functions with 'e' instead of 's_' 2015-10-28 22:29:01 +01:00
Bert Münnich
b096cbd536 Removed unnecessary buffer size constants 2015-10-28 22:23:28 +01:00
Bert Münnich
9a7e97cd89 Use XSI realpath(3) 2015-10-28 21:52:41 +01:00
Bert Münnich
66c3c55759 Use POSIX.1-2008 getline(3) 2015-10-28 21:50:17 +01:00