aboutsummaryrefslogtreecommitdiff
path: root/backend
diff options
context:
space:
mode:
authoremersion <contact@emersion.fr>2017-12-12 21:58:00 +0100
committeremersion <contact@emersion.fr>2017-12-12 21:58:00 +0100
commit3b4b8953d96194e8b168149f46c731443239accd (patch)
tree35c6a0da0b6f296603711358a53847c6959acd67 /backend
parent808ab5aa1bd990776ae30d5f9bb171ca7b42d6ef (diff)
Update output layout when scale or transform changes
Diffstat (limited to 'backend')
-rw-r--r--backend/drm/drm.c6
-rw-r--r--backend/wayland/output.c2
-rw-r--r--backend/x11/backend.c1
3 files changed, 1 insertions, 8 deletions
diff --git a/backend/drm/drm.c b/backend/drm/drm.c
index 9fcf2ad7..ba203791 100644
--- a/backend/drm/drm.c
+++ b/backend/drm/drm.c
@@ -453,11 +453,7 @@ static bool wlr_drm_connector_set_mode(struct wlr_output *output,
conn->state = WLR_DRM_CONN_CONNECTED;
conn->output.current_mode = mode;
- if (conn->output.width != mode->width || conn->output.height != mode->height) {
- conn->output.width = mode->width;
- conn->output.height = mode->height;
- wl_signal_emit(&conn->output.events.resolution, &conn->output);
- }
+ wlr_output_update_size(&conn->output, mode->width, mode->height);
// Since realloc_crtcs can deallocate planes on OTHER outputs,
// we actually need to reinitalise any than has changed
diff --git a/backend/wayland/output.c b/backend/wayland/output.c
index f6182dcd..f940299e 100644
--- a/backend/wayland/output.c
+++ b/backend/wayland/output.c
@@ -33,7 +33,6 @@ static bool wlr_wl_output_set_custom_mode(struct wlr_output *_output,
struct wlr_wl_backend_output *output = (struct wlr_wl_backend_output *)_output;
wl_egl_window_resize(output->egl_window, width, height, 0, 0);
wlr_output_update_size(&output->wlr_output, width, height);
- wl_signal_emit(&output->wlr_output.events.resolution, output);
return true;
}
@@ -228,7 +227,6 @@ static void xdg_toplevel_handle_configure(void *data, struct zxdg_toplevel_v6 *x
// loop over states for maximized etc?
wl_egl_window_resize(output->egl_window, width, height, 0, 0);
wlr_output_update_size(&output->wlr_output, width, height);
- wl_signal_emit(&output->wlr_output.events.resolution, output);
}
static void xdg_toplevel_handle_close(void *data, struct zxdg_toplevel_v6 *xdg_toplevel) {
diff --git a/backend/x11/backend.c b/backend/x11/backend.c
index 5fb54ffd..5a6e90b5 100644
--- a/backend/x11/backend.c
+++ b/backend/x11/backend.c
@@ -118,7 +118,6 @@ static bool handle_x11_event(struct wlr_x11_backend *x11, xcb_generic_event_t *e
xcb_configure_notify_event_t *ev = (xcb_configure_notify_event_t *)event;
wlr_output_update_size(&output->wlr_output, ev->width, ev->height);
- wl_signal_emit(&output->wlr_output.events.resolution, output);
// Move the pointer to its new location
xcb_query_pointer_cookie_t cookie =