Shared mem file monitoring
This commit is contained in:
parent
0d2d879ab5
commit
126f69936c
|
|
@ -7,6 +7,7 @@
|
||||||
|
|
||||||
#include <QAction>
|
#include <QAction>
|
||||||
#include <QFile>
|
#include <QFile>
|
||||||
|
#include <QFileSystemWatcher>
|
||||||
#include <QLoggingCategory>
|
#include <QLoggingCategory>
|
||||||
#include <QQuickItem>
|
#include <QQuickItem>
|
||||||
#include <QTimer>
|
#include <QTimer>
|
||||||
|
|
@ -53,10 +54,11 @@ BreezyDesktopEffect::BreezyDesktopEffect()
|
||||||
|
|
||||||
setSource(QUrl::fromLocalFile(QStandardPaths::locate(QStandardPaths::GenericDataLocation, QStringLiteral("kwin/effects/breezy_desktop/qml/main.qml"))));
|
setSource(QUrl::fromLocalFile(QStandardPaths::locate(QStandardPaths::GenericDataLocation, QStringLiteral("kwin/effects/breezy_desktop/qml/main.qml"))));
|
||||||
|
|
||||||
m_xrRotationTimer = new QTimer(this);
|
// Monitor the IMU file for changes
|
||||||
m_xrRotationTimer->setInterval(16); // ~60Hz
|
const QString shmPath = QStringLiteral("/dev/shm/breezy_desktop_imu");
|
||||||
connect(m_xrRotationTimer, &QTimer::timeout, this, &BreezyDesktopEffect::updateXrRotation);
|
m_xrRotationFileWatcher = new QFileSystemWatcher(this);
|
||||||
m_xrRotationTimer->start();
|
m_xrRotationFileWatcher->addPath(shmPath);
|
||||||
|
connect(m_xrRotationFileWatcher, &QFileSystemWatcher::fileChanged, this, &BreezyDesktopEffect::updateXrRotation);
|
||||||
|
|
||||||
m_cursorUpdateTimer = new QTimer(this);
|
m_cursorUpdateTimer = new QTimer(this);
|
||||||
connect(m_cursorUpdateTimer, &QTimer::timeout, this, &BreezyDesktopEffect::updateCursorPos);
|
connect(m_cursorUpdateTimer, &QTimer::timeout, this, &BreezyDesktopEffect::updateCursorPos);
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@
|
||||||
#include <effect/quickeffect.h>
|
#include <effect/quickeffect.h>
|
||||||
|
|
||||||
#include <QAction>
|
#include <QAction>
|
||||||
|
#include <QFileSystemWatcher>
|
||||||
#include <QImage>
|
#include <QImage>
|
||||||
#include <QKeySequence>
|
#include <QKeySequence>
|
||||||
#include <QQuaternion>
|
#include <QQuaternion>
|
||||||
|
|
@ -86,7 +87,7 @@ namespace KWin
|
||||||
bool m_isMouseHidden = false;
|
bool m_isMouseHidden = false;
|
||||||
|
|
||||||
QQuaternion m_xrRotation;
|
QQuaternion m_xrRotation;
|
||||||
QTimer *m_xrRotationTimer = nullptr;
|
QFileSystemWatcher *m_xrRotationFileWatcher = nullptr;
|
||||||
QPointF m_cursorPos;
|
QPointF m_cursorPos;
|
||||||
QTimer *m_cursorUpdateTimer = nullptr;
|
QTimer *m_cursorUpdateTimer = nullptr;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue