[gtk+] gail: Fix menu emission hooks
- From: Benjamin Otte <otte src gnome org>
- To: commits-list gnome org
- Cc: 
- Subject: [gtk+] gail: Fix menu emission hooks
- Date: Sat,  2 Oct 2010 01:37:44 +0000 (UTC)
commit e9c9193ff63f1fdbdec26f1fb7a0f9b10a2ce73c
Author: Benjamin Otte <otte redhat com>
Date:   Sat Oct 2 03:34:42 2010 +0200
    gail: Fix menu emission hooks
    
    Ref the GtkmenuItem class, so we can add emission hooks. And actually
    add the emission hooks again that were removed in
    7c140feb6b18c6e158b83356370a85864758c4f9.
 modules/other/gail/gail.c |   17 +++++++++++++++++
 1 files changed, 17 insertions(+), 0 deletions(-)
---
diff --git a/modules/other/gail/gail.c b/modules/other/gail/gail.c
index d53fd56..07a619d 100644
--- a/modules/other/gail/gail.c
+++ b/modules/other/gail/gail.c
@@ -697,6 +697,7 @@ gail_focus_tracker_init (void)
        * We cannot be sure that the classes exist so we make sure that they do.
        */
       g_type_class_ref (GTK_TYPE_WIDGET);
+      g_type_class_ref (GTK_TYPE_MENU_ITEM);
       g_type_class_ref (GTK_TYPE_MENU_SHELL);
       g_type_class_ref (GTK_TYPE_NOTEBOOK);
 
@@ -707,6 +708,22 @@ gail_focus_tracker_init (void)
       g_signal_add_emission_hook (
              g_signal_lookup ("event-after", GTK_TYPE_WIDGET), 0,
              gail_focus_watcher, NULL, (GDestroyNotify) NULL);
+      /*
+       * A "select" signal is emitted when arrow key is used to
+       * move to a list item in the popup window of a GtkCombo or
+       * a menu item in a menu.
+       */
+      g_signal_add_emission_hook (
+             g_signal_lookup ("select", GTK_TYPE_MENU_ITEM), 0,
+             gail_select_watcher, NULL, (GDestroyNotify) NULL);
+
+      /*
+       * A "deselect" signal is emitted when arrow key is used to
+       * move from a menu item in a menu to the parent menu.
+       */
+      g_signal_add_emission_hook (
+             g_signal_lookup ("deselect", GTK_TYPE_MENU_ITEM), 0,
+             gail_deselect_watcher, NULL, (GDestroyNotify) NULL);
 
       /*
        * We listen for deactivate signals on menushells to determine
[
Date Prev][
Date Next]   [
Thread Prev][
Thread Next]   
[
Thread Index]
[
Date Index]
[
Author Index]