From c32a507303e38c7bf0b8054108bec45ff67e92c2 Mon Sep 17 00:00:00 2001 From: Aidan Dang Date: Wed, 16 Mar 2022 22:22:41 +0000 Subject: 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 --- sway/commands/primary_selection.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 sway/commands/primary_selection.c (limited to 'sway/commands') 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 +#include +#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); +} -- cgit v1.2.3