From dca314e7a93633ef7415e0d21b82c63278ae8e7c Mon Sep 17 00:00:00 2001 From: Markus Teich Date: Mon, 26 Sep 2016 12:26:11 +0200 Subject: [PATCH] always redraw images Previously when covering the sent window with an image slide selected and exposing it again, the image was lost. This change always redraws the image and also removes the now redundant bit flag in the state enum. --- sent.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/sent.c b/sent.c index fc319be..82acd81 100644 --- a/sent.c +++ b/sent.c @@ -33,7 +33,6 @@ char *argv0; typedef enum { NONE = 0, SCALED = 1, - DRAWN = 2 } imgstate; typedef struct { @@ -320,7 +319,6 @@ ffdraw(Image *img) XPutImage(xw.dpy, xw.win, d->gc, img->ximg, 0, 0, xoffset, yoffset, img->ximg->width, img->ximg->height); XFlush(xw.dpy); - img->state |= DRAWN; } void @@ -441,7 +439,7 @@ advance(const Arg *arg) LIMIT(new_idx, 0, slidecount-1); if (new_idx != idx) { if (slides[idx].img) - slides[idx].img->state &= ~(DRAWN | SCALED); + slides[idx].img->state &= ~SCALED; idx = new_idx; ffload(&slides[idx]); xdraw(); @@ -514,8 +512,7 @@ xdraw() } else { if (!(im->state & SCALED)) ffprepare(im); - if (!(im->state & DRAWN)) - ffdraw(im); + ffdraw(im); } } @@ -645,7 +642,7 @@ configure(XEvent *e) { resize(e->xconfigure.width, e->xconfigure.height); if (slides[idx].img) - slides[idx].img->state &= ~(DRAWN | SCALED); + slides[idx].img->state &= ~SCALED; xdraw(); }