aboutsummaryrefslogtreecommitdiff
path: root/thumbs.c
Commit message (Collapse)AuthorAgeFilesLines
* code-style: cleanup includesNRK2022-06-281-1/+1
| | | | | | | | * rm unused include <sys/types.h> * move <sys/time.h> to main.c, it's the only file that needs it. * move TV_* macros to main.c * let *.c files explicitly include what they need instead of including them at nsxiv.h
* fix: don't use reserved identifiersNRK2022-06-251-1/+1
| | | | identifiers beginning with an underscore is reserved by the C standard.
* r_mkdir: don't truncate the path on error (#322)NRK2022-06-221-3/+1
| | | | | | | | | | | | | | | | currently, in case of error, r_mkdir will leave the path at a truncated state. a7d39b0ab8 is the commit that introduced this change, and in it the error printing is moved from r_mkdir to the caller, which makes me think it was probably intentional. make it so that the function itself prints the error/warning message and returns the path back to the caller unharmed. Reviewed-on: https://codeberg.org/nsxiv/nsxiv/pulls/322 Reviewed-by: Berke Kocaoğlu <berke.kocaoglu@metu.edu.tr> Reviewed-by: TAAPArthur <taaparthur@noreply.codeberg.org>
* reduce calls to win-titleNRK2022-06-021-0/+2
| | | | | | | | | rather than calling the script unconditionally per redraw, we now have a `title_dirty` flag and keep track of when any of the relavent information changes. Co-authored-by: Arthur Williams <taaparthur@gmail.com> Partially fixes: https://github.com/nsxiv/nsxiv/issues/258
* Declare every extern function/variable in `nsxiv.h` (#268)N-R-K2022-05-031-4/+2
| | | | | | | | with a couple exceptions as they cause too many -Wshadow warnings. also moves the `extcmd_t` typedef on top for cosmetic purposes. also enable `-Wmissing-prototypes` in the ci
* add config.h option for top statusbar (#231)N-R-K2022-02-261-1/+2
| | | | Closes: https://github.com/nsxiv/nsxiv/issues/230 Co-authored-by: mamg22 <45301823+mamg22@users.noreply.github.com>
* use win-title script for customizing window title (#213)N-R-K2022-02-231-2/+0
| | | | | this removes the cli flag `-T` as well as related config.h options. Co-authored-by: Berke Kocaoğlu <berke.kocaoglu@metu.edu.tr>
* code-style: prefer calloc over malloc+memsetNRK2022-02-171-5/+3
|
* update copyright yearNRK2022-02-131-1/+1
|
* mark functions and vars as static (#146)N-R-K2021-11-201-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | the goal here to mark functions and variables not used outside the translation unit as static. main reason for this is cleanliness. however as a side-effect this can help compilers optimize better as it now has guarantee that a certain function won't be called outside of that translation unit. one other side-effect of this is that accessing these vars/function from config.h is now different. if one wants to access a static var/func from different translation unit in config.h, he would have to create a wrapper function under the right ifdef. for static functions one would also need to forward declare it. here's a dummy example of accessing the function `run_key_handler` from config.h under _MAPPINGS_CONFIG ``` static void run_key_handler(const char *, unsigned); bool send_with_ctrl(arg_t key) { run_key_handler(XKeysymToString(key), ControlMask); return false; } ```
* code-style: general cleanups (#137)N-R-K2021-10-291-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tns_clean_cache: remove unused function arg * remove malloc casting * improve consistency use sizeof(T) at the end * avoid comparing integers of different signedness * use Window type for embed and parent * remove unnecessary comparisons * remove cpp style comments * improve consistency: remove comma from the end of enumerator list * Removed useless _IMAGE_CONFIG defines * consistency: use the same order as snprintf * Resolve c89 warnings Co-authored-by: uidops <uidops@protonmail.com> Co-authored-by: Arthur Williams <taaparthur@gmail.com>
* update copyright notice (#139)eylles2021-10-281-1/+2
|
* Fix behaviour when TrueColor / 24 bit depth is not available (#114)miseran2021-10-111-4/+4
| | | | | | | | | | | | | * Fix regression introduced in c7ca547 which made nsxiv not start in non-TrueColor X server. * Introduce a new fix for embedding into tabbed-alpha. * Fixes a visual glitch from original sxiv when drawing transparent images in 8 bit depth. In 8 bit PseudoColor, `.pixel` is just an index into the 256 defined colors and thus trying to extract rgb bits from it would result in visual glitch. The values `.color.red` on the other hand and so on are always integers between 0 and 0xFFFF representing the color as expected. * Use XColor for win_bg/fg and mrk_fg Co-authored-by: NRK <nrk@disroot.org>
* code-style: fix consistency issues all over the codebase (#94)Berke Kocaoğlu2021-10-111-4/+2
| | | | | | | | | | | | | | | * remove duplicate comment * remove empty tabs and blank lines * move macros and globals ontop * comment to seprate function implementation * fix alignment * switch to *argv[] similar to other suckless code * kill all empty last lines * append comment to endif * reuse existing ARRLEN macro * comment fall through * use while (true) everywhere Co-authored-by: NRK <nrk@disroot.org>
* Make statusbar optional (#95)Arthur Williams2021-10-101-3/+3
| | | | | | | | libXft and libfontconfig are now optional dependencies which can be disabled via `HAVE_LIBFONTS=0`. Disabling them means disabling the statusbar. This also does not search for freetype2 header if disabled. Co-authored-by: NRK <nrk@disroot.org>
* fix: crashing on bad exif thumbnail (#75)N-R-K2021-09-291-1/+1
| | | | | | | | | this does not need to be a fatal error. if im is NULL we're going to load it with imlib2 anyways. one other problem this solves is that before, due to the fatal error, the tmpfile opened under /tmp wouldn't get cleaned up. Closes: https://github.com/nsxiv/nsxiv/issues/69
* add .mark.foreground to XresourcesNRK2021-09-171-1/+1
| | | | | since we're already allowing both window and bar colors to be customizable, it doesn't make sense to not allow so for mark color.
* Rename, Update Docs and Prepare for Release (#9)Berke Kocaoğlu2021-09-161-8/+9
| | | | | | | Co-authored-by: Guilherme Rugai Freire <41879254+GRFreire@users.noreply.github.com> Co-authored-by: N-R-K <79544946+N-R-K@users.noreply.github.com> Co-authored-by: NRK <nrk@disroot.org> Co-authored-by: Arthur Williams <taaparthur@gmail.com> Co-authored-by: eylles <ed.ylles1997@gmail.com>
* set title based on prefix and suffix (#23)qsmodo2021-09-161-0/+2
| | | | | | Co-authored-by: Guilherme Rugai Freire <41879254+GRFreire@users.noreply.github.com> Co-authored-by: NRK <nrk@disroot.org> Co-authored-by: Berke Kocaoğlu <berke.kocaoglu@metu.edu.tr>
* Custom bar colors (#10)Guilherme Freire2021-09-161-3/+3
| | | | | | | | | * set bar and text colors independently * change xresources to Program.class.resource * rename color variables to win/bar_bg/fg * change default bar colors to match window colors
* Use normal win colors in fullscreen modeBert Münnich2019-07-161-8/+3
| | | | Fixes issues #361 and #367
* Fix comparison broken by signednessBert Münnich2019-03-151-16/+17
| | | | Warning generated on MacOS, reported in issue #350.
* Align compile-time color options with X resource colorsBert Münnich2019-01-231-4/+4
| | | | Two colors are more than enough!
* Respect updated path format when cleaning cacheKacper Gutowski2018-07-301-11/+2
| | | | | | Since d8114e8 the file name is used for caching as-is without adding .jpg at the end, but sxiv -c still expected old format causing it to remove all fresh thumbnails.
* Don't skip dot files when cleaning cacheKacper Gutowski2018-07-301-1/+1
|
* Reject text files resembling TGA imagesBert Münnich2017-11-231-8/+2
| | | | | | | | | | | | | | | | | | | Fixes issue #295 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.
* One header file for type definitions and function declarationsBert Münnich2017-10-161-8/+4
|
* Add -p flag to disable writing of cache and temporary filesAntti Korpi2017-09-081-1/+5
| | | | Closes #285.
* Fix unused-variable warnings in conditionally compiled codeBert Münnich2016-12-281-3/+2
|
* Only open regular files; fixes issue #252Bert Münnich2016-10-201-6/+10
|
* Allow opening directories non-recursivelyParide Legovini2016-09-281-1/+1
|
* Use Xft for font loading and text drawingBert Münnich2016-08-061-4/+4
|
* Build-time option for default thumbnail size; fixes issue #207Bert Münnich2015-12-201-2/+2
|
* Simplified r_mkdir()Bert Münnich2015-10-281-1/+2
|
* Revised error handlingBert Münnich2015-10-281-7/+8
| | | | | | | - 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)
* Prefix safe allocation functions with 'e' instead of 's_'Bert Münnich2015-10-281-3/+3
|
* Removed feature test macro definitions from source filesBert Münnich2015-10-281-3/+2
|
* Removed overcautious parameter checksBert Münnich2015-10-281-37/+1
|
* Thumbnail cache file format depending on existance of alpha layerBert Münnich2015-07-221-4/+8
| | | | Use PNG if image has alpha layer, JPG if not. Fixes issue #209
* Cache out of view thumbnails in the backgroundBert Münnich2015-01-041-10/+22
|
* Use bit-field for boolean flags in fileinfo structBert Münnich2015-01-041-3/+3
|
* Enforced thumbnail reloading after key handlerBert Münnich2014-11-271-1/+1
|
* Limit thumbnail selection border width to 4pxBert Münnich2014-11-271-0/+1
|
* Do not cache thumbnails, which are smaller than the maximum sizeBert Münnich2014-10-311-12/+22
|
* Discard cached & EXIF thumbnails, which are smaller than the configured ↵Bert Münnich2014-10-311-12/+21
| | | | maximum size
* Fixed leakage of resources allocated by EXIF libraryBert Münnich2014-10-311-4/+4
|
* Fixed segfault when run with -cBert Münnich2014-10-291-1/+1
|
* Do not print could-not-open-warnings for files found by directory traversalBert Münnich2014-10-241-1/+2
|
* Unified file count variable for image & thumbnail modeBert Münnich2014-09-301-21/+22
|
* Set JPEG quality for thumbnail cache filesBert Münnich2014-09-291-0/+1
|