summaryrefslogtreecommitdiff
path: root/src/actions.c
diff options
context:
space:
mode:
authorsabetts <sabetts>2003-06-26 01:47:58 +0000
committersabetts <sabetts>2003-06-26 01:47:58 +0000
commitc6ee0ca66101f88438ff9e4dd8979c5bdfc40912 (patch)
treed15e767d739ac44f7a93147db9d40c654bcf501c /src/actions.c
parent4724ed633da36b1316164c340e63973ec13c0a8c (diff)
downloadratpoison-c6ee0ca66101f88438ff9e4dd8979c5bdfc40912.zip
(cmd_gmove): prompt the user if no group is passed
as an argument.
Diffstat (limited to 'src/actions.c')
-rw-r--r--src/actions.c19
1 files changed, 12 insertions, 7 deletions
diff --git a/src/actions.c b/src/actions.c
index c1e8ac3..d51f326 100644
--- a/src/actions.c
+++ b/src/actions.c
@@ -3596,21 +3596,26 @@ cmd_groups (int interactive, char *data)
char *
cmd_gmove (int interactive, char *data)
{
+ char *str;
rp_group *g;
- if (data == NULL)
- {
- message (" gmove: one argument required ");
- return NULL;
- }
-
if (current_window() == NULL)
{
message (" gmove: no focused window ");
return NULL;
}
- g = find_group (data);
+ /* Prompt for a group */
+ if (data == NULL)
+ str = get_input (MESSAGE_PROMPT_SWITCH_TO_GROUP, group_completions);
+ else
+ str = xstrdup (data);
+
+ /* User aborted. */
+ if (str == NULL)
+ return NULL;
+
+ g = find_group (str);
if (g == NULL)
{
message (" gmove: cannot find group ");