EAPI Eina_Bool ecore_wl2_buffer_busy_get(Ecore_Wl2_Buffer *buffer);
EAPI void ecore_wl2_buffer_busy_set(Ecore_Wl2_Buffer *buffer);
EAPI int ecore_wl2_buffer_age_get(Ecore_Wl2_Buffer *buffer);
+EAPI void ecore_wl2_buffer_age_set(Ecore_Wl2_Buffer *buffer, int age);
EAPI Ecore_Wl2_Surface *ecore_wl2_surface_create(Ecore_Wl2_Window *win, Eina_Bool alpha);
EAPI void ecore_wl2_surface_destroy(Ecore_Wl2_Surface *surface);
return buffer->age;
}
+EAPI void ecore_wl2_buffer_age_set(Ecore_Wl2_Buffer *buffer, int age)
+{
+ EINA_SAFETY_ON_NULL_RETURN(buffer);
+
+ buffer->age = age;
+}
+
static Ecore_Wl2_Buffer *
_ecore_wl2_buffer_partial_create(int w, int h, Eina_Bool alpha)
{
best = ecore_wl2_buffer_create(ewd, s->w, s->h, s->alpha);
/* Start at -1 so it's age is incremented to 0 for first draw */
- best->age = -1;
+ ecore_wl2_buffer_age_set(best, -1);
s->buffers = eina_list_append(s->buffers, best);
}
return best;
*/
WRN("No free DMAbuf buffers, dropping a frame");
EINA_LIST_FOREACH(s->buffers, l, b)
- b->age = 0;
+ ecore_wl2_buffer_age_set(b, 0);
return 0;
}
EINA_LIST_FOREACH(s->buffers, l, b)
s->current = NULL;
ecore_wl2_buffer_busy_set(b);
- b->age = 0;
+ ecore_wl2_buffer_age_set(b, 0);
ecore_wl2_window_buffer_attach(s->wl2_win, b->wl_buffer, 0, 0, EINA_FALSE);
ecore_wl2_window_damage(s->wl2_win, rects, count);