timeline: Add clip markers display and management
This lays ground for implementing the beat detection feature, which will heavily utilize elements implemented here.
Mostly finished. Looking for feedback, both UX- and code-quality wise, as I know there are lots of things to possibly improve in that regard.
Important: depends on changes coming in the 1.20 GES release.
ClipMarkersBox, inheriting from the already existing (timeline)
MarkersBox, which makes it possible to display and manage (add / move / remove) markers on each clip (or more precisely - source).
- Clips are displayed per-source, so audio markers are separate from the video ones, for example.
MarkerListManageris introduced to act as central point of handling marker lists on a given element - initializes a default list on the source it's attached to, exposes methods for adding / removing lists, changing their snappability, as well as takes care of changing the active one (turning off snapppability when a list is not visible, for example)
- Adds necessary settings (
MarkerListManager) to manage which list we want to display (or hide, if we don't need any markers), change whether we want them to be snappable, etc.
- Moves marker-seeking / adding keyboard shortcut actions to the
TimelineContainer, which takes into account all selected clips when performing an action, or focuses on the timeline markers if no clips are selected.