aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--calmwm.h10
-rw-r--r--client.c12
2 files changed, 9 insertions, 13 deletions
diff --git a/calmwm.h b/calmwm.h
index 741bf8a..9d7d722 100644
--- a/calmwm.h
+++ b/calmwm.h
@@ -15,7 +15,7 @@
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*
- * $OpenBSD: calmwm.h,v 1.226 2013/11/02 19:13:56 okan Exp $
+ * $OpenBSD: calmwm.h,v 1.227 2013/11/08 17:35:12 okan Exp $
*/
#ifndef _CALMWM_H_
@@ -126,11 +126,6 @@ struct winname {
};
TAILQ_HEAD(winname_q, winname);
-enum wm_protocols {
- _WM_DELETE_WINDOW = 0x0001,
- _WM_TAKE_FOCUS = 0x0002,
-};
-
struct client_ctx {
TAILQ_ENTRY(client_ctx) entry;
TAILQ_ENTRY(client_ctx) group_entry;
@@ -157,7 +152,6 @@ struct client_ctx {
int x; /* x position */
int y; /* y position */
} ptr;
- enum wm_protocols xproto;
#define CLIENT_HIDDEN 0x0001
#define CLIENT_IGNORE 0x0002
#define CLIENT_VMAXIMIZED 0x0004
@@ -166,6 +160,8 @@ struct client_ctx {
#define CLIENT_GROUP 0x0020
#define CLIENT_UNGROUP 0x0040
#define CLIENT_INPUT 0x0080
+#define CLIENT_WM_DELETE_WINDOW 0x0100
+#define CLIENT_WM_TAKE_FOCUS 0x0200
#define CLIENT_HIGHLIGHT (CLIENT_GROUP | CLIENT_UNGROUP)
#define CLIENT_MAXFLAGS (CLIENT_VMAXIMIZED | CLIENT_HMAXIMIZED)
diff --git a/client.c b/client.c
index 20d9d6a..1f2b2a4 100644
--- a/client.c
+++ b/client.c
@@ -15,7 +15,7 @@
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*
- * $OpenBSD: client.c,v 1.146 2013/11/05 00:55:42 okan Exp $
+ * $OpenBSD: client.c,v 1.147 2013/11/08 17:35:12 okan Exp $
*/
#include <sys/param.h>
@@ -212,11 +212,11 @@ client_setactive(struct client_ctx *cc, int fg)
if (fg) {
XInstallColormap(X_Dpy, cc->colormap);
if ((cc->flags & CLIENT_INPUT) ||
- ((cc->xproto & _WM_TAKE_FOCUS) == 0)) {
+ ((cc->flags & CLIENT_WM_TAKE_FOCUS) == 0)) {
XSetInputFocus(X_Dpy, cc->win,
RevertToPointerRoot, CurrentTime);
}
- if (cc->xproto & _WM_TAKE_FOCUS)
+ if (cc->flags & CLIENT_WM_TAKE_FOCUS)
client_msg(cc, cwmh[WM_TAKE_FOCUS]);
conf_grab_mouse(cc->win);
/*
@@ -532,9 +532,9 @@ client_wm_protocols(struct client_ctx *cc)
if (XGetWMProtocols(X_Dpy, cc->win, &p, &j)) {
for (i = 0; i < j; i++) {
if (p[i] == cwmh[WM_DELETE_WINDOW])
- cc->xproto |= _WM_DELETE_WINDOW;
+ cc->flags |= CLIENT_WM_DELETE_WINDOW;
else if (p[i] == cwmh[WM_TAKE_FOCUS])
- cc->xproto |= _WM_TAKE_FOCUS;
+ cc->flags |= CLIENT_WM_TAKE_FOCUS;
}
XFree(p);
}
@@ -559,7 +559,7 @@ client_msg(struct client_ctx *cc, Atom proto)
void
client_send_delete(struct client_ctx *cc)
{
- if (cc->xproto & _WM_DELETE_WINDOW)
+ if (cc->flags & CLIENT_WM_DELETE_WINDOW)
client_msg(cc, cwmh[WM_DELETE_WINDOW]);
else
XKillClient(X_Dpy, cc->win);