Changeset View
Changeset View
Standalone View
Standalone View
input.cpp
Show First 20 Lines • Show All 334 Lines • ▼ Show 20 Line(s) | 334 | if (!effects) { | |||
---|---|---|---|---|---|
335 | return false; | 335 | return false; | ||
336 | } | 336 | } | ||
337 | return static_cast<EffectsHandlerImpl*>(effects)->checkInputWindowEvent(event); | 337 | return static_cast<EffectsHandlerImpl*>(effects)->checkInputWindowEvent(event); | ||
338 | } | 338 | } | ||
339 | bool keyEvent(QKeyEvent *event) override { | 339 | bool keyEvent(QKeyEvent *event) override { | ||
340 | if (!effects || !static_cast< EffectsHandlerImpl* >(effects)->hasKeyboardGrab()) { | 340 | if (!effects || !static_cast< EffectsHandlerImpl* >(effects)->hasKeyboardGrab()) { | ||
341 | return false; | 341 | return false; | ||
342 | } | 342 | } | ||
343 | waylandServer()->seat()->setFocusedKeyboardSurface(nullptr); | ||||
343 | static_cast< EffectsHandlerImpl* >(effects)->grabbedKeyboardEvent(event); | 344 | static_cast< EffectsHandlerImpl* >(effects)->grabbedKeyboardEvent(event); | ||
344 | return true; | 345 | return true; | ||
345 | } | 346 | } | ||
346 | }; | 347 | }; | ||
347 | 348 | | |||
348 | class MoveResizeFilter : public InputEventFilter { | 349 | class MoveResizeFilter : public InputEventFilter { | ||
349 | public: | 350 | public: | ||
350 | bool pointerEvent(QMouseEvent *event, quint32 nativeButton) override { | 351 | bool pointerEvent(QMouseEvent *event, quint32 nativeButton) override { | ||
▲ Show 20 Lines • Show All 131 Lines • ▼ Show 20 Line(s) | 476 | if (QWindow *w = (*it)->internalWindow()) { | |||
482 | found = w; | 483 | found = w; | ||
483 | break; | 484 | break; | ||
484 | } | 485 | } | ||
485 | } while (it != internalClients.begin()); | 486 | } while (it != internalClients.begin()); | ||
486 | if (!found) { | 487 | if (!found) { | ||
487 | return false; | 488 | return false; | ||
488 | } | 489 | } | ||
489 | event->setAccepted(false); | 490 | event->setAccepted(false); | ||
490 | return QCoreApplication::sendEvent(found, event); | 491 | if (QCoreApplication::sendEvent(found, event)) { | ||
492 | waylandServer()->seat()->setFocusedKeyboardSurface(nullptr); | ||||
493 | return true; | ||||
494 | } | ||||
495 | return false; | ||||
491 | } | 496 | } | ||
492 | 497 | | |||
493 | bool touchDown(quint32 id, const QPointF &pos, quint32 time) override { | 498 | bool touchDown(quint32 id, const QPointF &pos, quint32 time) override { | ||
494 | auto seat = waylandServer()->seat(); | 499 | auto seat = waylandServer()->seat(); | ||
495 | if (seat->isTouchSequence()) { | 500 | if (seat->isTouchSequence()) { | ||
496 | // something else is getting the events | 501 | // something else is getting the events | ||
497 | return false; | 502 | return false; | ||
498 | } | 503 | } | ||
▲ Show 20 Lines • Show All 214 Lines • ▼ Show 20 Line(s) | 717 | if (!TabBox::TabBox::self() || !TabBox::TabBox::self()->isGrabbed()) { | |||
713 | return false; | 718 | return false; | ||
714 | } | 719 | } | ||
715 | return TabBox::TabBox::self()->handleMouseEvent(event); | 720 | return TabBox::TabBox::self()->handleMouseEvent(event); | ||
716 | } | 721 | } | ||
717 | bool keyEvent(QKeyEvent *event) override { | 722 | bool keyEvent(QKeyEvent *event) override { | ||
718 | if (!TabBox::TabBox::self() || !TabBox::TabBox::self()->isGrabbed()) { | 723 | if (!TabBox::TabBox::self() || !TabBox::TabBox::self()->isGrabbed()) { | ||
719 | return false; | 724 | return false; | ||
720 | } | 725 | } | ||
726 | waylandServer()->seat()->setFocusedKeyboardSurface(nullptr); | ||||
721 | if (event->type() == QEvent::KeyPress) | 727 | if (event->type() == QEvent::KeyPress) | ||
722 | TabBox::TabBox::self()->keyPress(event->modifiers() | event->key()); | 728 | TabBox::TabBox::self()->keyPress(event->modifiers() | event->key()); | ||
723 | return true; | 729 | return true; | ||
724 | } | 730 | } | ||
725 | bool wheelEvent(QWheelEvent *event) override { | 731 | bool wheelEvent(QWheelEvent *event) override { | ||
726 | if (!TabBox::TabBox::self() || !TabBox::TabBox::self()->isGrabbed()) { | 732 | if (!TabBox::TabBox::self() || !TabBox::TabBox::self()->isGrabbed()) { | ||
727 | return false; | 733 | return false; | ||
728 | } | 734 | } | ||
▲ Show 20 Lines • Show All 851 Lines • Show Last 20 Lines |