]> git.sesse.net Git - kdenlive/commitdiff
Fix monitor refresh loop when seeking to zone start or end points
authorJean-Baptiste Mardelle <jb@kdenlive.org>
Sun, 25 Jan 2009 21:04:40 +0000 (21:04 +0000)
committerJean-Baptiste Mardelle <jb@kdenlive.org>
Sun, 25 Jan 2009 21:04:40 +0000 (21:04 +0000)
svn path=/branches/KDE4/; revision=2962

src/monitor.cpp

index 8f8abf6b5d1df8af08ca964d381250b209699068..4aad50d9bf7c9c1f8e9e6a71e88b8ae1055d861b 100644 (file)
@@ -489,10 +489,10 @@ void Monitor::slotRewindOneFrame(int diff) {
     if (m_position < 1) return;
     m_position -= diff;
     m_position = qMax(m_position, 0);
-    checkOverlay();
     render->seekToFrame(m_position);
     emit renderPosition(m_position);
     m_timePos->setText(m_monitorManager->timecode().getTimecodeFromFrames(m_position));
+    checkOverlay();
 }
 
 void Monitor::slotForwardOneFrame(int diff) {
@@ -501,16 +501,15 @@ void Monitor::slotForwardOneFrame(int diff) {
     if (m_position >= m_length) return;
     m_position += diff;
     m_position = qMin(m_position, m_length);
-    checkOverlay();
     render->seekToFrame(m_position);
     emit renderPosition(m_position);
     m_timePos->setText(m_monitorManager->timecode().getTimecodeFromFrames(m_position));
+    checkOverlay();
 }
 
 void Monitor::seekCursor(int pos) {
     activateMonitor();
     m_position = pos;
-    //checkOverlay();
     m_timePos->setText(m_monitorManager->timecode().getTimecodeFromFrames(pos));
     m_ruler->slotNewValue(pos);
 }
@@ -519,6 +518,7 @@ void Monitor::rendererStopped(int pos) {
     //int rulerPos = (int)(pos * m_scale);
     m_ruler->slotNewValue(pos);
     m_position = pos;
+    checkOverlay();
     m_timePos->setText(m_monitorManager->timecode().getTimecodeFromFrames(pos));
     m_playAction->setChecked(false);
     m_playAction->setIcon(m_playIcon);
@@ -673,7 +673,7 @@ void MonitorRefresh::paintEvent(QPaintEvent * event) {
 
 Overlay::Overlay(QWidget* parent): QLabel(parent) {
     setAttribute(Qt::WA_TransparentForMouseEvents);
-    //setAttribute(Qt::WA_OpaquePaintEvent); //
+    setAttribute(Qt::WA_OpaquePaintEvent);
     //setAttribute(Qt::WA_NoSystemBackground);
     setAutoFillBackground(false);
 }