systray stop crashing in wayland!!!!

This commit is contained in:
Mike Blumenkrantz 2014-03-18 13:22:11 -04:00
parent 08e2173652
commit af3f435d98
1 changed files with 8 additions and 3 deletions

View File

@ -150,7 +150,7 @@ _systray_xembed_visible_check(Instance_Xembed *xembed)
void void
systray_xembed_size_updated(Instance_Xembed *xembed) systray_xembed_size_updated(Instance_Xembed *xembed)
{ {
if (e_comp_get(NULL)->comp_type != E_PIXMAP_TYPE_X) return;
if (xembed->visibility_timer) if (xembed->visibility_timer)
ecore_timer_reset(xembed->visibility_timer); ecore_timer_reset(xembed->visibility_timer);
else else
@ -770,6 +770,7 @@ systray_xembed_orient_set(Instance_Xembed *xembed, E_Gadcon_Orient orient)
{ {
unsigned int systray_orient; unsigned int systray_orient;
if (e_comp_get(NULL)->comp_type != E_PIXMAP_TYPE_X) return;
EINA_SAFETY_ON_NULL_RETURN(xembed); EINA_SAFETY_ON_NULL_RETURN(xembed);
switch (orient) switch (orient)
@ -871,7 +872,10 @@ systray_xembed_new(Instance *inst)
{ {
Evas_Object *ui = systray_edje_get(inst); Evas_Object *ui = systray_edje_get(inst);
E_Gadcon *gc = inst->gcc->gadcon; E_Gadcon *gc = inst->gcc->gadcon;
Instance_Xembed *xembed = calloc(1, sizeof(Instance_Xembed)); Instance_Xembed *xembed;
if (e_comp_get(NULL)->comp_type != E_PIXMAP_TYPE_X) return NULL;
xembed = calloc(1, sizeof(Instance_Xembed));
EINA_SAFETY_ON_NULL_RETURN_VAL(xembed, NULL); EINA_SAFETY_ON_NULL_RETURN_VAL(xembed, NULL);
xembed->inst = inst; xembed->inst = inst;
@ -925,7 +929,7 @@ void
systray_xembed_free(Instance_Xembed *xembed) systray_xembed_free(Instance_Xembed *xembed)
{ {
Evas_Object *ui = systray_edje_get(xembed->inst); Evas_Object *ui = systray_edje_get(xembed->inst);
EINA_SAFETY_ON_NULL_RETURN(xembed); if (!xembed) return;
evas_object_event_callback_del(ui, EVAS_CALLBACK_MOVE, evas_object_event_callback_del(ui, EVAS_CALLBACK_MOVE,
_systray_xembed_cb_move); _systray_xembed_cb_move);
@ -962,6 +966,7 @@ systray_xembed_free(Instance_Xembed *xembed)
void void
systray_xembed_init(void) systray_xembed_init(void)
{ {
if (e_comp_get(NULL)->comp_type != E_PIXMAP_TYPE_X) return;
if (!_atom_manager) if (!_atom_manager)
_atom_manager = ecore_x_atom_get("MANAGER"); _atom_manager = ecore_x_atom_get("MANAGER");
if (!_atom_st_orient) if (!_atom_st_orient)