KWin
Loading...
Searching...
No Matches
poller.h
Go to the documentation of this file.
1/*
2 KWin - the KDE window manager
3 This file is part of the KDE project.
4
5 SPDX-FileCopyrightText: 2015 Martin Gräßlin <mgraesslin@kde.org>
6
7 SPDX-License-Identifier: GPL-2.0-or-later
8*/
9#pragma once
10
11#include <QHash>
12#include <QTimer>
13#include <private/kabstractidletimepoller_p.h>
14
15namespace KWin
16{
17
18class IdleDetector;
19
20class KWinIdleTimePoller : public KAbstractIdleTimePoller
21{
22 Q_OBJECT
23 Q_PLUGIN_METADATA(IID KAbstractIdleTimePoller_iid FILE "kwin.json")
24 Q_INTERFACES(KAbstractIdleTimePoller)
25
26public:
27 KWinIdleTimePoller(QObject *parent = nullptr);
28
29 bool isAvailable() override;
30 bool setUpPoller() override;
31 void unloadPoller() override;
32
33public Q_SLOTS:
34 void addTimeout(int nextTimeout) override;
35 void removeTimeout(int nextTimeout) override;
36 QList<int> timeouts() const override;
37 int forcePollRequest() override;
38 void catchIdleEvent() override;
39 void stopCatchingIdleEvents() override;
40 void simulateUserActivity() override;
41
42private:
43 IdleDetector *m_catchResumeTimeout = nullptr;
44 QHash<int, IdleDetector *> m_timeouts;
45};
46
47}
bool setUpPoller() override
Definition poller.cpp:26
int forcePollRequest() override
Definition poller.cpp:79
void catchIdleEvent() override
Definition poller.cpp:59
KWinIdleTimePoller(QObject *parent=nullptr)
Definition poller.cpp:16
void unloadPoller() override
Definition poller.cpp:31
QList< int > timeouts() const override
Definition poller.cpp:54
void simulateUserActivity() override
Definition poller.cpp:84
void removeTimeout(int nextTimeout) override
Definition poller.cpp:49
void addTimeout(int nextTimeout) override
Definition poller.cpp:35
void stopCatchingIdleEvents() override
Definition poller.cpp:73
bool isAvailable() override
Definition poller.cpp:21