Commit db1ec66e authored by Vlad Zahorodnii's avatar Vlad Zahorodnii
Browse files

Revert "Move gesture direction to base class"

This reverts commit 634182d4.

It was pushed with unreviewed changes and not fully resolved issues.
parent e3df43c7
......@@ -19,8 +19,10 @@ class GestureTest : public QObject
{
Q_OBJECT
private Q_SLOTS:
void testDirection_data();
void testDirection();
void testSwipeDirection_data();
void testSwipeDirection();
void testPinchDirection_data();
void testPinchDirection();
// swipe only
void testMinimumX_data();
......@@ -52,30 +54,48 @@ private Q_SLOTS:
void testSwipeGeometryStart();
};
void GestureTest::testDirection_data()
void GestureTest::testSwipeDirection_data()
{
QTest::addColumn<GestureDirection>("direction");
QTest::addColumn<GestureDirection>("swipe_direction");
QTest::newRow("Up") << GestureDirection::Up;
QTest::newRow("Left") << GestureDirection::Left;
QTest::newRow("Right") << GestureDirection::Right;
QTest::newRow("Down") << GestureDirection::Down;
QTest::newRow("Contracting") << GestureDirection::Contracting;
QTest::newRow("Expanding") << GestureDirection::Expanding;
}
void GestureTest::testDirection()
void GestureTest::testSwipeDirection()
{
SwipeGesture gesture;
QCOMPARE(gesture.direction(), 0);
QFETCH(GestureDirection, direction);
gesture.setDirection(direction);
QCOMPARE(gesture.direction(), direction);
QCOMPARE(gesture.direction(), GestureDirection::Down);
QFETCH(GestureDirection, swipe_direction);
gesture.setDirection(swipe_direction);
QCOMPARE(gesture.direction(), swipe_direction);
// back to down
gesture.setDirection(GestureDirection::Down);
QCOMPARE(gesture.direction(), GestureDirection::Down);
}
void GestureTest::testPinchDirection_data()
{
QTest::addColumn<GestureDirection>("pinch_direction");
QTest::newRow("Contracting") << GestureDirection::Contracting;
QTest::newRow("Expanding") << GestureDirection::Expanding;
}
void GestureTest::testPinchDirection()
{
PinchGesture gesture;
QCOMPARE(gesture.direction(), GestureDirection::Expanding);
QFETCH(GestureDirection, pinch_direction);
gesture.setDirection(pinch_direction);
QCOMPARE(gesture.direction(), pinch_direction);
// back to down
gesture.setDirection(GestureDirection::Expanding);
QCOMPARE(gesture.direction(), GestureDirection::Expanding);
}
void GestureTest::testMinimumX_data()
{
QTest::addColumn<int>("min");
......
......@@ -367,6 +367,16 @@ void GestureRecognizer::endPinchGesture() // because fingers up
m_currentSwipeAxis = Axis::None;
}
GestureDirections SwipeGesture::direction() const
{
return m_direction;
}
void SwipeGesture::setDirection(GestureDirections direction)
{
m_direction = direction;
}
void SwipeGesture::setMinimumX(int x)
{
m_minimumX = x;
......@@ -447,6 +457,16 @@ bool SwipeGesture::isMinimumDeltaRelevant() const
return m_minimumDeltaRelevant;
}
GestureDirections PinchGesture::direction() const
{
return m_direction;
}
void PinchGesture::setDirection(GestureDirections direction)
{
m_direction = direction;
}
qreal PinchGesture::minimumScaleDelta() const
{
return m_minimumScaleDelta;
......@@ -490,14 +510,4 @@ QSet<uint> Gesture::acceptableFingerCounts() const
{
return m_validFingerCounts;
}
GestureDirections Gesture::direction() const
{
return m_direction;
}
void Gesture::setDirection(GestureDirections direction)
{
m_direction = direction;
}
}
......@@ -50,12 +50,8 @@ public:
bool isFingerCountAcceptable(uint fingers) const;
QSet<uint> acceptableFingerCounts() const;
GestureDirections direction() const;
void setDirection(GestureDirections direction);
protected:
explicit Gesture(QObject *parent);
GestureDirections m_direction;
Q_SIGNALS:
/**
......@@ -84,6 +80,9 @@ public:
explicit SwipeGesture(QObject *parent = nullptr);
~SwipeGesture() override;
GestureDirections direction() const;
void setDirection(GestureDirections direction);
void setMinimumX(int x);
int minimumX() const;
bool minimumXIsRelevant() const;
......@@ -119,6 +118,7 @@ Q_SIGNALS:
void deltaProgress(const QSizeF &delta);
private:
GestureDirections m_direction = GestureDirection::Down;
bool m_minimumXRelevant = false;
int m_minimumX = 0;
bool m_minimumYRelevant = false;
......@@ -138,6 +138,9 @@ public:
explicit PinchGesture(QObject *parent = nullptr);
~PinchGesture() override;
GestureDirections direction() const;
void setDirection(GestureDirections direction);
qreal minimumScaleDelta() const;
/**
......@@ -158,6 +161,7 @@ Q_SIGNALS:
void progress(qreal);
private:
GestureDirections m_direction = GestureDirection::Expanding;
bool m_minimumScaleDeltaRelevant = false;
qreal m_minimumScaleDelta = DEFAULT_UNIT_SCALE_DELTA;
};
......
......@@ -128,6 +128,7 @@ void GlobalShortcutsManager::registerGesture(GestureDeviceType device, GestureDi
if (isSwipeDirection(direction)) {
std::unique_ptr<SwipeGesture> gesture = std::make_unique<SwipeGesture>();
gesture->addFingerCount(fingerCount);
gesture->setDirection(direction);
gesture->setMinimumDelta(QSizeF(200, 200));
connect(gesture.get(), &SwipeGesture::progress, progressCallback);
connect(gesture.get(), &Gesture::triggered, onUp, &QAction::trigger, Qt::QueuedConnection);
......@@ -136,12 +137,12 @@ void GlobalShortcutsManager::registerGesture(GestureDeviceType device, GestureDi
} else if (isPinchDirection(direction)) {
std::unique_ptr<PinchGesture> gesture = std::make_unique<PinchGesture>();
gesture->addFingerCount(fingerCount);
gesture->setDirection(direction);
connect(gesture.get(), &PinchGesture::progress, progressCallback);
connect(gesture.get(), &Gesture::triggered, onUp, &QAction::trigger, Qt::QueuedConnection);
connect(gesture.get(), &Gesture::cancelled, onUp, &QAction::trigger, Qt::QueuedConnection);
shortcut.pinchGesture = std::move(gesture);
}
shortcut.gesture()->setDirection(direction);
addIfNotExists(GlobalShortcut(std::move(shortcut), onUp), device);
}
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment