aboutsummaryrefslogtreecommitdiff
path: root/dwl.c
diff options
context:
space:
mode:
Diffstat (limited to 'dwl.c')
-rw-r--r--dwl.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/dwl.c b/dwl.c
index c2273ba..57870fe 100644
--- a/dwl.c
+++ b/dwl.c
@@ -194,6 +194,7 @@ typedef struct {
float scale;
const Layout *lt;
enum wl_output_transform rr;
+ int x, y;
} MonitorRule;
typedef struct {
@@ -908,6 +909,8 @@ createmon(struct wl_listener *listener, void *data)
wlr_xcursor_manager_load(cursor_mgr, r->scale);
m->lt[0] = m->lt[1] = r->lt;
wlr_output_set_transform(wlr_output, r->rr);
+ m->m.x = r->x;
+ m->m.y = r->y;
break;
}
}
@@ -953,7 +956,10 @@ createmon(struct wl_listener *listener, void *data)
* output (such as DPI, scale factor, manufacturer, etc).
*/
m->scene_output = wlr_scene_output_create(scene, wlr_output);
- wlr_output_layout_add_auto(output_layout, wlr_output);
+ if (m->m.x < 0 || m->m.y < 0)
+ wlr_output_layout_add_auto(output_layout, wlr_output);
+ else
+ wlr_output_layout_add(output_layout, wlr_output, m->m.x, m->m.y);
}
void