X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=sys-x11.c;fp=sys-x11.c;h=2120ee07931b427dc4be43c6486655f3c0f73197;hb=7b1461df6049d172f3c95f3adca510b528c9f390;hp=28fb9d91a14d223ddb0cab89675ae37301d6be1b;hpb=a0807177593e8ae6971ab5fb6bcdcd893819ef66;p=wmpus diff --git a/sys-x11.c b/sys-x11.c index 28fb9d9..2120ee0 100644 --- a/sys-x11.c +++ b/sys-x11.c @@ -454,12 +454,11 @@ static void process_event(int type, XEvent *xe, win_t *root) (cme->message_type == atoms[NET_STATE]) && (cme->data.l[1] == atoms[NET_FULL] || cme->data.l[2] == atoms[NET_FULL])) { - if (cme->data.l[0] == 1 || /* _NET_WM_STATE_ADD */ - (cme->data.l[0] == 2 && /* _NET_WM_STATE_TOGGLE */ - win->state != ST_FULL)) - sys_show(win, ST_FULL); - else - sys_show(win, ST_SHOW); + state_t next = (cme->data.l[0] == 1 || /* _NET_WM_STATE_ADD */ + (cme->data.l[0] == 2 && /* _NET_WM_STATE_TOGGLE */ + win->state != ST_FULL)) ? ST_FULL : ST_SHOW; + wm_handle_state(win, win->state, next); + sys_show(win, next); } } else if (type == PropertyNotify) {