summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorA Frederick Christensen <dwl@ivories.org>2024-06-02 14:19:24 -0500
committerA Frederick Christensen <dwl@ivories.org>2024-06-02 18:54:11 -0500
commitbca077b9279f28c12cced63f0a556c0556f7169c (patch)
tree0baa84782a0bd159fceb5caf67526a62eabc7315
parent0047ff740a4f8da430cecdb19084f626bf535b21 (diff)
Allow negative coordinates in MonitorRules
Monitor/output position (-1, -1) remains as a single indicator value for autoconfigure layout. Additionally, one minor comment typo is corrected.
-rw-r--r--config.def.h2
-rw-r--r--dwl.c4
2 files changed, 4 insertions, 2 deletions
diff --git a/config.def.h b/config.def.h
index 8f498d2..a784eb4 100644
--- a/config.def.h
+++ b/config.def.h
@@ -36,6 +36,8 @@ static const Layout layouts[] = {
};
/* monitors */
+/* (x=-1, y=-1) is reserved as an "autoconfigure" monitor position indicator */
+/* WARNING: negative values other than (-1, -1) cause problems with xwayland clients' menus */
/* NOTE: ALWAYS add a fallback rule, even if you are completely sure it won't be used */
static const MonitorRule monrules[] = {
/* name mfact nmaster scale layout rotate/reflect x y */
diff --git a/dwl.c b/dwl.c
index 52bfbc8..1ea7f2a 100644
--- a/dwl.c
+++ b/dwl.c
@@ -927,14 +927,14 @@ createmon(struct wl_listener *listener, void *data)
m->fullscreen_bg = wlr_scene_rect_create(layers[LyrFS], 0, 0, fullscreen_bg);
wlr_scene_node_set_enabled(&m->fullscreen_bg->node, 0);
- /* Adds this to the output layout in the order it was configured in.
+ /* Adds this to the output layout in the order it was configured.
*
* The output layout utility automatically adds a wl_output global to the
* display, which Wayland clients can see to find out information about the
* output (such as DPI, scale factor, manufacturer, etc).
*/
m->scene_output = wlr_scene_output_create(scene, wlr_output);
- if (m->m.x < 0 || m->m.y < 0)
+ if (m->m.x == -1 && m->m.y == -1)
wlr_output_layout_add_auto(output_layout, wlr_output);
else
wlr_output_layout_add(output_layout, wlr_output, m->m.x, m->m.y);