Make the frames cache stored in the timeline weak pointer
When the user changes the canvas type and the openGL canvas gets deleted,
the timeline should not still store the frames cache. Otherwise, the tile
objects will be be able to be destroyed.
Ref T1185