From a9b56c4c2860f3f08fc1a7540c8590669ff8b251 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Wed, 11 Feb 2015 17:00:59 -0500 Subject: [PATCH] reenable new_client for wl clients, but force moveresize actions to succeed --- src/modules/wl_desktop_shell/e_mod_main.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/modules/wl_desktop_shell/e_mod_main.c b/src/modules/wl_desktop_shell/e_mod_main.c index c18ebd857..f4e151b24 100644 --- a/src/modules/wl_desktop_shell/e_mod_main.c +++ b/src/modules/wl_desktop_shell/e_mod_main.c @@ -580,7 +580,6 @@ _e_shell_cb_shell_surface_get(struct wl_client *client, struct wl_resource *reso } ec->netwm.ping = EINA_TRUE; - ec->new_client = 0; } /* get the client data */ @@ -1017,6 +1016,7 @@ static void _e_xdg_shell_surface_configure(struct wl_resource *resource, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h) { E_Client *ec; + Eina_Bool new_client; /* DBG("XDG_SHELL: Surface Configure: %d \t%d %d %d %d", */ /* wl_resource_get_id(resource), x, y, w, h); */ @@ -1041,8 +1041,11 @@ _e_xdg_shell_surface_configure(struct wl_resource *resource, Evas_Coord x, Evas_ } } + /* ensure resize succeeds */ + new_client = ec->new_client; + ec->new_client = 0; e_client_util_move_resize_without_frame(ec, x, y, w, h); - + ec->new_client = new_client; /* TODO: ack configure ?? */ } @@ -1199,7 +1202,6 @@ _e_xdg_shell_cb_surface_get(struct wl_client *client, struct wl_resource *resour cdata->shell.unmap = _e_xdg_shell_surface_unmap; /* set toplevel client properties */ - ec->new_client = 0; ec->argb = EINA_TRUE; ec->no_shape_cut = EINA_TRUE; ec->borderless = !ec->internal_elm_win; @@ -1309,7 +1311,6 @@ _e_xdg_shell_cb_popup_get(struct wl_client *client, struct wl_resource *resource cdata->shell.unmap = _e_xdg_shell_surface_unmap; ec->override = 1; - ec->new_client = 0; ec->argb = EINA_TRUE; ec->no_shape_cut = EINA_TRUE; ec->borderless = !ec->internal_elm_win;