From 34baef933d0bba6dad20e1b9f24878b63756e443 Mon Sep 17 00:00:00 2001 From: Markus Teich Date: Thu, 28 Nov 2013 02:24:58 +0100 Subject: [PATCH] select tab with X ClientMessage event Signed-off-by: Christoph Lohmann <20h@r-36.net> --- tabbed.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/tabbed.c b/tabbed.c index 3a6e7f9..f07322a 100644 --- a/tabbed.c +++ b/tabbed.c @@ -48,7 +48,7 @@ enum { ColFG, ColBG, ColLast }; /* color */ enum { WMProtocols, WMDelete, WMName, WMState, WMFullscreen, - XEmbed, WMLast }; /* default atoms */ + XEmbed, WMSelectTab, WMLast }; /* default atoms */ typedef union { int i; @@ -237,6 +237,9 @@ clientmessage(const XEvent *e) { if(ev->message_type == wmatom[WMProtocols] && ev->data.l[0] == wmatom[WMDelete]) { running = False; + } else if(ev->message_type == wmatom[WMSelectTab]) { + Arg a = {.i = ev->data.l[0]}; + move(&a); } } @@ -892,8 +895,8 @@ setup(void) { wmatom[XEmbed] = XInternAtom(dpy, "_XEMBED", False); wmatom[WMName] = XInternAtom(dpy, "_NET_WM_NAME", False); wmatom[WMState] = XInternAtom(dpy, "_NET_WM_STATE", False); - wmatom[WMFullscreen] = XInternAtom(dpy, "_NET_WM_STATE_FULLSCREEN", - False); + wmatom[WMFullscreen] = XInternAtom(dpy, "_NET_WM_STATE_FULLSCREEN", False); + wmatom[WMSelectTab] = XInternAtom(dpy, "_TABBED_SELECT_TAB", False); /* init appearance */ wx = 0;