only a window is required to set WM_STATE. also un-confuse xu_ptr_getpos

by using 'win' instead of 'rootwin' so as not to imply only the root
window is queried, rather any window.
This commit is contained in:
okan 2013-04-14 16:13:17 +00:00
parent f3dfc4968c
commit 16ed8bf8e4
3 changed files with 6 additions and 6 deletions

View File

@ -466,7 +466,7 @@ void xu_configure(struct client_ctx *);
void xu_getatoms(void);
unsigned long xu_getcolor(struct screen_ctx *, char *);
int xu_getprop(Window, Atom, Atom, long, u_char **);
int xu_getstate(struct client_ctx *, int *);
int xu_getstate(Window, int *);
int xu_getstrprop(Window, Atom, char **);
void xu_key_grab(Window, int, int);
void xu_key_ungrab(Window, int, int);

View File

@ -111,7 +111,7 @@ client_new(Window win, struct screen_ctx *sc, int mapped)
}
client_draw_border(cc);
if (xu_getstate(cc, &state) < 0)
if (xu_getstate(cc->win, &state) < 0)
state = NormalState;
XSelectInput(X_Dpy, cc->win, ColormapChangeMask | EnterWindowMask |

View File

@ -72,13 +72,13 @@ xu_btn_ungrab(Window win, int mask, u_int btn)
}
void
xu_ptr_getpos(Window rootwin, int *x, int *y)
xu_ptr_getpos(Window win, int *x, int *y)
{
Window w0, w1;
int tmp0, tmp1;
u_int tmp2;
XQueryPointer(X_Dpy, rootwin, &w0, &w1, &tmp0, &tmp1, x, y, &tmp2);
XQueryPointer(X_Dpy, win, &w0, &w1, &tmp0, &tmp1, x, y, &tmp2);
}
void
@ -203,11 +203,11 @@ xu_getstrprop(Window win, Atom atm, char **text) {
}
int
xu_getstate(struct client_ctx *cc, int *state)
xu_getstate(Window win, int *state)
{
long *p = NULL;
if (xu_getprop(cc->win, cwmh[WM_STATE].atom, cwmh[WM_STATE].atom, 2L,
if (xu_getprop(win, cwmh[WM_STATE].atom, cwmh[WM_STATE].atom, 2L,
(u_char **)&p) <= 0)
return (-1);