CanvasRenderer: Refactoring tvgObject management
Thorvg is designed for immediate rendering, tvg objects use unique ptr.
However, CanvasRenderer, Shape, Drawable, and DrawableGroup inherit BaseHandle
and work according to the lifecycle of Dali objects.
CanvasRenderer classes unnecessarily checks whether tvgObject is deleted.
So we don't push each in each AddDrawable method. Just before drawing,
we clear the canvas and push all the objects managed by the list directly.
The memory of the pushed object is managed in the canvas.
Each Drawable class only needs to manage its own tvg object.
Change-Id: If6c8d08b02c32ef6e359292cdc048e81214a99e7
18 files changed: