discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=5b9dec214e111d9231a35d7c25c362310977070b
commit 5b9dec214e111d9231a35d7c25c362310977070b Author: Mike Blumenkrantz <[email protected]> Date: Fri Mar 10 15:57:15 2017 -0500 only save client size info on maximize/fullscreen when protocol visible a client which begins in one of these states must set its size again when removing the state --- src/bin/e_client.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/bin/e_client.c b/src/bin/e_client.c index c07a460..e87c109 100644 --- a/src/bin/e_client.c +++ b/src/bin/e_client.c @@ -4064,13 +4064,15 @@ e_client_maximize(E_Client *ec, E_Maximize max) { /* Horizontal hasn't been set */ ec->saved.x = ec->client.x - ec->zone->x; - ec->saved.w = ec->client.w; + if (ec->visible) + ec->saved.w = ec->client.w; } if (!(ec->maximized & E_MAXIMIZE_VERTICAL)) { /* Vertical hasn't been set */ ec->saved.y = ec->client.y - ec->zone->y; - ec->saved.h = ec->client.h; + if (ec->visible) + ec->saved.h = ec->client.h; } ec->saved.zone = ec->zone->num; @@ -4293,8 +4295,11 @@ e_client_fullscreen(E_Client *ec, E_Fullscreen policy) { ec->saved.x = ec->client.x - ec->zone->x; ec->saved.y = ec->client.y - ec->zone->y; - ec->saved.w = ec->client.w; - ec->saved.h = ec->client.h; + if (ec->visible) + { + ec->saved.w = ec->client.w; + ec->saved.h = ec->client.h; + } } ec->saved.maximized = ec->maximized; ec->saved.zone = ec->zone->num; --
