_tzsh_srv_kvm_cb_perform_drop(struct wl_client *client EINA_UNUSED, struct wl_resource *resource)
{
E_Policy_Wl_Tzsh_Srv *tzsh_srv;
+ E_Service_Kvm *esk;
E_Client *ec;
+ if (!e_comp_wl->drag) return;
+
tzsh_srv = wl_resource_get_user_data(resource);
EINA_SAFETY_ON_NULL_RETURN(tzsh_srv);
ec = tzsh_srv->ec;
EINA_SAFETY_ON_NULL_RETURN(ec);
- if (!e_comp_wl->drag) return;
+ esk = e_service_kvm_service_get(ec);
+ EINA_SAFETY_ON_NULL_RETURN(esk);
- e_service_kvm_drop_perform(ec, E_SERVICE_KVM_DROP_TARGET_KVM_SERVICE);
+ e_service_kvm_drop_perform(esk, E_SERVICE_KVM_DROP_TARGET_KVM_SERVICE);
}
static void
_tzsh_srv_kvm_cb_cancel_drag(struct wl_client *client EINA_UNUSED, struct wl_resource *resource)
{
E_Policy_Wl_Tzsh_Srv *tzsh_srv;
+ E_Service_Kvm *esk;
E_Client *ec;
+ if (!e_comp_wl->drag) return;
+
tzsh_srv = wl_resource_get_user_data(resource);
EINA_SAFETY_ON_NULL_RETURN(tzsh_srv);
ec = tzsh_srv->ec;
EINA_SAFETY_ON_NULL_RETURN(ec);
- if (!e_comp_wl->drag) return;
+ esk = e_service_kvm_service_get(ec);
+ EINA_SAFETY_ON_NULL_RETURN(esk);
- e_service_kvm_drag_cancel(ec);
+ e_service_kvm_drag_cancel(esk);
}
static void
_tzsh_srv_kvm_cb_perform_drag_enter(struct wl_client *client EINA_UNUSED, struct wl_resource *resource)
{
E_Policy_Wl_Tzsh_Srv *tzsh_srv;
+ E_Service_Kvm *esk;
E_Client *ec;
+ if (!e_comp_wl->drag) return;
+
tzsh_srv = wl_resource_get_user_data(resource);
EINA_SAFETY_ON_NULL_RETURN(tzsh_srv);
ec = tzsh_srv->ec;
EINA_SAFETY_ON_NULL_RETURN(ec);
- if (!e_comp_wl->drag) return;
+ esk = e_service_kvm_service_get(ec);
+ EINA_SAFETY_ON_NULL_RETURN(esk);
- e_service_kvm_perform_drag_enter(ec);
+ e_service_kvm_perform_drag_enter(esk);
}
static void
_tzsh_srv_kvm_cb_perform_drag_leave(struct wl_client *client EINA_UNUSED, struct wl_resource *resource)
{
E_Policy_Wl_Tzsh_Srv *tzsh_srv;
+ E_Service_Kvm *esk;
E_Client *ec;
+ if (!e_comp_wl->drag) return;
+
tzsh_srv = wl_resource_get_user_data(resource);
EINA_SAFETY_ON_NULL_RETURN(tzsh_srv);
ec = tzsh_srv->ec;
EINA_SAFETY_ON_NULL_RETURN(ec);
- if (!e_comp_wl->drag) return;
+ esk = e_service_kvm_service_get(ec);
+ EINA_SAFETY_ON_NULL_RETURN(esk);
- e_service_kvm_perform_drag_leave(ec);
+ e_service_kvm_perform_drag_leave(esk);
}
static void
_tzsh_srv_kvm_cb_secondary_selection_set(struct wl_client *client EINA_UNUSED, struct wl_resource *resource)
{
E_Policy_Wl_Tzsh_Srv *tzsh_srv;
+ E_Service_Kvm *esk;
E_Client *ec;
+ if (!e_comp_wl->drag) return;
+
tzsh_srv = wl_resource_get_user_data(resource);
EINA_SAFETY_ON_NULL_RETURN(tzsh_srv);
ec = tzsh_srv->ec;
EINA_SAFETY_ON_NULL_RETURN(ec);
- e_service_kvm_secondary_selection_set(ec, EINA_TRUE);
+ esk = e_service_kvm_service_get(ec);
+ EINA_SAFETY_ON_NULL_RETURN(esk);
+
+ e_service_kvm_secondary_selection_set(esk, EINA_TRUE);
}
static void
_tzsh_srv_kvm_cb_secondary_selection_unset(struct wl_client *client EINA_UNUSED, struct wl_resource *resource)
{
E_Policy_Wl_Tzsh_Srv *tzsh_srv;
+ E_Service_Kvm *esk;
E_Client *ec;
+ if (!e_comp_wl->drag) return;
+
tzsh_srv = wl_resource_get_user_data(resource);
EINA_SAFETY_ON_NULL_RETURN(tzsh_srv);
ec = tzsh_srv->ec;
EINA_SAFETY_ON_NULL_RETURN(ec);
- e_service_kvm_secondary_selection_set(ec, EINA_FALSE);
+ esk = e_service_kvm_service_get(ec);
+ EINA_SAFETY_ON_NULL_RETURN(esk);
+
+ e_service_kvm_secondary_selection_set(esk, EINA_FALSE);
}
static void
_tzsh_srv_kvm_cb_perform_drop_target(struct wl_client *client EINA_UNUSED, struct wl_resource *resource, uint32_t drop_target)
{
E_Policy_Wl_Tzsh_Srv *tzsh_srv;
+ E_Service_Kvm *esk;
E_Client *ec;
+ if (!e_comp_wl->drag) return;
+
tzsh_srv = wl_resource_get_user_data(resource);
EINA_SAFETY_ON_NULL_RETURN(tzsh_srv);
ec = tzsh_srv->ec;
EINA_SAFETY_ON_NULL_RETURN(ec);
- if (!e_comp_wl->drag) return;
+ esk = e_service_kvm_service_get(ec);
+ EINA_SAFETY_ON_NULL_RETURN(esk);
- e_service_kvm_drop_perform(ec, drop_target);
+ e_service_kvm_drop_perform(esk, drop_target);
}
static const struct tws_service_kvm_interface _tzsh_srv_kvm_iface =
e_client_layer_set(ec, E_POLICY_KVM_LAYER);
}
- e_service_kvm_transparent_set(ec, EINA_TRUE);
+ e_service_kvm_transparent_set(esk, EINA_TRUE);
return EINA_TRUE;
}
}
EINTERN Eina_Bool
-e_service_kvm_drop_perform(E_Client *ec, E_Service_Kvm_Drop_Target drop_target)
+e_service_kvm_drop_perform(E_Service_Kvm *esk, E_Service_Kvm_Drop_Target drop_target)
{
- E_Service_Kvm *esk;
- E_Client *legacy_target_ec;
+ E_Client *ec, *legacy_target_ec;
- EINA_SAFETY_ON_NULL_RETURN_VAL(ec, EINA_FALSE);
- EINA_SAFETY_ON_NULL_RETURN_VAL(_kvm_service_hash, EINA_FALSE);
-
- esk = eina_hash_find(_kvm_service_hash, &ec);
+ EINA_SAFETY_ON_NULL_RETURN_VAL(esk, EINA_FALSE);
- if (!esk)
- {
- ELOGF("KVM", "ERROR... kvm service for ec doesn't exist.", ec);
- return EINA_FALSE;
- }
+ ec = esk->ec;
+ EINA_SAFETY_ON_NULL_RETURN_VAL(ec, EINA_FALSE);
ELOGF("KVM", "Drop perform requested! service:%p", ec, esk);
}
EINTERN Eina_Bool
-e_service_kvm_drag_cancel(E_Client *ec)
+e_service_kvm_drag_cancel(E_Service_Kvm *esk)
{
- E_Service_Kvm *esk;
-
- EINA_SAFETY_ON_NULL_RETURN_VAL(ec, EINA_FALSE);
- EINA_SAFETY_ON_NULL_RETURN_VAL(_kvm_service_hash, EINA_FALSE);
-
- esk = eina_hash_find(_kvm_service_hash, &ec);
-
- if (!esk)
- {
- ELOGF("KVM", "ERROR... kvm service for ec doesn't exist.", ec);
- return EINA_FALSE;
- }
+ EINA_SAFETY_ON_NULL_RETURN_VAL(esk, EINA_FALSE);
- ELOGF("KVM", "Cancel drag by kvm_service request! service:%p", ec, esk);
+ ELOGF("KVM", "Cancel drag by kvm_service request! service:%p", esk->ec, esk);
e_drag_end(e_comp_wl->drag, E_DND_DRAG_TYPE_CANCELLED_BY_KVM);
}
EINTERN Eina_Bool
-e_service_kvm_perform_drag_enter(E_Client *ec)
+e_service_kvm_perform_drag_enter(E_Service_Kvm *esk)
{
- E_Service_Kvm *esk;
-
- EINA_SAFETY_ON_NULL_RETURN_VAL(ec, EINA_FALSE);
- EINA_SAFETY_ON_NULL_RETURN_VAL(_kvm_service_hash, EINA_FALSE);
+ E_Client *ec;
- esk = eina_hash_find(_kvm_service_hash, &ec);
+ EINA_SAFETY_ON_NULL_RETURN_VAL(esk, EINA_FALSE);
- if (!esk)
- {
- ELOGF("KVM", "ERROR... kvm service for ec doesn't exist.", ec);
- return EINA_FALSE;
- }
+ ec = esk->ec;
+ EINA_SAFETY_ON_NULL_RETURN_VAL(ec, EINA_FALSE);
ELOGF("KVM", "Send force drag enter by kvm_service request! service:%p", ec, esk);
- _e_service_kvm_send_client_enter(esk->ec);
+ _e_service_kvm_send_client_enter(ec);
esk->force_entered = EINA_TRUE;
return EINA_TRUE;
}
EINTERN Eina_Bool
-e_service_kvm_perform_drag_leave(E_Client *ec)
+e_service_kvm_perform_drag_leave(E_Service_Kvm *esk)
{
- E_Service_Kvm *esk;
-
- EINA_SAFETY_ON_NULL_RETURN_VAL(ec, EINA_FALSE);
- EINA_SAFETY_ON_NULL_RETURN_VAL(_kvm_service_hash, EINA_FALSE);
+ E_Client *ec;
- esk = eina_hash_find(_kvm_service_hash, &ec);
+ EINA_SAFETY_ON_NULL_RETURN_VAL(esk, EINA_FALSE);
- if (!esk)
- {
- ELOGF("KVM", "ERROR... kvm service for ec doesn't exist.", ec);
- return EINA_FALSE;
- }
+ ec = esk->ec;
+ EINA_SAFETY_ON_NULL_RETURN_VAL(ec, EINA_FALSE);
ELOGF("KVM", "Send force drag leave by kvm_service request! service:%p", ec, esk);
- _e_service_kvm_send_client_leave(esk->ec);
+ _e_service_kvm_send_client_leave(ec);
esk->force_entered = EINA_FALSE;
return EINA_TRUE;
}
EINTERN Eina_Bool
-e_service_kvm_secondary_selection_set(E_Client *ec, Eina_Bool set)
+e_service_kvm_secondary_selection_set(E_Service_Kvm *esk, Eina_Bool set)
{
- E_Service_Kvm *esk;
-
- EINA_SAFETY_ON_NULL_RETURN_VAL(ec, EINA_FALSE);
- EINA_SAFETY_ON_NULL_RETURN_VAL(_kvm_service_hash, EINA_FALSE);
+ E_Client *ec;
- esk = eina_hash_find(_kvm_service_hash, &ec);
+ EINA_SAFETY_ON_NULL_RETURN_VAL(esk, EINA_FALSE);
- if (!esk)
- {
- ELOGF("KVM", "ERROR... kvm service for ec doesn't exist.", ec);
- return EINA_FALSE;
- }
+ ec = esk->ec;
+ EINA_SAFETY_ON_NULL_RETURN_VAL(ec, EINA_FALSE);
ELOGF("KVM", "secondary selection set requested! service:%p, set:%d", ec, esk, set);
}
EINTERN Eina_Bool
-e_service_kvm_transparent_set(E_Client *ec, Eina_Bool set)
+e_service_kvm_transparent_set(E_Service_Kvm *esk, Eina_Bool set)
{
- E_Service_Kvm *esk;
-
- EINA_SAFETY_ON_NULL_RETURN_VAL(ec, EINA_FALSE);
- EINA_SAFETY_ON_NULL_RETURN_VAL(_kvm_service_hash, EINA_FALSE);
+ E_Client *ec;
- esk = eina_hash_find(_kvm_service_hash, &ec);
+ EINA_SAFETY_ON_NULL_RETURN_VAL(esk, EINA_FALSE);
- if (!esk)
- {
- ELOGF("KVM", "ERROR... kvm service for ec doesn't exist.", ec);
- return EINA_FALSE;
- }
+ ec = esk->ec;
+ EINA_SAFETY_ON_NULL_RETURN_VAL(ec, EINA_FALSE);
ELOGF("KVM", "set KVM service(%p) client to %s", ec, esk, set? "transparent" : "opaque");
EINA_ITERATOR_FOREACH(it, esk)
{
- e_service_kvm_transparent_set(esk->ec, set);
+ e_service_kvm_transparent_set(esk, set);
}
eina_iterator_free(it);