From kde-commits Thu Dec 15 21:58:50 2016 From: Jean-Baptiste Mardelle Date: Thu, 15 Dec 2016 21:58:50 +0000 To: kde-commits Subject: [kdenlive] src: Merge branch '16.12' Message-Id: X-MARC-Message: https://marc.info/?l=kde-commits&m=148183914024488 Git commit 5decf0f94081f8fd1ccc901252ac90c1d6625fcb by Jean-Baptiste Mardel= le. Committed on 15/12/2016 at 21:56. Pushed by mardelle into branch 'master'. Merge branch '16.12' M +28 -15 src/effectstack/graphicsscenerectmove.cpp M +17 -13 src/monitor/glwidget.cpp M +5 -2 src/monitor/monitor.cpp https://commits.kde.org/kdenlive/5decf0f94081f8fd1ccc901252ac90c1d6625fcb diff --cc src/effectstack/graphicsscenerectmove.cpp index d05eb5787,c2f526c45..53a7aa2d3 --- a/src/effectstack/graphicsscenerectmove.cpp +++ b/src/effectstack/graphicsscenerectmove.cpp @@@ -598,12 -577,11 +599,13 @@@ void GraphicsSceneRectMove::mouseDouble = void GraphicsSceneRectMove::mouseReleaseEvent(QGraphicsSceneMouseEvent *e) { + m_pan =3D false; - if (m_tool =3D=3D TITLE_RECTANGLE && m_selectedItem) setSelectedItem(= m_selectedItem); + if (m_tool =3D=3D TITLE_RECTANGLE && m_selectedItem) { + setSelectedItem(m_selectedItem); + } if (m_createdText) { m_selectedItem->setSelected(true); - MyTextItem *newText =3D static_cast(m_selectedItem); + MyTextItem *newText =3D static_cast(m_selectedItem); QTextCursor cur(newText->document()); cur.select(QTextCursor::Document); newText->setTextCursor(cur); @@@ -621,8 -599,19 +623,19 @@@ emit actionFinished(); } = -void GraphicsSceneRectMove::mousePressEvent(QGraphicsSceneMouseEvent* e) +void GraphicsSceneRectMove::mousePressEvent(QGraphicsSceneMouseEvent *e) { + if (e->buttons() & Qt::MiddleButton) { + clearTextSelection(); + QList viewlist =3D views(); + if (!viewlist.isEmpty()) { + viewlist.first()->setDragMode(QGraphicsView::ScrollHandDrag); + m_pan =3D true; + e->accept(); + QGraphicsScene::mousePressEvent(e); + return; + } + } int xPos =3D ((int) e->scenePos().x() / m_gridSize) * m_gridSize; int yPos =3D ((int) e->scenePos().y() / m_gridSize) * m_gridSize; m_moveStarted =3D false; @@@ -746,16 -733,23 +758,23 @@@ void GraphicsSceneRectMove::clearTextSe clearSelection(); } = -void GraphicsSceneRectMove::mouseMoveEvent(QGraphicsSceneMouseEvent* e) +void GraphicsSceneRectMove::mouseMoveEvent(QGraphicsSceneMouseEvent *e) { + QList viewlist =3D views(); + if (viewlist.isEmpty()) { + e->ignore(); + return; + } + QGraphicsView *view =3D viewlist.first(); + if (m_pan) { + QPoint diff =3D e->lastScreenPos() - e->screenPos(); + view->horizontalScrollBar()->setValue(view->horizontalScrollBar()= ->value() + diff.x()); + view->verticalScrollBar()->setValue(view->verticalScrollBar()->va= lue() + diff.y()); + e->accept(); + QGraphicsScene::mouseMoveEvent(e); + return; + } if (e->buttons() !=3D Qt::NoButton && !m_moveStarted) { - QList viewlist =3D views(); - if (viewlist.isEmpty()) { - // invalid - e->accept(); - return; - } - QGraphicsView *view =3D viewlist.at(0); if ((view->mapFromScene(e->scenePos()) - view->mapFromScene(m_cli= ckPoint)).manhattanLength() < QApplication::startDragDistance()) { e->ignore(); QGraphicsScene::mouseMoveEvent(e); diff --cc src/monitor/glwidget.cpp index 120042b61,cd4f56add..81439a729 --- a/src/monitor/glwidget.cpp +++ b/src/monitor/glwidget.cpp @@@ -567,9 -569,10 +567,9 @@@ void GLWidget::wheelEvent(QWheelEvent * event->accept(); } = - -void GLWidget::mousePressEvent(QMouseEvent* event) +void GLWidget::mousePressEvent(QMouseEvent *event) { - if (rootObject() && rootObject()->objectName() !=3D QLatin1String("ro= ot") && !(event->modifiers() & Qt::ControlModifier)) { + if (rootObject() && rootObject()->objectName() !=3D QLatin1String("ro= ot") && !(event->modifiers() & Qt::ControlModifier) && !(event->buttons() &= Qt::MiddleButton)) { event->ignore(); QQuickView::mousePressEvent(event); return; @@@ -591,9 -596,9 +593,9 @@@ QQuickView::mousePressEvent(event); } = -void GLWidget::mouseMoveEvent(QMouseEvent* event) +void GLWidget::mouseMoveEvent(QMouseEvent *event) { - if (rootObject() && rootObject()->objectName() !=3D QLatin1String("ro= ot") && !(event->modifiers() & Qt::ControlModifier)) { + if (rootObject() && rootObject()->objectName() !=3D QLatin1String("ro= ot") && !(event->modifiers() & Qt::ControlModifier) && !(event->buttons() &= Qt::MiddleButton)) { event->ignore(); QQuickView::mouseMoveEvent(event); return; @@@ -606,19 -619,13 +616,13 @@@ QQuickView::mouseMoveEvent(event); return; } - if (!m_dragStart.isNull() && (event->pos() - m_dragStart).manhattanLe= ngth() >=3D QApplication::startDragDistance()) { - if (!event->isAccepted() && !m_dragStart.isNull() && (event->pos() -= m_dragStart).manhattanLength() >=3D QApplication::startDragDistance()) { ++ if (!event->isAccepted() && !m_dragStart.isNull() && (event->pos() - = m_dragStart).manhattanLength() >=3D QApplication::startDragDistance()) { m_dragStart =3D QPoint(); emit startDrag(); } - if (!m_panStart.isNull()) { - emit panView(m_panStart - event->pos()); - m_panStart =3D event->pos(); - event->accept(); - } - QQuickView::mouseMoveEvent(event); } = -void GLWidget::keyPressEvent(QKeyEvent* event) +void GLWidget::keyPressEvent(QKeyEvent *event) { QQuickView::keyPressEvent(event); if (!event->isAccepted()) {