input: prevent seat touch methods from being called when there's no touch
Otherwise we get a crash as we are asserting with Q_ASSERT(d->touch).
This commit is contained in:
parent
58debd72a3
commit
9786ea3c58
1 changed files with 5 additions and 3 deletions
|
@ -195,13 +195,15 @@ void TouchInputRedirection::cancel()
|
|||
// up events will be silently ignored and won't be passed down through the event filter chain.
|
||||
// If the touch sequence is cancelled because we received a TOUCH_CANCEL event from libinput,
|
||||
// the compositor will not receive any TOUCH_MOTION or TOUCH_UP events for that slot.
|
||||
if (!m_activeTouchPoints.isEmpty()) {
|
||||
m_activeTouchPoints.clear();
|
||||
waylandServer()->seat()->cancelTouchSequence();
|
||||
}
|
||||
}
|
||||
|
||||
void TouchInputRedirection::frame()
|
||||
{
|
||||
if (!inited()) {
|
||||
if (!inited() || !waylandServer()->seat()->hasTouch()) {
|
||||
return;
|
||||
}
|
||||
waylandServer()->seat()->touchFrame();
|
||||
|
|
Loading…
Reference in a new issue