////////////////////////////////////////////////
static void
+_e_client_transform_core_activate_set(E_Client *ec, Eina_Bool set)
+{
+ if (ec->transform_core.activate == set) return;
+
+ ec->transform_core.activate = set;
+
+ if (set)
+ {
+ ec->transform_core.changed = EINA_TRUE;
+ e_client_transform_core_update(ec);
+ }
+ else
+ {
+ e_client_map_enable_set(ec, EINA_FALSE);
+ }
+}
+
+static void
_e_client_cb_evas_hide(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
{
E_Client *ec = data;
ec->want_focus = ec->take_focus = 0;
+ _e_client_transform_core_activate_set(ec, EINA_FALSE);
+
if (ec->new_client) return;
_e_client_event_hide(ec);
if (e_object_is_del(data)) return;
+ _e_client_transform_core_activate_set(ec, EINA_TRUE);
+
_e_client_event_show(ec);
EC_CHANGED(ec);
}
ec->transform.zoom = 1.0;
ec->transform.angle = 0.0;
ec->transform_core.direct_render = EINA_TRUE;
+ ec->transform_core.activate = EINA_TRUE;
ec->pointer_enter_sent = EINA_FALSE;
if (!ec) return;
if (ec->new_client) return;
if (!_e_client_transform_core_check_change(ec)) return;
+ if (!ec->transform_core.activate) return;
if (ec->transform_core.transform_list || ec->transform_core.parent.enable)
{