discomfitor pushed a commit to branch master.
commit 895bf4f78f00ca8cc7ba4656083ef53df60e23f1
Author: Mike Blumenkrantz <[email protected]>
Date: Thu Aug 22 14:28:12 2013 +0100
add border stacking handler as a third line of defense against
missionaccomplished.jpg stacking issues
---
src/bin/e_comp.c | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/src/bin/e_comp.c b/src/bin/e_comp.c
index faff6ed..f75d1eb 100644
--- a/src/bin/e_comp.c
+++ b/src/bin/e_comp.c
@@ -3658,6 +3658,30 @@ _e_comp_bd_unfullscreen(void *data EINA_UNUSED, int type
EINA_UNUSED, void *even
return ECORE_CALLBACK_PASS_ON;
}
+static Eina_Bool
+_e_comp_bd_stack(void *data EINA_UNUSED, int t EINA_UNUSED,
E_Event_Border_Stack *ev)
+{
+ if (!ev->border->cw) return ECORE_CALLBACK_RENEW;
+ switch (ev->type)
+ {
+ case E_STACKING_ABOVE:
+ if (ev->stack && ev->stack->cw)
+ _e_comp_win_raise_above(ev->border->cw, ev->stack->cw);
+ else
+ _e_comp_win_raise(ev->border->cw);
+ break;
+ case E_STACKING_BELOW:
+ if (ev->stack && ev->stack->cw)
+ _e_comp_win_lower_below(ev->border->cw, ev->stack->cw);
+ else
+ _e_comp_win_lower(ev->border->cw);
+ break;
+ case E_STACKING_NONE:
+ default: break;
+ }
+ return ECORE_CALLBACK_RENEW;
+}
+
static void
_e_comp_injected_win_focus_out_cb(void *data, Evas *e EINA_UNUSED, Evas_Object
*obj EINA_UNUSED, void *event_info EINA_UNUSED)
{
@@ -4913,6 +4937,7 @@ e_comp_init(void)
E_LIST_HANDLER_APPEND(handlers, E_EVENT_BORDER_PROPERTY,
_e_comp_bd_property, NULL);
E_LIST_HANDLER_APPEND(handlers, E_EVENT_BORDER_FULLSCREEN,
_e_comp_bd_fullscreen, NULL);
E_LIST_HANDLER_APPEND(handlers, E_EVENT_BORDER_UNFULLSCREEN,
_e_comp_bd_unfullscreen, NULL);
+ E_LIST_HANDLER_APPEND(handlers, E_EVENT_BORDER_STACK, _e_comp_bd_stack,
NULL);
E_EVENT_COMP_SOURCE_VISIBILITY = ecore_event_type_new();
E_EVENT_COMP_SOURCE_ADD = ecore_event_type_new();
--
------------------------------------------------------------------------------
Introducing Performance Central, a new site from SourceForge and
AppDynamics. Performance Central is your source for news, insights,
analysis and resources for efficient Application Performance Management.
Visit us today!
http://pubads.g.doubleclick.net/gampad/clk?id=48897511&iu=/4140/ostg.clktrk