]> git.sesse.net Git - kdenlive/blobdiff - src/customtrackview.cpp
Fix wrong group moving when groups overlap
[kdenlive] / src / customtrackview.cpp
index a0447fae517f6c286b0b237b375844c222fc4c95..7178b2f5e7d8b379e7d83c6172b958722029c6c3 100644 (file)
@@ -799,7 +799,6 @@ void CustomTrackView::mousePressEvent(QMouseEvent * event)
        QGraphicsView::mousePressEvent(event);
         return;
     }
-
     // if a guide and a clip were pressed, just select the guide
     for (int i = 0; i < collisionList.count(); ++i) {
         if (collisionList.at(i)->type() == GUIDEITEM) {
@@ -1057,7 +1056,10 @@ void CustomTrackView::mousePressEvent(QMouseEvent * event)
        }*/
 
         bool selected = !m_dragItem->isSelected();
+       m_dragItem->setZValue(99);
+       if (m_dragItem->parentItem()) m_dragItem->parentItem()->setZValue(99);
        QGraphicsView::mousePressEvent(event);
+       
         if (dragGroup) {
             dragGroup->setSelected(selected);
            QList<QGraphicsItem *> children = dragGroup->childItems();
@@ -2807,9 +2809,11 @@ void CustomTrackView::dropEvent(QDropEvent * event)
             updateTrackDuration(info.track, addCommand);
 
             if (item->baseClip()->isTransparent() && getTransitionItemAtStart(info.startPos, info.track) == NULL) {
-                // add transparency transition
-                QDomElement trans = MainWindow::transitions.getEffectByTag("affine", QString()).cloneNode().toElement();
-                new AddTransitionCommand(this, info, getPreviousVideoTrack(info.track), trans, false, true, addCommand);
+                // add transparency transition if space is available
+               if (canBePastedTo(info, TRANSITIONWIDGET)) {
+                   QDomElement trans = MainWindow::transitions.getEffectByTag("affine", QString()).cloneNode().toElement();
+                   new AddTransitionCommand(this, info, getPreviousVideoTrack(info.track), trans, false, true, addCommand);
+               }
             }
             item->setSelected(true);
         }