mirror of
https://github.com/0intro/wmii
synced 2024-11-22 05:42:05 +03:00
Don't focus dock or splash windows except via EWMH ACTIVE_WINDOW requests.
This commit is contained in:
parent
f70a4130bd
commit
8c5e6b9eb9
@ -475,7 +475,9 @@ focus(Client *c, bool user) {
|
|||||||
View *v;
|
View *v;
|
||||||
Frame *f;
|
Frame *f;
|
||||||
|
|
||||||
USED(user);
|
if(!user && c->nofocus)
|
||||||
|
return;
|
||||||
|
|
||||||
f = c->sel;
|
f = c->sel;
|
||||||
if(!f)
|
if(!f)
|
||||||
return;
|
return;
|
||||||
|
@ -161,6 +161,7 @@ struct Client {
|
|||||||
bool urgent;
|
bool urgent;
|
||||||
bool borderless;
|
bool borderless;
|
||||||
bool titleless;
|
bool titleless;
|
||||||
|
bool nofocus;
|
||||||
bool noinput;
|
bool noinput;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -242,9 +242,11 @@ ewmh_getwintype(Client *c) {
|
|||||||
|
|
||||||
c->w.ewmh.type = mask;
|
c->w.ewmh.type = mask;
|
||||||
if(mask & (TypeDock|TypeMenu|TypeToolbar)) {
|
if(mask & (TypeDock|TypeMenu|TypeToolbar)) {
|
||||||
c->borderless = 1;
|
c->borderless = true;
|
||||||
c->titleless = 1;
|
c->titleless = true;
|
||||||
}
|
}
|
||||||
|
if(mask & (TypeSplash|TypeDock))
|
||||||
|
c->nofocus = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -90,7 +90,7 @@ void client_seturgent(Client*, int, int);
|
|||||||
void client_setviews(Client*, char**);
|
void client_setviews(Client*, char**);
|
||||||
void client_unmap(Client*, int state);
|
void client_unmap(Client*, int state);
|
||||||
Frame* client_viewframe(Client *c, View *v);
|
Frame* client_viewframe(Client *c, View *v);
|
||||||
void focus(Client*, bool restack);
|
void focus(Client*, bool user);
|
||||||
void fullscreen(Client*, int, long);
|
void fullscreen(Client*, int, long);
|
||||||
Client* group_leader(Group*);
|
Client* group_leader(Group*);
|
||||||
int map_frame(Client*);
|
int map_frame(Client*);
|
||||||
|
@ -221,7 +221,6 @@ enter_event(Window *w, void *aux, XCrossingEvent *e) {
|
|||||||
ignoreenter == e->serial ? " (ignored)" : "");
|
ignoreenter == e->serial ? " (ignored)" : "");
|
||||||
if(e->detail != NotifyInferior)
|
if(e->detail != NotifyInferior)
|
||||||
if(e->serial != ignoreenter && (f->area->floating || !f->collapsed))
|
if(e->serial != ignoreenter && (f->area->floating || !f->collapsed))
|
||||||
if(!(c->w.ewmh.type & TypeSplash))
|
|
||||||
focus(f->client, false);
|
focus(f->client, false);
|
||||||
}
|
}
|
||||||
mouse_checkresize(f, Pt(e->x, e->y), false);
|
mouse_checkresize(f, Pt(e->x, e->y), false);
|
||||||
|
Loading…
Reference in New Issue
Block a user