summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar emersion <contact@emersion.fr>2018-10-20 08:35:20 +0200
committerLibravatar GitHub <noreply@github.com>2018-10-20 08:35:20 +0200
commit4bde0eb911062817b9b41e91039b373b1efb0e0e (patch)
treea2664a38b2fa5da960f432debf65ce60c0d60eb6
parentMerge pull request #2872 from RyanDwyer/cursor-rebase (diff)
parentcommands/bar: remove left and right from allowed positions (diff)
downloadsway-4bde0eb911062817b9b41e91039b373b1efb0e0e.tar.gz
sway-4bde0eb911062817b9b41e91039b373b1efb0e0e.tar.zst
sway-4bde0eb911062817b9b41e91039b373b1efb0e0e.zip
Merge pull request #2879 from Emantor/fix/swaybar_position
swaybar: disallow left and right position and print error on default
-rw-r--r--sway/commands/bar/position.c2
-rw-r--r--swaybar/config.c8
2 files changed, 3 insertions, 7 deletions
diff --git a/sway/commands/bar/position.c b/sway/commands/bar/position.c
index 44bb4ae3..2870f60f 100644
--- a/sway/commands/bar/position.c
+++ b/sway/commands/bar/position.c
@@ -12,7 +12,7 @@ struct cmd_results *bar_cmd_position(int argc, char **argv) {
12 if (!config->current_bar) { 12 if (!config->current_bar) {
13 return cmd_results_new(CMD_FAILURE, "position", "No bar defined."); 13 return cmd_results_new(CMD_FAILURE, "position", "No bar defined.");
14 } 14 }
15 char *valid[] = { "top", "bottom", "left", "right" }; 15 char *valid[] = { "top", "bottom" };
16 for (size_t i = 0; i < sizeof(valid) / sizeof(valid[0]); ++i) { 16 for (size_t i = 0; i < sizeof(valid) / sizeof(valid[0]); ++i) {
17 if (strcasecmp(valid[i], argv[0]) == 0) { 17 if (strcasecmp(valid[i], argv[0]) == 0) {
18 wlr_log(WLR_DEBUG, "Setting bar position '%s' for bar: %s", 18 wlr_log(WLR_DEBUG, "Setting bar position '%s' for bar: %s",
diff --git a/swaybar/config.c b/swaybar/config.c
index eafb0b69..1293cdae 100644
--- a/swaybar/config.c
+++ b/swaybar/config.c
@@ -1,6 +1,7 @@
1#define _XOPEN_SOURCE 500 1#define _XOPEN_SOURCE 500
2#include <stdlib.h> 2#include <stdlib.h>
3#include <string.h> 3#include <string.h>
4#include <wlr/util/log.h>
4#include "swaybar/config.h" 5#include "swaybar/config.h"
5#include "wlr-layer-shell-unstable-v1-client-protocol.h" 6#include "wlr-layer-shell-unstable-v1-client-protocol.h"
6#include "stringop.h" 7#include "stringop.h"
@@ -9,17 +10,12 @@
9uint32_t parse_position(const char *position) { 10uint32_t parse_position(const char *position) {
10 uint32_t horiz = ZWLR_LAYER_SURFACE_V1_ANCHOR_LEFT | 11 uint32_t horiz = ZWLR_LAYER_SURFACE_V1_ANCHOR_LEFT |
11 ZWLR_LAYER_SURFACE_V1_ANCHOR_RIGHT; 12 ZWLR_LAYER_SURFACE_V1_ANCHOR_RIGHT;
12 uint32_t vert = ZWLR_LAYER_SURFACE_V1_ANCHOR_TOP |
13 ZWLR_LAYER_SURFACE_V1_ANCHOR_BOTTOM;
14 if (strcmp("top", position) == 0) { 13 if (strcmp("top", position) == 0) {
15 return ZWLR_LAYER_SURFACE_V1_ANCHOR_TOP | horiz; 14 return ZWLR_LAYER_SURFACE_V1_ANCHOR_TOP | horiz;
16 } else if (strcmp("bottom", position) == 0) { 15 } else if (strcmp("bottom", position) == 0) {
17 return ZWLR_LAYER_SURFACE_V1_ANCHOR_BOTTOM | horiz; 16 return ZWLR_LAYER_SURFACE_V1_ANCHOR_BOTTOM | horiz;
18 } else if (strcmp("left", position) == 0) {
19 return ZWLR_LAYER_SURFACE_V1_ANCHOR_LEFT | vert;
20 } else if (strcmp("right", position) == 0) {
21 return ZWLR_LAYER_SURFACE_V1_ANCHOR_RIGHT | vert;
22 } else { 17 } else {
18 wlr_log(WLR_ERROR, "Invalid position: %s, defaulting to bottom", position);
23 return ZWLR_LAYER_SURFACE_V1_ANCHOR_BOTTOM | horiz; 19 return ZWLR_LAYER_SURFACE_V1_ANCHOR_BOTTOM | horiz;
24 } 20 }
25} 21}