diff options
author | Aidan Dang <dang@aidan.gg> | 2022-03-16 22:22:41 +0000 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2022-12-05 14:09:29 +0100 |
commit | c32a507303e38c7bf0b8054108bec45ff67e92c2 (patch) | |
tree | 9590aa045b466f57b023d625c8a281c94fd8039c /sway/commands | |
parent | e1b268af98edeb09e570e8855ef64f0719cbafe2 (diff) |
Add `primary_selection` config option
See: https://github.com/swaywm/sway/issues/4511
Adds a bool config option `primary_selection`, which explicitly
enables/disables the primary selection clipboard. Defaults to enabled.
This is implemented as a launch-only option which enables or disables the creation of the
`zwp_primary_selection_device_manager_v1` global.
Co-authored-by: Tilde Rose <t1lde@protonmail.com>
Diffstat (limited to 'sway/commands')
-rw-r--r-- | sway/commands/primary_selection.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/sway/commands/primary_selection.c b/sway/commands/primary_selection.c new file mode 100644 index 00000000..585b079d --- /dev/null +++ b/sway/commands/primary_selection.c @@ -0,0 +1,23 @@ +#include <string.h> +#include <strings.h> +#include "sway/config.h" +#include "sway/commands.h" +#include "util.h" + +struct cmd_results *cmd_primary_selection(int argc, char **argv) { + struct cmd_results *error = NULL; + if ((error = checkarg(argc, "primary_selection", EXPECTED_EQUAL_TO, 1))) { + return error; + } + + bool primary_selection = parse_boolean(argv[0], true); + + if (config->reloading && config->primary_selection != primary_selection) { + return cmd_results_new(CMD_FAILURE, + "primary_selection can only be enabled/disabled at launch"); + } + + config->primary_selection = parse_boolean(argv[0], true); + + return cmd_results_new(CMD_SUCCESS, NULL); +} |