attempt to re-set wl surface pointer when popping back to "default" pointer type

this automatically handles the case where enlightenment has commandeered the
cursor temporarily and the active client has not unset+set a new cursor in the
meantime
This commit is contained in:
Mike Blumenkrantz 2016-12-02 10:51:57 -05:00
parent 28160ad450
commit 6aba66cee8
1 changed files with 10 additions and 1 deletions

View File

@ -459,7 +459,16 @@ _e_pointer_type_set(E_Pointer *ptr, const char *type)
_e_pointer_hot_update(ptr, x, y);
if (ptr->canvas)
e_pointer_object_set(ptr, NULL, 0, 0);
{
E_Client *ec = e_client_top_get();
if (ec && (e_comp->comp_type == E_PIXMAP_TYPE_WL) &&
(!e_pixmap_is_x(ec->pixmap)) && ec->override &&
eina_streq(type, "default"))
e_pointer_object_set(ptr, ec->frame, 0, 0);
else
e_pointer_object_set(ptr, NULL, 0, 0);
}
else
evas_object_show(ptr->o_ptr);