discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=f0fc7a12deab10d9058fb15b774895f7a9e292a2

commit f0fc7a12deab10d9058fb15b774895f7a9e292a2
Author: Mike Blumenkrantz <zm...@osg.samsung.com>
Date:   Mon Sep 28 14:36:59 2015 -0400

    remove client maximize states during unmaximize only if they are active
    
    do not accidentally remove untested states using bad math operations
---
 src/bin/e_client.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/bin/e_client.c b/src/bin/e_client.c
index 53c91f8..0f91ba9 100644
--- a/src/bin/e_client.c
+++ b/src/bin/e_client.c
@@ -3837,9 +3837,12 @@ e_client_unmaximize(E_Client *ec, E_Maximize max)
                   h = ec->saved.h;
                   vert = EINA_TRUE;
                   y = ec->saved.y + ec->zone->y;
-                  ec->maximized &= ~E_MAXIMIZE_VERTICAL;
-                  ec->maximized &= ~E_MAXIMIZE_LEFT;
-                  ec->maximized &= ~E_MAXIMIZE_RIGHT;
+                  if ((max & E_MAXIMIZE_VERTICAL) == E_MAXIMIZE_VERTICAL)
+                    ec->maximized &= ~E_MAXIMIZE_VERTICAL;
+                  if ((max & E_MAXIMIZE_LEFT) == E_MAXIMIZE_LEFT)
+                    ec->maximized &= ~E_MAXIMIZE_LEFT;
+                  if ((max & E_MAXIMIZE_RIGHT) == E_MAXIMIZE_RIGHT)
+                    ec->maximized &= ~E_MAXIMIZE_RIGHT;
                }
              if (max & E_MAXIMIZE_HORIZONTAL)
                {

-- 


Reply via email to