1d71292e13
Summary: This call is added for the window rules kcm which has a detect functionality. As that detect functionality cannot query any Wayland windows we need to have some functionality in KWin core. Furthermore this allows to simplify the code in the kcm as all the custom X11 interaction can be removed. KWin internally has the functionality to find a window at a given position. From a security perspective adding this dbus method is fine as the user stays in control of the functionality. It requires active click to select a window. The new dbus call is already used in the rules kcm replacing the X11 based detect functionality. That a detect is now able to get information for both X11 and Wayland windows. So far only X11 windows on X11 were supported. So this fills an important gap in the Wayland offerings. It should now be possible to create rules for Wayland windows (though may not be fully functional). Test Plan: Run the kwin_rules_dialog and it detected the window correctly Reviewers: #kwin, #plasma Subscribers: plasma-devel, kwin Tags: #plasma Differential Revision: https://phabricator.kde.org/D10490
44 lines
1.6 KiB
XML
44 lines
1.6 KiB
XML
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
|
|
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
|
|
<node>
|
|
<interface name="org.kde.KWin">
|
|
<method name="cascadeDesktop">
|
|
<annotation name="org.freedesktop.DBus.Method.NoReply" value="true"/>
|
|
</method>
|
|
<method name="unclutterDesktop">
|
|
<annotation name="org.freedesktop.DBus.Method.NoReply" value="true"/>
|
|
</method>
|
|
<method name="reconfigure">
|
|
<annotation name="org.freedesktop.DBus.Method.NoReply" value="true"/>
|
|
</method>
|
|
<method name="killWindow">
|
|
<annotation name="org.freedesktop.DBus.Method.NoReply" value="true"/>
|
|
</method>
|
|
<method name="setCurrentDesktop">
|
|
<arg name="desktop" type="i" direction="in"/>
|
|
<arg type="b" direction="out"/>
|
|
</method>
|
|
<method name="currentDesktop">
|
|
<arg type="i" direction="out"/>
|
|
</method>
|
|
<method name="nextDesktop"/>
|
|
<method name="previousDesktop"/>
|
|
<signal name="reloadConfig"/>
|
|
<method name="stopActivity">
|
|
<arg type="s" direction="in"/>
|
|
<arg type="b" direction="out"/>
|
|
</method>
|
|
<method name="startActivity">
|
|
<arg type="s" direction="in"/>
|
|
<arg type="b" direction="out"/>
|
|
</method>
|
|
<method name="supportInformation">
|
|
<arg type="s" direction="out"/>
|
|
</method>
|
|
<method name="showDebugConsole"/>
|
|
<method name="queryWindowInfo">
|
|
<annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="QVariantMap"/>
|
|
<arg type="a{sv}" direction="out"/>
|
|
</method>
|
|
</interface>
|
|
</node>
|