summaryrefslogtreecommitdiffstats
path: root/src/citra_qt
diff options
context:
space:
mode:
Diffstat (limited to 'src/citra_qt')
-rw-r--r--src/citra_qt/bootmanager.cpp25
-rw-r--r--src/citra_qt/bootmanager.h4
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);