|
|
|
@ -17,6 +17,7 @@
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
#define _POSIX_C_SOURCE 200112L
|
|
|
|
|
#define _THUMBS_CONFIG
|
|
|
|
|
|
|
|
|
|
#include <stdio.h>
|
|
|
|
|
#include <stdlib.h>
|
|
|
|
@ -36,7 +37,6 @@ void exif_auto_orientate(const fileinfo_t*);
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
static char *cache_dir;
|
|
|
|
|
static const int thumb_size[] = { 32, 64, 96, 128, 160 };
|
|
|
|
|
|
|
|
|
|
char* tns_cache_filepath(const char *filepath)
|
|
|
|
|
{
|
|
|
|
@ -330,11 +330,11 @@ bool tns_load(tns_t *tns, int n, bool force)
|
|
|
|
|
imlib_context_set_image(im);
|
|
|
|
|
exif_auto_orientate(file);
|
|
|
|
|
#endif
|
|
|
|
|
im = tns_scale_down(im, thumb_size[ARRLEN(thumb_size)-1]);
|
|
|
|
|
im = tns_scale_down(im, thumb_sizes[ARRLEN(thumb_sizes)-1]);
|
|
|
|
|
tns_cache_write(im, file->path, true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
t->im = tns_scale_down(im, thumb_size[tns->zl]);
|
|
|
|
|
t->im = tns_scale_down(im, thumb_sizes[tns->zl]);
|
|
|
|
|
imlib_context_set_image(t->im);
|
|
|
|
|
t->w = imlib_image_get_width();
|
|
|
|
|
t->h = imlib_image_get_height();
|
|
|
|
@ -434,8 +434,8 @@ void tns_render(tns_t *tns)
|
|
|
|
|
for (i = tns->first; i < tns->end; i++) {
|
|
|
|
|
t = &tns->thumbs[i];
|
|
|
|
|
if (t->im != NULL) {
|
|
|
|
|
t->x = x + (thumb_size[tns->zl] - t->w) / 2;
|
|
|
|
|
t->y = y + (thumb_size[tns->zl] - t->h) / 2;
|
|
|
|
|
t->x = x + (thumb_sizes[tns->zl] - t->w) / 2;
|
|
|
|
|
t->y = y + (thumb_sizes[tns->zl] - t->h) / 2;
|
|
|
|
|
imlib_context_set_image(t->im);
|
|
|
|
|
imlib_render_image_on_drawable_at_size(t->x, t->y, t->w, t->h);
|
|
|
|
|
if (tns->files[i].marked)
|
|
|
|
@ -572,9 +572,9 @@ bool tns_zoom(tns_t *tns, int d)
|
|
|
|
|
oldzl = tns->zl;
|
|
|
|
|
tns->zl += -(d < 0) + (d > 0);
|
|
|
|
|
tns->zl = MAX(tns->zl, 0);
|
|
|
|
|
tns->zl = MIN(tns->zl, ARRLEN(thumb_size)-1);
|
|
|
|
|
tns->zl = MIN(tns->zl, ARRLEN(thumb_sizes)-1);
|
|
|
|
|
|
|
|
|
|
tns->dim = thumb_size[tns->zl] + 10;
|
|
|
|
|
tns->dim = thumb_sizes[tns->zl] + 10;
|
|
|
|
|
|
|
|
|
|
if (tns->zl != oldzl) {
|
|
|
|
|
for (i = 0; i < tns->cnt; i++)
|
|
|
|
|