[gnome-flashback] common: update accelerator-activated signal parameters



commit a87f467b139db44741535490f1a6105c571882ac
Author: Alberts Muktupāvels <alberts muktupavels gmail com>
Date:   Sat Aug 17 21:57:28 2019 +0300

    common: update accelerator-activated signal parameters
    
    GNOME Settings Daemon now looks for device-node parameter. It still
    looks for device-id parameter if device-node is not available:
    https://gitlab.gnome.org/GNOME/gnome-settings-daemon/commit/26a4e448041a7756983fd4941a56ff40c7897bbc
    
    Both parameters are not available yet.
    
    Also add missing timestamp parameter.

 gnome-flashback/libcommon/gf-keybindings.c               |  6 +++---
 .../libinput-sources/gf-input-source-manager.c           |  3 +++
 gnome-flashback/libshell/flashback-shell.c               | 16 ++++++++++++----
 3 files changed, 18 insertions(+), 7 deletions(-)
---
diff --git a/gnome-flashback/libcommon/gf-keybindings.c b/gnome-flashback/libcommon/gf-keybindings.c
index 0c21e4e..af9e479 100644
--- a/gnome-flashback/libcommon/gf-keybindings.c
+++ b/gnome-flashback/libcommon/gf-keybindings.c
@@ -622,8 +622,7 @@ process_event (GfKeybindings *keybindings,
         {
           XUngrabKeyboard (keybindings->xdisplay, event->xkey.time);
           g_signal_emit (keybindings, signals[SIGNAL_ACCELERATOR_ACTIVATED],
-                         0, keybinding->action);
-
+                         0, keybinding->action, NULL, 0, event->xkey.time);
 
           processed = TRUE;
           break;
@@ -826,7 +825,8 @@ gf_keybindings_class_init (GfKeybindingsClass *keybindings_class)
   signals[SIGNAL_ACCELERATOR_ACTIVATED] =
     g_signal_new ("accelerator-activated",
                   G_TYPE_FROM_CLASS (keybindings_class), G_SIGNAL_RUN_LAST,
-                  0, NULL, NULL, NULL, G_TYPE_NONE, 1, G_TYPE_UINT);
+                  0, NULL, NULL, NULL, G_TYPE_NONE, 4, G_TYPE_UINT,
+                  G_TYPE_STRING, G_TYPE_UINT, G_TYPE_UINT);
 
   /**
    * GfKeybindings::modifiers-accelerator-activated:
diff --git a/gnome-flashback/libinput-sources/gf-input-source-manager.c 
b/gnome-flashback/libinput-sources/gf-input-source-manager.c
index 619a689..89e8293 100644
--- a/gnome-flashback/libinput-sources/gf-input-source-manager.c
+++ b/gnome-flashback/libinput-sources/gf-input-source-manager.c
@@ -553,6 +553,9 @@ modifiers_accelerator_activated_cb (GfKeybindings *keybindings,
 static void
 accelerator_activated_cb (GfKeybindings *keybindings,
                           guint          action,
+                          const gchar   *device_node,
+                          guint          device_id,
+                          guint          timestamp,
                           gpointer       user_data)
 {
   GfInputSourceManager *manager;
diff --git a/gnome-flashback/libshell/flashback-shell.c b/gnome-flashback/libshell/flashback-shell.c
index 0901903..7ebf37c 100644
--- a/gnome-flashback/libshell/flashback-shell.c
+++ b/gnome-flashback/libshell/flashback-shell.c
@@ -55,15 +55,20 @@ struct _FlashbackShell
 G_DEFINE_TYPE (FlashbackShell, flashback_shell, G_TYPE_OBJECT)
 
 static GVariant *
-build_parameters (guint device_id,
-                  guint timestamp,
-                  guint action_mode)
+build_parameters (const gchar *device_node,
+                  guint        device_id,
+                  guint        timestamp,
+                  guint        action_mode)
 {
   GVariantBuilder *builder;
   GVariant *parameters;
 
   builder = g_variant_builder_new (G_VARIANT_TYPE ("a{sv}"));
 
+  if (device_node != NULL)
+      g_variant_builder_add (builder, "{sv}", "device-node",
+                             g_variant_new_string (device_node));
+
   g_variant_builder_add (builder, "{sv}", "device-id",
                          g_variant_new_uint32 (device_id));
   g_variant_builder_add (builder, "{sv}", "timestamp",
@@ -80,6 +85,9 @@ build_parameters (guint device_id,
 static void
 accelerator_activated (GfKeybindings *keybindings,
                        guint          action,
+                       const gchar   *device_node,
+                       guint          device_id,
+                       guint          timestamp,
                        gpointer       user_data)
 {
        FlashbackShell *shell;
@@ -88,7 +96,7 @@ accelerator_activated (GfKeybindings *keybindings,
 
        shell = FLASHBACK_SHELL (user_data);
        dbus_shell = FLASHBACK_DBUS_SHELL (shell->iface);
-       parameters = build_parameters (0, 0, 0);
+       parameters = build_parameters (device_node, device_id, timestamp, 0);
 
        flashback_dbus_shell_emit_accelerator_activated (dbus_shell, action, parameters);
 }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]