Do not handle ScreenEdges::check for Edges which don't activate for Pointer
Summary: On X11 the edges reserved only for pointer started to show the approach geometry. This problem is addressed by this change. Touch screen events do not go through this method, neither is it used on Wayland. Test Plan: Tested on X11, problem fixed Reviewers: #kwin, #plasma Subscribers: plasma-devel, kwin Tags: #kwin Differential Revision: https://phabricator.kde.org/D5421icc-effect-5.14.5
parent
873a51cc62
commit
c3ecf55bf8
|
@ -918,6 +918,9 @@ void TestScreenEdges::testTouchEdge()
|
|||
setPos(QPoint(0, 50));
|
||||
QCOMPARE(s->isEntered(&event), false);
|
||||
QVERIFY(approachingSpy.isEmpty());
|
||||
// let's also verify the check
|
||||
s->check(QPoint(0, 50), QDateTime::currentDateTime(), false);
|
||||
QVERIFY(approachingSpy.isEmpty());
|
||||
|
||||
s->gestureRecognizer()->startSwipeGesture(QPoint(0, 50));
|
||||
QCOMPARE(approachingSpy.count(), 1);
|
||||
|
|
|
@ -1339,6 +1339,9 @@ void ScreenEdges::check(const QPoint &pos, const QDateTime &now, bool forceNoPus
|
|||
if (!(*it)->isReserved()) {
|
||||
continue;
|
||||
}
|
||||
if (!(*it)->activatesForPointer()) {
|
||||
continue;
|
||||
}
|
||||
if ((*it)->approachGeometry().contains(pos)) {
|
||||
(*it)->startApproaching();
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue