diff options
Diffstat (limited to 'src/imv.c')
-rw-r--r-- | src/imv.c | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -92,6 +92,7 @@ struct imv { /* dirty state flags */ bool need_redraw; bool need_rescale; + bool cache_invalidated; /* traverse sub-directories for more images */ bool recursive_load; @@ -1185,7 +1186,7 @@ static void render_window(struct imv *imv) double scale; imv_viewport_get_offset(imv->view, &x, &y); imv_viewport_get_scale(imv->view, &scale); - imv_canvas_draw_image(imv->canvas, imv->current_image, x, y, scale, imv->upscaling_method); + imv_canvas_draw_image(imv->canvas, imv->current_image, x, y, scale, imv->upscaling_method, imv->cache_invalidated); } imv_canvas_clear(imv->canvas); @@ -1229,6 +1230,7 @@ static void render_window(struct imv *imv) /* redraw complete, unset the flag */ imv->need_redraw = false; + imv->cache_invalidated = false; } static char *get_config_path(void) @@ -1650,6 +1652,7 @@ static void command_set_upscaling_method(struct list *args, const char *argstr, } imv->need_redraw = true; + imv->cache_invalidated = true; } static void command_set_slideshow_duration(struct list *args, const char *argstr, void *data) |