diff options
author | Emanoil Kotsev <deloptes@gmail.com> | 2024-09-07 08:17:46 +0000 |
---|---|---|
committer | Emanoil Kotsev <deloptes@gmail.com> | 2024-12-11 22:51:17 +0000 |
commit | 1dec40d10689ff9678fb36fec0f3d87439562897 (patch) | |
tree | d491842e4a2650dcaacf18f869af99c5606e18c2 /kdesktop/dbus | |
parent | 1c05f36ad14d115b52151b61a06b239d0e6ef27b (diff) | |
download | tdebase-1dec40d10689ff9678fb36fec0f3d87439562897.tar.gz tdebase-1dec40d10689ff9678fb36fec0f3d87439562897.zip |
Add DBus screen saver interface to TDE
Signed-off-by: Emanoil Kotsev <deloptes@gmail.com>
Diffstat (limited to 'kdesktop/dbus')
-rw-r--r-- | kdesktop/dbus/screensaver/CMakeLists.txt | 44 | ||||
-rw-r--r-- | kdesktop/dbus/screensaver/org.freedesktop.ScreenSaver.xml | 41 | ||||
-rw-r--r-- | kdesktop/dbus/screensaver/org.trinitydesktop.ScreenSaver.xml | 11 |
3 files changed, 96 insertions, 0 deletions
diff --git a/kdesktop/dbus/screensaver/CMakeLists.txt b/kdesktop/dbus/screensaver/CMakeLists.txt new file mode 100644 index 000000000..9fb887326 --- /dev/null +++ b/kdesktop/dbus/screensaver/CMakeLists.txt @@ -0,0 +1,44 @@ +################################################# +# +# (C) 2024 Emanoil Kotsev +# deloptes (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +include_directories( + ${CMAKE_CURRENT_BINARY_DIR} + ${TQT_INCLUDE_DIRS} + ${DBUS_TQT_INCLUDE_DIRS} +) + +set( INTROSPECTIONPATH ${CMAKE_SOURCE_DIR}/kdesktop/dbus/screensaver ) + +set( ScreenSaver_HDRS dbusbaseNode.h introspectableInterface.h screensaverInterface.h screensaverNode.h screensaverProxy.h) +set( ScreenSaver_SRCS dbusbaseNode.cpp introspectableInterface.cpp screensaverInterface.cpp screensaverNode.cpp screensaverProxy.cpp ) + +##### ScreenSaver ######################### +add_custom_command( + OUTPUT ${ScreenSaver_HDRS} ${ScreenSaver_SRCS} + COMMAND ${DBUSXML2QT3_EXECUTABLE} ${INTROSPECTIONPATH}/org.freedesktop.ScreenSaver.xml 2>/dev/null + DEPENDS ${INTROSPECTIONPATH}/org.freedesktop.ScreenSaver.xml + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} +) + +tde_add_library( screensaverinterfaces STATIC_PIC AUTOMOC + SOURCES ${ScreenSaver_SRCS} + LINK ${DBUS_TQT_LIBRARIES} +) + +##### install headers ################################### + +install( + DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + DESTINATION ${INCLUDE_INSTALL_DIR} + USE_SOURCE_PERMISSIONS + FILES_MATCHING PATTERN PATTERN "*.h" + PATTERN "CMakeFiles" EXCLUDE +) diff --git a/kdesktop/dbus/screensaver/org.freedesktop.ScreenSaver.xml b/kdesktop/dbus/screensaver/org.freedesktop.ScreenSaver.xml new file mode 100644 index 000000000..1f7b09b28 --- /dev/null +++ b/kdesktop/dbus/screensaver/org.freedesktop.ScreenSaver.xml @@ -0,0 +1,41 @@ +<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd"> +<node name="/org/freedesktop/screensaver"> + <interface name="org.freedesktop.ScreenSaver"> + <signal name="ActiveChanged"> + <arg type="b"/> + </signal> + <method name="Lock"> + </method> + <method name="SimulateUserActivity"> + </method> + <method name="GetActive"> + <arg type="b" direction="out"/> + </method> + <method name="GetActiveTime"> + <arg name="seconds" type="u" direction="out"/> + </method> + <method name="GetSessionIdleTime"> + <arg name="seconds" type="u" direction="out"/> + </method> + <method name="SetActive"> + <arg type="b" direction="out"/> + <arg name="e" type="b" direction="in"/> + </method> + <method name="Inhibit"> + <arg name="application_name" type="s" direction="in"/> + <arg name="reason_for_inhibit" type="s" direction="in"/> + <arg name="cookie" type="u" direction="out"/> + </method> + <method name="UnInhibit"> + <arg name="cookie" type="u" direction="in"/> + </method> + <method name="Throttle"> + <arg name="application_name" type="s" direction="in"/> + <arg name="reason_for_inhibit" type="s" direction="in"/> + <arg name="cookie" type="u" direction="out"/> + </method> + <method name="UnThrottle"> + <arg name="cookie" type="u" direction="in"/> + </method> + </interface> +</node>
\ No newline at end of file diff --git a/kdesktop/dbus/screensaver/org.trinitydesktop.ScreenSaver.xml b/kdesktop/dbus/screensaver/org.trinitydesktop.ScreenSaver.xml new file mode 100644 index 000000000..cac5b2319 --- /dev/null +++ b/kdesktop/dbus/screensaver/org.trinitydesktop.ScreenSaver.xml @@ -0,0 +1,11 @@ +<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd"> +<node name="/org/trinitydesktop/screensaver"> + <interface name="org.trinitydesktop.screensaver"> + <!--lock the screen, and show the switch user prompt --> + <method name="SwitchUser" /> + <!-- Re-read configuration --> + <method name="configure" /> + <!-- Emitted just before we start the lock process. Clients should release any X grabs --> + <signal name="AboutToLock" /> + </interface> +</node>
\ No newline at end of file |