diff --git a/src/events.c b/src/events.c
index a21406ef2cdff8ef68b01e49168e97babe1b7608..554e5fbfbdf0a6aec6b57e078c29598514263ba2 100644
--- a/src/events.c
+++ b/src/events.c
@@ -689,7 +689,7 @@ static inline void handleClientMessage(XClientMessageEvent * ev)
             }
             else
             {
-                clientUnstick(c);
+                clientSetWorkspace(c, ev->data.l[0]);
             }
         }
         else if((ev->message_type == net_close_window) && (ev->format == 32))