summaryrefslogtreecommitdiff
path: root/community/mate-power-manager/00-add-dbus-interface-to-kbdbacklight.diff
diff options
context:
space:
mode:
Diffstat (limited to 'community/mate-power-manager/00-add-dbus-interface-to-kbdbacklight.diff')
-rw-r--r--community/mate-power-manager/00-add-dbus-interface-to-kbdbacklight.diff161
1 files changed, 161 insertions, 0 deletions
diff --git a/community/mate-power-manager/00-add-dbus-interface-to-kbdbacklight.diff b/community/mate-power-manager/00-add-dbus-interface-to-kbdbacklight.diff
new file mode 100644
index 000000000..79fd9938c
--- /dev/null
+++ b/community/mate-power-manager/00-add-dbus-interface-to-kbdbacklight.diff
@@ -0,0 +1,161 @@
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 274a45c..ddbb6ed 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -6,6 +6,7 @@ NULL =
+ EXTRA_DIST = \
+ org.mate.PowerManager.xml \
+ org.mate.PowerManager.Backlight.xml \
++ org.mate.PowerManager.KbdBacklight.xml \
+ gpm-marshal.list \
+ $(NULL)
+
+@@ -273,6 +274,7 @@ endif
+ BUILT_SOURCES = \
+ org.mate.PowerManager.h \
+ org.mate.PowerManager.Backlight.h \
++ org.mate.PowerManager.KbdBacklight.h \
+ gpm-marshal.c \
+ gpm-marshal.h \
+ $(NULL)
+@@ -298,6 +300,13 @@ org.mate.PowerManager.Backlight.h: org.mate.PowerManager.Backlight.xml
+ --output=org.mate.PowerManager.Backlight.h \
+ $(srcdir)/org.mate.PowerManager.Backlight.xml
+
++org.mate.PowerManager.KbdBacklight.h: org.mate.PowerManager.KbdBacklight.xml
++ libtool --mode=execute dbus-binding-tool \
++ --prefix=gpm_kbd_backlight \
++ --mode=glib-server \
++ --output=org.mate.PowerManager.KbdBacklight.h \
++ $(srcdir)/org.mate.PowerManager.KbdBacklight.xml
++
+ clean-local:
+ rm -f *~
+ rm -f gpm-marshal.c gpm-marshal.h
+diff --git a/src/gpm-common.h b/src/gpm-common.h
+index 6f712cb..ef20f88 100644
+--- a/src/gpm-common.h
++++ b/src/gpm-common.h
+@@ -33,6 +33,7 @@ G_BEGIN_DECLS
+ #define GPM_DBUS_SERVICE "org.mate.PowerManager"
+ #define GPM_DBUS_INTERFACE "org.mate.PowerManager"
+ #define GPM_DBUS_INTERFACE_BACKLIGHT "org.mate.PowerManager.Backlight"
++#define GPM_DBUS_INTERFACE_KBD_BACKLIGHT "org.mate.PowerManager.KbdBacklight"
+ #define GPM_DBUS_PATH "/org/mate/PowerManager"
+ #define GPM_DBUS_PATH_BACKLIGHT "/org/mate/PowerManager/Backlight"
+ #define GPM_DBUS_PATH_KBD_BACKLIGHT "/org/mate/PowerManager/KbdBacklight"
+diff --git a/src/gpm-kbd-backlight.c b/src/gpm-kbd-backlight.c
+index 98a64da..0ac6801 100644
+--- a/src/gpm-kbd-backlight.c
++++ b/src/gpm-kbd-backlight.c
+@@ -31,21 +31,6 @@
+ #include "gpm-kbd-backlight.h"
+ #include "gsd-media-keys-window.h"
+
+-static const gchar *kbd_backlight_introspection = ""
+-"<?xml version=\"1.0\" encoding=\"UTF-8\"?>""<node name=\"/\">"
+- "<interface name=\"org.mate.PowerManager.Backlight\">"
+- "<method name=\"GetBrightness\">"
+- "<arg type=\"u\" name=\"percentage_brightness\" direction=\"out\"/>"
+- "</method>"
+- "<method name=\"SetBrightness\">"
+- "<arg type=\"u\" name=\"percentage_brightness\" direction=\"in\"/>"
+- "</method>"
+- "<signal name=\"BrightnessChanged\">"
+- "<arg type=\"u\" name=\"percentage_brightness\" direction=\"out\"/>"
+- "</signal>"
+- "</interface>"
+-"</node>";
+-
+ #define GPM_KBD_BACKLIGHT_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GPM_TYPE_KBD_BACKLIGHT, GpmKbdBacklightPrivate))
+
+ struct GpmKbdBacklightPrivate
+@@ -430,40 +415,6 @@ gpm_kbd_backlight_dbus_property_set (GDBusConnection *connection,
+ return FALSE;
+ }
+
+-/**
+- * gpm_kbd_backlight_register_dbus:
+- * @backlight:
+- * @connection:
+- * @error:
+- **/
+-void
+-gpm_kbd_backlight_register_dbus (GpmKbdBacklight *backlight,
+- GDBusConnection *connection,
+- GError **error)
+-{
+- GDBusNodeInfo *node_info;
+- GDBusInterfaceInfo *interface_info;
+- GDBusInterfaceVTable interface_vtable = {
+- gpm_kbd_backlight_dbus_method_call,
+- gpm_kbd_backlight_dbus_property_get,
+- gpm_kbd_backlight_dbus_property_set
+- };
+-
+- node_info = g_dbus_node_info_new_for_xml (kbd_backlight_introspection, NULL);
+- interface_info = g_dbus_node_info_lookup_interface (node_info, GPM_DBUS_INTERFACE_BACKLIGHT);
+-
+- backlight->priv->bus_connection = g_object_ref (connection);
+- backlight->priv->bus_object_id =
+- g_dbus_connection_register_object (connection,
+- GPM_DBUS_PATH_KBD_BACKLIGHT,
+- interface_info,
+- &interface_vtable,
+- backlight,
+- NULL,
+- error);
+- g_dbus_node_info_unref (node_info);
+-}
+-
+ static gboolean
+ gpm_kbd_backlight_evaluate_power_source_and_set (GpmKbdBacklight *backlight)
+ {
+diff --git a/src/gpm-manager.c b/src/gpm-manager.c
+index 7561b22..6ca9dea 100644
+--- a/src/gpm-manager.c
++++ b/src/gpm-manager.c
+@@ -63,6 +63,7 @@
+ #include "gpm-disks.h"
+
+ #include "org.mate.PowerManager.Backlight.h"
++#include "org.mate.PowerManager.KbdBacklight.h"
+
+ static void gpm_manager_finalize (GObject *object);
+
+@@ -1988,9 +1989,11 @@ gpm_manager_init (GpmManager *manager)
+
+ manager->priv->kbd_backlight = gpm_kbd_backlight_new ();
+ if (manager->priv->kbd_backlight != NULL) {
+- gpm_kbd_backlight_register_dbus (manager->priv->kbd_backlight,
+- g_connection,
+- NULL);
++ dbus_g_object_type_install_info (GPM_TYPE_KBD_BACKLIGHT,
++ &dbus_glib_gpm_kbd_backlight_object_info);
++ dbus_g_connection_register_g_object (connection, GPM_DBUS_PATH_KBD_BACKLIGHT,
++ G_OBJECT (manager->priv->kbd_backlight));
++
+ }
+
+ manager->priv->idle = gpm_idle_new ();
+diff --git a/src/org.mate.PowerManager.KbdBacklight.xml b/src/org.mate.PowerManager.KbdBacklight.xml
+new file mode 100644
+index 0000000..82b7cb2
+--- /dev/null
++++ b/src/org.mate.PowerManager.KbdBacklight.xml
+@@ -0,0 +1,15 @@
++<?xml version="1.0" encoding="UTF-8"?>
++<node name="/">
++ <interface name="org.mate.PowerManager.KbdBacklight">
++ <method name="GetBrightness">
++ <arg type="u" name="percentage_brightness" direction="out"/>
++ </method>
++ <method name="SetBrightness">
++ <arg type="u" name="percentage_brightness" direction="in"/>
++ </method>
++ <signal name="BrightnessChanged">
++ <arg type="u" name="percentage_brightness" direction="out"/>
++ </signal>
++ </interface>
++</node>
++