diff options
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | image.c | 3 | ||||
-rw-r--r-- | image.h | 1 | ||||
-rw-r--r-- | main.c | 4 |
4 files changed, 8 insertions, 2 deletions
@@ -1,6 +1,6 @@ all: sxiv -VERSION=git-20110309 +VERSION=git-20110310 CC?=gcc PREFIX?=/usr/local @@ -43,6 +43,7 @@ void img_init(img_t *img, win_t *win) { img->zoom = MAX(img->zoom, zoom_min); img->zoom = MIN(img->zoom, zoom_max); img->aa = options->aa; + img->alpha = 1; } if (win) { @@ -211,7 +212,7 @@ void img_render(img_t *img, win_t *win) { else imlib_context_set_image(im_broken); - if (imlib_image_has_alpha()) + if (imlib_image_has_alpha() && !img->alpha) win_draw_rect(win, win->pm, dx, dy, dw, dh, True, 0, win->white); imlib_context_set_drawable(win->pm); @@ -45,6 +45,7 @@ typedef struct { unsigned char re; unsigned char checkpan; unsigned char aa; + unsigned char alpha; int x; int y; @@ -496,6 +496,10 @@ void on_keypress(XKeyEvent *kev) { img_toggle_antialias(&img); changed = 1; break; + case XK_A: + img.alpha ^= 1; + changed = 1; + break; case XK_r: changed = load_image(fileidx); break; |