From 45b1bd6c4ea47f222e9473807ed7ae379d1abe06 Mon Sep 17 00:00:00 2001 From: sthen Date: Sun, 17 May 2009 17:04:59 +0000 Subject: add a "movetogroup" function, which hides the current window from display and moves it to another group. useful with the recently added "grouponly" function, giving the ability to use groups as simple virtual desktops (similar to e.g. xmonad, dwm and scrotwm). this doesn't have default keyboard bindings; cwmrc(5) now shows how you could use these functions (use M-1...9 for grouponly1...9 and MS-1...9 for movetogroup1...9 to emulate the default dwm bindings). ok oga@ --- group.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'group.c') diff --git a/group.c b/group.c index fb7b7b7..114b5eb 100644 --- a/group.c +++ b/group.c @@ -16,7 +16,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $Id: group.c,v 1.24 2009/05/14 16:24:04 oga Exp $ + * $Id: group.c,v 1.25 2009/05/17 17:04:59 sthen Exp $ */ #include "headers.h" @@ -143,7 +143,16 @@ group_init(void) TAILQ_INSERT_TAIL(&Groupq, &Groups[i], entry); } - Group_active = &Groups[0]; +} + +void +group_movetogroup(struct client_ctx *cc, int idx) +{ + if (idx < 0 || idx >= CALMWM_NGROUPS) + err(1, "group_movetogroup: index out of range (%d)", idx); + + client_hide(cc); + _group_add(&Groups[idx], cc); } /* -- cgit v1.2.3-2-gb3c3