shape event update