discomfitor pushed a commit to branch master.

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

commit a16f820f955f23e25a9f8b48e0b9b646c6e795d4
Author: Mike Blumenkrantz <[email protected]>
Date:   Wed Feb 5 13:05:05 2014 -0500

    only ignore protocol stacking if comp object is on a different layer
---
 src/bin/e_comp_object.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c
index 1ec503b..dfb47ae 100644
--- a/src/bin/e_comp_object.c
+++ b/src/bin/e_comp_object.c
@@ -901,7 +901,11 @@ _e_comp_intercept_stack_above(void *data, Evas_Object 
*obj, Evas_Object *above)
    if (evas_object_below_get(obj) == above) return;
    if (cw->ec->layer_block)
      {
+        if (cw->ec->layer == evas_object_layer_get(obj))
+          evas_object_data_set(obj, "client_restack", (void*)1);
         evas_object_stack_above(obj, above);
+        if (cw->ec->layer == evas_object_layer_get(obj))
+          evas_object_data_del(obj, "client_restack");
         return;
      }
    if (cw->ec->new_client)
@@ -992,7 +996,11 @@ _e_comp_intercept_stack_below(void *data, Evas_Object 
*obj, Evas_Object *below)
    if (evas_object_above_get(obj) == below) return;
    if (cw->ec->layer_block)
      {
+        if (cw->ec->layer == evas_object_layer_get(obj))
+          evas_object_data_set(obj, "client_restack", (void*)1);
         evas_object_stack_below(obj, below);
+        if (cw->ec->layer == evas_object_layer_get(obj))
+          evas_object_data_del(obj, "client_restack");
         return;
      }
    if (cw->ec->new_client)

-- 


Reply via email to