* videotimeline now immediately marks the session dirty on
every state-changing operation
* video-montor is polled every 2.5 seconds for menu-relevant state info
(ontop, OSD,..) and every 30 seconds for full state (window pos, size,..)
* new interface to query the video-monitor for its state and wait for
all replies - terminating the process and using ::wait() is no longer
required
* Ardour> quit and Ardour > close-session does no longer close the video
session to enforce video-monitor state sync but uses above new interface
the videotimeline is a global unique instance that is allocated during
startup and deleted on exit. The Scopedconnection is not deleted
with the session.
timeline thumbnail display, moving (drag/drop) and zoom works.
There still some crashes e.g. resizing the height of the timeline
and with off-screen image buffering when zooming in.
Likely due to concurrency issues:
VideoImageFrame::exposeimg() and direct access of the pixbuf:
"Assertion `!_bounding_box_dirty' failed." in canvas/item.cc:191
more work is needed..
* Menu > View > Video Monitor -- bi-directional communication
with xjadeo for window-state and OSD.
* fix saving state on session close (wait for xjadeo to terminate)
Hide most of the setup complexity that is irrelevant when
running the video-server on the same host as Ardour.
Add an abstraction layer to the config which will become
important later when /building in/ the video-server.