diff options
Diffstat (limited to 'sway/commands.c')
-rw-r--r-- | sway/commands.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/sway/commands.c b/sway/commands.c index d8f61242..3befee13 100644 --- a/sway/commands.c +++ b/sway/commands.c | |||
@@ -58,6 +58,7 @@ static sway_cmd cmd_exec; | |||
58 | static sway_cmd cmd_exec_always; | 58 | static sway_cmd cmd_exec_always; |
59 | static sway_cmd cmd_exit; | 59 | static sway_cmd cmd_exit; |
60 | static sway_cmd cmd_floating; | 60 | static sway_cmd cmd_floating; |
61 | static sway_cmd cmd_floating_maximum_size; | ||
61 | static sway_cmd cmd_floating_minimum_size; | 62 | static sway_cmd cmd_floating_minimum_size; |
62 | static sway_cmd cmd_floating_mod; | 63 | static sway_cmd cmd_floating_mod; |
63 | static sway_cmd cmd_floating_scroll; | 64 | static sway_cmd cmd_floating_scroll; |
@@ -674,6 +675,40 @@ static struct cmd_results *cmd_floating(int argc, char **argv) { | |||
674 | return cmd_results_new(CMD_SUCCESS, NULL, NULL); | 675 | return cmd_results_new(CMD_SUCCESS, NULL, NULL); |
675 | } | 676 | } |
676 | 677 | ||
678 | static struct cmd_results *cmd_floating_maximum_size(int argc, char **argv) { | ||
679 | struct cmd_results *error = NULL; | ||
680 | int32_t width; | ||
681 | int32_t height; | ||
682 | char *ptr; | ||
683 | |||
684 | if ((error = checkarg(argc, "floating_maximum_size", EXPECTED_EQUAL_TO, 3))) { | ||
685 | return error; | ||
686 | } | ||
687 | width = strtol(argv[0], &ptr, 10); | ||
688 | height = strtol(argv[2], &ptr, 10); | ||
689 | |||
690 | if (width < -1) { | ||
691 | sway_log(L_DEBUG, "floating_maximum_size invalid width value: '%s'", argv[0]); | ||
692 | |||
693 | } else { | ||
694 | config->floating_maximum_width = width; | ||
695 | |||
696 | } | ||
697 | |||
698 | if (height < -1) { | ||
699 | sway_log(L_DEBUG, "floating_maximum_size invalid height value: '%s'", argv[2]); | ||
700 | } | ||
701 | else { | ||
702 | config->floating_maximum_height = height; | ||
703 | |||
704 | } | ||
705 | |||
706 | sway_log(L_DEBUG, "New floating_maximum_size: '%d' x '%d'", config->floating_maximum_width, | ||
707 | config->floating_maximum_height); | ||
708 | |||
709 | return cmd_results_new(CMD_SUCCESS, NULL, NULL); | ||
710 | } | ||
711 | |||
677 | static struct cmd_results *cmd_floating_minimum_size(int argc, char **argv) { | 712 | static struct cmd_results *cmd_floating_minimum_size(int argc, char **argv) { |
678 | struct cmd_results *error = NULL; | 713 | struct cmd_results *error = NULL; |
679 | int32_t width; | 714 | int32_t width; |
@@ -2468,6 +2503,7 @@ static struct cmd_handler handlers[] = { | |||
2468 | { "exec_always", cmd_exec_always }, | 2503 | { "exec_always", cmd_exec_always }, |
2469 | { "exit", cmd_exit }, | 2504 | { "exit", cmd_exit }, |
2470 | { "floating", cmd_floating }, | 2505 | { "floating", cmd_floating }, |
2506 | { "floating_maximum_size", cmd_floating_maximum_size }, | ||
2471 | { "floating_minimum_size", cmd_floating_minimum_size }, | 2507 | { "floating_minimum_size", cmd_floating_minimum_size }, |
2472 | { "floating_modifier", cmd_floating_mod }, | 2508 | { "floating_modifier", cmd_floating_mod }, |
2473 | { "floating_scroll", cmd_floating_scroll }, | 2509 | { "floating_scroll", cmd_floating_scroll }, |