#pragma once #include #include namespace ZShell::internal { class LidWatcher : public QObject { Q_OBJECT QML_ELEMENT public: explicit LidWatcher(QObject* parent = nullptr); signals: void aboutToSleep(); void resumed(); void lockRequested(); void unlockRequested(); private slots: void handlePrepareForSleep(bool sleep); void handleLockRequested(); void handleUnlockRequested(); }; } // namespace ZShell::internal