X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Ffocus_cycle_popup.c;h=015330bda32f2be41a9b25b972568f0b360ae349;hb=3853b19f0e43399aa0e378a242211cfa27f7c435;hp=a44a8cc646fbcb1df95f420d704b31ea316e07a1;hpb=b596a52fad05018d44468b58b464580a32ba354a;p=chaz%2Fopenbox diff --git a/openbox/focus_cycle_popup.c b/openbox/focus_cycle_popup.c index a44a8cc6..015330bd 100644 --- a/openbox/focus_cycle_popup.c +++ b/openbox/focus_cycle_popup.c @@ -25,12 +25,13 @@ #include "focus_cycle.h" #include "openbox.h" #include "window.h" +#include "event.h" #include "render/render.h" #include #include -#define ICON_SIZE 48 +#define ICON_SIZE 40 #define ICON_HILITE_WIDTH 2 #define ICON_HILITE_MARGIN 1 #define OUTSIDE_BORDER 3 @@ -289,7 +290,7 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c) texth = RrMinHeight(p->a_text); /* find the height of the dialog */ - h = t + b + (icon_rows * ICON_SIZE) + (OUTSIDE_BORDER + texth); + h = t + b + (icon_rows * ICON_SIZE) + (OUTSIDE_BORDER*2 + texth); /* get the position of the text */ textx = l; @@ -320,6 +321,7 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c) /* 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; @@ -419,6 +421,8 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c) 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 */ @@ -429,7 +433,6 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c) } /* draw the text */ - p->a_text->texture[0].data.text.justify = RR_JUSTIFY_CENTER; p->a_text->texture[0].data.text.string = newtarget->text; p->a_text->surface.parentx = textx; p->a_text->surface.parenty = texty; @@ -462,9 +465,15 @@ void focus_cycle_popup_show(ObClient *c, gboolean iconic_windows, void focus_cycle_popup_hide() { + gulong ignore_start; + + ignore_start = event_start_ignore_all_enters(); + XUnmapWindow(ob_display, popup.bg); XFlush(ob_display); + event_end_ignore_all_enters(ignore_start); + popup.mapped = FALSE; while(popup.targets) {