Tag: Add uicb_tag_urgent to go to urgent tag (Feature #37 request bien Erus)
This commit is contained in:
parent
b38db34de5
commit
6f82c73409
@ -57,6 +57,7 @@ func_name_list_t tmp_func_list[] =
|
||||
{"tag_transfert", uicb_tagtransfert },
|
||||
{"tag_transfert_next", uicb_tagtransfert_next },
|
||||
{"tag_transfert_prev", uicb_tagtransfert_prev },
|
||||
{"tag_urgent", uicb_tag_urgent },
|
||||
{"set_mwfact", uicb_set_mwfact },
|
||||
{"set_nmaster", uicb_set_nmaster },
|
||||
{"quit", uicb_quit },
|
||||
|
||||
@ -466,7 +466,7 @@ propertynotify(XPropertyEvent *ev)
|
||||
{
|
||||
switch(ev->atom)
|
||||
{
|
||||
case XA_WM_TRANSIENT_FOR:
|
||||
case XA_WM_TRANSIENT_FOR:
|
||||
XGetTransientForHint(dpy, c->win, &trans);
|
||||
if((c->flags & TileFlag || c->flags & MaxFlag))
|
||||
if(((c->flags & HintFlag && (client_gb_win(trans) != NULL)))
|
||||
@ -491,10 +491,10 @@ propertynotify(XPropertyEvent *ev)
|
||||
client_get_name(c);
|
||||
break;
|
||||
default:
|
||||
if(ev->atom == net_atom[net_wm_name])
|
||||
client_get_name(c);
|
||||
break;
|
||||
}
|
||||
if(ev->atom == net_atom[net_wm_name])
|
||||
client_get_name(c);
|
||||
}
|
||||
|
||||
return;
|
||||
|
||||
27
src/tag.c
27
src/tag.c
@ -223,3 +223,30 @@ uicb_tagtransfert_prev(uicb_t cmd)
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
/** Go to the current urgent tag
|
||||
*\param cmd uicb_t type unused
|
||||
*/
|
||||
void
|
||||
uicb_tag_urgent(uicb_t cmd)
|
||||
{
|
||||
Client *c;
|
||||
Bool b = False;
|
||||
|
||||
/* Check if there is a urgent client */
|
||||
for(c = clients; c; c = c->next)
|
||||
if(c->flags & UrgentFlag)
|
||||
{
|
||||
b = True;
|
||||
break;
|
||||
}
|
||||
|
||||
if(!b)
|
||||
return;
|
||||
|
||||
screen_set_sel(c->screen);
|
||||
tag_set(c->tag);
|
||||
client_focus(c);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
@ -288,6 +288,7 @@ void uicb_tagtransfert(uicb_t);
|
||||
void uicb_tag_prev_sel(uicb_t);
|
||||
void uicb_tagtransfert_next(uicb_t);
|
||||
void uicb_tagtransfert_prev(uicb_t);
|
||||
void uicb_tag_urgent(uicb_t cmd);
|
||||
|
||||
/* screen.c */
|
||||
int screen_count(void);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user