]> git.sesse.net Git - kdenlive/blobdiff - src/monitor.cpp
Fix dropframe timecode, patch from John T. Mertz
[kdenlive] / src / monitor.cpp
index b366f6d4a92bca7446f6bf3f26e18beee57c6a4b..9504ec4fcc1147e78a36e226f1541ac581389693 100644 (file)
@@ -118,7 +118,8 @@ Monitor::Monitor(QString name, MonitorManager *manager, QString profile, QWidget
     if (m_frametimecode) {
         m_timePos->setInputMask(QString());
         m_timePos->setValidator(new QIntValidator(this));
-    } else m_timePos->setInputMask("99:99:99:99");
+    } else m_timePos->setInputMask(m_monitorManager->timecode().inputMask());
+    
     toolbar->addWidget(m_timePos);
 
     connect(m_timePos, SIGNAL(editingFinished()), this, SLOT(slotSeek()));
@@ -509,7 +510,7 @@ bool Monitor::isActive() const
 void Monitor::activateMonitor()
 {
     if (!m_isActive) {
-        m_monitorManager->slotSwitchMonitors();
+        m_monitorManager->slotSwitchMonitors(m_name == "clip");
     }
 }
 
@@ -639,13 +640,6 @@ void Monitor::seekCursor(int pos)
 
 void Monitor::rendererStopped(int pos)
 {
-    if (m_currentClip != NULL && m_playAction->isChecked()) {
-        // Clip monitor
-        if (m_isActive && pos >= m_length - 1) {
-            slotStart();
-            return;
-        }
-    }
     if (m_ruler->slotNewValue(pos)) {
         checkOverlay();
         if (m_frametimecode) m_timePos->setText(QString::number(pos));
@@ -851,7 +845,7 @@ void Monitor::updateTimecodeFormat()
     } else {
         int pos = m_timePos->text().toInt();
         m_timePos->setValidator(0);
-        m_timePos->setInputMask("99:99:99:99");
+        m_timePos->setInputMask(m_monitorManager->timecode().inputMask());
         m_timePos->setText(m_monitorManager->timecode().getTimecodeFromFrames(pos));
     }
 }