Compare commits

...

1 Commits

Author SHA1 Message Date
Marcel Hollerbach 04db77c4a9 e_comp: reschedule when size is invalid
there is no point updating when the size of the comp is 0x0
2023-03-07 18:51:55 +01:00
3 changed files with 11 additions and 0 deletions

View File

@ -960,6 +960,13 @@ _e_comp_shapes_update_job(void *d EINA_UNUSED)
win = e_comp->win;
else
win = e_comp->cm_selection;
if (e_comp->h <= 0 || e_comp->w <= 0)
{
e_comp->shape_update_on_resize = EINA_TRUE;
return;
}
E_FREE_LIST(e_comp->debug_rects, evas_object_del);
tb = eina_tiler_new(e_comp->w, e_comp->h);
eina_tiler_tile_size_set(tb, 1, 1);

View File

@ -192,6 +192,7 @@ struct _E_Comp
Eina_Bool updating E_BITFIELD; // running client updates
Eina_Bool frozen E_BITFIELD; // frozen - when power save freeze mode is on
Eina_Bool shape_update_on_resize E_BITFIELD; //a shape update was scheduled but e_comp size was 0 in one dimension
};

View File

@ -625,6 +625,9 @@ e_comp_canvas_resize(int w, int h)
e_comp->w = w;
e_comp->h = h;
ecore_evas_resize(e_comp->ee, w, h);
if (e_comp->shape_update_on_resize) {
e_comp_shape_queue();
}
}
E_API void