]> git.sesse.net Git - kdenlive/blobdiff - src/clipitem.cpp
Fix parameter update when Direct update is not enabled
[kdenlive] / src / clipitem.cpp
index e80e3fcd9a1d5c0fbc70f77ffbe34888b55a84c7..f7e2b985b46b53aa378d1cea967e2553bd58c9e1 100644 (file)
@@ -397,6 +397,7 @@ void ClipItem::setKeyframes(const int ix, const QStringList keyframes)
                 double max = e.attribute("max").toDouble();
                 double min = e.attribute("min").toDouble();
                 m_keyframeFactor = 100.0 / (max - min);
+                m_keyframeOffset = min;
                 m_keyframeDefault = e.attribute("default").toDouble();
                 m_selectedKeyframe = 0;
                 // parse keyframes
@@ -431,6 +432,7 @@ void ClipItem::setSelectedEffect(const int ix)
                     double max = e.attribute("max").toDouble();
                     double min = e.attribute("min").toDouble();
                     m_keyframeFactor = 100.0 / (max - min);
+                    m_keyframeOffset = min;
                     m_keyframeDefault = e.attribute("default").toDouble();
                     m_selectedKeyframe = 0;
 
@@ -506,7 +508,7 @@ void ClipItem::resetThumbs(bool clearExistingThumbs)
 }
 
 
-void ClipItem::refreshClip(bool checkDuration)
+void ClipItem::refreshClip(bool checkDuration, bool forceResetThumbs)
 {
     if (checkDuration && (m_maxDuration != m_clip->maxDuration())) {
         m_maxDuration = m_clip->maxDuration();
@@ -527,7 +529,8 @@ void ClipItem::refreshClip(bool checkDuration)
         QString colour = m_clip->getProperty("colour");
         colour = colour.replace(0, 2, "#");
         m_baseColor = QColor(colour.left(7));
-    } else resetThumbs(checkDuration);
+        update();
+    } else resetThumbs(forceResetThumbs);
 }
 
 void ClipItem::slotFetchThumbs()