Age | Commit message (Collapse) | Author | Lines |
|
When the user requests sorting by size or mtime, do a "soft preload" of
the file list that only calls stat(2) without loading images.
This avoids calling stat(2) repeatedly on the same files when sorting
the file list, and achieves faster startup on slow filesystems.
|
|
|
|
|
|
|
|
Fix some warnings from `gcc`.
|
|
|
|
|
|
This fixes two memory bugs that only manifest with exif=1 and long-running
slideshows.
* when feh loads an image, it writes exif data to file->ed. Previously, this
data was never free'd, causing a memory leak on subsequent loads of the same
file.
* As file->ed is never free'd, the accumulated EXIF data consumes a significant
amount of memory over time. with slideshow-delay = 10 and two days of
runtime, feh may exceed 1 GB of memory usage. If the slideshow is so large
that feh does not encounter the same image twice in this time, this is not
detected as a memory leak, as each EXIF data chunk is referenced from the
filelist.
See <https://github.com/derf/feh/issues/553> for details.
Closes #553
|
|
Introduced in 3fa39154f089a6fadc1a14eb6b206e2d2875be71
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Closes #463
|
|
This more closely resembles the expected behaviour of --start-at, but
may lead to mismatches if several files in the filelist have the same
basename.
Closes #206
Related to #372 and #420
|
|
|
|
https://github.com/Ferada/feh into Ferada-output-directory-for-image-saving
|
|
Quoting glibc rand(3):
The versions of rand() and srand() in the Linux C Library use the same random
number generator as random(3) and srandom(3), so the lower-order bits should be
as random as the higher-order bits. However, on older rand()
implementations, and on current implementations on different systems, the
lower-order bits are much less random than the higher-order bits. Do not use
this function in applications intended to be portable when good randomness is
needed. (Use random(3) instead.)
|
|
|
|
|
|
|
|
|
|
Closes: #124
|
|
there
Fixes: #415
|
|
ulteq-simplify-zoom
|
|
|
|
|
|
|
|
--keep-zoom-vp will no longer block the dynamic window resizing mechanism.
|
|
into Ferada-fix-no-files-found-on-reload
|
|
Closes: #382, #384
|
|
This introduces a new feh_should_ignore_image function which is called
at appropriate places in those modes to skip images which are loadable but
undesired.
|
|
https://github.com/ulteq/feh into ulteq-dimension-pruning-without-preload
|
|
|
|
Halves the start-up time of the slideshow if the title contains data from 'file->info'
|
|
This will (by default) check the image dimension on-the-fly, but you can still do it beforehand by specifying the preload flag.
|
|
Fixes issue 325.
|
|
|
|
|
|
like %o and %z in slideshow actions (I would like to use this to zoom in, pan,
and then use an action to crop the window to zoomed in view).
|
|
|
|
|
|
|
|
Many image collections are organized by directory, so it is nice to have
jump-to-adjacent-directory navigation.
e.g. Given the following file hierarchy:
.
├── A
│ ├── 1.jpg
│ ├── 2.jpg
│ └── C
│ ├── 1.jpg
│ ├── 2.jpg
│ └── 3.jpg
└── B
├── 1.jpg
├── 2.jpg
└── 3.jpg
`feh --recursive` creates the following filelist:
A/1.jpg <---- current_file
A/2.jpg
A/C/1.jpg
A/C/2.jpg
A/C/3.jpg
B/1.jpg
B/2.jpg
B/3.jpg
If we press [next_dir], we move the current_file pointer to:
A/1.jpg
A/2.jpg
A/C/1.jpg <-- current_file
A/C/2.jpg
A/C/3.jpg
B/1.jpg
B/2.jpg
B/3.jpg
Pressing [next_dir] again moves the pointer to:
A/1.jpg
A/2.jpg
A/C/1.jpg
A/C/2.jpg
A/C/3.jpg
B/1.jpg <---- current_file
B/2.jpg
B/3.jpg
[next_dir] now moves the pointer back to the top of the list:
A/1.jpg <---- current_file
A/2.jpg
A/C/1.jpg
A/C/2.jpg
A/C/3.jpg
B/1.jpg
B/2.jpg
B/3.jpg
Pressing [prev_dir] from here moves backwards to the first image of the
previous directory:
A/1.jpg
A/2.jpg
A/C/1.jpg
A/C/2.jpg
A/C/3.jpg
B/1.jpg <---- current_file
B/2.jpg
B/3.jpg
When starting from an position that is not the first image of a
directory, [prev_dir] moves the pointer to the first image of the
current directory.
These actions combine well with `--sort dirname` since all regular files
in a directory will be sorted before any subdirectories, avoiding a
filelist like the following:
A/1.jpg
A/SUBDIR/2.jpg
A/SUBDIR/3.jpg
A/4.jpg
With `--sort dirname` that filelist becomes:
A/1.jpg
A/4.jpg
A/SUBDIR/2.jpg
A/SUBDIR/3.jpg
|
|
slideshow: When removing last image, stay on the last image
|
|
|
|
|
|
manually changed in collage, imlib, filelist, thumbnail, slideshow,
index
feh_display_status also changed
|