diff --git a/Source/Core/DolphinQt/TAS/IRWidget.cpp b/Source/Core/DolphinQt/TAS/IRWidget.cpp index 2943d590ee..fe1b31e73c 100644 --- a/Source/Core/DolphinQt/TAS/IRWidget.cpp +++ b/Source/Core/DolphinQt/TAS/IRWidget.cpp @@ -61,11 +61,13 @@ void IRWidget::paintEvent(QPaintEvent* event) void IRWidget::mousePressEvent(QMouseEvent* event) { handleMouseEvent(event); + m_ignore_movement = event->button() == Qt::RightButton; } void IRWidget::mouseMoveEvent(QMouseEvent* event) { - handleMouseEvent(event); + if (!m_ignore_movement) + handleMouseEvent(event); } void IRWidget::handleMouseEvent(QMouseEvent* event) diff --git a/Source/Core/DolphinQt/TAS/IRWidget.h b/Source/Core/DolphinQt/TAS/IRWidget.h index abf8ffdb92..f269a7ec63 100644 --- a/Source/Core/DolphinQt/TAS/IRWidget.h +++ b/Source/Core/DolphinQt/TAS/IRWidget.h @@ -31,6 +31,7 @@ protected: private: u16 m_x = 0; u16 m_y = 0; + bool m_ignore_movement = false; }; // Should be part of class but fails to compile on mac os diff --git a/Source/Core/DolphinQt/TAS/StickWidget.cpp b/Source/Core/DolphinQt/TAS/StickWidget.cpp index 4e79fa85c0..b6ce40a7e4 100644 --- a/Source/Core/DolphinQt/TAS/StickWidget.cpp +++ b/Source/Core/DolphinQt/TAS/StickWidget.cpp @@ -62,11 +62,13 @@ void StickWidget::paintEvent(QPaintEvent* event) void StickWidget::mousePressEvent(QMouseEvent* event) { handleMouseEvent(event); + m_ignore_movement = event->button() == Qt::RightButton; } void StickWidget::mouseMoveEvent(QMouseEvent* event) { - handleMouseEvent(event); + if (!m_ignore_movement) + handleMouseEvent(event); } void StickWidget::handleMouseEvent(QMouseEvent* event) diff --git a/Source/Core/DolphinQt/TAS/StickWidget.h b/Source/Core/DolphinQt/TAS/StickWidget.h index eec6d1c633..e23acdbea2 100644 --- a/Source/Core/DolphinQt/TAS/StickWidget.h +++ b/Source/Core/DolphinQt/TAS/StickWidget.h @@ -33,4 +33,5 @@ private: u16 m_max_y; u16 m_x = 0; u16 m_y = 0; + bool m_ignore_movement = false; };