From e76202b355db37b9ac52ddaf6e67501b0943de02 Mon Sep 17 00:00:00 2001 From: o9000 Date: Thu, 23 Jul 2015 20:38:33 +0200 Subject: [PATCH] Fix systray rendering when compositor off --- src/launcher/launcher.c | 8 +------- src/taskbar/task.c | 8 +------- src/util/common.c | 7 +++++++ 3 files changed, 9 insertions(+), 14 deletions(-) diff --git a/src/launcher/launcher.c b/src/launcher/launcher.c index c7edf1e..f0aaed0 100644 --- a/src/launcher/launcher.c +++ b/src/launcher/launcher.c @@ -359,13 +359,7 @@ void draw_launcher_icon(void *obj, cairo_t *c) // Render imlib_context_set_image(launcherIcon->image); - if (server.real_transparency) { - render_image(launcherIcon->area.pix, 0, 0); - } else { - imlib_context_set_blend(1); - imlib_context_set_drawable(launcherIcon->area.pix); - imlib_render_image_on_drawable(0, 0); - } + render_image(launcherIcon->area.pix, 0, 0); } Imlib_Image scale_icon(Imlib_Image original, int icon_size) diff --git a/src/taskbar/task.c b/src/taskbar/task.c index a2fcca1..4280804 100644 --- a/src/taskbar/task.c +++ b/src/taskbar/task.c @@ -350,13 +350,7 @@ void draw_task_icon (Task *tsk, int text_width) // Render imlib_context_set_image (tsk->icon[tsk->current_state]); - if (server.real_transparency) { - render_image(tsk->area.pix, pos_x, panel->g_task.icon_posy); - } else { - imlib_context_set_blend(1); - imlib_context_set_drawable(tsk->area.pix); - imlib_render_image_on_drawable(pos_x, panel->g_task.icon_posy); - } + render_image(tsk->area.pix, pos_x, panel->g_task.icon_posy); } diff --git a/src/util/common.c b/src/util/common.c index 552aa3b..596130d 100644 --- a/src/util/common.c +++ b/src/util/common.c @@ -404,6 +404,13 @@ int imageEmpty(DATA32* data, int w, int h) void render_image(Drawable d, int x, int y) { + if (!server.real_transparency) { + imlib_context_set_blend(1); + imlib_context_set_drawable(d); + imlib_render_image_on_drawable(x, y); + return; + } + int w = imlib_image_get_width(), h = imlib_image_get_height(); Pixmap pixmap = XCreatePixmap(server.dsp, server.root_win, w, h, 32);