commit dca314e7a93633ef7415e0d21b82c63278ae8e7c
Author: Markus Teich <[email protected]>
AuthorDate: Mon Sep 26 12:26:11 2016 +0200
Commit: Markus Teich <[email protected]>
CommitDate: Mon Sep 26 12:26:11 2016 +0200
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.
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();
}