summaryrefslogtreecommitdiffstats
path: root/image.c
diff options
context:
space:
mode:
authordwminer <daltonminer@gmail.com>2016-11-27 08:54:15 +0100
committerdwminer <daltonminer@gmail.com>2016-11-27 08:59:05 +0100
commit2c566c5320c11e9844f192bfcff2d1a869471415 (patch)
treec9ab67979e064043592bfd0597cf618fff31d79d /image.c
parent32b29e61c1cf1fead8ccc3400d751955de7d5715 (diff)
downloadnsxiv-2c566c5320c11e9844f192bfcff2d1a869471415.tar.zst
Add -A option to force framerate on animated images
Diffstat (limited to 'image.c')
-rw-r--r--image.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/image.c b/image.c
index 801bbe5..dd37207 100644
--- a/image.c
+++ b/image.c
@@ -68,6 +68,7 @@ void img_init(img_t *img, win_t *win)
img->alpha = ALPHA_LAYER;
img->multi.cap = img->multi.cnt = 0;
img->multi.animate = options->animate;
+ img->multi.framedelay = options->framerate > 0 ? 1000 / options->framerate : 0;
img->multi.length = 0;
img->cmod = imlib_create_color_modifier();
@@ -263,6 +264,7 @@ bool img_load_gif(img_t *img, const fileinfo_t *file)
img->multi.cap * sizeof(img_frame_t));
}
img->multi.frames[img->multi.cnt].im = im;
+ delay = img->multi.framedelay > 0 ? img->multi.framedelay : delay;
img->multi.frames[img->multi.cnt].delay = delay > 0 ? delay : DEF_GIF_DELAY;
img->multi.length += img->multi.frames[img->multi.cnt].delay;
img->multi.cnt++;