From e5f8c683da20123a5642cc4450c9a0177a191c15 Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Thu, 9 Oct 2003 19:29:42 +0000 Subject: [PATCH] smarter avoidance of windows in the focus cycling stuff, doesnt cycle to util windows --- openbox/focus.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/openbox/focus.c b/openbox/focus.c index 44f8edb2..5d0d4d41 100644 --- a/openbox/focus.c +++ b/openbox/focus.c @@ -485,6 +485,11 @@ void focus_cycle_draw_indicator() a_focus_indicator->texture[3].data.lineart.y2 = 0; RrPaint(a_focus_indicator, focus_indicator.bottom.win, w, h); + + XMapWindow(ob_display, focus_indicator.top.win); + XMapWindow(ob_display, focus_indicator.left.win); + XMapWindow(ob_display, focus_indicator.right.win); + XMapWindow(ob_display, focus_indicator.bottom.win); } } @@ -494,7 +499,13 @@ static gboolean valid_focus_target(ObClient *ft) focus an iconic window, but we want to be able to, so we just check if the focus flags on the window allow it, and its on the current desktop */ - return (!ft->transients && client_normal(ft) && + return ((ft->type == OB_CLIENT_TYPE_NORMAL || + ft->type == OB_CLIENT_TYPE_DIALOG || + (!client_has_group_siblings(ft) && + (ft->type == OB_CLIENT_TYPE_TOOLBAR || + ft->type == OB_CLIENT_TYPE_MENU || + ft->type == OB_CLIENT_TYPE_UTILITY))) && + !ft->transients && ((ft->can_focus || ft->focus_notify) && !ft->skip_taskbar && (ft->desktop == screen_desktop || ft->desktop == DESKTOP_ALL))); -- 2.39.2