mirror of
https://github.com/AleziaKurdis/overte.git
synced 2025-08-05 06:05:11 +02:00
Crash fix for moving reticle via script.
sendMessage is not thread-safe, use invokeMethod to call into application thread instead.
This commit is contained in:
parent
0d62b10a8f
commit
3d71226f72
3 changed files with 5 additions and 5 deletions
|
@ -2173,9 +2173,9 @@ void Application::maybeToggleMenuVisible(QMouseEvent* event) {
|
|||
}
|
||||
|
||||
/// called by ApplicationCompositor when in HMD mode and we're faking our mouse movement
|
||||
void Application::fakeMouseEvent(QMouseEvent* event) {
|
||||
void Application::fakeMouseEvent(QMouseEvent event) {
|
||||
_fakedMouseEvent = true;
|
||||
sendEvent(_glWidget, event);
|
||||
sendEvent(_glWidget, &event);
|
||||
_fakedMouseEvent = false;
|
||||
}
|
||||
|
||||
|
|
|
@ -221,8 +221,6 @@ public:
|
|||
|
||||
float getAverageSimsPerSecond();
|
||||
|
||||
void fakeMouseEvent(QMouseEvent* event);
|
||||
|
||||
signals:
|
||||
void svoImportRequested(const QString& url);
|
||||
|
||||
|
@ -283,6 +281,8 @@ public slots:
|
|||
|
||||
void runTests();
|
||||
|
||||
void fakeMouseEvent(QMouseEvent event);
|
||||
|
||||
private slots:
|
||||
void showDesktop();
|
||||
void clearDomainOctreeDetails();
|
||||
|
|
|
@ -457,7 +457,7 @@ void ApplicationCompositor::setReticlePosition(glm::vec2 position, bool sendFake
|
|||
auto buttons = QApplication::mouseButtons();
|
||||
auto modifiers = QApplication::keyboardModifiers();
|
||||
QMouseEvent event(QEvent::MouseMove, globalPos, button, buttons, modifiers);
|
||||
qApp->fakeMouseEvent(&event);
|
||||
QMetaObject::invokeMethod(qApp, "fakeMouseEvent", Qt::AutoConnection, Q_ARG(QMouseEvent, event));
|
||||
}
|
||||
} else {
|
||||
// NOTE: This is some debugging code we will leave in while debugging various reticle movement strategies,
|
||||
|
|
Loading…
Reference in a new issue