add wl util function for calculating pixmap id

This commit is contained in:
Mike Blumenkrantz 2015-02-06 16:01:02 -05:00
parent 5d2426cdda
commit 270bc92f81
3 changed files with 8 additions and 2 deletions

View File

@ -1193,7 +1193,7 @@ _e_comp_wl_compositor_cb_surface_create(struct wl_client *client, struct wl_reso
_e_comp_wl_surface_destroy);
wl_client_get_credentials(client, &pid, NULL, NULL);
win = ((uint64_t)id << 32) + pid;
win = e_comp_wl_id_get(id, pid);
/* check for existing pixmap */
if (!(ep = e_pixmap_find(E_PIXMAP_TYPE_WL, win)))
{

View File

@ -279,5 +279,11 @@ EINTERN void e_comp_wl_buffer_reference(E_Comp_Wl_Buffer_Ref *ref, E_Comp_Wl_Buf
EAPI struct wl_signal e_comp_wl_surface_create_signal_get(E_Comp *comp);
EAPI double e_comp_wl_idle_time_get(void);
static inline uint64_t
e_comp_wl_id_get(uint32_t id, pid_t pid)
{
return ((uint64_t)id << 32) + pid;
}
# endif
#endif

View File

@ -75,7 +75,7 @@ _e_elm_win_trap_show(void *data, Evas_Object *o)
type = E_PIXMAP_TYPE_WL;
ctx->pointer = e_comp->pointer;
elm_win_borderless_set(o, 1);
win = ((uint64_t)win << 32) + getpid();
win = e_comp_wl_id_get(win, getpid());
}
else
{