[mutter/bilelmoussaoui/gdk-x11-only: 1/2] core: Replace gtk_accelerator_parse usage




commit 1f2bf1bb0b97c18b2a81cb1071ecaf80a18633ea
Author: Bilal Elmoussaoui <belmouss redhat com>
Date:   Mon May 9 11:38:06 2022 +0200

    core: Replace gtk_accelerator_parse usage

 src/core/meta-pad-action-mapper.c | 24 ++++++++++++++----------
 src/core/util.c                   |  2 +-
 2 files changed, 15 insertions(+), 11 deletions(-)
---
diff --git a/src/core/meta-pad-action-mapper.c b/src/core/meta-pad-action-mapper.c
index dc43924b55..8c451b7844 100644
--- a/src/core/meta-pad-action-mapper.c
+++ b/src/core/meta-pad-action-mapper.c
@@ -450,17 +450,17 @@ meta_pad_action_mapper_is_button_grabbed (MetaPadActionMapper *mapper,
 
 static void
 emulate_modifiers (ClutterVirtualInputDevice *device,
-                   ClutterModifierType        mods,
+                   MetaVirtualModifier        mods,
                    ClutterKeyState            state)
 {
   guint i;
   struct {
-    ClutterModifierType mod;
+    MetaVirtualModifier mod;
     guint keyval;
   } mod_map[] = {
-    { CLUTTER_SHIFT_MASK, CLUTTER_KEY_Shift_L },
-    { CLUTTER_CONTROL_MASK, CLUTTER_KEY_Control_L },
-    { CLUTTER_MOD1_MASK, CLUTTER_KEY_Meta_L }
+    { META_VIRTUAL_SHIFT_MASK, CLUTTER_KEY_Shift_L },
+    { META_VIRTUAL_CONTROL_MASK, CLUTTER_KEY_Control_L },
+    { META_VIRTUAL_META_MASK, CLUTTER_KEY_Meta_L }
   };
 
   for (i = 0; i < G_N_ELEMENTS (mod_map); i++)
@@ -480,13 +480,17 @@ meta_pad_action_mapper_emulate_keybinding (MetaPadActionMapper *mapper,
                                            gboolean             is_press)
 {
   ClutterKeyState state;
-  guint key, mods;
+  MetaKeyCombo combo = { 0 };
 
   if (!accel || !*accel)
     return;
 
   /* FIXME: This is appalling */
-  gtk_accelerator_parse (accel, &key, &mods);
+  if (!meta_parse_accelerator (accel, &combo)) 
+    {
+      g_warning ("\"%s\" is not a valid accelerator", accel);
+      return;
+    }
 
   if (!mapper->virtual_pad_keyboard)
     {
@@ -504,13 +508,13 @@ meta_pad_action_mapper_emulate_keybinding (MetaPadActionMapper *mapper,
   state = is_press ? CLUTTER_KEY_STATE_PRESSED : CLUTTER_KEY_STATE_RELEASED;
 
   if (is_press)
-    emulate_modifiers (mapper->virtual_pad_keyboard, mods, state);
+    emulate_modifiers (mapper->virtual_pad_keyboard, combo.modifiers, state);
 
   clutter_virtual_input_device_notify_keyval (mapper->virtual_pad_keyboard,
                                               clutter_get_current_event_time (),
-                                              key, state);
+                                              combo.keysym, state);
   if (!is_press)
-    emulate_modifiers (mapper->virtual_pad_keyboard, mods, state);
+    emulate_modifiers (mapper->virtual_pad_keyboard, combo.modifiers, state);
 }
 
 static gboolean
diff --git a/src/core/util.c b/src/core/util.c
index 1eaaefa82e..40abf5d9a7 100644
--- a/src/core/util.c
+++ b/src/core/util.c
@@ -510,7 +510,7 @@ meta_get_locale_direction (void)
    * Do *not* translate it to "predefinito:LTR", if it
    * it isn't default:LTR or default:RTL it will not work
    */
-  char                *e   = _("default:LTR");
+  char *e = _("default:LTR");
   MetaLocaleDirection  dir = META_LOCALE_DIRECTION_LTR;
 
   if (g_strcmp0 (e, "default:RTL") == 0)


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