From 7f5d0624d666ee2af7d607a44105cb15c44e8481 Mon Sep 17 00:00:00 2001 From: emersion Date: Sat, 30 Sep 2017 16:33:04 +0200 Subject: Add x, y, width, height arguments to wlr_xwayland_surface_configure --- xwayland/xwm.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'xwayland') diff --git a/xwayland/xwm.c b/xwayland/xwm.c index d7816bcd..2038ff0f 100644 --- a/xwayland/xwm.c +++ b/xwayland/xwm.c @@ -355,11 +355,8 @@ static void handle_configure_request(struct wlr_xwm *xwm, if (surface->surface == NULL) { // Surface has not been mapped yet - surface->x = ev->x; - surface->y = ev->y; - surface->width = ev->width; - surface->height = ev->height; - wlr_xwayland_surface_configure(xwm->xwayland, surface); + wlr_xwayland_surface_configure(xwm->xwayland, surface, ev->x, ev->y, + ev->width, ev->height); } else { struct wlr_xwayland_surface_configure_event *wlr_event = calloc(1, sizeof(struct wlr_xwayland_surface_configure_event)); @@ -610,13 +607,18 @@ void wlr_xwayland_surface_activate(struct wlr_xwayland *wlr_xwayland, } void wlr_xwayland_surface_configure(struct wlr_xwayland *wlr_xwayland, - struct wlr_xwayland_surface *surface) { + struct wlr_xwayland_surface *surface, int16_t x, int16_t y, + uint16_t width, uint16_t height) { + surface->x = x; + surface->y = y; + surface->width = width; + surface->height = height; + struct wlr_xwm *xwm = wlr_xwayland->xwm; uint32_t mask = XCB_CONFIG_WINDOW_X | XCB_CONFIG_WINDOW_Y | XCB_CONFIG_WINDOW_WIDTH | XCB_CONFIG_WINDOW_HEIGHT | XCB_CONFIG_WINDOW_BORDER_WIDTH; - uint32_t values[] = {surface->x, surface->y, surface->width, - surface->height, 0}; + uint32_t values[] = {x, y, width, height, 0}; xcb_configure_window(xwm->xcb_conn, surface->window_id, mask, values); } -- cgit v1.2.3