convert globals from G_foo to Foo, as per TODO.
"looks good" pedro@, ok matthieu@
This commit is contained in:
parent
ff940966b4
commit
857d1a8dab
@ -28,5 +28,3 @@
|
||||
once before moving on.
|
||||
|
||||
- cache all the atoms somewhere.
|
||||
|
||||
- convert globals from G_foo to Foo;
|
||||
|
134
app/cwm/calmwm.c
134
app/cwm/calmwm.c
@ -4,30 +4,30 @@
|
||||
* Copyright (c) 2004 Marius Aamodt Eriksen <marius@monkey.org>
|
||||
* All rights reserved.
|
||||
*
|
||||
* $Id: calmwm.c,v 1.3 2007/05/21 07:53:11 jasper Exp $
|
||||
* $Id: calmwm.c,v 1.4 2007/05/28 18:34:27 jasper Exp $
|
||||
*/
|
||||
|
||||
#include "headers.h"
|
||||
#include "calmwm.h"
|
||||
|
||||
Display *G_dpy;
|
||||
XFontStruct *G_font;
|
||||
Display *X_Dpy;
|
||||
XFontStruct *X_Font;
|
||||
|
||||
Cursor G_cursor_move;
|
||||
Cursor G_cursor_resize;
|
||||
Cursor G_cursor_select;
|
||||
Cursor G_cursor_default;
|
||||
Cursor G_cursor_question;
|
||||
Cursor Cursor_move;
|
||||
Cursor Cursor_resize;
|
||||
Cursor Cursor_select;
|
||||
Cursor Cursor_default;
|
||||
Cursor Cursor_question;
|
||||
|
||||
struct screen_ctx_q G_screenq;
|
||||
struct screen_ctx *G_curscreen;
|
||||
u_int G_nscreens;
|
||||
struct screen_ctx_q Screenq;
|
||||
struct screen_ctx *Curscreen;
|
||||
u_int Nscreens;
|
||||
|
||||
struct client_ctx_q G_clientq;
|
||||
struct client_ctx_q Clientq;
|
||||
|
||||
int G_doshape, G_shape_ev;
|
||||
int G_starting;
|
||||
struct conf G_conf;
|
||||
int Doshape, Shape_ev;
|
||||
int Starting;
|
||||
struct conf Conf;
|
||||
struct fontdesc *DefaultFont;
|
||||
char *DefaultFontName;
|
||||
|
||||
@ -86,12 +86,12 @@ main(int argc, char **argv)
|
||||
|
||||
group_init();
|
||||
|
||||
G_starting = 1;
|
||||
conf_setup(&G_conf);
|
||||
G_conf.flags |= conf_flags;
|
||||
Starting = 1;
|
||||
conf_setup(&Conf);
|
||||
Conf.flags |= conf_flags;
|
||||
client_setup();
|
||||
x_setup(display_name);
|
||||
G_starting = 0;
|
||||
Starting = 0;
|
||||
|
||||
xev_init();
|
||||
XEV_QUICK(NULL, NULL, MapRequest, xev_handle_maprequest, NULL);
|
||||
@ -121,39 +121,39 @@ x_setup(char *display_name)
|
||||
struct screen_ctx *sc;
|
||||
char *fontname;
|
||||
|
||||
TAILQ_INIT(&G_screenq);
|
||||
TAILQ_INIT(&Screenq);
|
||||
|
||||
if ((G_dpy = XOpenDisplay(display_name)) == NULL)
|
||||
if ((X_Dpy = XOpenDisplay(display_name)) == NULL)
|
||||
errx(1, "%s:%d XOpenDisplay()", __FILE__, __LINE__);
|
||||
|
||||
XSetErrorHandler(x_errorhandler);
|
||||
|
||||
G_doshape = XShapeQueryExtension(G_dpy, &G_shape_ev, &i);
|
||||
Doshape = XShapeQueryExtension(X_Dpy, &Shape_ev, &i);
|
||||
|
||||
i = 0;
|
||||
while ((fontname = tryfonts[i++]) != NULL) {
|
||||
if ((G_font = XLoadQueryFont(G_dpy, fontname)) != NULL)
|
||||
if ((X_Font = XLoadQueryFont(X_Dpy, fontname)) != NULL)
|
||||
break;
|
||||
}
|
||||
|
||||
if (fontname == NULL)
|
||||
errx(1, "Couldn't load any fonts.");
|
||||
|
||||
G_nscreens = ScreenCount(G_dpy);
|
||||
for (i = 0; i < (int)G_nscreens; i++) {
|
||||
Nscreens = ScreenCount(X_Dpy);
|
||||
for (i = 0; i < (int)Nscreens; i++) {
|
||||
XMALLOC(sc, struct screen_ctx);
|
||||
x_setupscreen(sc, i);
|
||||
TAILQ_INSERT_TAIL(&G_screenq, sc, entry);
|
||||
TAILQ_INSERT_TAIL(&Screenq, sc, entry);
|
||||
}
|
||||
|
||||
G_cursor_move = XCreateFontCursor(G_dpy, XC_fleur);
|
||||
G_cursor_resize = XCreateFontCursor(G_dpy, XC_bottom_right_corner);
|
||||
/* (used to be) XCreateFontCursor(G_dpy, XC_hand1); */
|
||||
G_cursor_select = XCreateFontCursor(G_dpy, XC_hand1);
|
||||
/* G_cursor_select = cursor_bigarrow(G_curscreen); */
|
||||
G_cursor_default = XCreateFontCursor(G_dpy, XC_X_cursor);
|
||||
/* G_cursor_default = cursor_bigarrow(G_curscreen); */
|
||||
G_cursor_question = XCreateFontCursor(G_dpy, XC_question_arrow);
|
||||
Cursor_move = XCreateFontCursor(X_Dpy, XC_fleur);
|
||||
Cursor_resize = XCreateFontCursor(X_Dpy, XC_bottom_right_corner);
|
||||
/* (used to be) XCreateFontCursor(X_Dpy, XC_hand1); */
|
||||
Cursor_select = XCreateFontCursor(X_Dpy, XC_hand1);
|
||||
/* Cursor_select = cursor_bigarrow(Curscreen); */
|
||||
Cursor_default = XCreateFontCursor(X_Dpy, XC_X_cursor);
|
||||
/* Cursor_default = cursor_bigarrow(Curscreen); */
|
||||
Cursor_question = XCreateFontCursor(X_Dpy, XC_question_arrow);
|
||||
}
|
||||
|
||||
int
|
||||
@ -169,55 +169,55 @@ x_setupscreen(struct screen_ctx *sc, u_int which)
|
||||
|
||||
sc->display = x_screenname(which);
|
||||
sc->which = which;
|
||||
sc->rootwin = RootWindow(G_dpy, which);
|
||||
XAllocNamedColor(G_dpy, DefaultColormap(G_dpy, which),
|
||||
sc->rootwin = RootWindow(X_Dpy, which);
|
||||
XAllocNamedColor(X_Dpy, DefaultColormap(X_Dpy, which),
|
||||
"black", &sc->fgcolor, &tmp);
|
||||
XAllocNamedColor(G_dpy, DefaultColormap(G_dpy, which),
|
||||
XAllocNamedColor(X_Dpy, DefaultColormap(X_Dpy, which),
|
||||
"#00cc00", &sc->bgcolor, &tmp);
|
||||
XAllocNamedColor(G_dpy,DefaultColormap(G_dpy, which),
|
||||
XAllocNamedColor(X_Dpy,DefaultColormap(X_Dpy, which),
|
||||
"blue", &sc->fccolor, &tmp);
|
||||
XAllocNamedColor(G_dpy, DefaultColormap(G_dpy, which),
|
||||
XAllocNamedColor(X_Dpy, DefaultColormap(X_Dpy, which),
|
||||
"red", &sc->redcolor, &tmp);
|
||||
XAllocNamedColor(G_dpy, DefaultColormap(G_dpy, which),
|
||||
XAllocNamedColor(X_Dpy, DefaultColormap(X_Dpy, which),
|
||||
"#00ccc8", &sc->cyancolor, &tmp);
|
||||
XAllocNamedColor(G_dpy, DefaultColormap(G_dpy, which),
|
||||
XAllocNamedColor(X_Dpy, DefaultColormap(X_Dpy, which),
|
||||
"white", &sc->whitecolor, &tmp);
|
||||
XAllocNamedColor(G_dpy, DefaultColormap(G_dpy, which),
|
||||
XAllocNamedColor(X_Dpy, DefaultColormap(X_Dpy, which),
|
||||
"black", &sc->blackcolor, &tmp);
|
||||
|
||||
TAILQ_FOREACH(kb, &G_conf.keybindingq, entry)
|
||||
TAILQ_FOREACH(kb, &Conf.keybindingq, entry)
|
||||
xu_key_grab(sc->rootwin, kb->modmask, kb->keysym);
|
||||
|
||||
/* Special -- for alt state. */
|
||||
/* xu_key_grab(sc->rootwin, 0, XK_Alt_L); */
|
||||
/* xu_key_grab(sc->rootwin, 0, XK_Alt_R); */
|
||||
|
||||
sc->blackpixl = BlackPixel(G_dpy, sc->which);
|
||||
sc->whitepixl = WhitePixel(G_dpy, sc->which);
|
||||
sc->blackpixl = BlackPixel(X_Dpy, sc->which);
|
||||
sc->whitepixl = WhitePixel(X_Dpy, sc->which);
|
||||
sc->bluepixl = sc->fccolor.pixel;
|
||||
sc->redpixl = sc->redcolor.pixel;
|
||||
sc->cyanpixl = sc->cyancolor.pixel;
|
||||
|
||||
sc->gray = XCreatePixmapFromBitmapData(G_dpy, sc->rootwin,
|
||||
sc->gray = XCreatePixmapFromBitmapData(X_Dpy, sc->rootwin,
|
||||
gray_bits, gray_width, gray_height,
|
||||
sc->blackpixl, sc->whitepixl, DefaultDepth(G_dpy, sc->which));
|
||||
sc->blackpixl, sc->whitepixl, DefaultDepth(X_Dpy, sc->which));
|
||||
|
||||
sc->blue = XCreatePixmapFromBitmapData(G_dpy, sc->rootwin,
|
||||
sc->blue = XCreatePixmapFromBitmapData(X_Dpy, sc->rootwin,
|
||||
gray_bits, gray_width, gray_height,
|
||||
sc->bluepixl, sc->whitepixl, DefaultDepth(G_dpy, sc->which));
|
||||
sc->bluepixl, sc->whitepixl, DefaultDepth(X_Dpy, sc->which));
|
||||
|
||||
sc->red = XCreatePixmapFromBitmapData(G_dpy, sc->rootwin,
|
||||
sc->red = XCreatePixmapFromBitmapData(X_Dpy, sc->rootwin,
|
||||
gray_bits, gray_width, gray_height,
|
||||
sc->redpixl, sc->whitepixl, DefaultDepth(G_dpy, sc->which));
|
||||
sc->redpixl, sc->whitepixl, DefaultDepth(X_Dpy, sc->which));
|
||||
|
||||
gv.foreground = sc->blackpixl^sc->whitepixl;
|
||||
gv.background = sc->whitepixl;
|
||||
gv.function = GXxor;
|
||||
gv.line_width = 1;
|
||||
gv.subwindow_mode = IncludeInferiors;
|
||||
gv.font = G_font->fid;
|
||||
gv.font = X_Font->fid;
|
||||
|
||||
sc->gc = XCreateGC(G_dpy, sc->rootwin,
|
||||
sc->gc = XCreateGC(X_Dpy, sc->rootwin,
|
||||
GCForeground|GCBackground|GCFunction|
|
||||
GCLineWidth|GCSubwindowMode|GCFont, &gv);
|
||||
|
||||
@ -227,19 +227,19 @@ x_setupscreen(struct screen_ctx *sc, u_int which)
|
||||
gv2.function = GXxor;
|
||||
gv2.line_width = 1;
|
||||
gv2.subwindow_mode = IncludeInferiors;
|
||||
gv2.font = G_font->fid;
|
||||
gv2.font = X_Font->fid;
|
||||
#endif
|
||||
|
||||
sc->hlgc = XCreateGC(G_dpy, sc->rootwin,
|
||||
sc->hlgc = XCreateGC(X_Dpy, sc->rootwin,
|
||||
GCForeground|GCBackground|GCFunction|
|
||||
GCLineWidth|GCSubwindowMode|GCFont, &gv);
|
||||
|
||||
gv1.function = GXinvert;
|
||||
gv1.subwindow_mode = IncludeInferiors;
|
||||
gv1.line_width = 1;
|
||||
gv1.font = G_font->fid;
|
||||
gv1.font = X_Font->fid;
|
||||
|
||||
sc->invgc = XCreateGC(G_dpy, sc->rootwin,
|
||||
sc->invgc = XCreateGC(X_Dpy, sc->rootwin,
|
||||
GCFunction|GCSubwindowMode|GCLineWidth|GCFont, &gv1);
|
||||
|
||||
font_init(sc);
|
||||
@ -256,21 +256,21 @@ x_setupscreen(struct screen_ctx *sc, u_int which)
|
||||
search_init(sc);
|
||||
|
||||
/* Deal with existing clients. */
|
||||
XQueryTree(G_dpy, sc->rootwin, &w0, &w1, &wins, &nwins);
|
||||
XQueryTree(X_Dpy, sc->rootwin, &w0, &w1, &wins, &nwins);
|
||||
|
||||
for (i = 0; i < nwins; i++) {
|
||||
XGetWindowAttributes(G_dpy, wins[i], &winattr);
|
||||
XGetWindowAttributes(X_Dpy, wins[i], &winattr);
|
||||
if (winattr.override_redirect ||
|
||||
winattr.map_state != IsViewable) {
|
||||
char *name;
|
||||
XFetchName(G_dpy, wins[i], &name);
|
||||
XFetchName(X_Dpy, wins[i], &name);
|
||||
continue;
|
||||
}
|
||||
client_new(wins[i], sc, winattr.map_state != IsUnmapped);
|
||||
}
|
||||
XFree(wins);
|
||||
|
||||
G_curscreen = sc; /* XXX */
|
||||
Curscreen = sc; /* XXX */
|
||||
screen_init();
|
||||
screen_updatestackingorder();
|
||||
|
||||
@ -280,10 +280,10 @@ x_setupscreen(struct screen_ctx *sc, u_int which)
|
||||
/* Set the root cursor to a nice obnoxious arrow :-) */
|
||||
/* rootattr.cursor = cursor_bigarrow(sc); */
|
||||
|
||||
XChangeWindowAttributes(G_dpy, sc->rootwin,
|
||||
XChangeWindowAttributes(X_Dpy, sc->rootwin,
|
||||
/* CWCursor| */CWEventMask, &rootattr);
|
||||
|
||||
XSync(G_dpy, False);
|
||||
XSync(X_Dpy, False);
|
||||
|
||||
return (0);
|
||||
}
|
||||
@ -298,7 +298,7 @@ x_screenname(int which)
|
||||
errx(1, "Can't handle more than 9 screens. If you need it, "
|
||||
"tell <marius@monkey.org>. It's a trivial fix.");
|
||||
|
||||
dstr = xstrdup(DisplayString(G_dpy));
|
||||
dstr = xstrdup(DisplayString(X_Dpy));
|
||||
|
||||
if ((cp = rindex(dstr, ':')) == NULL)
|
||||
return (NULL);
|
||||
@ -321,16 +321,16 @@ x_errorhandler(Display *dpy, XErrorEvent *e)
|
||||
{
|
||||
char msg[80], number[80], req[80];
|
||||
|
||||
XGetErrorText(G_dpy, e->error_code, msg, sizeof(msg));
|
||||
XGetErrorText(X_Dpy, e->error_code, msg, sizeof(msg));
|
||||
snprintf(number, sizeof(number), "%d", e->request_code);
|
||||
XGetErrorDatabaseText(G_dpy, "XRequest", number,
|
||||
XGetErrorDatabaseText(X_Dpy, "XRequest", number,
|
||||
"<unknown>", req, sizeof(req));
|
||||
|
||||
warnx("%s(0x%x): %s", req, (u_int)e->resourceid, msg);
|
||||
}
|
||||
#endif
|
||||
|
||||
if (G_starting &&
|
||||
if (Starting &&
|
||||
e->error_code == BadAccess &&
|
||||
e->request_code == X_GrabKey)
|
||||
errx(1, "root window unavailable - perhaps another "
|
||||
|
@ -4,7 +4,7 @@
|
||||
* Copyright (c) 2004 Marius Aamodt Eriksen <marius@monkey.org>
|
||||
* All rights reserved.
|
||||
*
|
||||
* $Id: calmwm.h,v 1.4 2007/05/27 09:23:12 jasper Exp $
|
||||
* $Id: calmwm.h,v 1.5 2007/05/28 18:34:27 jasper Exp $
|
||||
*/
|
||||
|
||||
#ifndef _CALMWM_H_
|
||||
@ -484,25 +484,25 @@ struct fontdesc *font_getx(struct screen_ctx *sc, const char *name);
|
||||
|
||||
/* Externs */
|
||||
|
||||
extern Display *G_dpy;
|
||||
extern XFontStruct *G_font;
|
||||
extern Display *X_Dpy;
|
||||
extern XFontStruct *X_Font;
|
||||
|
||||
extern Cursor G_cursor_move;
|
||||
extern Cursor G_cursor_resize;
|
||||
extern Cursor G_cursor_select;
|
||||
extern Cursor G_cursor_default;
|
||||
extern Cursor G_cursor_question;
|
||||
extern Cursor Cursor_move;
|
||||
extern Cursor Cursor_resize;
|
||||
extern Cursor Cursor_select;
|
||||
extern Cursor Cursor_default;
|
||||
extern Cursor Cursor_question;
|
||||
|
||||
extern struct screen_ctx_q G_screenq;
|
||||
extern struct screen_ctx *G_curscreen;
|
||||
extern u_int G_nscreens;
|
||||
extern struct screen_ctx_q Screenq;
|
||||
extern struct screen_ctx *curscreen;
|
||||
extern u_int Nscreens;
|
||||
|
||||
extern struct client_ctx_q G_clientq;
|
||||
extern struct client_ctx_q Clientq;
|
||||
|
||||
extern int G_doshape, G_shape_ev;
|
||||
extern struct conf G_conf;
|
||||
extern int Doshape, Shape_ev;
|
||||
extern struct conf Conf;
|
||||
|
||||
extern int G_groupmode;
|
||||
extern int Groupmode;
|
||||
extern struct fontdesc *DefaultFont;
|
||||
|
||||
|
||||
|
142
app/cwm/client.c
142
app/cwm/client.c
@ -4,7 +4,7 @@
|
||||
* Copyright (c) 2004 Marius Aamodt Eriksen <marius@monkey.org>
|
||||
* All rights reserved.
|
||||
*
|
||||
* $Id: client.c,v 1.1.1.1 2007/04/27 17:58:48 bernd Exp $
|
||||
* $Id: client.c,v 1.2 2007/05/28 18:34:27 jasper Exp $
|
||||
*/
|
||||
|
||||
#include "headers.h"
|
||||
@ -21,7 +21,7 @@ struct client_ctx *_curcc = NULL;
|
||||
void
|
||||
client_setup(void)
|
||||
{
|
||||
TAILQ_INIT(&G_clientq);
|
||||
TAILQ_INIT(&Clientq);
|
||||
}
|
||||
|
||||
struct client_ctx *
|
||||
@ -29,7 +29,7 @@ client_find(Window win)
|
||||
{
|
||||
struct client_ctx *cc;
|
||||
|
||||
TAILQ_FOREACH(cc, &G_clientq, entry)
|
||||
TAILQ_FOREACH(cc, &Clientq, entry)
|
||||
if (cc->pwin == win || cc->win == win)
|
||||
return (cc);
|
||||
|
||||
@ -51,7 +51,7 @@ client_new(Window win, struct screen_ctx *sc, int mapped)
|
||||
|
||||
XCALLOC(cc, struct client_ctx);
|
||||
|
||||
XGrabServer(G_dpy);
|
||||
XGrabServer(X_Dpy);
|
||||
|
||||
cc->state = mapped ? NormalState : IconicState;
|
||||
cc->sc = sc;
|
||||
@ -70,8 +70,8 @@ client_new(Window win, struct screen_ctx *sc, int mapped)
|
||||
*/
|
||||
conf_client(cc);
|
||||
|
||||
XGetWMNormalHints(G_dpy, cc->win, cc->size, &tmp);
|
||||
XGetWindowAttributes(G_dpy, cc->win, &wattr);
|
||||
XGetWMNormalHints(X_Dpy, cc->win, cc->size, &tmp);
|
||||
XGetWindowAttributes(X_Dpy, cc->win, &wattr);
|
||||
|
||||
if (cc->size->flags & PBaseSize) {
|
||||
cc->geom.min_dx = cc->size->base_width;
|
||||
@ -96,7 +96,7 @@ client_new(Window win, struct screen_ctx *sc, int mapped)
|
||||
|
||||
if (wattr.map_state != IsViewable) {
|
||||
client_placecalc(cc);
|
||||
if ((wmhints = XGetWMHints(G_dpy, cc->win)) != NULL) {
|
||||
if ((wmhints = XGetWMHints(X_Dpy, cc->win)) != NULL) {
|
||||
if (wmhints->flags & StateHint)
|
||||
xu_setstate(cc, wmhints->initial_state);
|
||||
|
||||
@ -107,7 +107,7 @@ client_new(Window win, struct screen_ctx *sc, int mapped)
|
||||
if (xu_getstate(cc, &state) < 0)
|
||||
state = NormalState;
|
||||
|
||||
XSelectInput(G_dpy, cc->win,
|
||||
XSelectInput(X_Dpy, cc->win,
|
||||
ColormapChangeMask|EnterWindowMask|PropertyChangeMask|KeyReleaseMask);
|
||||
|
||||
x = cc->geom.x - cc->bwidth;
|
||||
@ -129,24 +129,24 @@ client_new(Window win, struct screen_ctx *sc, int mapped)
|
||||
/* pxattr.background_pixel = sc->whitepix; */
|
||||
|
||||
|
||||
/* cc->pwin = XCreateSimpleWindow(G_dpy, sc->rootwin, */
|
||||
/* cc->pwin = XCreateSimpleWindow(X_Dpy, sc->rootwin, */
|
||||
/* x, y, width, height, 1, sc->blackpix, sc->whitepix); */
|
||||
|
||||
cc->pwin = XCreateWindow(G_dpy, sc->rootwin, x, y,
|
||||
cc->pwin = XCreateWindow(X_Dpy, sc->rootwin, x, y,
|
||||
width, height, 0, /* XXX */
|
||||
DefaultDepth(G_dpy, sc->which), CopyFromParent,
|
||||
DefaultVisual(G_dpy, sc->which),
|
||||
DefaultDepth(X_Dpy, sc->which), CopyFromParent,
|
||||
DefaultVisual(X_Dpy, sc->which),
|
||||
CWOverrideRedirect | CWBackPixel | CWEventMask, &pxattr);
|
||||
|
||||
if (G_doshape) {
|
||||
if (Doshape) {
|
||||
XRectangle *r;
|
||||
int n, tmp;
|
||||
|
||||
XShapeSelectInput(G_dpy, cc->win, ShapeNotifyMask);
|
||||
XShapeSelectInput(X_Dpy, cc->win, ShapeNotifyMask);
|
||||
|
||||
r = XShapeGetRectangles(G_dpy, cc->win, ShapeBounding, &n, &tmp);
|
||||
r = XShapeGetRectangles(X_Dpy, cc->win, ShapeBounding, &n, &tmp);
|
||||
if (n > 1)
|
||||
XShapeCombineShape(G_dpy, cc->pwin, ShapeBounding,
|
||||
XShapeCombineShape(X_Dpy, cc->pwin, ShapeBounding,
|
||||
0, 0, /* XXX border */
|
||||
cc->win, ShapeBounding, ShapeSet);
|
||||
XFree(r);
|
||||
@ -155,28 +155,28 @@ client_new(Window win, struct screen_ctx *sc, int mapped)
|
||||
cc->active = 0;
|
||||
client_draw_border(cc);
|
||||
|
||||
XAddToSaveSet(G_dpy, cc->win);
|
||||
XSetWindowBorderWidth(G_dpy, cc->win, 0);
|
||||
XReparentWindow(G_dpy, cc->win, cc->pwin, cc->bwidth, cc->bwidth);
|
||||
XAddToSaveSet(X_Dpy, cc->win);
|
||||
XSetWindowBorderWidth(X_Dpy, cc->win, 0);
|
||||
XReparentWindow(X_Dpy, cc->win, cc->pwin, cc->bwidth, cc->bwidth);
|
||||
|
||||
/* Notify client of its configuration. */
|
||||
xev_reconfig(cc);
|
||||
|
||||
XMapRaised(G_dpy, cc->pwin);
|
||||
XMapWindow(G_dpy, cc->win);
|
||||
XMapRaised(X_Dpy, cc->pwin);
|
||||
XMapWindow(X_Dpy, cc->win);
|
||||
xu_setstate(cc, cc->state);
|
||||
|
||||
XSync(G_dpy, False);
|
||||
XUngrabServer(G_dpy);
|
||||
XSync(X_Dpy, False);
|
||||
XUngrabServer(X_Dpy);
|
||||
|
||||
TAILQ_INSERT_TAIL(&sc->mruq, cc, mru_entry);
|
||||
TAILQ_INSERT_TAIL(&G_clientq, cc, entry);
|
||||
TAILQ_INSERT_TAIL(&Clientq, cc, entry);
|
||||
|
||||
client_gethints(cc);
|
||||
client_update(cc);
|
||||
|
||||
if (mapped) {
|
||||
if (G_conf.flags & CONF_STICKY_GROUPS)
|
||||
if (Conf.flags & CONF_STICKY_GROUPS)
|
||||
group_sticky(cc);
|
||||
else
|
||||
group_autogroup(cc);
|
||||
@ -195,25 +195,25 @@ client_delete(struct client_ctx *cc, int sendevent, int ignorewindow)
|
||||
return (1);
|
||||
|
||||
group_client_delete(cc);
|
||||
XGrabServer(G_dpy);
|
||||
XGrabServer(X_Dpy);
|
||||
|
||||
xu_setstate(cc, WithdrawnState);
|
||||
XRemoveFromSaveSet(G_dpy, cc->win);
|
||||
XRemoveFromSaveSet(X_Dpy, cc->win);
|
||||
|
||||
if (!ignorewindow) {
|
||||
client_gravitate(cc, 0);
|
||||
XSetWindowBorderWidth(G_dpy, cc->win, 1); /* XXX */
|
||||
XReparentWindow(G_dpy, cc->win,
|
||||
XSetWindowBorderWidth(X_Dpy, cc->win, 1); /* XXX */
|
||||
XReparentWindow(X_Dpy, cc->win,
|
||||
sc->rootwin, cc->geom.x, cc->geom.y);
|
||||
}
|
||||
if (cc->pwin)
|
||||
XDestroyWindow(G_dpy, cc->pwin);
|
||||
XDestroyWindow(X_Dpy, cc->pwin);
|
||||
|
||||
XSync(G_dpy, False);
|
||||
XUngrabServer(G_dpy);
|
||||
XSync(X_Dpy, False);
|
||||
XUngrabServer(X_Dpy);
|
||||
|
||||
TAILQ_REMOVE(&sc->mruq, cc, mru_entry);
|
||||
TAILQ_REMOVE(&G_clientq, cc, entry);
|
||||
TAILQ_REMOVE(&Clientq, cc, entry);
|
||||
|
||||
if (_curcc == cc)
|
||||
_curcc = NULL;
|
||||
@ -273,8 +273,8 @@ client_setactive(struct client_ctx *cc, int fg)
|
||||
sc = CCTOSC(cc);
|
||||
|
||||
if (fg) {
|
||||
XInstallColormap(G_dpy, cc->cmap);
|
||||
XSetInputFocus(G_dpy, cc->win,
|
||||
XInstallColormap(X_Dpy, cc->cmap);
|
||||
XSetInputFocus(X_Dpy, cc->win,
|
||||
RevertToPointerRoot, CurrentTime);
|
||||
xu_btn_grab(cc->pwin, Mod1Mask, AnyButton);
|
||||
xu_btn_grab(cc->pwin, ControlMask|Mod1Mask, Button1);
|
||||
@ -334,7 +334,7 @@ client_maximize(struct client_ctx *cc)
|
||||
XWindowAttributes rootwin_geom;
|
||||
struct screen_ctx *sc = CCTOSC(cc);
|
||||
|
||||
XGetWindowAttributes(G_dpy, sc->rootwin, &rootwin_geom);
|
||||
XGetWindowAttributes(X_Dpy, sc->rootwin, &rootwin_geom);
|
||||
cc->savegeom = cc->geom;
|
||||
cc->geom.x = 0;
|
||||
cc->geom.y = 0;
|
||||
@ -362,10 +362,10 @@ client_restore_geometry(struct client_ctx *cc)
|
||||
void
|
||||
client_resize(struct client_ctx *cc)
|
||||
{
|
||||
XMoveResizeWindow(G_dpy, cc->pwin, cc->geom.x - cc->bwidth,
|
||||
XMoveResizeWindow(X_Dpy, cc->pwin, cc->geom.x - cc->bwidth,
|
||||
cc->geom.y - cc->bwidth, cc->geom.width + cc->bwidth*2,
|
||||
cc->geom.height + cc->bwidth*2);
|
||||
XMoveResizeWindow(G_dpy, cc->win, cc->bwidth, cc->bwidth,
|
||||
XMoveResizeWindow(X_Dpy, cc->win, cc->bwidth, cc->bwidth,
|
||||
cc->geom.width, cc->geom.height);
|
||||
xev_reconfig(cc);
|
||||
client_draw_border(cc);
|
||||
@ -374,7 +374,7 @@ client_resize(struct client_ctx *cc)
|
||||
void
|
||||
client_move(struct client_ctx *cc)
|
||||
{
|
||||
XMoveWindow(G_dpy, cc->pwin,
|
||||
XMoveWindow(X_Dpy, cc->pwin,
|
||||
cc->geom.x - cc->bwidth, cc->geom.y - cc->bwidth);
|
||||
xev_reconfig(cc);
|
||||
}
|
||||
@ -382,13 +382,13 @@ client_move(struct client_ctx *cc)
|
||||
void
|
||||
client_lower(struct client_ctx *cc)
|
||||
{
|
||||
XLowerWindow(G_dpy, cc->pwin);
|
||||
XLowerWindow(X_Dpy, cc->pwin);
|
||||
}
|
||||
|
||||
void
|
||||
client_raise(struct client_ctx *cc)
|
||||
{
|
||||
XRaiseWindow(G_dpy, cc->pwin);
|
||||
XRaiseWindow(X_Dpy, cc->pwin);
|
||||
client_draw_border(cc);
|
||||
}
|
||||
|
||||
@ -429,8 +429,8 @@ void
|
||||
client_hide(struct client_ctx *cc)
|
||||
{
|
||||
/* XXX - add wm_state stuff */
|
||||
XUnmapWindow(G_dpy, cc->pwin);
|
||||
XUnmapWindow(G_dpy, cc->win);
|
||||
XUnmapWindow(X_Dpy, cc->pwin);
|
||||
XUnmapWindow(X_Dpy, cc->win);
|
||||
|
||||
cc->active = 0;
|
||||
cc->flags |= CLIENT_HIDDEN;
|
||||
@ -443,8 +443,8 @@ client_hide(struct client_ctx *cc)
|
||||
void
|
||||
client_unhide(struct client_ctx *cc)
|
||||
{
|
||||
XMapWindow(G_dpy, cc->win);
|
||||
XMapRaised(G_dpy, cc->pwin);
|
||||
XMapWindow(X_Dpy, cc->win);
|
||||
XMapRaised(X_Dpy, cc->pwin);
|
||||
|
||||
cc->flags &= ~CLIENT_HIDDEN;
|
||||
xu_setstate(cc, NormalState);
|
||||
@ -456,21 +456,21 @@ client_draw_border(struct client_ctx *cc)
|
||||
struct screen_ctx *sc = CCTOSC(cc);
|
||||
|
||||
if (cc->active) {
|
||||
XSetWindowBackground(G_dpy, cc->pwin, client_bg_pixel(cc));
|
||||
XClearWindow(G_dpy, cc->pwin);
|
||||
XSetWindowBackground(X_Dpy, cc->pwin, client_bg_pixel(cc));
|
||||
XClearWindow(X_Dpy, cc->pwin);
|
||||
|
||||
if (!cc->highlight && cc->bwidth > 1)
|
||||
XDrawRectangle(G_dpy, cc->pwin, sc->gc, 1, 1,
|
||||
XDrawRectangle(X_Dpy, cc->pwin, sc->gc, 1, 1,
|
||||
cc->geom.width + cc->bwidth,
|
||||
cc->geom.height + cc->bwidth);
|
||||
} else {
|
||||
XSetWindowBackgroundPixmap(G_dpy, cc->pwin,
|
||||
XSetWindowBackgroundPixmap(X_Dpy, cc->pwin,
|
||||
client_bg_pixmap(cc));
|
||||
if (cc->bwidth > 1)
|
||||
XSetWindowBackgroundPixmap(G_dpy,
|
||||
XSetWindowBackgroundPixmap(X_Dpy,
|
||||
cc->pwin, client_bg_pixmap(cc));
|
||||
|
||||
XClearWindow(G_dpy, cc->pwin);
|
||||
XClearWindow(X_Dpy, cc->pwin);
|
||||
}
|
||||
}
|
||||
|
||||
@ -524,9 +524,9 @@ client_update(struct client_ctx *cc)
|
||||
long n;
|
||||
|
||||
/* XXX cache these. */
|
||||
wm_delete = XInternAtom(G_dpy, "WM_DELETE_WINDOW", False);
|
||||
wm_protocols = XInternAtom(G_dpy, "WM_PROTOCOLS", False);
|
||||
wm_take_focus = XInternAtom(G_dpy, "WM_TAKE_FOCUS", False);
|
||||
wm_delete = XInternAtom(X_Dpy, "WM_DELETE_WINDOW", False);
|
||||
wm_protocols = XInternAtom(X_Dpy, "WM_PROTOCOLS", False);
|
||||
wm_take_focus = XInternAtom(X_Dpy, "WM_TAKE_FOCUS", False);
|
||||
|
||||
if ((n = xu_getprop(cc, wm_protocols,
|
||||
XA_ATOM, 20L, (u_char **)&p)) <= 0)
|
||||
@ -547,13 +547,13 @@ client_send_delete(struct client_ctx *cc)
|
||||
Atom wm_delete, wm_protocols;
|
||||
|
||||
/* XXX - cache */
|
||||
wm_delete = XInternAtom(G_dpy, "WM_DELETE_WINDOW", False);
|
||||
wm_protocols = XInternAtom(G_dpy, "WM_PROTOCOLS", False);
|
||||
wm_delete = XInternAtom(X_Dpy, "WM_DELETE_WINDOW", False);
|
||||
wm_protocols = XInternAtom(X_Dpy, "WM_PROTOCOLS", False);
|
||||
|
||||
if (cc->xproto & CLIENT_PROTO_DELETE)
|
||||
xu_sendmsg(cc, wm_protocols, wm_delete);
|
||||
else
|
||||
XKillClient(G_dpy, cc->win);
|
||||
XKillClient(X_Dpy, cc->win);
|
||||
}
|
||||
|
||||
void
|
||||
@ -562,7 +562,7 @@ client_setname(struct client_ctx *cc)
|
||||
char *newname;
|
||||
struct winname *wn;
|
||||
|
||||
XFetchName(G_dpy, cc->win, &newname);
|
||||
XFetchName(X_Dpy, cc->win, &newname);
|
||||
if (newname == NULL)
|
||||
newname = emptystring;
|
||||
|
||||
@ -689,10 +689,10 @@ client_cycleinfo(struct client_ctx *cc)
|
||||
if ((diff = cc->geom.height - (y + h)) < 0)
|
||||
y += diff;
|
||||
|
||||
XReparentWindow(G_dpy, sc->infowin, cc->win, 0, 0);
|
||||
XMoveResizeWindow(G_dpy, sc->infowin, x, y, w, h);
|
||||
XMapRaised(G_dpy, sc->infowin);
|
||||
XClearWindow(G_dpy, sc->infowin);
|
||||
XReparentWindow(X_Dpy, sc->infowin, cc->win, 0, 0);
|
||||
XMoveResizeWindow(X_Dpy, sc->infowin, x, y, w, h);
|
||||
XMapRaised(X_Dpy, sc->infowin);
|
||||
XClearWindow(X_Dpy, sc->infowin);
|
||||
|
||||
for (i = 0, n = 0; i < sizeof(list)/sizeof(list[0]); i++) {
|
||||
if ((ccc = list[i]) == NULL)
|
||||
@ -707,7 +707,7 @@ client_cycleinfo(struct client_ctx *cc)
|
||||
assert(curn != -1);
|
||||
|
||||
/* Highlight the current entry. */
|
||||
XFillRectangle(G_dpy, sc->infowin, sc->hlgc, 0, curn*oneh, w, oneh);
|
||||
XFillRectangle(X_Dpy, sc->infowin, sc->hlgc, 0, curn*oneh, w, oneh);
|
||||
}
|
||||
|
||||
struct client_ctx *
|
||||
@ -754,8 +754,8 @@ client_altrelease()
|
||||
return;
|
||||
sc = CCTOSC(cc);
|
||||
|
||||
XUnmapWindow(G_dpy, sc->infowin);
|
||||
XReparentWindow(G_dpy, sc->infowin, sc->rootwin, 0, 0);
|
||||
XUnmapWindow(X_Dpy, sc->infowin);
|
||||
XReparentWindow(X_Dpy, sc->infowin, sc->rootwin, 0, 0);
|
||||
}
|
||||
|
||||
void
|
||||
@ -771,8 +771,8 @@ client_placecalc(struct client_ctx *cc)
|
||||
height = cc->geom.height;
|
||||
width = cc->geom.width;
|
||||
|
||||
ymax = DisplayHeight(G_dpy, sc->which) - cc->bwidth;
|
||||
xmax = DisplayWidth(G_dpy, sc->which) - cc->bwidth;
|
||||
ymax = DisplayHeight(X_Dpy, sc->which) - cc->bwidth;
|
||||
xmax = DisplayWidth(X_Dpy, sc->which) - cc->bwidth;
|
||||
|
||||
yslack = ymax - cc->geom.height;
|
||||
xslack = xmax - cc->geom.width;
|
||||
@ -827,7 +827,7 @@ client_vertmaximize(struct client_ctx *cc)
|
||||
cc->geom = cc->savegeom;
|
||||
} else {
|
||||
struct screen_ctx *sc = CCTOSC(cc);
|
||||
int display_height = DisplayHeight(G_dpy, sc->which) -
|
||||
int display_height = DisplayHeight(X_Dpy, sc->which) -
|
||||
cc->bwidth*2;
|
||||
|
||||
cc->savegeom = cc->geom;
|
||||
@ -876,21 +876,21 @@ client_gethints(struct client_ctx *cc)
|
||||
Atom mha;
|
||||
struct mwm_hints *mwmh;
|
||||
|
||||
if (XGetClassHint(G_dpy, cc->win, &xch)) {
|
||||
if (XGetClassHint(X_Dpy, cc->win, &xch)) {
|
||||
if (xch.res_name != NULL)
|
||||
cc->app_name = xch.res_name;
|
||||
if (xch.res_class != NULL)
|
||||
cc->app_class = xch.res_class;
|
||||
}
|
||||
|
||||
mha = XInternAtom(G_dpy, "_MOTIF_WM_HINTS", False);
|
||||
mha = XInternAtom(X_Dpy, "_MOTIF_WM_HINTS", False);
|
||||
if (xu_getprop(cc, mha, mha, PROP_MWM_HINTS_ELEMENTS,
|
||||
(u_char **)&mwmh) == MWM_NUMHINTS)
|
||||
if (mwmh->flags & MWM_HINTS_DECORATIONS &&
|
||||
!(mwmh->decorations & MWM_DECOR_ALL) &&
|
||||
!(mwmh->decorations & MWM_DECOR_BORDER))
|
||||
cc->bwidth = 0;
|
||||
if (XGetCommand(G_dpy, cc->win, &argv, &argc)) {
|
||||
if (XGetCommand(X_Dpy, cc->win, &argv, &argc)) {
|
||||
#define MAX_ARGLEN 512
|
||||
#define ARG_SEP_ " "
|
||||
int len = MAX_ARGLEN;
|
||||
|
@ -4,7 +4,7 @@
|
||||
* Copyright (c) 2004 Marius Aamodt Eriksen <marius@monkey.org>
|
||||
* All rights reserved.
|
||||
*
|
||||
* $Id: conf.c,v 1.3 2007/05/27 09:23:12 jasper Exp $
|
||||
* $Id: conf.c,v 1.4 2007/05/28 18:34:27 jasper Exp $
|
||||
*/
|
||||
|
||||
#include "headers.h"
|
||||
@ -78,9 +78,9 @@ conf_cmd_add(struct conf *c, char *image, char *label, int flags)
|
||||
/* "term" and "lock" have special meanings. */
|
||||
|
||||
if (strcmp(label, "term") == 0) {
|
||||
strlcpy(G_conf.termpath, image, sizeof(G_conf.termpath));
|
||||
strlcpy(Conf.termpath, image, sizeof(Conf.termpath));
|
||||
} else if (strcmp(label, "lock") == 0) {
|
||||
strlcpy(G_conf.lockpath, image, sizeof(G_conf.lockpath));
|
||||
strlcpy(Conf.lockpath, image, sizeof(Conf.lockpath));
|
||||
} else {
|
||||
struct cmd *cmd;
|
||||
XMALLOC(cmd, struct cmd);
|
||||
@ -262,8 +262,8 @@ conf_setup(struct conf *c)
|
||||
c->flags = 0;
|
||||
|
||||
/* Default term/lock */
|
||||
strlcpy(G_conf.termpath, "xterm", sizeof(G_conf.termpath));
|
||||
strlcpy(G_conf.lockpath, "xlock", sizeof(G_conf.lockpath));
|
||||
strlcpy(Conf.termpath, "xterm", sizeof(Conf.termpath));
|
||||
strlcpy(Conf.lockpath, "xlock", sizeof(Conf.lockpath));
|
||||
}
|
||||
|
||||
int
|
||||
@ -471,7 +471,7 @@ conf_parsesettings(struct conf *c, char *filename)
|
||||
if (ent->d_name[0] == '.')
|
||||
continue;
|
||||
if (strncmp(ent->d_name, "sticky", 7)==0)
|
||||
G_conf.flags |= CONF_STICKY_GROUPS;
|
||||
Conf.flags |= CONF_STICKY_GROUPS;
|
||||
}
|
||||
closedir(dir);
|
||||
}
|
||||
|
@ -48,12 +48,12 @@ _mkcursor(struct cursor_data *c, struct screen_ctx *sc)
|
||||
{
|
||||
Pixmap f, m;
|
||||
|
||||
f = XCreatePixmapFromBitmapData(G_dpy, sc->rootwin, (char *)c->fore,
|
||||
f = XCreatePixmapFromBitmapData(X_Dpy, sc->rootwin, (char *)c->fore,
|
||||
c->width, c->width, 1, 0, 1);
|
||||
m = XCreatePixmapFromBitmapData(G_dpy, sc->rootwin, (char *)c->mask,
|
||||
m = XCreatePixmapFromBitmapData(X_Dpy, sc->rootwin, (char *)c->mask,
|
||||
c->width, c->width, 1, 0, 1);
|
||||
|
||||
return (XCreatePixmapCursor(G_dpy, f, m,
|
||||
return (XCreatePixmapCursor(X_Dpy, f, m,
|
||||
&sc->blackcolor, &sc->whitecolor, c->hot[0], c->hot[1]));
|
||||
}
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
* Copyright (c) 2004 Marius Aamodt Eriksen <marius@monkey.org>
|
||||
* All rights reserved.
|
||||
*
|
||||
* $Id: draw.c,v 1.1.1.1 2007/04/27 17:58:48 bernd Exp $
|
||||
* $Id: draw.c,v 1.2 2007/05/28 18:34:27 jasper Exp $
|
||||
*/
|
||||
|
||||
#include "headers.h"
|
||||
@ -15,7 +15,7 @@ draw_outline(struct client_ctx *cc)
|
||||
{
|
||||
struct screen_ctx *sc = CCTOSC(cc);
|
||||
|
||||
XDrawRectangle(G_dpy, sc->rootwin, sc->invgc,
|
||||
XDrawRectangle(X_Dpy, sc->rootwin, sc->invgc,
|
||||
cc->geom.x - cc->bwidth, cc->geom.y - cc->bwidth,
|
||||
cc->geom.width + cc->bwidth, cc->geom.height + cc->bwidth);
|
||||
}
|
||||
|
@ -61,12 +61,12 @@ font_init(struct screen_ctx *sc)
|
||||
XColor xcolor, tmp;
|
||||
|
||||
HASH_INIT(&sc->fonthash, fontdesc_hash);
|
||||
sc->xftdraw = XftDrawCreate(G_dpy, sc->rootwin,
|
||||
DefaultVisual(G_dpy, sc->which), DefaultColormap(G_dpy, sc->which));
|
||||
sc->xftdraw = XftDrawCreate(X_Dpy, sc->rootwin,
|
||||
DefaultVisual(X_Dpy, sc->which), DefaultColormap(X_Dpy, sc->which));
|
||||
if (sc->xftdraw == NULL)
|
||||
errx(1, "XftDrawCreate");
|
||||
|
||||
if (!XAllocNamedColor(G_dpy, DefaultColormap(G_dpy, sc->which),
|
||||
if (!XAllocNamedColor(X_Dpy, DefaultColormap(X_Dpy, sc->which),
|
||||
"black", &xcolor, &tmp))
|
||||
errx(1, "XAllocNamedColor");
|
||||
|
||||
@ -112,7 +112,7 @@ int
|
||||
font_width(struct fontdesc *fdp, const char *text, int len)
|
||||
{
|
||||
XGlyphInfo extents;
|
||||
XftTextExtents8(G_dpy, fdp->fn, (const XftChar8*)text, len, &extents);
|
||||
XftTextExtents8(X_Dpy, fdp->fn, (const XftChar8*)text, len, &extents);
|
||||
|
||||
return (extents.xOff);
|
||||
}
|
||||
@ -149,8 +149,8 @@ _make_font(struct screen_ctx *sc, struct fontdesc *fdp)
|
||||
if ((pat = FcNameParse(fdp->name)) == NULL)
|
||||
return (NULL);
|
||||
|
||||
if ((patx = XftFontMatch(G_dpy, sc->which, pat, &res)) != NULL)
|
||||
fn = XftFontOpenPattern(G_dpy, patx);
|
||||
if ((patx = XftFontMatch(X_Dpy, sc->which, pat, &res)) != NULL)
|
||||
fn = XftFontOpenPattern(X_Dpy, patx);
|
||||
|
||||
FcPatternDestroy(pat);
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
* Copyright (c) 2004 Marius Aamodt Eriksen <marius@monkey.org>
|
||||
* All rights reserved.
|
||||
*
|
||||
* $Id: geographic.c,v 1.1.1.1 2007/04/27 17:58:48 bernd Exp $
|
||||
* $Id: geographic.c,v 1.2 2007/05/28 18:34:27 jasper Exp $
|
||||
*/
|
||||
|
||||
#include "headers.h"
|
||||
@ -33,7 +33,7 @@ _visible(struct client_ctx *this_cc)
|
||||
if (cc->flags & CLIENT_HIDDEN)
|
||||
return (0);
|
||||
|
||||
TAILQ_FOREACH(cc, &G_clientq, entry) {
|
||||
TAILQ_FOREACH(cc, &Clientq, entry) {
|
||||
if (cc->flags & CLIENT_HIDDEN)
|
||||
continue;
|
||||
|
||||
|
104
app/cwm/grab.c
104
app/cwm/grab.c
@ -4,7 +4,7 @@
|
||||
* Copyright (c) 2004 Marius Aamodt Eriksen <marius@monkey.org>
|
||||
* All rights reserved.
|
||||
*
|
||||
* $Id: grab.c,v 1.3 2007/04/27 18:10:39 bernd Exp $
|
||||
* $Id: grab.c,v 1.4 2007/05/28 18:34:27 jasper Exp $
|
||||
*/
|
||||
|
||||
#include "headers.h"
|
||||
@ -32,10 +32,10 @@ grab_sweep_draw(struct client_ctx *cc, int dx, int dy)
|
||||
wide = MAX(wide_size, wide_name);
|
||||
height = font_ascent(font) + font_descent(font) + 1;
|
||||
|
||||
XMoveResizeWindow(G_dpy, sc->menuwin, x0, y0, wide, height * 2);
|
||||
XMapWindow(G_dpy, sc->menuwin);
|
||||
XReparentWindow(G_dpy, sc->menuwin, cc->win, 0, 0);
|
||||
XClearWindow(G_dpy, sc->menuwin);
|
||||
XMoveResizeWindow(X_Dpy, sc->menuwin, x0, y0, wide, height * 2);
|
||||
XMapWindow(X_Dpy, sc->menuwin);
|
||||
XReparentWindow(X_Dpy, sc->menuwin, cc->win, 0, 0);
|
||||
XClearWindow(X_Dpy, sc->menuwin);
|
||||
font_draw(font, cc->name, strlen(cc->name), sc->menuwin,
|
||||
2, font_ascent(font) + 1);
|
||||
font_draw(font, asize, strlen(asize), sc->menuwin,
|
||||
@ -56,7 +56,7 @@ grab_sweep(struct client_ctx *cc)
|
||||
client_raise(cc);
|
||||
client_ptrsave(cc);
|
||||
|
||||
if (xu_ptr_grab(sc->rootwin, MouseMask, G_cursor_resize) < 0)
|
||||
if (xu_ptr_grab(sc->rootwin, MouseMask, Cursor_resize) < 0)
|
||||
return (-1);
|
||||
|
||||
xu_ptr_setpos(cc->win, cc->geom.width, cc->geom.height);
|
||||
@ -64,7 +64,7 @@ grab_sweep(struct client_ctx *cc)
|
||||
|
||||
for (;;) {
|
||||
/* Look for changes in ptr position. */
|
||||
XMaskEvent(G_dpy, MouseMask, &ev);
|
||||
XMaskEvent(X_Dpy, MouseMask, &ev);
|
||||
|
||||
switch (ev.type) {
|
||||
case MotionNotify:
|
||||
@ -72,19 +72,19 @@ grab_sweep(struct client_ctx *cc)
|
||||
/* Recompute window output */
|
||||
grab_sweep_draw(cc, dx, dy);
|
||||
|
||||
XMoveResizeWindow(G_dpy, cc->pwin,
|
||||
XMoveResizeWindow(X_Dpy, cc->pwin,
|
||||
cc->geom.x - cc->bwidth,
|
||||
cc->geom.y - cc->bwidth,
|
||||
cc->geom.width + cc->bwidth*2,
|
||||
cc->geom.height + cc->bwidth*2);
|
||||
XMoveResizeWindow(G_dpy, cc->win,
|
||||
XMoveResizeWindow(X_Dpy, cc->win,
|
||||
cc->bwidth, cc->bwidth,
|
||||
cc->geom.width, cc->geom.height);
|
||||
|
||||
break;
|
||||
case ButtonRelease:
|
||||
XUnmapWindow(G_dpy, sc->menuwin);
|
||||
XReparentWindow(G_dpy, sc->menuwin, sc->rootwin, 0, 0);
|
||||
XUnmapWindow(X_Dpy, sc->menuwin);
|
||||
XReparentWindow(X_Dpy, sc->menuwin, sc->rootwin, 0, 0);
|
||||
xu_ptr_ungrab();
|
||||
client_ptrwarp(cc);
|
||||
return (0);
|
||||
@ -102,20 +102,20 @@ grab_drag(struct client_ctx *cc)
|
||||
|
||||
client_raise(cc);
|
||||
|
||||
if (xu_ptr_grab(sc->rootwin, MouseMask, G_cursor_move) < 0)
|
||||
if (xu_ptr_grab(sc->rootwin, MouseMask, Cursor_move) < 0)
|
||||
return (-1);
|
||||
|
||||
xu_ptr_getpos(sc->rootwin, &xm, &ym);
|
||||
|
||||
for (;;) {
|
||||
XMaskEvent(G_dpy, MouseMask, &ev);
|
||||
XMaskEvent(X_Dpy, MouseMask, &ev);
|
||||
|
||||
switch (ev.type) {
|
||||
case MotionNotify:
|
||||
cc->geom.x = x0 + (ev.xmotion.x - xm);
|
||||
cc->geom.y = y0 + (ev.xmotion.y - ym);
|
||||
|
||||
XMoveWindow(G_dpy, cc->pwin,
|
||||
XMoveWindow(X_Dpy, cc->pwin,
|
||||
cc->geom.x - cc->bwidth, cc->geom.y - cc->bwidth);
|
||||
|
||||
break;
|
||||
@ -185,8 +185,8 @@ grab_menu(XButtonEvent *e, struct menu_q *menuq)
|
||||
y = e->y - cur*high - high/2;
|
||||
warp = 0;
|
||||
/* XXX - cache these in sc. */
|
||||
xmax = DisplayWidth(G_dpy, sc->which);
|
||||
ymax = DisplayHeight(G_dpy, sc->which);
|
||||
xmax = DisplayWidth(X_Dpy, sc->which);
|
||||
ymax = DisplayHeight(X_Dpy, sc->which);
|
||||
if (x < 0) {
|
||||
e->x -= x;
|
||||
x = 0;
|
||||
@ -210,12 +210,12 @@ grab_menu(XButtonEvent *e, struct menu_q *menuq)
|
||||
if (warp)
|
||||
xu_ptr_setpos(e->root, e->x, e->y);
|
||||
|
||||
XMoveResizeWindow(G_dpy, sc->menuwin, x, y, dx, dy);
|
||||
XSelectInput(G_dpy, sc->menuwin, MenuMask);
|
||||
XMapRaised(G_dpy, sc->menuwin);
|
||||
status = xu_ptr_grab(sc->menuwin, MenuGrabMask, G_cursor_select);
|
||||
XMoveResizeWindow(X_Dpy, sc->menuwin, x, y, dx, dy);
|
||||
XSelectInput(X_Dpy, sc->menuwin, MenuMask);
|
||||
XMapRaised(X_Dpy, sc->menuwin);
|
||||
status = xu_ptr_grab(sc->menuwin, MenuGrabMask, Cursor_select);
|
||||
if (status < 0) {
|
||||
XUnmapWindow(G_dpy, sc->menuwin);
|
||||
XUnmapWindow(X_Dpy, sc->menuwin);
|
||||
return (NULL);
|
||||
}
|
||||
drawn = 0;
|
||||
@ -226,13 +226,13 @@ grab_menu(XButtonEvent *e, struct menu_q *menuq)
|
||||
cc = grab_menu_getcc(menuq, cur);
|
||||
if (cc != NULL) {
|
||||
client_unhide(cc);
|
||||
XRaiseWindow(G_dpy, sc->menuwin);
|
||||
XRaiseWindow(X_Dpy, sc->menuwin);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
for (;;) {
|
||||
XMaskEvent(G_dpy, MenuMask, &ev);
|
||||
XMaskEvent(X_Dpy, MenuMask, &ev);
|
||||
switch (ev.type) {
|
||||
default:
|
||||
warnx("menuhit: unknown ev.type %d\n", ev.type);
|
||||
@ -259,7 +259,7 @@ grab_menu(XButtonEvent *e, struct menu_q *menuq)
|
||||
/* XXX */
|
||||
/* ungrab(&ev.xbutton); */
|
||||
xu_ptr_ungrab();
|
||||
XUnmapWindow(G_dpy, sc->menuwin);
|
||||
XUnmapWindow(X_Dpy, sc->menuwin);
|
||||
n = 0;
|
||||
TAILQ_FOREACH(mi, menuq, entry)
|
||||
if (i == n++)
|
||||
@ -290,7 +290,7 @@ grab_menu(XButtonEvent *e, struct menu_q *menuq)
|
||||
client_hide(cc);
|
||||
}
|
||||
#endif
|
||||
XFillRectangle(G_dpy, sc->menuwin,
|
||||
XFillRectangle(X_Dpy, sc->menuwin,
|
||||
sc->hlgc, 0, old*high, wide, high);
|
||||
}
|
||||
if (cur >= 0 && cur < n) {
|
||||
@ -300,19 +300,19 @@ grab_menu(XButtonEvent *e, struct menu_q *menuq)
|
||||
cc = grab_menu_getcc(menuq, cur);
|
||||
if (cc != NULL) {
|
||||
client_unhide(cc);
|
||||
XRaiseWindow(G_dpy,
|
||||
XRaiseWindow(X_Dpy,
|
||||
sc->menuwin);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
xu_ptr_regrab(MenuGrabMask, G_cursor_select);
|
||||
XFillRectangle(G_dpy, sc->menuwin,
|
||||
xu_ptr_regrab(MenuGrabMask, Cursor_select);
|
||||
XFillRectangle(X_Dpy, sc->menuwin,
|
||||
sc->hlgc, 0, cur*high, wide, high);
|
||||
} else
|
||||
xu_ptr_regrab(MenuGrabMask, G_cursor_default);
|
||||
xu_ptr_regrab(MenuGrabMask, Cursor_default);
|
||||
break;
|
||||
case Expose:
|
||||
XClearWindow(G_dpy, sc->menuwin);
|
||||
XClearWindow(X_Dpy, sc->menuwin);
|
||||
i = 0;
|
||||
TAILQ_FOREACH(mi, menuq, entry) {
|
||||
tx = (wide - font_width(font, mi->text,
|
||||
@ -323,7 +323,7 @@ grab_menu(XButtonEvent *e, struct menu_q *menuq)
|
||||
i++;
|
||||
}
|
||||
if (cur >= 0 && cur < n)
|
||||
XFillRectangle(G_dpy, sc->menuwin,
|
||||
XFillRectangle(X_Dpy, sc->menuwin,
|
||||
sc->hlgc, 0, cur*high, wide, high);
|
||||
drawn = 1;
|
||||
}
|
||||
@ -333,7 +333,7 @@ grab_menu(XButtonEvent *e, struct menu_q *menuq)
|
||||
void
|
||||
grab_menuinit(struct screen_ctx *sc)
|
||||
{
|
||||
sc->menuwin = XCreateSimpleWindow(G_dpy, sc->rootwin, 0, 0,
|
||||
sc->menuwin = XCreateSimpleWindow(X_Dpy, sc->rootwin, 0, 0,
|
||||
1, 1, 1, sc->blackpixl, sc->whitepixl);
|
||||
}
|
||||
|
||||
@ -364,16 +364,16 @@ grab_label(struct client_ctx *cc)
|
||||
dy = fontheight = font_ascent(font) + font_descent(font) + 1;
|
||||
dx = font_width(font, "label>", 6);
|
||||
|
||||
XMoveResizeWindow(G_dpy, sc->searchwin, x, y, dx, dy);
|
||||
XSelectInput(G_dpy, sc->searchwin, LabelMask);
|
||||
XMapRaised(G_dpy, sc->searchwin);
|
||||
XMoveResizeWindow(X_Dpy, sc->searchwin, x, y, dx, dy);
|
||||
XSelectInput(X_Dpy, sc->searchwin, LabelMask);
|
||||
XMapRaised(X_Dpy, sc->searchwin);
|
||||
|
||||
XGetInputFocus(G_dpy, &focuswin, &focusrevert);
|
||||
XSetInputFocus(G_dpy, sc->searchwin,
|
||||
XGetInputFocus(X_Dpy, &focuswin, &focusrevert);
|
||||
XSetInputFocus(X_Dpy, sc->searchwin,
|
||||
RevertToPointerRoot, CurrentTime);
|
||||
|
||||
for (;;) {
|
||||
XMaskEvent(G_dpy, LabelMask, &e);
|
||||
XMaskEvent(X_Dpy, LabelMask, &e);
|
||||
|
||||
switch (e.type) {
|
||||
case KeyPress:
|
||||
@ -415,8 +415,8 @@ grab_label(struct client_ctx *cc)
|
||||
dx = font_width(font, dispstr, strlen(dispstr));
|
||||
dy = fontheight;
|
||||
|
||||
XClearWindow(G_dpy, sc->searchwin);
|
||||
XResizeWindow(G_dpy, sc->searchwin, dx, dy);
|
||||
XClearWindow(X_Dpy, sc->searchwin);
|
||||
XResizeWindow(X_Dpy, sc->searchwin, dx, dy);
|
||||
|
||||
font_draw(font, dispstr, strlen(dispstr),
|
||||
sc->searchwin, 0, font_ascent(font) + 1);
|
||||
@ -425,9 +425,9 @@ grab_label(struct client_ctx *cc)
|
||||
}
|
||||
|
||||
out:
|
||||
XSetInputFocus(G_dpy, focuswin,
|
||||
XSetInputFocus(X_Dpy, focuswin,
|
||||
focusrevert, CurrentTime);
|
||||
XUnmapWindow(G_dpy, sc->searchwin);
|
||||
XUnmapWindow(X_Dpy, sc->searchwin);
|
||||
}
|
||||
|
||||
#define ExecMask (KeyPressMask|ExposureMask)
|
||||
@ -452,16 +452,16 @@ grab_exec(void)
|
||||
dy = fontheight = font_ascent(font) + font_descent(font) + 1;
|
||||
dx = font_width(font, "exec>", 5);
|
||||
|
||||
XMoveResizeWindow(G_dpy, sc->searchwin, x, y, dx, dy);
|
||||
XSelectInput(G_dpy, sc->searchwin, ExecMask);
|
||||
XMapRaised(G_dpy, sc->searchwin);
|
||||
XMoveResizeWindow(X_Dpy, sc->searchwin, x, y, dx, dy);
|
||||
XSelectInput(X_Dpy, sc->searchwin, ExecMask);
|
||||
XMapRaised(X_Dpy, sc->searchwin);
|
||||
|
||||
XGetInputFocus(G_dpy, &focuswin, &focusrevert);
|
||||
XSetInputFocus(G_dpy, sc->searchwin,
|
||||
XGetInputFocus(X_Dpy, &focuswin, &focusrevert);
|
||||
XSetInputFocus(X_Dpy, sc->searchwin,
|
||||
RevertToPointerRoot, CurrentTime);
|
||||
|
||||
for (;;) {
|
||||
XMaskEvent(G_dpy, ExecMask, &e);
|
||||
XMaskEvent(X_Dpy, ExecMask, &e);
|
||||
|
||||
switch (e.type) {
|
||||
case KeyPress:
|
||||
@ -496,8 +496,8 @@ grab_exec(void)
|
||||
dx = font_width(font, dispstr, strlen(dispstr));
|
||||
dy = fontheight;
|
||||
|
||||
XClearWindow(G_dpy, sc->searchwin);
|
||||
XResizeWindow(G_dpy, sc->searchwin, dx, dy);
|
||||
XClearWindow(X_Dpy, sc->searchwin);
|
||||
XResizeWindow(X_Dpy, sc->searchwin, dx, dy);
|
||||
|
||||
font_draw(font, dispstr, strlen(dispstr),
|
||||
sc->searchwin, 0, font_ascent(font) + 1);
|
||||
@ -505,8 +505,8 @@ grab_exec(void)
|
||||
}
|
||||
}
|
||||
out:
|
||||
XSetInputFocus(G_dpy, focuswin, focusrevert, CurrentTime);
|
||||
XUnmapWindow(G_dpy, sc->searchwin);
|
||||
XSetInputFocus(X_Dpy, focuswin, focusrevert, CurrentTime);
|
||||
XUnmapWindow(X_Dpy, sc->searchwin);
|
||||
}
|
||||
|
||||
int
|
||||
|
150
app/cwm/group.c
150
app/cwm/group.c
@ -5,7 +5,7 @@
|
||||
* Copyright (c) 2004,2005 Marius Aamodt Eriksen <marius@monkey.org>
|
||||
* All rights reserved.
|
||||
*
|
||||
* $Id: group.c,v 1.1.1.1 2007/04/27 17:58:48 bernd Exp $
|
||||
* $Id: group.c,v 1.2 2007/05/28 18:34:27 jasper Exp $
|
||||
*/
|
||||
|
||||
#include "headers.h"
|
||||
@ -13,17 +13,17 @@
|
||||
|
||||
#define CALMWM_NGROUPS 9
|
||||
|
||||
int G_groupmode = 0;
|
||||
int G_groupnamemode = 0;
|
||||
struct group_ctx *G_group_active = NULL;
|
||||
struct group_ctx *G_group_current = NULL;
|
||||
struct group_ctx G_groups[CALMWM_NGROUPS];
|
||||
char G_group_name[256];
|
||||
int G_groupfocusset = 0;
|
||||
Window G_groupfocuswin;
|
||||
int G_groupfocusrevert;
|
||||
int G_grouphideall = 0;
|
||||
struct group_ctx_q G_groupq;
|
||||
int Groupmode = 0;
|
||||
int Groupnamemode = 0;
|
||||
struct group_ctx *Group_active = NULL;
|
||||
struct group_ctx *Group_current = NULL;
|
||||
struct group_ctx Groups[CALMWM_NGROUPS];
|
||||
char Group_name[256];
|
||||
int Groupfocusset = 0;
|
||||
Window Groupfocuswin;
|
||||
int Groupfocusrevert;
|
||||
int Grouphideall = 0;
|
||||
struct group_ctx_q Groupq;
|
||||
|
||||
#define GroupMask (KeyPressMask|ExposureMask)
|
||||
|
||||
@ -137,11 +137,11 @@ _group_show(struct group_ctx *gc)
|
||||
}
|
||||
}
|
||||
|
||||
XRestackWindows(G_dpy, winlist, gc->nhidden);
|
||||
XRestackWindows(X_Dpy, winlist, gc->nhidden);
|
||||
xfree(winlist);
|
||||
|
||||
gc->hidden = 0;
|
||||
G_group_active = gc;
|
||||
Group_active = gc;
|
||||
}
|
||||
|
||||
|
||||
@ -170,16 +170,16 @@ group_init(void)
|
||||
{
|
||||
int i;
|
||||
|
||||
TAILQ_INIT(&G_groupq);
|
||||
TAILQ_INIT(&Groupq);
|
||||
|
||||
for (i = 0; i < CALMWM_NGROUPS; i++) {
|
||||
TAILQ_INIT(&G_groups[i].clients);
|
||||
G_groups[i].hidden = 0;
|
||||
G_groups[i].shortcut = i + 1;
|
||||
TAILQ_INSERT_TAIL(&G_groupq, &G_groups[i], entry);
|
||||
TAILQ_INIT(&Groups[i].clients);
|
||||
Groups[i].hidden = 0;
|
||||
Groups[i].shortcut = i + 1;
|
||||
TAILQ_INSERT_TAIL(&Groupq, &Groups[i], entry);
|
||||
}
|
||||
|
||||
G_group_current = G_group_active = &G_groups[0];
|
||||
Group_current = Group_active = &Groups[0];
|
||||
}
|
||||
|
||||
/*
|
||||
@ -196,8 +196,8 @@ group_new(void)
|
||||
int i;
|
||||
|
||||
for (i=0; i < CALMWM_NGROUPS; i++) {
|
||||
if (TAILQ_EMPTY(&G_groups[i].clients)) {
|
||||
G_group_current = &G_groups[i];
|
||||
if (TAILQ_EMPTY(&Groups[i].clients)) {
|
||||
Group_current = &Groups[i];
|
||||
|
||||
return (0);
|
||||
}
|
||||
@ -211,7 +211,7 @@ group_new(void)
|
||||
int
|
||||
group_select(int idx)
|
||||
{
|
||||
struct group_ctx *gc = G_group_current;
|
||||
struct group_ctx *gc = Group_current;
|
||||
struct client_ctx *cc;
|
||||
|
||||
if (idx < 0 || idx >= CALMWM_NGROUPS)
|
||||
@ -223,7 +223,7 @@ group_select(int idx)
|
||||
}
|
||||
|
||||
_group_commit(gc);
|
||||
G_group_current = &G_groups[idx];
|
||||
Group_current = &Groups[idx];
|
||||
|
||||
group_display_draw(screen_current());
|
||||
return (0);
|
||||
@ -233,16 +233,16 @@ group_select(int idx)
|
||||
void
|
||||
group_enter(void)
|
||||
{
|
||||
if (G_groupmode != 0)
|
||||
if (Groupmode != 0)
|
||||
errx(1, "group_enter called twice");
|
||||
|
||||
if (G_group_current == NULL)
|
||||
G_group_current = &G_groups[0];
|
||||
if (Group_current == NULL)
|
||||
Group_current = &Groups[0];
|
||||
|
||||
/* setup input buffer */
|
||||
G_group_name[0] = '\0';
|
||||
Group_name[0] = '\0';
|
||||
|
||||
G_groupmode = 1;
|
||||
Groupmode = 1;
|
||||
|
||||
group_display_init(screen_current());
|
||||
group_display_draw(screen_current());
|
||||
@ -252,10 +252,10 @@ group_enter(void)
|
||||
void
|
||||
group_exit(int commit)
|
||||
{
|
||||
struct group_ctx *gc = G_group_current;
|
||||
struct group_ctx *gc = Group_current;
|
||||
struct client_ctx *cc;
|
||||
|
||||
if (G_groupmode != 1)
|
||||
if (Groupmode != 1)
|
||||
errx(1, "group_exit called twice");
|
||||
|
||||
TAILQ_FOREACH(cc, &gc->clients, group_entry) {
|
||||
@ -272,21 +272,21 @@ group_exit(int commit)
|
||||
_group_destroy(gc);
|
||||
}
|
||||
|
||||
XUnmapWindow(G_dpy, screen_current()->groupwin);
|
||||
XUnmapWindow(X_Dpy, screen_current()->groupwin);
|
||||
|
||||
if (G_groupnamemode) {
|
||||
XSetInputFocus(G_dpy, G_groupfocuswin, G_groupfocusrevert,
|
||||
if (Groupnamemode) {
|
||||
XSetInputFocus(X_Dpy, Groupfocuswin, Groupfocusrevert,
|
||||
CurrentTime);
|
||||
G_groupfocusset = 0;
|
||||
Groupfocusset = 0;
|
||||
}
|
||||
|
||||
G_groupmode = G_groupnamemode = 0;
|
||||
Groupmode = Groupnamemode = 0;
|
||||
}
|
||||
|
||||
void
|
||||
group_click(struct client_ctx *cc)
|
||||
{
|
||||
struct group_ctx *gc = G_group_current;
|
||||
struct group_ctx *gc = Group_current;
|
||||
|
||||
if (gc == cc->group)
|
||||
_group_remove(cc);
|
||||
@ -301,13 +301,13 @@ group_click(struct client_ctx *cc)
|
||||
void
|
||||
group_sticky(struct client_ctx *cc)
|
||||
{
|
||||
_group_add(G_group_active, cc);
|
||||
_group_add(Group_active, cc);
|
||||
}
|
||||
|
||||
void
|
||||
group_sticky_toggle_enter(struct client_ctx *cc)
|
||||
{
|
||||
struct group_ctx *gc = G_group_active;
|
||||
struct group_ctx *gc = Group_active;
|
||||
|
||||
if (gc == cc->group) {
|
||||
_group_remove(cc);
|
||||
@ -334,14 +334,14 @@ group_sticky_toggle_exit(struct client_ctx *cc)
|
||||
void
|
||||
group_display_init(struct screen_ctx *sc)
|
||||
{
|
||||
sc->groupwin = XCreateSimpleWindow(G_dpy, sc->rootwin, 0, 0,
|
||||
sc->groupwin = XCreateSimpleWindow(X_Dpy, sc->rootwin, 0, 0,
|
||||
1, 1, 1, sc->blackpixl, sc->whitepixl);
|
||||
}
|
||||
|
||||
void
|
||||
group_display_draw(struct screen_ctx *sc)
|
||||
{
|
||||
struct group_ctx *gc = G_group_current;
|
||||
struct group_ctx *gc = Group_current;
|
||||
int x, y, dx, dy, fontheight, titlelen;
|
||||
struct client_ctx *cc;
|
||||
char titlebuf[1024];
|
||||
@ -360,13 +360,13 @@ group_display_draw(struct screen_ctx *sc)
|
||||
client_draw_border(cc);
|
||||
}
|
||||
|
||||
XMoveResizeWindow(G_dpy, sc->groupwin, x, y, dx, dy);
|
||||
XMoveResizeWindow(X_Dpy, sc->groupwin, x, y, dx, dy);
|
||||
|
||||
/* XXX */
|
||||
XSelectInput(G_dpy, sc->groupwin, GroupMask);
|
||||
XSelectInput(X_Dpy, sc->groupwin, GroupMask);
|
||||
|
||||
XMapRaised(G_dpy, sc->groupwin);
|
||||
XClearWindow(G_dpy, sc->groupwin);
|
||||
XMapRaised(X_Dpy, sc->groupwin);
|
||||
XClearWindow(X_Dpy, sc->groupwin);
|
||||
font_draw(font, titlebuf, strlen(titlebuf), sc->groupwin,
|
||||
0, font_ascent(font) + 1);
|
||||
}
|
||||
@ -374,12 +374,12 @@ group_display_draw(struct screen_ctx *sc)
|
||||
void
|
||||
group_display_keypress(KeyCode k)
|
||||
{
|
||||
struct group_ctx * gc = G_group_current;
|
||||
struct group_ctx * gc = Group_current;
|
||||
char chr;
|
||||
enum ctltype ctl;
|
||||
int len;
|
||||
|
||||
if (!G_groupnamemode)
|
||||
if (!Groupnamemode)
|
||||
return;
|
||||
|
||||
if (input_keycodetrans(k, 0, &ctl, &chr, 1) < 0)
|
||||
@ -387,14 +387,14 @@ group_display_keypress(KeyCode k)
|
||||
|
||||
switch (ctl) {
|
||||
case CTL_ERASEONE:
|
||||
if ((len = strlen(G_group_name)) > 0)
|
||||
G_group_name[len - 1] = '\0';
|
||||
if ((len = strlen(Group_name)) > 0)
|
||||
Group_name[len - 1] = '\0';
|
||||
break;
|
||||
case CTL_RETURN:
|
||||
if (gc->name != NULL)
|
||||
xfree(gc->name);
|
||||
|
||||
gc->name = xstrdup(G_group_name);
|
||||
gc->name = xstrdup(Group_name);
|
||||
|
||||
group_exit(1);
|
||||
return;
|
||||
@ -403,8 +403,8 @@ group_display_keypress(KeyCode k)
|
||||
}
|
||||
|
||||
if (chr != '\0')
|
||||
snprintf(G_group_name, sizeof(G_group_name), "%s%c",
|
||||
G_group_name, chr);
|
||||
snprintf(Group_name, sizeof(Group_name), "%s%c",
|
||||
Group_name, chr);
|
||||
|
||||
out:
|
||||
group_display_draw(screen_current());
|
||||
@ -438,7 +438,7 @@ group_hidetoggle(int idx)
|
||||
if (idx < 0 || idx >= CALMWM_NGROUPS)
|
||||
err(1, "group_hidetoggle: index out of range (%d)", idx);
|
||||
|
||||
gc = &G_groups[idx];
|
||||
gc = &Groups[idx];
|
||||
|
||||
_group_fix_hidden_state(gc);
|
||||
|
||||
@ -447,7 +447,7 @@ group_hidetoggle(int idx)
|
||||
else {
|
||||
_group_hide(gc);
|
||||
if (TAILQ_EMPTY(&gc->clients))
|
||||
G_group_active = gc;
|
||||
Group_active = gc;
|
||||
}
|
||||
|
||||
#ifdef notyet
|
||||
@ -468,15 +468,15 @@ group_slide(int fwd)
|
||||
{
|
||||
struct group_ctx *gc, *showgroup = NULL;
|
||||
|
||||
assert(G_group_active != NULL);
|
||||
assert(Group_active != NULL);
|
||||
|
||||
gc = G_group_active;
|
||||
gc = Group_active;
|
||||
for (;;) {
|
||||
gc = GROUP_NEXT(gc, fwd);
|
||||
if (gc == NULL)
|
||||
gc = fwd ? TAILQ_FIRST(&G_groupq) :
|
||||
TAILQ_LAST(&G_groupq, group_ctx_q);
|
||||
if (gc == G_group_active)
|
||||
gc = fwd ? TAILQ_FIRST(&Groupq) :
|
||||
TAILQ_LAST(&Groupq, group_ctx_q);
|
||||
if (gc == Group_active)
|
||||
break;
|
||||
|
||||
if (!TAILQ_EMPTY(&gc->clients) && showgroup == NULL)
|
||||
@ -488,12 +488,12 @@ group_slide(int fwd)
|
||||
if (showgroup == NULL)
|
||||
return;
|
||||
|
||||
_group_hide(G_group_active);
|
||||
_group_hide(Group_active);
|
||||
|
||||
if (showgroup->hidden)
|
||||
_group_show(showgroup);
|
||||
else
|
||||
G_group_active = showgroup;
|
||||
Group_active = showgroup;
|
||||
}
|
||||
|
||||
/* called when a client is deleted */
|
||||
@ -519,7 +519,7 @@ group_menu(XButtonEvent *e)
|
||||
TAILQ_INIT(&menuq);
|
||||
|
||||
for (i = 0; i < CALMWM_NGROUPS; i++) {
|
||||
gc = &G_groups[i];
|
||||
gc = &Groups[i];
|
||||
|
||||
if (TAILQ_EMPTY(&gc->clients))
|
||||
continue;
|
||||
@ -563,7 +563,7 @@ group_menu(XButtonEvent *e)
|
||||
void
|
||||
group_namemode(void)
|
||||
{
|
||||
G_groupnamemode = 1;
|
||||
Groupnamemode = 1;
|
||||
|
||||
group_display_draw(screen_current());
|
||||
}
|
||||
@ -574,31 +574,31 @@ group_alltoggle(void)
|
||||
int i;
|
||||
|
||||
for (i=0; i < CALMWM_NGROUPS; i++) {
|
||||
if (G_grouphideall)
|
||||
_group_show(&G_groups[i]);
|
||||
if (Grouphideall)
|
||||
_group_show(&Groups[i]);
|
||||
else
|
||||
_group_hide(&G_groups[i]);
|
||||
_group_hide(&Groups[i]);
|
||||
}
|
||||
|
||||
if (G_grouphideall)
|
||||
G_grouphideall = 0;
|
||||
if (Grouphideall)
|
||||
Grouphideall = 0;
|
||||
else
|
||||
G_grouphideall = 1;
|
||||
Grouphideall = 1;
|
||||
}
|
||||
|
||||
void
|
||||
group_deletecurrent(void)
|
||||
{
|
||||
_group_destroy(G_group_current);
|
||||
XUnmapWindow(G_dpy, screen_current()->groupwin);
|
||||
_group_destroy(Group_current);
|
||||
XUnmapWindow(X_Dpy, screen_current()->groupwin);
|
||||
|
||||
G_groupmode = G_groupnamemode = 0;
|
||||
Groupmode = Groupnamemode = 0;
|
||||
}
|
||||
|
||||
void
|
||||
group_done(void)
|
||||
{
|
||||
struct group_ctx *gc = G_group_current;
|
||||
struct group_ctx *gc = Group_current;
|
||||
|
||||
if (gc->name != NULL)
|
||||
xfree(gc->name);
|
||||
@ -618,7 +618,7 @@ group_autogroup(struct client_ctx *cc)
|
||||
if (cc->app_class == NULL || cc->app_name == NULL)
|
||||
return;
|
||||
|
||||
TAILQ_FOREACH(aw, &G_conf.autogroupq, entry) {
|
||||
TAILQ_FOREACH(aw, &Conf.autogroupq, entry) {
|
||||
if (strcmp(aw->class, cc->app_class) == 0 &&
|
||||
(aw->name == NULL || strcmp(aw->name, cc->app_name) == 0)) {
|
||||
strlcpy(group, aw->group, sizeof(group));
|
||||
@ -626,7 +626,7 @@ group_autogroup(struct client_ctx *cc)
|
||||
}
|
||||
}
|
||||
|
||||
TAILQ_FOREACH(gc, &G_groupq, entry) {
|
||||
TAILQ_FOREACH(gc, &Groupq, entry) {
|
||||
if (strcmp(shortcut_to_name[gc->shortcut], group) == 0)
|
||||
_group_add(gc, cc);
|
||||
}
|
||||
|
@ -4,7 +4,7 @@
|
||||
* Copyright (c) 2004 Marius Aamodt Eriksen <marius@monkey.org>
|
||||
* All rights reserved.
|
||||
*
|
||||
* $Id: input.c,v 1.2 2007/04/27 18:10:39 bernd Exp $
|
||||
* $Id: input.c,v 1.3 2007/05/28 18:34:27 jasper Exp $
|
||||
*/
|
||||
|
||||
#include "headers.h"
|
||||
@ -20,9 +20,9 @@ input_keycodetrans(KeyCode kc, u_int state,
|
||||
*chr = '\0';
|
||||
|
||||
if (state & ShiftMask)
|
||||
ks = XKeycodeToKeysym(G_dpy, kc, 1);
|
||||
ks = XKeycodeToKeysym(X_Dpy, kc, 1);
|
||||
else
|
||||
ks = XKeycodeToKeysym(G_dpy, kc, 0);
|
||||
ks = XKeycodeToKeysym(X_Dpy, kc, 0);
|
||||
|
||||
/* Look for control characters. */
|
||||
switch (ks) {
|
||||
|
@ -4,7 +4,7 @@
|
||||
* Copyright (c) 2004 Martin Murray <mmurray@monkey.org>
|
||||
* All rights reserved.
|
||||
*
|
||||
* $Id: kbfunc.c,v 1.2 2007/04/27 18:08:14 bernd Exp $
|
||||
* $Id: kbfunc.c,v 1.3 2007/05/28 18:34:27 jasper Exp $
|
||||
*/
|
||||
|
||||
#include "headers.h"
|
||||
@ -31,7 +31,7 @@ kbfunc_client_search(struct client_ctx *scratch, void *arg)
|
||||
|
||||
TAILQ_INIT(&menuq);
|
||||
|
||||
TAILQ_FOREACH(cc, &G_clientq, entry) {
|
||||
TAILQ_FOREACH(cc, &Clientq, entry) {
|
||||
struct menu *mi;
|
||||
XCALLOC(mi, struct menu);
|
||||
strlcpy(mi->text, cc->name, sizeof(mi->text));
|
||||
@ -66,8 +66,8 @@ kbfunc_menu_search(struct client_ctx *scratch, void *arg)
|
||||
|
||||
TAILQ_INIT(&menuq);
|
||||
|
||||
conf_cmd_refresh(&G_conf);
|
||||
TAILQ_FOREACH(cmd, &G_conf.cmdq, entry) {
|
||||
conf_cmd_refresh(&Conf);
|
||||
TAILQ_FOREACH(cmd, &Conf.cmdq, entry) {
|
||||
XCALLOC(mi, struct menu);
|
||||
strlcpy(mi->text, cmd->label, sizeof(mi->text));
|
||||
mi->ctx = cmd;
|
||||
@ -111,15 +111,15 @@ kbfunc_cmdexec(struct client_ctx *cc, void *arg)
|
||||
void
|
||||
kbfunc_term(struct client_ctx *cc, void *arg)
|
||||
{
|
||||
conf_cmd_refresh(&G_conf);
|
||||
u_spawn(G_conf.termpath);
|
||||
conf_cmd_refresh(&Conf);
|
||||
u_spawn(Conf.termpath);
|
||||
}
|
||||
|
||||
void
|
||||
kbfunc_lock(struct client_ctx *cc, void *arg)
|
||||
{
|
||||
conf_cmd_refresh(&G_conf);
|
||||
u_spawn(G_conf.lockpath);
|
||||
conf_cmd_refresh(&Conf);
|
||||
u_spawn(Conf.lockpath);
|
||||
}
|
||||
|
||||
void
|
||||
@ -143,7 +143,7 @@ kbfunc_client_delete(struct client_ctx *cc, void *arg)
|
||||
void
|
||||
kbfunc_client_groupselect(struct client_ctx *cc, void *arg)
|
||||
{
|
||||
if (G_groupmode)
|
||||
if (Groupmode)
|
||||
group_done();
|
||||
else
|
||||
group_enter();
|
||||
@ -152,7 +152,7 @@ kbfunc_client_groupselect(struct client_ctx *cc, void *arg)
|
||||
void
|
||||
kbfunc_client_group(struct client_ctx *cc, void *arg)
|
||||
{
|
||||
if (G_groupmode)
|
||||
if (Groupmode)
|
||||
group_select(KBTOGROUP((int)arg));
|
||||
else
|
||||
group_hidetoggle(KBTOGROUP((int)arg));
|
||||
@ -173,7 +173,7 @@ kbfunc_client_prevgroup(struct client_ctx *cc, void *arg)
|
||||
void
|
||||
kbfunc_client_nogroup(struct client_ctx *cc, void *arg)
|
||||
{
|
||||
if (G_groupmode)
|
||||
if (Groupmode)
|
||||
group_deletecurrent();
|
||||
else
|
||||
group_alltoggle();
|
||||
|
@ -4,20 +4,20 @@
|
||||
* Copyright (c) 2004 Marius Aamodt Eriksen <marius@monkey.org>
|
||||
* All rights reserved.
|
||||
*
|
||||
* $Id: screen.c,v 1.1.1.1 2007/04/27 17:58:48 bernd Exp $
|
||||
* $Id: screen.c,v 1.2 2007/05/28 18:34:27 jasper Exp $
|
||||
*/
|
||||
|
||||
#include "headers.h"
|
||||
#include "calmwm.h"
|
||||
|
||||
extern struct screen_ctx_q G_screenq;
|
||||
extern struct screen_ctx *G_curscreen;
|
||||
extern struct screen_ctx_q Screenq;
|
||||
extern struct screen_ctx *Curscreen;
|
||||
|
||||
static void
|
||||
_clearwindow_cb(int sig)
|
||||
{
|
||||
struct screen_ctx *sc = screen_current();
|
||||
XUnmapWindow(G_dpy, sc->infowin);
|
||||
XUnmapWindow(X_Dpy, sc->infowin);
|
||||
}
|
||||
|
||||
struct screen_ctx *
|
||||
@ -25,18 +25,18 @@ screen_fromroot(Window rootwin)
|
||||
{
|
||||
struct screen_ctx *sc;
|
||||
|
||||
TAILQ_FOREACH(sc, &G_screenq, entry)
|
||||
TAILQ_FOREACH(sc, &Screenq, entry)
|
||||
if (sc->rootwin == rootwin)
|
||||
return (sc);
|
||||
|
||||
/* XXX FAIL HERE */
|
||||
return (TAILQ_FIRST(&G_screenq));
|
||||
return (TAILQ_FIRST(&Screenq));
|
||||
}
|
||||
|
||||
struct screen_ctx *
|
||||
screen_current(void)
|
||||
{
|
||||
return (G_curscreen);
|
||||
return (Curscreen);
|
||||
}
|
||||
|
||||
void
|
||||
@ -47,7 +47,7 @@ screen_updatestackingorder(void)
|
||||
u_int nwins, i, s;
|
||||
struct client_ctx *cc;
|
||||
|
||||
if (!XQueryTree(G_dpy, sc->rootwin, &w0, &w1, &wins, &nwins))
|
||||
if (!XQueryTree(X_Dpy, sc->rootwin, &w0, &w1, &wins, &nwins))
|
||||
return;
|
||||
|
||||
for (s = 0, i = 0; i < nwins; i++) {
|
||||
@ -70,7 +70,7 @@ screen_init(void)
|
||||
|
||||
sc->cycle_client = NULL;
|
||||
|
||||
sc->infowin = XCreateSimpleWindow(G_dpy, sc->rootwin, 0, 0,
|
||||
sc->infowin = XCreateSimpleWindow(X_Dpy, sc->rootwin, 0, 0,
|
||||
1, 1, 1, sc->blackpixl, sc->whitepixl);
|
||||
|
||||
/* XXX - marius. */
|
||||
@ -86,15 +86,15 @@ screen_infomsg(char *msg)
|
||||
int dy, dx;
|
||||
struct fontdesc *font = DefaultFont;
|
||||
|
||||
XUnmapWindow(G_dpy, sc->infowin);
|
||||
XUnmapWindow(X_Dpy, sc->infowin);
|
||||
alarm(0);
|
||||
|
||||
snprintf(buf, sizeof(buf), ">%s", msg);
|
||||
dy = font_ascent(font) + font_descent(font) + 1;
|
||||
dx = font_width(font, buf, strlen(buf));
|
||||
|
||||
XMoveResizeWindow(G_dpy, sc->infowin, 0, 0, dx, dy);
|
||||
XMapRaised(G_dpy, sc->infowin);
|
||||
XMoveResizeWindow(X_Dpy, sc->infowin, 0, 0, dx, dy);
|
||||
XMapRaised(X_Dpy, sc->infowin);
|
||||
|
||||
font_draw(font, buf, strlen(buf), sc->infowin,
|
||||
0, font_ascent(font) + 1);
|
||||
|
@ -4,7 +4,7 @@
|
||||
* Copyright (c) 2004 Marius Aamodt Eriksen <marius@monkey.org>
|
||||
* All rights reserved.
|
||||
*
|
||||
* $Id: search.c,v 1.1.1.1 2007/04/27 17:58:48 bernd Exp $
|
||||
* $Id: search.c,v 1.2 2007/05/28 18:34:27 jasper Exp $
|
||||
*/
|
||||
|
||||
#include "headers.h"
|
||||
@ -17,7 +17,7 @@ static int _strsubmatch(char *, char *);
|
||||
void
|
||||
search_init(struct screen_ctx *sc)
|
||||
{
|
||||
sc->searchwin = XCreateSimpleWindow(G_dpy, sc->rootwin, 0, 0,
|
||||
sc->searchwin = XCreateSimpleWindow(X_Dpy, sc->rootwin, 0, 0,
|
||||
1, 1, 1, sc->blackpixl, sc->whitepixl);
|
||||
}
|
||||
|
||||
@ -63,8 +63,8 @@ search_start(struct menu_q *menuq,
|
||||
|
||||
TAILQ_INIT(&resultq);
|
||||
|
||||
xmax = DisplayWidth(G_dpy, sc->which);
|
||||
ymax = DisplayHeight(G_dpy, sc->which);
|
||||
xmax = DisplayWidth(X_Dpy, sc->which);
|
||||
ymax = DisplayHeight(X_Dpy, sc->which);
|
||||
|
||||
xu_ptr_getpos(sc->rootwin, &x, &y);
|
||||
|
||||
@ -75,27 +75,27 @@ search_start(struct menu_q *menuq,
|
||||
snprintf(dispstr, sizeof(dispstr), "%s%c", promptstr, endchar);
|
||||
dx = font_width(font, dispstr, strlen(dispstr));
|
||||
|
||||
XMoveResizeWindow(G_dpy, sc->searchwin, x, y, dx, dy);
|
||||
XSelectInput(G_dpy, sc->searchwin, SearchMask);
|
||||
XMapRaised(G_dpy, sc->searchwin);
|
||||
XMoveResizeWindow(X_Dpy, sc->searchwin, x, y, dx, dy);
|
||||
XSelectInput(X_Dpy, sc->searchwin, SearchMask);
|
||||
XMapRaised(X_Dpy, sc->searchwin);
|
||||
|
||||
/*
|
||||
* TODO: eventually, the mouse should be able to select
|
||||
* results as well. Right now we grab it only to set a fancy
|
||||
* cursor.
|
||||
*/
|
||||
if (xu_ptr_grab(sc->searchwin, 0, G_cursor_question) < 0) {
|
||||
XUnmapWindow(G_dpy, sc->searchwin);
|
||||
if (xu_ptr_grab(sc->searchwin, 0, Cursor_question) < 0) {
|
||||
XUnmapWindow(X_Dpy, sc->searchwin);
|
||||
return (NULL);
|
||||
}
|
||||
|
||||
XGetInputFocus(G_dpy, &focuswin, &focusrevert);
|
||||
XSetInputFocus(G_dpy, sc->searchwin, RevertToPointerRoot, CurrentTime);
|
||||
XGetInputFocus(X_Dpy, &focuswin, &focusrevert);
|
||||
XSetInputFocus(X_Dpy, sc->searchwin, RevertToPointerRoot, CurrentTime);
|
||||
|
||||
for (;;) {
|
||||
added = mutated = 0;
|
||||
|
||||
XMaskEvent(G_dpy, SearchMask, &e);
|
||||
XMaskEvent(X_Dpy, SearchMask, &e);
|
||||
|
||||
switch (e.type) {
|
||||
case KeyPress:
|
||||
@ -239,8 +239,8 @@ search_start(struct menu_q *menuq,
|
||||
if (warp)
|
||||
xu_ptr_setpos(sc->rootwin, x, y);
|
||||
|
||||
XClearWindow(G_dpy, sc->searchwin);
|
||||
XMoveResizeWindow(G_dpy, sc->searchwin, x, y, dx, dy);
|
||||
XClearWindow(X_Dpy, sc->searchwin);
|
||||
XMoveResizeWindow(X_Dpy, sc->searchwin, x, y, dx, dy);
|
||||
|
||||
font_draw(font, dispstr, strlen(dispstr), sc->searchwin,
|
||||
0, font_ascent(font) + 1);
|
||||
@ -258,11 +258,11 @@ search_start(struct menu_q *menuq,
|
||||
}
|
||||
|
||||
if (n > 1)
|
||||
XFillRectangle(G_dpy, sc->searchwin, sc->gc,
|
||||
XFillRectangle(X_Dpy, sc->searchwin, sc->gc,
|
||||
0, fontheight, dx, fontheight);
|
||||
|
||||
if (beobnoxious)
|
||||
XFillRectangle(G_dpy, sc->searchwin, sc->gc,
|
||||
XFillRectangle(X_Dpy, sc->searchwin, sc->gc,
|
||||
0, 0, dx, fontheight);
|
||||
|
||||
break;
|
||||
@ -272,9 +272,9 @@ search_start(struct menu_q *menuq,
|
||||
out:
|
||||
/* (if no match) */
|
||||
xu_ptr_ungrab();
|
||||
XSetInputFocus(G_dpy, focuswin, focusrevert, CurrentTime);
|
||||
XSetInputFocus(X_Dpy, focuswin, focusrevert, CurrentTime);
|
||||
found:
|
||||
XUnmapWindow(G_dpy, sc->searchwin);
|
||||
XUnmapWindow(X_Dpy, sc->searchwin);
|
||||
|
||||
return (mi);
|
||||
}
|
||||
|
@ -4,7 +4,7 @@
|
||||
* Copyright (c) 2004 Marius Aamodt Eriksen <marius@monkey.org>
|
||||
* All rights reserved.
|
||||
*
|
||||
* $Id: xevents.c,v 1.1.1.1 2007/04/27 17:58:48 bernd Exp $
|
||||
* $Id: xevents.c,v 1.2 2007/05/28 18:34:27 jasper Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -38,7 +38,7 @@ xev_handle_maprequest(struct xevent *xev, XEvent *ee)
|
||||
client_ptrsave(old_cc);
|
||||
|
||||
if ((cc = client_find(e->window)) == NULL) {
|
||||
XGetWindowAttributes(G_dpy, e->window, &xattr);
|
||||
XGetWindowAttributes(X_Dpy, e->window, &xattr);
|
||||
cc = client_new(e->window, screen_fromroot(xattr.root), 1);
|
||||
sc = CCTOSC(cc);
|
||||
} else {
|
||||
@ -113,11 +113,11 @@ xev_handle_configurerequest(struct xevent *xev, XEvent *ee)
|
||||
cc->geom.y = e->y;
|
||||
|
||||
if (cc->geom.x == 0 &&
|
||||
cc->geom.width >= DisplayWidth(G_dpy, sc->which))
|
||||
cc->geom.width >= DisplayWidth(X_Dpy, sc->which))
|
||||
cc->geom.x -= cc->bwidth;
|
||||
|
||||
if (cc->geom.y == 0 &&
|
||||
cc->geom.height >= DisplayHeight(G_dpy, sc->which))
|
||||
cc->geom.height >= DisplayHeight(X_Dpy, sc->which))
|
||||
cc->geom.y -= cc->bwidth;
|
||||
|
||||
client_gravitate(cc, 1);
|
||||
@ -129,7 +129,7 @@ xev_handle_configurerequest(struct xevent *xev, XEvent *ee)
|
||||
wc.border_width = 0;
|
||||
|
||||
/* We need to move the parent window, too. */
|
||||
XConfigureWindow(G_dpy, cc->pwin, e->value_mask, &wc);
|
||||
XConfigureWindow(X_Dpy, cc->pwin, e->value_mask, &wc);
|
||||
xev_reconfig(cc);
|
||||
}
|
||||
|
||||
@ -142,7 +142,7 @@ xev_handle_configurerequest(struct xevent *xev, XEvent *ee)
|
||||
e->value_mask &= ~CWStackMode;
|
||||
e->value_mask |= CWBorderWidth;
|
||||
|
||||
XConfigureWindow(G_dpy, e->window, e->value_mask, &wc);
|
||||
XConfigureWindow(X_Dpy, e->window, e->value_mask, &wc);
|
||||
|
||||
xev_register(xev);
|
||||
}
|
||||
@ -157,7 +157,7 @@ xev_handle_propertynotify(struct xevent *xev, XEvent *ee)
|
||||
if ((cc = client_find(e->window)) != NULL) {
|
||||
switch(e->atom) {
|
||||
case XA_WM_NORMAL_HINTS:
|
||||
XGetWMNormalHints(G_dpy, cc->win, cc->size, &tmp);
|
||||
XGetWMNormalHints(X_Dpy, cc->win, cc->size, &tmp);
|
||||
break;
|
||||
case XA_WM_NAME:
|
||||
client_setname(cc);
|
||||
@ -187,7 +187,7 @@ xev_reconfig(struct client_ctx *cc)
|
||||
ce.above = None;
|
||||
ce.override_redirect = 0;
|
||||
|
||||
XSendEvent(G_dpy, cc->win, False, StructureNotifyMask, (XEvent *)&ce);
|
||||
XSendEvent(X_Dpy, cc->win, False, StructureNotifyMask, (XEvent *)&ce);
|
||||
}
|
||||
|
||||
void
|
||||
@ -246,7 +246,7 @@ xev_handle_buttonpress(struct xevent *xev, XEvent *ee)
|
||||
|
||||
switch (e->button) {
|
||||
case Button1:
|
||||
TAILQ_FOREACH(cc, &G_clientq, entry) {
|
||||
TAILQ_FOREACH(cc, &Clientq, entry) {
|
||||
if (cc->flags & CLIENT_HIDDEN) {
|
||||
if (cc->label != NULL)
|
||||
wname = cc->label;
|
||||
@ -266,11 +266,11 @@ xev_handle_buttonpress(struct xevent *xev, XEvent *ee)
|
||||
break;
|
||||
case Button3: {
|
||||
struct cmd *cmd;
|
||||
if (conf_cmd_changed(G_conf.menu_path)) {
|
||||
conf_cmd_clear(&G_conf);
|
||||
conf_cmd_populate(&G_conf, G_conf.menu_path);
|
||||
if (conf_cmd_changed(Conf.menu_path)) {
|
||||
conf_cmd_clear(&Conf);
|
||||
conf_cmd_populate(&Conf, Conf.menu_path);
|
||||
}
|
||||
TAILQ_FOREACH(cmd, &G_conf.cmdq, entry) {
|
||||
TAILQ_FOREACH(cmd, &Conf.cmdq, entry) {
|
||||
XCALLOC(mi, struct menu);
|
||||
strlcpy(mi->text, cmd->label, sizeof(mi->text));
|
||||
mi->ctx = cmd;
|
||||
@ -321,7 +321,7 @@ xev_handle_buttonpress(struct xevent *xev, XEvent *ee)
|
||||
|
||||
switch (e->button) {
|
||||
case Button1:
|
||||
if (altcontrol && !G_groupmode)
|
||||
if (altcontrol && !Groupmode)
|
||||
group_sticky_toggle_enter(cc);
|
||||
else {
|
||||
grab_drag(cc);
|
||||
@ -330,7 +330,7 @@ xev_handle_buttonpress(struct xevent *xev, XEvent *ee)
|
||||
break;
|
||||
case Button2:
|
||||
/* XXXSIGH!!! */
|
||||
if (G_groupmode)
|
||||
if (Groupmode)
|
||||
group_click(cc);
|
||||
else {
|
||||
grab_sweep(cc);
|
||||
@ -351,7 +351,7 @@ xev_handle_buttonrelease(struct xevent *xev, XEvent *ee)
|
||||
{
|
||||
struct client_ctx *cc = client_current();
|
||||
|
||||
if (cc != NULL && !G_groupmode)
|
||||
if (cc != NULL && !Groupmode)
|
||||
group_sticky_toggle_exit(cc);
|
||||
|
||||
xev_register(xev);
|
||||
@ -367,10 +367,10 @@ xev_handle_keypress(struct xevent *xev, XEvent *ee)
|
||||
KeySym keysym, skeysym;
|
||||
int modshift;
|
||||
|
||||
keysym = XKeycodeToKeysym(G_dpy, e->keycode, 0);
|
||||
skeysym = XKeycodeToKeysym(G_dpy, e->keycode, 1);
|
||||
keysym = XKeycodeToKeysym(X_Dpy, e->keycode, 0);
|
||||
skeysym = XKeycodeToKeysym(X_Dpy, e->keycode, 1);
|
||||
|
||||
TAILQ_FOREACH(kb, &G_conf.keybindingq, entry) {
|
||||
TAILQ_FOREACH(kb, &Conf.keybindingq, entry) {
|
||||
if (keysym != kb->keysym && skeysym == kb->keysym)
|
||||
modshift = ShiftMask;
|
||||
else
|
||||
@ -413,7 +413,7 @@ xev_handle_keyrelease(struct xevent *xev, XEvent *ee)
|
||||
struct screen_ctx *sc = screen_fromroot(e->root);
|
||||
int keysym;
|
||||
|
||||
keysym = XKeycodeToKeysym(G_dpy, e->keycode, 0);
|
||||
keysym = XKeycodeToKeysym(X_Dpy, e->keycode, 0);
|
||||
if (keysym != XK_Alt_L && keysym != XK_Alt_R)
|
||||
goto out;
|
||||
|
||||
@ -435,7 +435,7 @@ xev_handle_clientmessage(struct xevent *xev, XEvent *ee)
|
||||
{
|
||||
XClientMessageEvent *e = &ee->xclient;
|
||||
struct client_ctx *cc = client_find(e->window);
|
||||
Atom xa_wm_change_state = XInternAtom(G_dpy, "WM_CHANGE_STATE", False);
|
||||
Atom xa_wm_change_state = XInternAtom(X_Dpy, "WM_CHANGE_STATE", False);
|
||||
|
||||
if (cc == NULL)
|
||||
goto out;
|
||||
@ -536,7 +536,7 @@ xev_loop(void)
|
||||
errx(1, "X event queue empty");
|
||||
#endif
|
||||
|
||||
XNextEvent(G_dpy, &e);
|
||||
XNextEvent(X_Dpy, &e);
|
||||
type = e.type;
|
||||
|
||||
win = root = 0;
|
||||
|
@ -4,7 +4,7 @@
|
||||
* Copyright (c) 2004 Marius Aamodt Eriksen <marius@monkey.org>
|
||||
* All rights reserved.
|
||||
*
|
||||
* $Id: xutil.c,v 1.1.1.1 2007/04/27 17:58:48 bernd Exp $
|
||||
* $Id: xutil.c,v 1.2 2007/05/28 18:34:27 jasper Exp $
|
||||
*/
|
||||
|
||||
#include "headers.h"
|
||||
@ -13,7 +13,7 @@
|
||||
int
|
||||
xu_ptr_grab(Window win, int mask, Cursor curs)
|
||||
{
|
||||
return (XGrabPointer(G_dpy, win, False, mask,
|
||||
return (XGrabPointer(X_Dpy, win, False, mask,
|
||||
GrabModeAsync, GrabModeAsync,
|
||||
None, curs, CurrentTime) == GrabSuccess ? 0 : -1);
|
||||
}
|
||||
@ -21,20 +21,20 @@ xu_ptr_grab(Window win, int mask, Cursor curs)
|
||||
int
|
||||
xu_ptr_regrab(int mask, Cursor curs)
|
||||
{
|
||||
return (XChangeActivePointerGrab(G_dpy, mask,
|
||||
return (XChangeActivePointerGrab(X_Dpy, mask,
|
||||
curs, CurrentTime) == GrabSuccess ? 0 : -1);
|
||||
}
|
||||
|
||||
void
|
||||
xu_ptr_ungrab(void)
|
||||
{
|
||||
XUngrabPointer(G_dpy, CurrentTime);
|
||||
XUngrabPointer(X_Dpy, CurrentTime);
|
||||
}
|
||||
|
||||
int
|
||||
xu_btn_grab(Window win, int mask, u_int btn)
|
||||
{
|
||||
return (XGrabButton(G_dpy, btn, mask, win,
|
||||
return (XGrabButton(X_Dpy, btn, mask, win,
|
||||
False, ButtonMask, GrabModeAsync,
|
||||
GrabModeSync, None, None) == GrabSuccess ? 0 : -1);
|
||||
}
|
||||
@ -42,7 +42,7 @@ xu_btn_grab(Window win, int mask, u_int btn)
|
||||
void
|
||||
xu_btn_ungrab(Window win, int mask, u_int btn)
|
||||
{
|
||||
XUngrabButton(G_dpy, btn, mask, win);
|
||||
XUngrabButton(X_Dpy, btn, mask, win);
|
||||
}
|
||||
|
||||
void
|
||||
@ -52,13 +52,13 @@ xu_ptr_getpos(Window rootwin, int *x, int *y)
|
||||
u_int tmp2;
|
||||
Window w0, w1;
|
||||
|
||||
XQueryPointer(G_dpy, rootwin, &w0, &w1, &tmp0, &tmp1, x, y, &tmp2);
|
||||
XQueryPointer(X_Dpy, rootwin, &w0, &w1, &tmp0, &tmp1, x, y, &tmp2);
|
||||
}
|
||||
|
||||
void
|
||||
xu_ptr_setpos(Window win, int x, int y)
|
||||
{
|
||||
XWarpPointer(G_dpy, None, win, 0, 0, 0, 0, x, y);
|
||||
XWarpPointer(X_Dpy, None, win, 0, 0, 0, 0, x, y);
|
||||
}
|
||||
|
||||
void
|
||||
@ -66,15 +66,15 @@ xu_key_grab(Window win, int mask, int keysym)
|
||||
{
|
||||
KeyCode code;
|
||||
|
||||
code = XKeysymToKeycode(G_dpy, keysym);
|
||||
if ((XKeycodeToKeysym(G_dpy, code, 0) != keysym) &&
|
||||
(XKeycodeToKeysym(G_dpy, code, 1) == keysym))
|
||||
code = XKeysymToKeycode(X_Dpy, keysym);
|
||||
if ((XKeycodeToKeysym(X_Dpy, code, 0) != keysym) &&
|
||||
(XKeycodeToKeysym(X_Dpy, code, 1) == keysym))
|
||||
mask |= ShiftMask;
|
||||
|
||||
XGrabKey(G_dpy, XKeysymToKeycode(G_dpy, keysym), mask, win, True,
|
||||
XGrabKey(X_Dpy, XKeysymToKeycode(X_Dpy, keysym), mask, win, True,
|
||||
GrabModeAsync, GrabModeAsync);
|
||||
#if 0
|
||||
XGrabKey(G_dpy, XKeysymToKeycode(G_dpy, keysym), LockMask|mask,
|
||||
XGrabKey(X_Dpy, XKeysymToKeycode(X_Dpy, keysym), LockMask|mask,
|
||||
win, True, GrabModeAsync, GrabModeAsync);
|
||||
#endif
|
||||
}
|
||||
@ -82,7 +82,7 @@ xu_key_grab(Window win, int mask, int keysym)
|
||||
void
|
||||
xu_key_grab_keycode(Window win, int mask, int keycode)
|
||||
{
|
||||
XGrabKey(G_dpy, keycode, mask, win, True, GrabModeAsync, GrabModeAsync);
|
||||
XGrabKey(X_Dpy, keycode, mask, win, True, GrabModeAsync, GrabModeAsync);
|
||||
}
|
||||
|
||||
void
|
||||
@ -98,7 +98,7 @@ xu_sendmsg(struct client_ctx *cc, Atom atm, long val)
|
||||
e.xclient.data.l[0] = val;
|
||||
e.xclient.data.l[1] = CurrentTime;
|
||||
|
||||
XSendEvent(G_dpy, cc->win, False, 0, &e);
|
||||
XSendEvent(X_Dpy, cc->win, False, 0, &e);
|
||||
}
|
||||
|
||||
int
|
||||
@ -108,7 +108,7 @@ xu_getprop(struct client_ctx *cc, Atom atm, Atom type, long len, u_char **p)
|
||||
u_long n, extra;
|
||||
int format;
|
||||
|
||||
if (XGetWindowProperty(G_dpy, cc->win, atm, 0L, len, False, type,
|
||||
if (XGetWindowProperty(X_Dpy, cc->win, atm, 0L, len, False, type,
|
||||
&realtype, &format, &n, &extra, p) != Success || *p == NULL)
|
||||
return (-1);
|
||||
|
||||
@ -121,7 +121,7 @@ xu_getprop(struct client_ctx *cc, Atom atm, Atom type, long len, u_char **p)
|
||||
int
|
||||
xu_getstate(struct client_ctx *cc, int *state)
|
||||
{
|
||||
Atom wm_state = XInternAtom(G_dpy, "WM_STATE", False);
|
||||
Atom wm_state = XInternAtom(X_Dpy, "WM_STATE", False);
|
||||
long *p = NULL;
|
||||
|
||||
if (xu_getprop(cc, wm_state, wm_state, 2L, (u_char **)&p) <= 0)
|
||||
@ -151,12 +151,12 @@ xu_setstate(struct client_ctx *cc, int state)
|
||||
Atom wm_state;
|
||||
|
||||
/* XXX cache */
|
||||
wm_state = XInternAtom(G_dpy, "WM_STATE", False);
|
||||
wm_state = XInternAtom(X_Dpy, "WM_STATE", False);
|
||||
|
||||
dat[0] = (long)state;
|
||||
dat[1] = (long)None;
|
||||
|
||||
cc->state = state;
|
||||
XChangeProperty(G_dpy, cc->win, wm_state, wm_state, 32,
|
||||
XChangeProperty(X_Dpy, cc->win, wm_state, wm_state, 32,
|
||||
PropModeReplace, (unsigned char *)dat, 2);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user