KWin
Loading...
Searching...
No Matches
src
keyboard_input.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: 2013, 2016 Martin Gräßlin <mgraesslin@kde.org>
6
7
SPDX-License-Identifier: GPL-2.0-or-later
8
*/
9
#pragma once
10
11
#include "
input.h
"
12
13
#include <QObject>
14
#include <QPointF>
15
#include <QPointer>
16
17
#include <KSharedConfig>
18
19
class
QWindow;
20
struct
xkb_context;
21
struct
xkb_keymap;
22
struct
xkb_state;
23
struct
xkb_compose_table;
24
struct
xkb_compose_state;
25
typedef
uint32_t
xkb_mod_index_t
;
26
typedef
uint32_t
xkb_led_index_t
;
27
typedef
uint32_t
xkb_keysym_t
;
28
typedef
uint32_t
xkb_layout_index_t
;
29
30
namespace
KWin
31
{
32
33
class
Window
;
34
class
InputDevice
;
35
class
InputRedirection;
36
class
KeyboardLayout;
37
class
ModifiersChangedSpy;
38
class
Xkb;
39
40
class
KWIN_EXPORT
KeyboardInputRedirection
:
public
QObject
41
{
42
Q_OBJECT
43
public
:
44
explicit
KeyboardInputRedirection
(
InputRedirection
*parent);
45
~KeyboardInputRedirection
()
override
;
46
47
void
init();
48
void
reconfigure();
49
50
void
update();
51
55
void
processKey(uint32_t key,
InputRedirection::KeyboardKeyState
state, std::chrono::microseconds time,
InputDevice
*device =
nullptr
);
56
57
Xkb
*xkb()
const
;
58
Qt::KeyboardModifiers modifiers()
const
;
59
Qt::KeyboardModifiers modifiersRelevantForGlobalShortcuts()
const
;
60
61
Q_SIGNALS:
62
void
ledsChanged
(KWin::LEDs);
63
64
private
:
65
InputRedirection
*m_input;
66
bool
m_inited =
false
;
67
const
std::unique_ptr<Xkb> m_xkb;
68
QMetaObject::Connection m_activeWindowSurfaceChangedConnection;
69
ModifiersChangedSpy
*m_modifiersChangedSpy =
nullptr
;
70
KeyboardLayout
*m_keyboardLayout =
nullptr
;
71
};
72
73
}
InputDevice
Definition
buttonrebindsfilter.h:22
KWin::InputDevice
Definition
inputdevice.h:22
KWin::InputRedirection
This class is responsible for redirecting incoming input to the surface which currently has input or ...
Definition
input.h:70
KWin::InputRedirection::KeyboardKeyState
KeyboardKeyState
Definition
input.h:88
KWin::KeyboardInputRedirection
Definition
keyboard_input.h:41
KWin::KeyboardInputRedirection::ledsChanged
void ledsChanged(KWin::LEDs)
KWin::KeyboardInputRedirection::~KeyboardInputRedirection
~KeyboardInputRedirection() override
KWin::KeyboardLayout
Definition
keyboard_layout.h:35
KWin::ModifiersChangedSpy
Definition
keyboard_input.cpp:89
KWin::Xkb
Definition
xkb.h:39
Window
Definition
copy.cpp:16
input.h
xkb_mod_index_t
uint32_t xkb_mod_index_t
Definition
keyboard_input.h:25
xkb_keysym_t
uint32_t xkb_keysym_t
Definition
keyboard_input.h:27
xkb_layout_index_t
uint32_t xkb_layout_index_t
Definition
keyboard_input.h:28
xkb_led_index_t
uint32_t xkb_led_index_t
Definition
keyboard_input.h:26
KWin
Definition
activation_test.cpp:20
Generated on Sat Feb 17 2024 01:42:09 for KWin by
1.10.0