untab on floating

This commit is contained in:
Julien Danjou 2007-10-15 17:20:17 +02:00
parent cf2b6d9f4f
commit d263c89aa4
2 changed files with 6 additions and 3 deletions

7
tab.c
View File

@ -62,7 +62,6 @@ uicb_tab(awesome_config *awesomeconf,
awesomeconf[awesomeconf->screen].cursor[CurMove], CurrentTime) != GrabSuccess) awesomeconf[awesomeconf->screen].cursor[CurMove], CurrentTime) != GrabSuccess)
return; return;
for(;;) for(;;)
{ {
XMaskEvent(awesomeconf->display, ButtonPressMask, &ev); XMaskEvent(awesomeconf->display, ButtonPressMask, &ev);
@ -72,11 +71,13 @@ uicb_tab(awesome_config *awesomeconf,
break; break;
} }
} }
XQueryPointer(awesomeconf->display, XQueryPointer(awesomeconf->display,
RootWindow(awesomeconf->display, awesomeconf->phys_screen), RootWindow(awesomeconf->display, awesomeconf->phys_screen),
&dummy, &child, &x1, &y1, &di, &di, &dui); &dummy, &child, &x1, &y1, &di, &di, &dui);
if((c = get_client_bywin(awesomeconf->clients, child)) if((c = get_client_bywin(awesomeconf->clients, child))
&& c != sel) && c != sel && !c->isfloating)
{ {
/* take the last tabbed window */ /* take the last tabbed window */
for(tmp = sel; tmp->tab.next; tmp = tmp->tab.next); for(tmp = sel; tmp->tab.next; tmp = tmp->tab.next);
@ -85,8 +86,8 @@ uicb_tab(awesome_config *awesomeconf,
c->tab.isvisible = False; c->tab.isvisible = False;
arrange(awesomeconf->display, awesomeconf); arrange(awesomeconf->display, awesomeconf);
}
focus(awesomeconf->display, sel, True, awesomeconf); focus(awesomeconf->display, sel, True, awesomeconf);
}
} }
void void

2
tag.c
View File

@ -24,6 +24,7 @@
#include "layout.h" #include "layout.h"
#include "tag.h" #include "tag.h"
#include "tab.h"
#include "util.h" #include "util.h"
/** This function returns the index of /** This function returns the index of
@ -187,6 +188,7 @@ uicb_togglefloating(awesome_config * awesomeconf,
(*awesomeconf->client_sel)->rw = (*awesomeconf->client_sel)->w; (*awesomeconf->client_sel)->rw = (*awesomeconf->client_sel)->w;
(*awesomeconf->client_sel)->rh = (*awesomeconf->client_sel)->h; (*awesomeconf->client_sel)->rh = (*awesomeconf->client_sel)->h;
} }
client_untab(*awesomeconf->client_sel);
saveprops(*awesomeconf->client_sel, awesomeconf->ntags); saveprops(*awesomeconf->client_sel, awesomeconf->ntags);
arrange(awesomeconf->display, awesomeconf); arrange(awesomeconf->display, awesomeconf);
} }