Fix glitchy timeline slider if its update timer goes off while a seek is happening.
authorCarl Hetherington <cth@carlh.net>
Tue, 14 Apr 2020 22:50:11 +0000 (00:50 +0200)
committerCarl Hetherington <cth@carlh.net>
Tue, 14 Apr 2020 22:50:11 +0000 (00:50 +0200)
src/wx/controls.cc
src/wx/film_viewer.h

index 92103637cf4d41c628bb22f831ba654df8624c59..ec6d4ff4c523435b68ba9df23678a9fc8f4b313c 100644 (file)
@@ -170,7 +170,7 @@ Controls::stopped ()
 void
 Controls::update_position ()
 {
-       if (!_slider_being_moved) {
+       if (!_slider_being_moved && !_viewer->pending_idle_get()) {
                update_position_label ();
                update_position_slider ();
        }
index c54ff6eb44e78301689445ca4e4629afc4c76661..f7c31468b75e8985c23453654b92189cb625f7d6 100644 (file)
@@ -134,6 +134,10 @@ public:
        }
        void finished ();
 
+       bool pending_idle_get () const {
+               return _idle_get;
+       }
+
        boost::signals2::signal<void (boost::weak_ptr<PlayerVideo>)> ImageChanged;
        boost::signals2::signal<void (dcpomatic::DCPTime)> Started;
        boost::signals2::signal<void (dcpomatic::DCPTime)> Stopped;