From 5c80ce8e0ed530395c81c771a883817203fe06eb Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Fri, 23 Jan 2015 14:31:35 -0500 Subject: [PATCH] only set wl client borderless state as necessary, don't overwrite existing states --- src/modules/wl_desktop_shell/e_mod_main.c | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/src/modules/wl_desktop_shell/e_mod_main.c b/src/modules/wl_desktop_shell/e_mod_main.c index 0645fadc2..decb87eb9 100644 --- a/src/modules/wl_desktop_shell/e_mod_main.c +++ b/src/modules/wl_desktop_shell/e_mod_main.c @@ -273,10 +273,9 @@ _e_shell_surface_cb_toplevel_set(struct wl_client *client EINA_UNUSED, struct wl ec->argb = EINA_TRUE; ec->no_shape_cut = EINA_TRUE; - ec->borderless = !ec->internal; + if (!ec->internal_elm_win) + ec->lock_border = ec->border.changed = ec->changes.border = ec->borderless = 1; - ec->lock_border = EINA_TRUE; - ec->border.changed = ec->changes.border = !ec->borderless; ec->netwm.type = E_WINDOW_TYPE_NORMAL; ec->comp_data->set_win_type = EINA_TRUE; if ((!ec->lock_user_maximize) && (ec->maximized)) @@ -340,9 +339,8 @@ _e_shell_surface_cb_popup_set(struct wl_client *client EINA_UNUSED, struct wl_re ec->argb = EINA_TRUE; ec->no_shape_cut = EINA_TRUE; - ec->borderless = !ec->internal_elm_win; - ec->lock_border = EINA_TRUE; - ec->border.changed = ec->changes.border = !ec->borderless; + if (!ec->internal_elm_win) + ec->lock_border = ec->border.changed = ec->changes.border = ec->borderless = 1; ec->changes.icon = !!ec->icccm.class; ec->netwm.type = E_WINDOW_TYPE_POPUP_MENU; ec->comp_data->set_win_type = EINA_TRUE; @@ -1196,9 +1194,8 @@ _e_xdg_shell_cb_surface_get(struct wl_client *client, struct wl_resource *resour /* set toplevel client properties */ ec->argb = EINA_TRUE; ec->no_shape_cut = EINA_TRUE; - ec->borderless = !ec->internal_elm_win; - ec->lock_border = EINA_TRUE; - ec->border.changed = ec->changes.border = !ec->borderless; + if (!ec->internal_elm_win) + ec->lock_border = ec->border.changed = ec->changes.border = ec->borderless = 1; ec->netwm.type = E_WINDOW_TYPE_NORMAL; ec->comp_data->set_win_type = EINA_TRUE; EC_CHANGED(ec); @@ -1308,9 +1305,8 @@ _e_xdg_shell_cb_popup_get(struct wl_client *client, struct wl_resource *resource ec->argb = EINA_TRUE; ec->no_shape_cut = EINA_TRUE; - ec->borderless = !ec->internal_elm_win; - ec->lock_border = EINA_TRUE; - ec->border.changed = ec->changes.border = !ec->borderless; + if (!ec->internal_elm_win) + ec->lock_border = ec->border.changed = ec->changes.border = ec->borderless = 1; ec->changes.icon = !!ec->icccm.class; ec->netwm.type = E_WINDOW_TYPE_POPUP_MENU; ec->comp_data->set_win_type = EINA_TRUE;