Commit Graph

156 Commits

Author SHA1 Message Date
Bert Münnich
390d771e70 Fixed thumbnail creation for files with big aspect ratio factor; fixes issue #175 2014-09-29 14:05:04 +02:00
Bert Münnich
0e4db69ff5 Scale thumbnail selection border width with thumbnail size 2014-09-29 09:36:43 +02:00
Bert Münnich
39671a149c Moved thumbnail sizes array to config.def.h 2014-09-29 09:02:29 +02:00
Bert Münnich
8fa7247f69 Refactored thumbnail size dependent calculations 2014-09-29 08:47:01 +02:00
Bert Münnich
7b91e10f22 Added thumbnail zooming...
- Key mappings +/- are now general commands
- Use JPG as thumbnail cache file format instead of PNG
- Fixes issue #161
2014-09-28 00:28:50 +02:00
Bert Münnich
b2dbd2fed3 Changed image mark in thumbnail view to small rectangle 2014-09-27 22:05:21 +02:00
Bert Münnich
eaa269b6cb Revised thumbnail loading...
- Only load the thumbnails that are currently visible in the window
- Unload thumbnails that are leaving the visible area
- Much less memory needed, but scrolling is now slower
- This also unintentionally fixes issue #86
2014-09-26 10:31:03 +02:00
Markus Elfring
0f6cb93a09 Bug #165: Deletion of unnecessary null pointer checks
The function "free" performs input parameter validation.
http://pubs.opengroup.org/onlinepubs/9699919799/functions/free.html

It is therefore not needed to check a passed pointer before this function call.
A corresponding update suggestion was generated by the software "Coccinelle"
from the following semantic patch approach.
http://coccinelle.lip6.fr/

@Remove_unnecessary_pointer_checks1@
expression x;
@@
-if (x != \(0 \| NULL\))
    free(x);

@Remove_unnecessary_pointer_checks2@
expression x;
@@
-if (x != \(0 \| NULL\)) {
    free(x);
    x = \(0 \| NULL\);
-}

@Remove_unnecessary_pointer_checks3@
expression a, b;
@@
-if (a != \(0 \| NULL\) && b != \(0 \| NULL\))
+if (a)
    free(b);

@Remove_unnecessary_pointer_checks4@
expression a, b;
@@
-if (a != \(0 \| NULL\) && b != \(0 \| NULL\)) {
+if (a) {
    free(b);
    b = \(0 \| NULL\);
 }

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
2014-08-22 19:24:08 +02:00
Bert Münnich
056624548a Beautified thumbnail marks and selection border 2014-08-18 15:42:10 +02:00
Bert Münnich
fe3a1e326f Further simplified thumbnail marks 2014-08-18 12:45:32 +02:00
Bert Münnich
d0ba2c585d Simplified thumbnail selection and marks 2014-08-17 23:01:39 +02:00
Bert Münnich
e49d38d6f9 Fixed wrong thumbnail-to-file mappings caused by file deletions 2014-08-16 22:21:51 +02:00
Bert Münnich
e267dc7793 Pass marked files to external key handler in thumbnail mode; fixes issue #135 2014-08-16 21:49:46 +02:00
Bert Münnich
5b01c15176 Unified file index variable for image & thumbnail mode 2014-08-16 21:49:45 +02:00
Bert Münnich
61f61cae5f Generalized thumbnail loading, allows easier reloading of thumbnails later on 2014-08-16 21:48:52 +02:00
Bert Münnich
bb6721549b Overhauled window drawing, yet again; fixes issue #155
- 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
5cfae63620 Create thumbnail cache dir automatically 2014-06-10 23:15:04 +02:00
Bert Münnich
cd02f2dd86 Small fix for thumbnail cropping 2014-06-10 21:28:10 +02:00
Bert Münnich
d26f39914e Use thumbnails in EXIF tags; requirement for libexif is back 2014-06-09 22:59:49 +02:00
Bert Münnich
e685859a30 Use a checkerboard background for alpha layer; fixes issue #138 2014-04-06 22:47:42 +02:00
Bert Münnich
304fd382db Adhere to XDG Base Directory Specification; fixes issue #124 2014-01-11 22:47:41 +01:00
Bert Münnich
99dfd14919 Fixed Imlib file handle type, issue #117 2013-12-13 13:04:45 +01:00
Bert Münnich
38bc23405d Highlight edges of marked images in thumbnail mode 2013-11-14 14:37:08 +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 #98
2013-08-22 12:59:05 +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
b6a6c260e1 Moved thumbnail cache to ~/.sxiv/cache/ 2013-01-12 23:40:16 +01:00
Bert Münnich
5b6467913c Made remote changes adhere to code style 2012-07-15 18:52:30 +02:00
baskerville
c330b55de4 handle count prefix in thumbnail movements 2012-07-15 10:30:58 +02:00
Bert Münnich
72071d5e9d Fixed mem-leak in tns_init/tns_free 2012-05-13 22:01:09 +02:00
Bert Münnich
edd016945a Fixed it_scroll_move(DIR_DOWN) in thumb mode for last line 2012-03-16 20:56:10 +01:00
Bert Münnich
3238ef6bf6 Fixed issue #41, added WIN_FS_COLOR to config.h 2012-03-02 19:42:14 +01:00
Bert Münnich
d407dd65d5 Already in the year 2012 2012-02-15 19:16:24 +01:00
Bert Münnich
691c6d7e7e Added own exif tag handling in files exif.[ch] 2012-02-15 19:13:44 +01:00
Bert Münnich
b410c022a8 Fix recreation of thumbnail cache file after manual reload 2012-02-14 22:12:09 +01:00
Bert Münnich
b8458271fb Added text bar on bottom of window 2012-02-12 19:00:41 +01:00
Bert Münnich
ef0ed32264 Removed exif support; made gif support non-optional 2012-02-11 02:42:52 +01:00
Bert Münnich
ac4eb53029 Fixed issue #28 (again) 2011-11-13 15:53:09 +01:00
Bert Münnich
5034792948 Thumbnails only get scaled down, fixed issue #27 2011-11-05 13:11:50 +01:00
Bert Münnich
1cdbeb972a Added screen-wise scrolling for thumbnail mode 2011-10-27 16:21:01 +02:00
Bert Münnich
36177fb180 Updated contact information 2011-10-14 10:40:49 +02:00
Bert Münnich
4383a651c7 Strictly adhere to ANSI-C standard 2011-10-13 16:50:06 +02:00
Bert Münnich
a09b20c5e6 Use void for empty argument lists 2011-10-12 18:38:29 +02:00
Bert Münnich
8dcf682de9 Made all conditionals more precise 2011-09-29 12:43:36 +02:00
Bert Münnich
22d4e991d5 Transformed function macros in util.h to inline functions 2011-09-29 10:16:13 +02:00
Bert Münnich
d721d8453e Added STREQ macro 2011-09-26 21:53:52 +02:00
Bert Münnich
515e410451 Use win_t member in img_t & tns_t instead of parameters 2011-09-17 17:23:51 +02:00
Bert
dad06c7561 Much nicer handling of compile-time features
- *_SUPPORT enabled in config.h
- XLIBS helper app prints lib flags needed for current settings
2011-09-12 19:28:02 +02:00
Bert
b2a2a62b7b Added own bool type 2011-09-11 21:01:24 +02:00
Bert
6e575b0f72 Strict conformance to IEEE Std 1003.1-2001 2011-09-08 20:54:24 +02:00
Bert
03b8e85a4f Fixed exif-only typo in tns_load() 2011-09-08 16:19:30 +02:00
Bert
fdbc5cf76b Added EXIF_SUPPORT macro for optional dependency on libexif 2011-09-08 15:58:30 +02:00
Bert
bfab4dc328 Added EXIF auto-orientation 2011-09-08 15:57:44 +02:00
Bert
26eae8be96 Made i(t)_toggle_alpha command work in thumbnail mode too 2011-09-04 13:29:17 +02:00
Bert
d585b86354 Reformated license header 2011-09-03 23:11:45 +02:00
Bert
de6b58a315 Unified feature test macro requirements 2011-09-03 14:22:06 +02:00
Bert
1d7849efc1 Added force parameter to tns_load() to disregard cache 2011-08-19 13:26:58 +02:00
Bert
535c18afda Uniform thumbnail selection border size
- Consistent handling of thumbnails
- Makes it easier to select very small thumbnails with mouse
2011-08-19 12:20:00 +02:00
Bert
8763f6930f Corrected FSF address in license headers 2011-08-18 01:18:26 +02:00
Bert
ff013dd009 Revised handling of file names & paths 2011-08-18 00:38:55 +02:00
Bert
2bad53c33d Simpler thumbnail selection border 2011-07-27 00:20:27 +02:00
Bert
3e4f63e3e2 Nicer thumbnail selection border; new default colors 2011-07-26 23:58:31 +02:00
Bert
b8ff1677b1 Major code refactoring
- Configurable key and mouse mappings in config.h
- Put event handling code from main.c into events.[ch]
2011-07-26 18:01:29 +02:00
Bert
a271e16744 Reduced usage of preprocessor macros 2011-07-22 14:49:06 +02:00
Bert
5f780fc3e7 Made selection border in thumb mode 3px wide 2011-07-17 22:18:09 +02:00
Bert
2e1d752777 Fix compile error on NetBSD 2011-06-28 15:48:17 +02:00
Bert
b563a0adb2 Fixed mtime cache check on filesystems supporting nsec resolution 2011-06-06 15:58:59 +02:00
Bert
d15264ea32 Remove invalid images when loading them; refactorings 2011-04-11 16:58:38 +02:00
Bert
dd9e5dabb1 Removed debug output 2011-04-08 19:43:27 +02:00
Bert
dc54981a68 New option: -C, clean thumbnail cache 2011-04-08 14:44:00 +02:00
Bert
eee921efe0 Refactored thumbs.c 2011-04-08 10:24:10 +02:00
Bert
7d40faeba6 Do not create cache files for cache files 2011-04-07 18:00:01 +02:00
Bert
92709b2b2f Use directory structure in cache dir 2011-04-07 17:29:59 +02:00
Bert
f52a99db6c Refactored thumbnail cache_dir 2011-04-07 17:23:47 +02:00
Bert
f93f4d887c Write cache file for thumbnail directly after creating it 2011-04-07 16:17:10 +02:00
Bert
1d0f51f95a Load thumbnails from cache 2011-04-07 15:05:17 +02:00
Bert
c21a3e3f28 Write thumbnail cache files on exit 2011-04-07 14:33:57 +02:00
Bert
83bdf67d51 First things for thumbnail caching 2011-04-07 01:26:08 +02:00
Bert
9fcf2c8f34 Small refactoring in tns_load() 2011-04-07 00:26:45 +02:00
Bert
8d4e3a57ab Do not check file-type at startup 2011-04-04 20:35:10 +02:00
Bert
55659ffcc3 Use imlib-handles in thumbs.c instead of pixmaps 2011-03-15 13:55:52 +01:00
Bert
d982b06eed White background for images with alpha 2011-03-09 11:37:49 +01:00
Bert
c05fd44bdd Support for external commands like mogrify & jpegtran 2011-03-01 18:49:02 +01:00
Bert
9b24f82404 Small refactorings, removed over-ambitious todo 2011-02-27 13:29:24 +01:00
Bert
7334bdfa51 Revert "Save rotated png-files with S-key"
This reverts commit 090ee5405b.
2011-02-27 13:03:16 +01:00
Bert
090ee5405b Save rotated png-files with S-key 2011-02-27 01:48:00 +01:00
Bert
dafe7eac74 Refactored imlib context handling 2011-02-25 12:08:12 +01:00
Bert
f2b8a75f6c Always support thumbs; start thumb-mode with single -t 2011-02-21 14:59:29 +01:00
Bert
f0f6644fae Replaced -T flag with -tt; default thumbnail size 2011-02-20 00:28:28 +01:00
Bert
a30901210c Mouse-wheel scrolling in thumb mode 2011-02-20 00:08:17 +01:00
Bert
a152f82ce6 Sync thumb selection & fileidx; check thumb view 2011-02-19 22:12:08 +01:00
Bert
a367d35ba0 Update title when moving selection 2011-02-19 09:47:53 +01:00
Bert
c6726ed331 Nicer tns_move_selection 2011-02-18 15:33:52 +01:00
Bert
62f4ab037a Fixed moving of selection while loading thumbnails 2011-02-18 15:21:13 +01:00
Bert
637be49075 Nicer tns_translate 2011-02-18 15:02:49 +01:00
Bert
73a9279598 Center humbnails in window 2011-02-18 14:57:24 +01:00
Bert
6adbb3831d Use Button1 to open thumbnail 2011-02-17 17:28:13 +01:00
Bert
f08c24bbb3 Select and open thumbnails 2011-02-17 16:57:55 +01:00
Bert
ef24ded6af Highlight selected thumbnail 2011-02-17 16:22:54 +01:00
Bert
095217b26f Linked thumbnails to files 2011-02-17 15:58:11 +01:00