int clients = 0;
TAILQ_FOREACH_REVERSE(trayclient, output->trayclients, tc_head, tailq) {
+ if (!trayclient->mapped)
+ continue;
clients++;
DLOG("Configuring tray window %08x to x=%d\n",
xcb_get_property_reply_t *xembedr = xcb_get_property_reply(xcb_connection,
xembedc,
NULL);
- if (xembedr == NULL || xembedr->length == 0)
+ if (xembedr == NULL || xembedr->length == 0) {
+ DLOG("xembed_info unset\n");
return;
+ }
DLOG("xembed format = %d, len = %d\n", xembedr->format, xembedr->length);
uint32_t *xembed = xcb_get_property_value(xembedr);
/* need to unmap the window */
xcb_unmap_window(xcb_connection, trayclient->win);
trayclient->mapped = map_it;
+ configure_trayclients();
draw_bars();
} else if (!trayclient->mapped && map_it) {
/* need to map the window */
xcb_map_window(xcb_connection, trayclient->win);
trayclient->mapped = map_it;
+ configure_trayclients();
draw_bars();
}
free(xembedr);
int clients = 0;
TAILQ_FOREACH_REVERSE(trayclient, output->trayclients, tc_head, tailq) {
+ if (!trayclient->mapped)
+ continue;
clients++;
if (trayclient->win != event->window)