[gtk+] a11y: remove implementation for [add/remove]_global_event_listener
- From: Alejandro PiÃeiro Iglesias <apinheiro src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] a11y: remove implementation for [add/remove]_global_event_listener
- Date: Thu, 28 Jun 2012 10:47:51 +0000 (UTC)
commit 4cfe2a38bf32520001b9836433915713d248f04a
Author: Alejandro PiÃeiro <apinheiro igalia com>
Date: Mon Jun 25 19:45:25 2012 +0200
a11y: remove implementation for [add/remove]_global_event_listener
Since release 2.5.3, ATK provides an implementation for those
methods, so toolkits doesn't need to implement them.
configure.ac | 2 +-
gtk/a11y/gailutil.c | 114 ---------------------------------------------------
2 files changed, 1 insertions(+), 115 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 37b6349..da70185 100644
--- a/configure.ac
+++ b/configure.ac
@@ -41,7 +41,7 @@ m4_define([gtk_binary_version], [3.0.0])
# required versions of other packages
m4_define([glib_required_version], [2.33.1])
m4_define([pango_required_version], [1.30.0])
-m4_define([atk_required_version], [2.2.0])
+m4_define([atk_required_version], [2.5.3])
m4_define([cairo_required_version], [1.10.0])
m4_define([gdk_pixbuf_required_version], [2.26.0])
m4_define([introspection_required_version], [1.32.0])
diff --git a/gtk/a11y/gailutil.c b/gtk/a11y/gailutil.c
index e04f8c5..7cc175a 100644
--- a/gtk/a11y/gailutil.c
+++ b/gtk/a11y/gailutil.c
@@ -24,70 +24,16 @@
#include "gtktoplevelaccessible.h"
#include "gtkwindowaccessible.h"
-
-static GHashTable *listener_list = NULL;
-static gint listener_idx = 1;
static GSList *key_listener_list = NULL;
-typedef struct _GailUtilListenerInfo GailUtilListenerInfo;
typedef struct _GailKeyEventInfo GailKeyEventInfo;
-struct _GailUtilListenerInfo
-{
- gint key;
- guint signal_id;
- gulong hook_id;
-};
-
struct _GailKeyEventInfo
{
AtkKeyEventStruct *key_event;
gpointer func_data;
};
-static guint
-add_listener (GSignalEmissionHook listener,
- const gchar *object_type,
- const gchar *signal_name,
- const gchar *hook_data)
-{
- GType type;
- guint signal_id;
- gint rc = 0;
-
- type = g_type_from_name (object_type);
- if (type)
- {
- signal_id = g_signal_lookup (signal_name, type);
- if (signal_id > 0)
- {
- GailUtilListenerInfo *listener_info;
-
- rc = listener_idx;
-
- listener_info = g_new (GailUtilListenerInfo, 1);
- listener_info->key = listener_idx;
- listener_info->hook_id =
- g_signal_add_emission_hook (signal_id, 0, listener,
- g_strdup (hook_data),
- (GDestroyNotify) g_free);
- listener_info->signal_id = signal_id;
-
- g_hash_table_insert (listener_list, &(listener_info->key), listener_info);
- listener_idx++;
- }
- else
- {
- g_warning ("Invalid signal type %s\n", signal_name);
- }
- }
- else
- {
- g_warning ("Invalid object type %s\n", object_type);
- }
- return rc;
-}
-
static gboolean
state_event_watcher (GSignalInvocationHint *hint,
guint n_param_values,
@@ -259,63 +205,6 @@ do_window_event_initialization (void)
g_signal_connect (root, "children-changed::remove",
(GCallback) window_removed, NULL);
}
-static guint
-gail_util_add_global_event_listener (GSignalEmissionHook listener,
- const gchar *event_type)
-{
- guint rc = 0;
- gchar **split_string;
-
- split_string = g_strsplit (event_type, ":", 3);
-
- if (g_strv_length (split_string) == 3)
- rc = add_listener (listener, split_string[1], split_string[2], event_type);
-
- g_strfreev (split_string);
-
- return rc;
-}
-
-static void
-gail_util_remove_global_event_listener (guint remove_listener)
-{
- if (remove_listener > 0)
- {
- GailUtilListenerInfo *listener_info;
- gint tmp_idx = remove_listener;
-
- listener_info = (GailUtilListenerInfo *)
- g_hash_table_lookup(listener_list, &tmp_idx);
-
- if (listener_info != NULL)
- {
- /* Hook id of 0 and signal id of 0 are invalid */
- if (listener_info->hook_id != 0 && listener_info->signal_id != 0)
- {
- /* Remove the emission hook */
- g_signal_remove_emission_hook(listener_info->signal_id,
- listener_info->hook_id);
-
- /* Remove the element from the hash */
- g_hash_table_remove(listener_list, &tmp_idx);
- }
- else
- {
- g_warning ("Invalid listener hook_id %ld or signal_id %d\n",
- listener_info->hook_id, listener_info->signal_id);
- }
- }
- else
- {
- g_warning ("No listener with the specified listener id %d",
- remove_listener);
- }
- }
- else
- {
- g_warning ("Invalid listener_id %d", remove_listener);
- }
-}
static AtkKeyEventStruct *
atk_key_event_from_gdk_event_key (GdkEventKey *key)
@@ -457,14 +346,11 @@ _gail_util_install (void)
{
AtkUtilClass *atk_class = ATK_UTIL_CLASS (g_type_class_ref (ATK_TYPE_UTIL));
- atk_class->add_global_event_listener = gail_util_add_global_event_listener;
- atk_class->remove_global_event_listener = gail_util_remove_global_event_listener;
atk_class->add_key_event_listener = gail_util_add_key_event_listener;
atk_class->remove_key_event_listener = gail_util_remove_key_event_listener;
atk_class->get_root = gail_util_get_root;
atk_class->get_toolkit_name = gail_util_get_toolkit_name;
atk_class->get_toolkit_version = gail_util_get_toolkit_version;
- listener_list = g_hash_table_new_full (g_int_hash, g_int_equal, NULL, g_free);
do_window_event_initialization ();
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]