diff options
Diffstat (limited to '')
-rw-r--r-- | src/citra_qt/bootmanager.cpp | 25 | ||||
-rw-r--r-- | src/citra_qt/bootmanager.h | 4 |
2 files changed, 29 insertions, 0 deletions
diff --git a/src/citra_qt/bootmanager.cpp b/src/citra_qt/bootmanager.cpp index a040e75c1..cf07e65cc 100644 --- a/src/citra_qt/bootmanager.cpp +++ b/src/citra_qt/bootmanager.cpp @@ -278,6 +278,31 @@ void GRenderWindow::keyReleaseEvent(QKeyEvent* event) Service::HID::PadUpdateComplete(); } +void GRenderWindow::mousePressEvent(QMouseEvent *event) +{ + if (event->button() == Qt::LeftButton) { + auto pos = event->pos(); + EmuWindow::TouchPressed(GetFramebufferLayout(), static_cast<u16>(pos.x()), + static_cast<u16>(pos.y())); + } +} + +void GRenderWindow::mouseMoveEvent(QMouseEvent *event) +{ + auto pos = event->pos(); + EmuWindow::TouchMoved(GetFramebufferLayout(), static_cast<u16>(pos.x()), + static_cast<u16>(pos.y())); +} + +void GRenderWindow::mouseReleaseEvent(QMouseEvent *event) +{ + if (event->button() == Qt::LeftButton) { + auto pos = event->pos(); + EmuWindow::TouchReleased(GetFramebufferLayout(), static_cast<u16>(pos.x()), + static_cast<u16>(pos.y())); + } +} + void GRenderWindow::ReloadSetKeymaps() { KeyMap::SetKeyMapping({Settings::values.pad_a_key, keyboard_id}, Service::HID::PAD_A); diff --git a/src/citra_qt/bootmanager.h b/src/citra_qt/bootmanager.h index a55db682a..288da45a1 100644 --- a/src/citra_qt/bootmanager.h +++ b/src/citra_qt/bootmanager.h @@ -121,6 +121,10 @@ public: void keyPressEvent(QKeyEvent* event) override; void keyReleaseEvent(QKeyEvent* event) override; + void mousePressEvent(QMouseEvent *event) override; + void mouseMoveEvent(QMouseEvent *event) override; + void mouseReleaseEvent(QMouseEvent *event) override; + void ReloadSetKeymaps() override; void OnClientAreaResized(unsigned width, unsigned height); |