KWin
Loading...
Searching...
No Matches
x11eventfilter.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: 2014 Fredrik Höglund <fredrik@kde.org>
6
7 SPDX-License-Identifier: GPL-2.0-or-later
8*/
9
10#pragma once
11
12#include <xcb/xcb.h>
13
14#include <QList>
15
16#include <kwin_export.h>
17
18namespace KWin
19{
20
21class KWIN_EXPORT X11EventFilter
22{
23public:
27 X11EventFilter(int eventType, int opcode = 0, int genericEventType = 0);
28 X11EventFilter(int eventType, int opcode, const QList<int> &genericEventTypes);
29 X11EventFilter(const QList<int> &eventTypes);
30
34 virtual ~X11EventFilter();
35
39 QList<int> eventTypes() const
40 {
41 return m_eventTypes;
42 }
43
49 int extension() const
50 {
51 return m_extension;
52 }
53
59 QList<int> genericEventTypes() const
60 {
61 return m_genericEventTypes;
62 }
63
69 virtual bool event(xcb_generic_event_t *event) = 0;
70
74 bool isGenericEvent() const;
75
76private:
77 QList<int> m_eventTypes;
78 int m_extension;
79 QList<int> m_genericEventTypes;
80};
81
82} // namespace KWin
QList< int > genericEventTypes() const
virtual bool event(xcb_generic_event_t *event)=0
QList< int > eventTypes() const