143 Commits

Author SHA1 Message Date
Bert Münnich
f02661879f Reject text files resembling TGA images
Fixes issue 

The imlib2 TGA loader returns an imlib image handle without any actual data
when given a text file like this:

    T
    Content-Type: application/javascript
    Content-Length: 3836
    Last-Modified: Wed, 23 Sep 2015 12:25:47 GMT
    Etag: "56029a4b-efc"
    Expires: Sat, 20 Aug 2016 15:14:33 GMT
    Cache-Control: max-age=604800, public
    Accept-Ranges: bytes

Fortunately, `imlib_image_get_data()` returns NULL in this case, so that we can
use it as an additional check when opening files.
2017-11-23 14:35:34 +01:00
Bert Münnich
148026007c One header file for type definitions and function declarations 2017-10-16 21:10:35 +02:00
Bert Münnich
a5403178e3 Zoom into mouse cursor position 2017-10-16 10:56:53 +02:00
Bert Münnich
e310136e02 Mouse drag translates pointer position to image area
This makes mouse panning more direct and faster.
2017-10-04 18:22:43 +02:00
jcalve
ec545a6b6c Make pan fraction configurable 2017-09-06 19:39:22 +02:00
Bert Münnich
ff2ce99bf7 Merge djhejna/floatdelay 2016-12-01 21:18:41 +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
2c566c5320 Add -A option to force framerate on animated images 2016-11-27 02:59:05 -05:00
Bert Münnich
878d97068c Only open regular files; fixes issue 2016-10-20 10:21:55 +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
4db3029bc6 Fix 32-bit unsigned integer shift 2015-12-26 10:14:35 +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
e574a6d0dd Removed feature test macro definitions from source files 2015-10-28 21:37:45 +01:00
Bert Münnich
e0e96977b3 Removed overcautious parameter checks 2015-10-28 21:01:24 +01:00
Bert Münnich
01ed483b50 Round integer cast of image offset during rendering; fixes issue 2015-02-06 08:52:44 +01:00
Bert Münnich
47e6cd0669 Apply gamma value on thumbnails too; fixes issue 2015-01-05 20:53:04 +01:00
Bert Münnich
9b9294bae6 Use bit-field for boolean flags in fileinfo struct 2015-01-04 21:24:43 +01:00
Bert Münnich
93e2a757d4 Do not print could-not-open-warnings for files found by directory traversal 2014-10-24 11:14:01 +02:00
Bert Münnich
2fbc21a205 Simplified img_frame_animate 2014-09-01 20:41:33 +02:00
Bert Münnich
bb6721549b Overhauled window drawing, yet again; fixes issue
- Buffer for window content is bigger than the window, minimizes artifacts
  when window is resized
- Back to using XSetWindowBackgroundPixmap() instead of XCopyArea(),
  no need to handle exposure events; X server can show gray background directly
  after resize event before sxiv redraws the window contents
2014-07-28 20:36:32 +02:00
Bert Münnich
5e481912ec Revised handling of GIF animations
- New option `-a`: Play animations at startup
- Ctrl-Space toggles animation for all GIF files
- Infinite loop for all animations
2014-07-25 22:52:31 +02:00
Bert Münnich
9c92de8584 Added support for multiple commands per key/button mapping; elegant fix for issue 2014-07-23 23:41:23 +02:00
Bert Münnich
d26f39914e Use thumbnails in EXIF tags; requirement for libexif is back 2014-06-09 22:59:49 +02:00
Bartłomiej Piotrowski
b901236261 Fix build with giflib >= 5.1.0. 2014-05-27 11:46:42 +02:00
Bert Münnich
e685859a30 Use a checkerboard background for alpha layer; fixes issue 2014-04-06 22:47:42 +02:00
Bert Münnich
d049391916 Check for background image allocation failure 2014-02-07 22:57:58 +01:00
Bert Münnich
4fde8c8cbc Use separate background image for alpha layer; fixes issue 2014-02-06 22:04:19 +01:00
Bert Münnich
43a04c4757 Revised scale mode and zoom level handling
- Scale mode is not reset to default value upon image loading anymore
- New default key binding to change mode to scale-down
- Removed scale mode setting from config.h
- Removed -d command line option, as this is now the default at startup
2014-02-04 23:03:53 +01:00
Bert Münnich
eb82519a80 Preserve panning when switching images; fixes issue 2014-02-04 21:02:02 +01:00
Bert Münnich
002c7e550b Second take at rotating & flipping multi-frame images; fixes issue 2014-01-09 20:32:22 +01:00
Bert Münnich
48700aa6c8 Revert "Apply flip & rotation on all frames of a multi-frame image; fixes issue "
This reverts commit f795273b650a4df39dca693f30c3650ec1d3393f.
2014-01-09 20:24:58 +01:00
Bert Münnich
f795273b65 Apply flip & rotation on all frames of a multi-frame image; fixes issue 2014-01-09 00:30:10 +01:00
Bert Münnich
6a0fa2507c Slideshow mode is back, in a simplified version 2014-01-04 19:07:15 +01:00
Bert Münnich
ab28c9a8b9 Refactored remote changes 2013-12-31 16:38:42 +01:00
Aleksander Nitecki
078136d217 Read GIF's repeat information from file. 2013-12-30 23:16:17 +01:00
Bert Münnich
99dfd14919 Fixed Imlib file handle type, issue 2013-12-13 13:04:45 +01:00
Bert Münnich
ac2a6ff040 Correct out-of-range gamma values given on command line 2013-11-14 17:12:55 +01:00
Bert Münnich
50f9ad14de Refactored remote changes 2013-11-14 17:06:20 +01:00
András Mohari
0353e6eea2 Add support for changing the gamma value 2013-11-13 20:54:09 +01:00
Bert Münnich
26a624a543 Added options for anti-alias & alpha layer coloring to config.def.h
Also removed now obsolete -p command line option; fixes issue 
2013-08-22 12:59:05 +02:00
Bert Münnich
56142bd3ba Refactored merged rotation code 2013-08-10 15:55:18 +02:00
Bastien Dejean
7e51c35801 Handle 180 degrees image rotation 2013-08-10 15:33:14 +02:00
Bert Münnich
b1a24cb018 Fixed build for giflib version >= 5.0; fixed issue 2013-04-21 13:55:08 +02:00
Bert Münnich
08ae25da22 Refactored function definitions to use dangling brace 2013-02-08 22:05:31 +01:00
Bert Münnich
6d3bbc6d5e Updated/corrected license header 2013-02-08 21:52:41 +01:00
Bert Münnich
eea8b7a98d Fixed compilation with giflib version 4.2.1 2013-01-04 20:55:30 +01:00
Bert Münnich
97a2c05cc3 Fixed issue , conditional compilation of gif support 2012-12-27 16:43:19 +01:00
Bert Münnich
5dbf1b8eb9 Smaller minimum gif delay, fixed issue 2012-10-29 20:55:55 +01:00
Bert Münnich
c78f55ebb4 Simplified zoomdiff function 2012-08-16 21:21:08 +02:00