KWin
Loading...
Searching...
No Matches
src
plugins
buttonrebinds
main.cpp
Go to the documentation of this file.
1
/*
2
SPDX-FileCopyrightText: 2022 David Redondo <kde@david-redono.de>
3
4
SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
5
*/
6
7
#include <main.h>
8
#include <plugin.h>
9
10
#include "
buttonrebindsfilter.h
"
11
12
class
KWIN_EXPORT
ButtonRebindsFactory
:
public
KWin::PluginFactory
13
{
14
Q_OBJECT
15
Q_PLUGIN_METADATA(IID
PluginFactory_iid
FILE
"metadata.json"
)
16
Q_INTERFACES(
KWin::PluginFactory
)
17
18
public
:
19
std::unique_ptr<KWin::Plugin>
create
()
const override
20
{
21
switch
(KWin::kwinApp()->operationMode()) {
22
case
KWin::Application::OperationModeXwayland
:
23
[[fallthrough]];
24
case
KWin::Application::OperationModeWaylandOnly
:
25
return
std::make_unique<ButtonRebindsFilter>();
26
case
KWin::Application::OperationModeX11
:
27
[[fallthrough]];
28
default
:
29
return
nullptr
;
30
}
31
}
32
};
33
34
#include "main.moc"
buttonrebindsfilter.h
ButtonRebindsFactory
Definition
main.cpp:13
ButtonRebindsFactory::create
std::unique_ptr< KWin::Plugin > create() const override
Definition
main.cpp:19
KWin::Application::OperationModeXwayland
@ OperationModeXwayland
KWin uses Wayland and controls a nested Xwayland server.
Definition
main.h:95
KWin::Application::OperationModeX11
@ OperationModeX11
KWin uses only X11 for managing windows and compositing.
Definition
main.h:87
KWin::Application::OperationModeWaylandOnly
@ OperationModeWaylandOnly
KWin uses only Wayland.
Definition
main.h:91
KWin::PluginFactory
Definition
plugin.h:37
PluginFactory_iid
#define PluginFactory_iid
Definition
plugin.h:18
Generated on Sat Feb 17 2024 01:42:09 for KWin by
1.10.0