/* set up the hilite texture for the background */
p->a_bg->texture[0].data.rgba.width = rgbaw;
p->a_bg->texture[0].data.rgba.height = rgbah;
+ p->a_bg->texture[0].data.rgba.alpha = 0xff;
p->hilite_rgba = g_new(RrPixel32, rgbaw * rgbah);
p->a_bg->texture[0].data.rgba.data = p->hilite_rgba;
icon = client_icon(target->client, innerw, innerh);
p->a_icon->texture[0].data.rgba.width = icon->width;
p->a_icon->texture[0].data.rgba.height = icon->height;
+ p->a_icon->texture[0].data.rgba.alpha =
+ target->client->iconic ? OB_ICONIC_ALPHA : 0xff;
p->a_icon->texture[0].data.rgba.data = icon->data;
/* draw the icon */
void focus_cycle_popup_hide()
{
+ gulong ignore_start;
+
+ ignore_start = event_start_ignore_all_enters();
+
XUnmapWindow(ob_display, popup.bg);
XFlush(ob_display);
- popup.mapped = FALSE;
+ event_end_ignore_all_enters(ignore_start);
- /* kill enter events cause by this unmapping */
- event_ignore_all_queued_enters();
+ popup.mapped = FALSE;
while(popup.targets) {
ObFocusCyclePopupTarget *t = popup.targets->data;