treat WM_CHANGE_STATE like other atoms

This commit is contained in:
okan 2013-05-19 17:03:55 +00:00
parent f67063c034
commit e8ab9bac94
3 changed files with 7 additions and 8 deletions

View File

@ -15,7 +15,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.
* *
* $OpenBSD: calmwm.h,v 1.200 2013/05/19 17:02:04 okan Exp $ * $OpenBSD: calmwm.h,v 1.201 2013/05/19 17:03:55 okan Exp $
*/ */
#ifndef _CALMWM_H_ #ifndef _CALMWM_H_
@ -527,6 +527,7 @@ enum {
WM_PROTOCOLS, WM_PROTOCOLS,
_MOTIF_WM_HINTS, _MOTIF_WM_HINTS,
UTF8_STRING, UTF8_STRING,
WM_CHANGE_STATE,
CWMH_NITEMS CWMH_NITEMS
}; };
enum { enum {

View File

@ -15,7 +15,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.
* *
* $OpenBSD: xevents.c,v 1.77 2013/05/19 17:01:29 okan Exp $ * $OpenBSD: xevents.c,v 1.78 2013/05/19 17:03:55 okan Exp $
*/ */
/* /*
@ -340,16 +340,13 @@ static void
xev_handle_clientmessage(XEvent *ee) xev_handle_clientmessage(XEvent *ee)
{ {
XClientMessageEvent *e = &ee->xclient; XClientMessageEvent *e = &ee->xclient;
Atom xa_wm_change_state;
struct client_ctx *cc; struct client_ctx *cc;
xa_wm_change_state = XInternAtom(X_Dpy, "WM_CHANGE_STATE", False);
if ((cc = client_find(e->window)) == NULL) if ((cc = client_find(e->window)) == NULL)
return; return;
if (e->message_type == xa_wm_change_state && e->format == 32 && if (e->message_type == cwmh[WM_CHANGE_STATE].atom &&
e->data.l[0] == IconicState) e->format == 32 && e->data.l[0] == IconicState)
client_hide(cc); client_hide(cc);
} }

View File

@ -15,7 +15,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.
* *
* $OpenBSD: xutil.c,v 1.59 2013/05/10 16:32:48 okan Exp $ * $OpenBSD: xutil.c,v 1.60 2013/05/19 17:03:55 okan Exp $
*/ */
#include <sys/param.h> #include <sys/param.h>
@ -239,6 +239,7 @@ struct atom_ctx cwmh[CWMH_NITEMS] = {
{"WM_PROTOCOLS", None}, {"WM_PROTOCOLS", None},
{"_MOTIF_WM_HINTS", None}, {"_MOTIF_WM_HINTS", None},
{"UTF8_STRING", None}, {"UTF8_STRING", None},
{"WM_CHANGE_STATE", None},
}; };
struct atom_ctx ewmh[EWMH_NITEMS] = { struct atom_ctx ewmh[EWMH_NITEMS] = {
{"_NET_SUPPORTED", None}, {"_NET_SUPPORTED", None},