static void
weston_wm_window_create(struct weston_wm *wm,
- xcb_window_t id, int width, int height, int override)
+ xcb_window_t id, int width, int height, int x, int y, int override)
{
struct weston_wm_window *window;
uint32_t values[1];
window->override_redirect = override;
window->width = width;
window->height = height;
+ window->x = x;
+ window->y = y;
geometry_reply = xcb_get_geometry_reply(wm->conn, geometry_cookie, NULL);
/* technically we should use XRender and check the visual format's
weston_wm_window_create(wm, create_notify->window,
create_notify->width, create_notify->height,
+ create_notify->x, create_notify->y,
create_notify->override_redirect);
}
if (reparent_notify->parent == wm->screen->root) {
weston_wm_window_create(wm, reparent_notify->window, 10, 10,
+ reparent_notify->x, reparent_notify->y,
reparent_notify->override_redirect);
} else if (!our_resource(wm, reparent_notify->parent)) {
window = hash_table_lookup(wm->window_hash,
shell_interface->set_fullscreen(window->shsurf,
WL_SHELL_SURFACE_FULLSCREEN_METHOD_DEFAULT,
0, output);
- } else if (!window->override_redirect) {
+ } else if (!window->override_redirect && !window->transient_for) {
shell_interface->set_toplevel(window->shsurf);
return;
} else {