Only allow access to zwp_input_* to the input method
It is a very privacy-concerning component, so we will treat it specifically. As it is, it will have to come from the --inputmethod argument. We can work on some UI later on to select which keyboards are available.
This commit is contained in:
parent
3733e3e77f
commit
f266a7cfa0
1 changed files with 7 additions and 0 deletions
|
@ -270,6 +270,9 @@ public:
|
|||
}
|
||||
|
||||
const QSet<QByteArray> interfacesBlackList = {"org_kde_kwin_remote_access_manager", "org_kde_plasma_window_management", "org_kde_kwin_fake_input", "org_kde_kwin_keystate", "zkde_screencast_unstable_v1"};
|
||||
|
||||
const QSet<QByteArray> inputmethodInterfaces = { "zwp_input_panel_v1", "zwp_input_method_v1" };
|
||||
|
||||
QSet<QString> m_reported;
|
||||
|
||||
bool allowInterface(KWaylandServer::ClientConnection *client, const QByteArray &interfaceName) override {
|
||||
|
@ -277,6 +280,10 @@ public:
|
|||
return true;
|
||||
}
|
||||
|
||||
if (client != waylandServer()->inputMethodConnection() && inputmethodInterfaces.contains(interfaceName)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!interfacesBlackList.contains(interfaceName)) {
|
||||
return true;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue