[TASK] [NESTING] Timeline preview should be bound to a TimelineModel
We need to design a better encapsulation for the preview rendering. It deserves its own class, and should be bound to a TimelineModel, not a timelinecontroller. Ideally, a lot of the logic that is currently spread across many places should be deferred to this new class. As an example, we have a check to cancel invalidation if only a sound clip was modified. This is an important check, but this logic should be transferred to the new class for a better separation of concerns.
Finally, we need to write tests for it.
WIKI Project-File-Refactoring: https://invent.kde.org/multimedia/kdenlive/-/wikis/dev/ideas/Project-File-Refactoring/