discomfitor pushed a commit to branch enlightenment-0.20.

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

commit 025c130a4573524e3773d629bdfefb6804719812
Author: Mike Blumenkrantz <zm...@osg.samsung.com>
Date:   Fri Apr 1 16:26:41 2016 -0400

    restrict shelf border_fix to only affect clients affected by the shelf
    
    fixes random other clients changing sizes based on irrelevant shelf hiding
---
 src/bin/e_shelf.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/bin/e_shelf.c b/src/bin/e_shelf.c
index d638fb2..149f9b8 100644
--- a/src/bin/e_shelf.c
+++ b/src/bin/e_shelf.c
@@ -1389,7 +1389,6 @@ _e_shelf_gadcon_frame_request(void *data, E_Gadcon_Client 
*gcc, const char *styl
 static void
 _e_shelf_toggle_client_fix(E_Shelf *es)
 {
-   Eina_List *l;
    E_Client *ec;
 
    if (!e_config->border_fix_on_shelf_toggle)
@@ -1397,8 +1396,10 @@ _e_shelf_toggle_client_fix(E_Shelf *es)
    if (es->cfg->overlap)
      return;
 
-   EINA_LIST_FOREACH(e_comp->clients, l, ec)
+   E_CLIENT_FOREACH(ec)
      {
+        if ((!ec->sticky) && (!e_shelf_desk_visible(es, ec->desk ?: 
e_desk_current_get(es->zone))))
+          continue;
         if ((ec->maximized & E_MAXIMIZE_TYPE) == E_MAXIMIZE_NONE)
           {
              if (ec->lock_client_location) continue;

-- 


Reply via email to