Merge master.
[dcpomatic.git] / src / lib / playlist.cc
index 22412da4a3640b5313cd6d75cdb25422a4ee08f6..4580e54d400e40e9fc59f7eaebec9bd806f8520d 100644 (file)
@@ -62,6 +62,12 @@ Playlist::~Playlist ()
 void
 Playlist::content_changed (weak_ptr<Content> content, int property, bool frequent)
 {
+       /* Don't respond to position changes here, as:
+          - sequencing after earlier/later changes is handled by move_earlier/move_later
+          - any other position changes will be timeline drags which should not result in content
+          being sequenced.
+       */
+       
        if (property == ContentProperty::LENGTH || property == VideoContentProperty::VIDEO_FRAME_TYPE) {
                maybe_sequence_video ();
        }
@@ -393,6 +399,6 @@ Playlist::move_later (shared_ptr<Content> c)
        }
 
        (*next)->set_position (c->position ());
-       c->set_position (c->position() + c->length_after_trim ());
+       c->set_position (c->position() + (*next)->length_after_trim ());
        sort (_content.begin(), _content.end(), ContentSorter ());
 }