[gtk/shortcuts-rebased-again: 80/145] menushell: Remove old mnemonic handling



commit 59706ba727cad27b3d5e2396807da9720ff16803
Author: Benjamin Otte <otte redhat com>
Date:   Thu Aug 16 07:55:49 2018 +0200

    menushell: Remove old mnemonic handling
    
    It's not used anymore.
    
    This was also the last user of GtkMnemonicHash, so delete that one, too.

 gtk/gtkmenushell.c        | 157 +-----------------------------------
 gtk/gtkmenushellprivate.h |  11 ---
 gtk/gtkmnemonichash.c     | 201 ----------------------------------------------
 gtk/gtkmnemonichash.h     |  52 ------------
 gtk/meson.build           |   1 -
 5 files changed, 1 insertion(+), 421 deletions(-)
---
diff --git a/gtk/gtkmenushell.c b/gtk/gtkmenushell.c
index 1c1932c33b..d373d64a5b 100644
--- a/gtk/gtkmenushell.c
+++ b/gtk/gtkmenushell.c
@@ -66,7 +66,6 @@
 #include "gtkmarshalers.h"
 #include "gtkmenubarprivate.h"
 #include "gtkmenuitemprivate.h"
-#include "gtkmnemonichash.h"
 #include "gtkmodelmenuitemprivate.h"
 #include "gtkprivate.h"
 #include "gtkseparatormenuitem.h"
@@ -110,14 +109,12 @@ static void gtk_menu_shell_get_property      (GObject           *object,
                                               guint              prop_id,
                                               GValue            *value,
                                               GParamSpec        *pspec);
-static void gtk_menu_shell_finalize          (GObject           *object);
 static void gtk_menu_shell_dispose           (GObject           *object);
 static gboolean gtk_menu_shell_key_press     (GtkEventControllerKey *key,
                                               guint                  keyval,
                                               guint                  keycode,
                                               GdkModifierType        modifiers,
                                               GtkWidget             *widget);
-static void gtk_menu_shell_root              (GtkWidget         *widget);
 static void click_pressed  (GtkGestureClick *gesture,
                                   gint                  n_press,
                                   gdouble               x,
@@ -150,11 +147,6 @@ static void gtk_real_menu_shell_cancel           (GtkMenuShell      *menu_shell)
 static void gtk_real_menu_shell_cycle_focus      (GtkMenuShell      *menu_shell,
                                                   GtkDirectionType   dir);
 
-static void     gtk_menu_shell_reset_key_hash    (GtkMenuShell *menu_shell);
-static gboolean gtk_menu_shell_activate_mnemonic (GtkMenuShell    *menu_shell,
-                                                  guint            keycode,
-                                                  GdkModifierType  state,
-                                                  guint            group);
 static gboolean gtk_menu_shell_real_move_selected (GtkMenuShell  *menu_shell, 
                                                    gint           distance);
 
@@ -171,11 +163,8 @@ gtk_menu_shell_class_init (GtkMenuShellClass *klass)
 
   object_class->set_property = gtk_menu_shell_set_property;
   object_class->get_property = gtk_menu_shell_get_property;
-  object_class->finalize = gtk_menu_shell_finalize;
   object_class->dispose = gtk_menu_shell_dispose;
 
-  widget_class->root = gtk_menu_shell_root;
-
   container_class->add = gtk_menu_shell_add;
   container_class->remove = gtk_menu_shell_remove;
   container_class->child_type = gtk_menu_shell_child_type;
@@ -458,21 +447,6 @@ gtk_menu_shell_get_property (GObject    *object,
     }
 }
 
-static void
-gtk_menu_shell_finalize (GObject *object)
-{
-  GtkMenuShell *menu_shell = GTK_MENU_SHELL (object);
-  GtkMenuShellPrivate *priv = menu_shell->priv;
-
-  if (priv->mnemonic_hash)
-    _gtk_mnemonic_hash_free (priv->mnemonic_hash);
-  if (priv->key_hash)
-    _gtk_key_hash_free (priv->key_hash);
-
-  G_OBJECT_CLASS (gtk_menu_shell_parent_class)->finalize (object);
-}
-
-
 static void
 gtk_menu_shell_dispose (GObject *object)
 {
@@ -909,16 +883,7 @@ gtk_menu_shell_key_press (GtkEventControllerKey *key,
       priv->parent_menu_shell)
     return gtk_event_controller_key_forward (key, priv->parent_menu_shell);
 
-  return gtk_menu_shell_activate_mnemonic (menu_shell, keycode, modifiers,
-                                           gtk_event_controller_key_get_group (key));
-}
-
-static void
-gtk_menu_shell_root (GtkWidget  *widget)
-{
-  GTK_WIDGET_CLASS (gtk_menu_shell_parent_class)->root (widget);
-
-  gtk_menu_shell_reset_key_hash (GTK_MENU_SHELL (widget));
+  return FALSE;
 }
 
 static void
@@ -1466,126 +1431,6 @@ gtk_menu_shell_cancel (GtkMenuShell *menu_shell)
   g_signal_emit (menu_shell, menu_shell_signals[CANCEL], 0);
 }
 
-static GtkMnemonicHash *
-gtk_menu_shell_get_mnemonic_hash (GtkMenuShell *menu_shell,
-                                  gboolean      create)
-{
-  GtkMenuShellPrivate *priv = menu_shell->priv;
-
-  if (!priv->mnemonic_hash && create)
-    priv->mnemonic_hash = _gtk_mnemonic_hash_new ();
-  
-  return priv->mnemonic_hash;
-}
-
-static void
-menu_shell_add_mnemonic_foreach (guint     keyval,
-                                 GSList   *targets,
-                                 gpointer  data)
-{
-  GtkKeyHash *key_hash = data;
-
-  _gtk_key_hash_add_entry (key_hash, keyval, 0, GUINT_TO_POINTER (keyval));
-}
-
-static GtkKeyHash *
-gtk_menu_shell_get_key_hash (GtkMenuShell *menu_shell,
-                             gboolean      create)
-{
-  GtkMenuShellPrivate *priv = menu_shell->priv;
-  GtkWidget *widget = GTK_WIDGET (menu_shell);
-
-  if (!priv->key_hash && create)
-    {
-      GtkMnemonicHash *mnemonic_hash = gtk_menu_shell_get_mnemonic_hash (menu_shell, FALSE);
-      GdkKeymap *keymap = gdk_display_get_keymap (gtk_widget_get_display (widget));
-
-      if (!mnemonic_hash)
-        return NULL;
-
-      priv->key_hash = _gtk_key_hash_new (keymap, NULL);
-
-      _gtk_mnemonic_hash_foreach (mnemonic_hash,
-                                  menu_shell_add_mnemonic_foreach,
-                                  priv->key_hash);
-    }
-
-  return priv->key_hash;
-}
-
-static void
-gtk_menu_shell_reset_key_hash (GtkMenuShell *menu_shell)
-{
-  GtkMenuShellPrivate *priv = menu_shell->priv;
-
-  if (priv->key_hash)
-    {
-      _gtk_key_hash_free (priv->key_hash);
-      priv->key_hash = NULL;
-    }
-}
-
-static gboolean
-gtk_menu_shell_activate_mnemonic (GtkMenuShell    *menu_shell,
-                                  guint            keycode,
-                                  GdkModifierType  state,
-                                  guint            group)
-{
-  GtkMnemonicHash *mnemonic_hash;
-  GtkKeyHash *key_hash;
-  GSList *entries;
-  gboolean result = FALSE;
-
-  mnemonic_hash = gtk_menu_shell_get_mnemonic_hash (menu_shell, FALSE);
-  if (!mnemonic_hash)
-    return FALSE;
-
-  key_hash = gtk_menu_shell_get_key_hash (menu_shell, TRUE);
-  if (!key_hash)
-    return FALSE;
-
-  entries = _gtk_key_hash_lookup (key_hash,
-                                  keycode,
-                                  state,
-                                  gtk_accelerator_get_default_mod_mask (),
-                                  group);
-
-  if (entries)
-    {
-      result = _gtk_mnemonic_hash_activate (mnemonic_hash,
-                                            GPOINTER_TO_UINT (entries->data));
-      g_slist_free (entries);
-    }
-
-  return result;
-}
-
-void
-_gtk_menu_shell_add_mnemonic (GtkMenuShell *menu_shell,
-                              guint         keyval,
-                              GtkWidget    *target)
-{
-  g_return_if_fail (GTK_IS_MENU_SHELL (menu_shell));
-  g_return_if_fail (GTK_IS_WIDGET (target));
-
-  _gtk_mnemonic_hash_add (gtk_menu_shell_get_mnemonic_hash (menu_shell, TRUE),
-                          keyval, target);
-  gtk_menu_shell_reset_key_hash (menu_shell);
-}
-
-void
-_gtk_menu_shell_remove_mnemonic (GtkMenuShell *menu_shell,
-                                 guint         keyval,
-                                 GtkWidget    *target)
-{
-  g_return_if_fail (GTK_IS_MENU_SHELL (menu_shell));
-  g_return_if_fail (GTK_IS_WIDGET (target));
-
-  _gtk_mnemonic_hash_remove (gtk_menu_shell_get_mnemonic_hash (menu_shell, TRUE),
-                             keyval, target);
-  gtk_menu_shell_reset_key_hash (menu_shell);
-}
-
 void
 _gtk_menu_shell_set_grab_device (GtkMenuShell *menu_shell,
                                  GdkDevice    *device)
diff --git a/gtk/gtkmenushellprivate.h b/gtk/gtkmenushellprivate.h
index b966e686c3..bd7dd80155 100644
--- a/gtk/gtkmenushellprivate.h
+++ b/gtk/gtkmenushellprivate.h
@@ -20,7 +20,6 @@
 
 
 #include <gtk/gtkmenushell.h>
-#include <gtk/gtkmnemonichash.h>
 #include <gtk/gtkkeyhash.h>
 #include <gtk/gtkmenutrackerprivate.h>
 #include <gtk/gtkeventcontroller.h>
@@ -65,9 +64,6 @@ struct _GtkMenuShellPrivate
                                          * signal is coming soon (when checked
                                          * from inside of a "hide" handler).
                                          */
-  GtkMnemonicHash *mnemonic_hash;
-  GtkKeyHash *key_hash;
-
   GdkDevice *grab_pointer;
   GtkEventController *key_controller;
 };
@@ -79,13 +75,6 @@ void        _gtk_menu_shell_set_grab_device  (GtkMenuShell *menu_shell,
                                               GdkDevice    *device);
 GdkDevice *_gtk_menu_shell_get_grab_device   (GtkMenuShell *menu_shell);
 
-void       _gtk_menu_shell_add_mnemonic      (GtkMenuShell *menu_shell,
-                                              guint         keyval,
-                                              GtkWidget    *target);
-void       _gtk_menu_shell_remove_mnemonic   (GtkMenuShell *menu_shell,
-                                              guint         keyval,
-                                              GtkWidget    *target);
-
 void       _gtk_menu_shell_update_mnemonics  (GtkMenuShell *menu_shell);
 void       _gtk_menu_shell_set_keyboard_mode (GtkMenuShell *menu_shell,
                                               gboolean      keyboard_mode);
diff --git a/gtk/meson.build b/gtk/meson.build
index 4c4f851df0..74e8be15e6 100644
--- a/gtk/meson.build
+++ b/gtk/meson.build
@@ -120,7 +120,6 @@ gtk_private_sources = files([
   'gtkmenusectionbox.c',
   'gtkmenutracker.c',
   'gtkmenutrackeritem.c',
-  'gtkmnemonichash.c',
   'gtkpango.c',
   'gskpango.c',
   'gtkpathbar.c',


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