mirror of
https://github.com/leahneukirchen/cwm.git
synced 2023-08-10 21:13:12 +03:00
cvsimport
This commit is contained in:
commit
f769df540d
12
calmwm.c
12
calmwm.c
@ -176,6 +176,12 @@ x_setupscreen(struct screen_ctx *sc, u_int which)
|
|||||||
|
|
||||||
xu_setwmname(sc);
|
xu_setwmname(sc);
|
||||||
|
|
||||||
|
rootattr.event_mask = ChildMask|PropertyChangeMask|EnterWindowMask|
|
||||||
|
LeaveWindowMask|ColormapChangeMask|ButtonMask;
|
||||||
|
|
||||||
|
XChangeWindowAttributes(X_Dpy, sc->rootwin,
|
||||||
|
CWEventMask, &rootattr);
|
||||||
|
|
||||||
/* Deal with existing clients. */
|
/* Deal with existing clients. */
|
||||||
XQueryTree(X_Dpy, sc->rootwin, &w0, &w1, &wins, &nwins);
|
XQueryTree(X_Dpy, sc->rootwin, &w0, &w1, &wins, &nwins);
|
||||||
|
|
||||||
@ -190,12 +196,6 @@ x_setupscreen(struct screen_ctx *sc, u_int which)
|
|||||||
|
|
||||||
screen_updatestackingorder(sc);
|
screen_updatestackingorder(sc);
|
||||||
|
|
||||||
rootattr.event_mask = ChildMask|PropertyChangeMask|EnterWindowMask|
|
|
||||||
LeaveWindowMask|ColormapChangeMask|ButtonMask;
|
|
||||||
|
|
||||||
XChangeWindowAttributes(X_Dpy, sc->rootwin,
|
|
||||||
CWEventMask, &rootattr);
|
|
||||||
|
|
||||||
if (XineramaQueryExtension(X_Dpy, &fake, &fake) == 1 &&
|
if (XineramaQueryExtension(X_Dpy, &fake, &fake) == 1 &&
|
||||||
((HasXinerama = XineramaIsActive(X_Dpy)) == 1))
|
((HasXinerama = XineramaIsActive(X_Dpy)) == 1))
|
||||||
HasXinerama = 1;
|
HasXinerama = 1;
|
||||||
|
5
calmwm.h
5
calmwm.h
@ -403,9 +403,8 @@ void xu_ptr_setpos(Window, int, int);
|
|||||||
void xu_ptr_getpos(Window, int *, int *);
|
void xu_ptr_getpos(Window, int *, int *);
|
||||||
void xu_key_grab(Window, int, int);
|
void xu_key_grab(Window, int, int);
|
||||||
void xu_key_ungrab(Window, int, int);
|
void xu_key_ungrab(Window, int, int);
|
||||||
void xu_sendmsg(struct client_ctx *, Atom, long);
|
void xu_sendmsg(Window, Atom, long);
|
||||||
int xu_getprop(struct client_ctx *, Atom, Atom, long,
|
int xu_getprop(Window, Atom, Atom, long, u_char **);
|
||||||
u_char **);
|
|
||||||
char *xu_getstrprop(struct client_ctx *, Atom atm);
|
char *xu_getstrprop(struct client_ctx *, Atom atm);
|
||||||
void xu_setstate(struct client_ctx *, int);
|
void xu_setstate(struct client_ctx *, int);
|
||||||
int xu_getstate(struct client_ctx *, int *);
|
int xu_getstate(struct client_ctx *, int *);
|
||||||
|
6
client.c
6
client.c
@ -495,7 +495,7 @@ client_update(struct client_ctx *cc)
|
|||||||
int i;
|
int i;
|
||||||
long n;
|
long n;
|
||||||
|
|
||||||
if ((n = xu_getprop(cc, WM_PROTOCOLS,
|
if ((n = xu_getprop(cc->win, WM_PROTOCOLS,
|
||||||
XA_ATOM, 20L, (u_char **)&p)) <= 0)
|
XA_ATOM, 20L, (u_char **)&p)) <= 0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@ -512,7 +512,7 @@ void
|
|||||||
client_send_delete(struct client_ctx *cc)
|
client_send_delete(struct client_ctx *cc)
|
||||||
{
|
{
|
||||||
if (cc->xproto & CLIENT_PROTO_DELETE)
|
if (cc->xproto & CLIENT_PROTO_DELETE)
|
||||||
xu_sendmsg(cc, WM_PROTOCOLS, WM_DELETE_WINDOW);
|
xu_sendmsg(cc->win, WM_PROTOCOLS, WM_DELETE_WINDOW);
|
||||||
else
|
else
|
||||||
XKillClient(X_Dpy, cc->win);
|
XKillClient(X_Dpy, cc->win);
|
||||||
}
|
}
|
||||||
@ -814,7 +814,7 @@ client_gethints(struct client_ctx *cc)
|
|||||||
cc->app_class = xch.res_class;
|
cc->app_class = xch.res_class;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (xu_getprop(cc, _MOTIF_WM_HINTS, _MOTIF_WM_HINTS,
|
if (xu_getprop(cc->win, _MOTIF_WM_HINTS, _MOTIF_WM_HINTS,
|
||||||
PROP_MWM_HINTS_ELEMENTS, (u_char **)&mwmh) == MWM_NUMHINTS)
|
PROP_MWM_HINTS_ELEMENTS, (u_char **)&mwmh) == MWM_NUMHINTS)
|
||||||
if (mwmh->flags & MWM_HINTS_DECORATIONS &&
|
if (mwmh->flags & MWM_HINTS_DECORATIONS &&
|
||||||
!(mwmh->decorations & MWM_DECOR_ALL) &&
|
!(mwmh->decorations & MWM_DECOR_ALL) &&
|
||||||
|
3
cwmrc.5
3
cwmrc.5
@ -14,7 +14,7 @@
|
|||||||
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
||||||
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
.\"
|
.\"
|
||||||
.Dd $Mdocdate: August 8 2009 $
|
.Dd $Mdocdate: August 24 2009 $
|
||||||
.Dt CWMRC 5
|
.Dt CWMRC 5
|
||||||
.Os
|
.Os
|
||||||
.Sh NAME
|
.Sh NAME
|
||||||
@ -166,7 +166,6 @@ The
|
|||||||
should be followed by number:
|
should be followed by number:
|
||||||
.Pb
|
.Pb
|
||||||
.Bl -tag -width Ds -offset indent -compact
|
.Bl -tag -width Ds -offset indent -compact
|
||||||
.Pp
|
|
||||||
.It 1
|
.It 1
|
||||||
Left mouse button.
|
Left mouse button.
|
||||||
.It 2
|
.It 2
|
||||||
|
2
group.c
2
group.c
@ -426,7 +426,7 @@ group_autogroup(struct client_ctx *cc)
|
|||||||
|
|
||||||
if (cc->app_class == NULL || cc->app_name == NULL)
|
if (cc->app_class == NULL || cc->app_name == NULL)
|
||||||
return;
|
return;
|
||||||
if (xu_getprop(cc, _NET_WM_DESKTOP, XA_CARDINAL,
|
if (xu_getprop(cc->win, _NET_WM_DESKTOP, XA_CARDINAL,
|
||||||
1, (unsigned char **)&grpno) > 0) {
|
1, (unsigned char **)&grpno) > 0) {
|
||||||
if (*grpno == 0xffffffff)
|
if (*grpno == 0xffffffff)
|
||||||
no = 0;
|
no = 0;
|
||||||
|
12
xutil.c
12
xutil.c
@ -119,29 +119,29 @@ xu_key_ungrab(Window win, int mask, int keysym)
|
|||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
xu_sendmsg(struct client_ctx *cc, Atom atm, long val)
|
xu_sendmsg(Window win, Atom atm, long val)
|
||||||
{
|
{
|
||||||
XEvent e;
|
XEvent e;
|
||||||
|
|
||||||
memset(&e, 0, sizeof(e));
|
memset(&e, 0, sizeof(e));
|
||||||
e.xclient.type = ClientMessage;
|
e.xclient.type = ClientMessage;
|
||||||
e.xclient.window = cc->win;
|
e.xclient.window = win;
|
||||||
e.xclient.message_type = atm;
|
e.xclient.message_type = atm;
|
||||||
e.xclient.format = 32;
|
e.xclient.format = 32;
|
||||||
e.xclient.data.l[0] = val;
|
e.xclient.data.l[0] = val;
|
||||||
e.xclient.data.l[1] = CurrentTime;
|
e.xclient.data.l[1] = CurrentTime;
|
||||||
|
|
||||||
XSendEvent(X_Dpy, cc->win, False, 0, &e);
|
XSendEvent(X_Dpy, win, False, 0, &e);
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
xu_getprop(struct client_ctx *cc, Atom atm, Atom type, long len, u_char **p)
|
xu_getprop(Window win, Atom atm, Atom type, long len, u_char **p)
|
||||||
{
|
{
|
||||||
Atom realtype;
|
Atom realtype;
|
||||||
u_long n, extra;
|
u_long n, extra;
|
||||||
int format;
|
int format;
|
||||||
|
|
||||||
if (XGetWindowProperty(X_Dpy, cc->win, atm, 0L, len, False, type,
|
if (XGetWindowProperty(X_Dpy, win, atm, 0L, len, False, type,
|
||||||
&realtype, &format, &n, &extra, p) != Success || *p == NULL)
|
&realtype, &format, &n, &extra, p) != Success || *p == NULL)
|
||||||
return (-1);
|
return (-1);
|
||||||
|
|
||||||
@ -156,7 +156,7 @@ xu_getstate(struct client_ctx *cc, int *state)
|
|||||||
{
|
{
|
||||||
long *p = NULL;
|
long *p = NULL;
|
||||||
|
|
||||||
if (xu_getprop(cc, WM_STATE, WM_STATE, 2L, (u_char **)&p) <= 0)
|
if (xu_getprop(cc->win, WM_STATE, WM_STATE, 2L, (u_char **)&p) <= 0)
|
||||||
return (-1);
|
return (-1);
|
||||||
|
|
||||||
*state = (int)*p;
|
*state = (int)*p;
|
||||||
|
Loading…
Reference in New Issue
Block a user