} focus_indicator;
RrAppearance *a_focus_indicator;
-RrColor *color_black;
RrColor *color_white;
static ObIconPopup *focus_cycle_popup;
stacking_add(INTERNAL_AS_WINDOW(&focus_indicator.right));
stacking_add(INTERNAL_AS_WINDOW(&focus_indicator.bottom));
- color_black = RrColorNew(ob_rr_inst, 0, 0, 0);
color_white = RrColorNew(ob_rr_inst, 0xff, 0xff, 0xff);
a_focus_indicator = RrAppearanceNew(ob_rr_inst, 4);
a_focus_indicator->surface.grad = RR_SURFACE_SOLID;
a_focus_indicator->surface.relief = RR_RELIEF_FLAT;
- a_focus_indicator->surface.primary = color_black;
+ a_focus_indicator->surface.primary = RrColorNew(ob_rr_inst,
+ 0, 0, 0);
a_focus_indicator->texture[0].type = RR_TEXTURE_LINE_ART;
a_focus_indicator->texture[0].data.lineart.color = color_white;
a_focus_indicator->texture[1].type = RR_TEXTURE_LINE_ART;
/* reset focus to root */
XSetInputFocus(ob_display, PointerRoot, RevertToNone, event_lasttime);
- RrColorFree(color_black);
RrColorFree(color_white);
RrAppearanceFree(a_focus_indicator);
int x, y, w, h;
int wt, wl, wr, wb;
- wt = wl = wr = wb = MAX(5, ob_rr_theme->handle_height);
+ wt = wl = wr = wb = MAX(3,
+ ob_rr_theme->handle_height +
+ ob_rr_theme->bwidth * 2);
x = focus_cycle_target->frame->area.x;
y = focus_cycle_target->frame->area.y;
ObClient *ft = NULL;
if (cancel) {
- /*
- if (focus_cycle_target)
- frame_adjust_focus(focus_cycle_target->frame, FALSE);
- if (focus_client)
- frame_adjust_focus(focus_client->frame, TRUE);
- */
focus_cycle_target = NULL;
goto done_cycle;
- } else if (done && dialog) {
+ } else if (done)
goto done_cycle;
- }
if (!focus_order[screen_desktop])
goto done_cycle;
ObClient *ft = NULL;
if (cancel) {
- if (focus_cycle_target)
- frame_adjust_focus(focus_cycle_target->frame, FALSE);
- if (focus_client)
- frame_adjust_focus(focus_client->frame, TRUE);
focus_cycle_target = NULL;
goto done_cycle;
- } else if (done && dialog) {
+ } else if (done)
goto done_cycle;
- }
if (!focus_order[screen_desktop])
goto done_cycle;
if (ft) {
if (ft != focus_cycle_target) {/* prevents flicker */
- if (focus_cycle_target)
- frame_adjust_focus(focus_cycle_target->frame, FALSE);
focus_cycle_target = ft;
- frame_adjust_focus(focus_cycle_target->frame, TRUE);
+ focus_cycle_draw_indicator();
}
}
if (focus_cycle_target) {
first = NULL;
focus_cycle_target = NULL;
+ focus_cycle_draw_indicator();
popup_cycle(ft, FALSE);
return;