diff options
author | Bill Haneman <billh@src.gnome.org> | 2001-08-16 21:47:42 +0000 |
---|---|---|
committer | Bill Haneman <billh@src.gnome.org> | 2001-08-16 21:47:42 +0000 |
commit | 4bd1197183c0394d3e36976fc723f5d438d5949a (patch) | |
tree | 7f3ddc4083b7d9f155c62610778c79e1a96e3477 /atk/atkutil.c | |
parent | 9fa36b7ed0ca9af94391510709e330a4a9634cfe (diff) | |
download | atk-4bd1197183c0394d3e36976fc723f5d438d5949a.tar.gz |
Changed atk_util_add_global_event_listener to ensure that
ATK_UTIL class has been registered before the call.
Diffstat (limited to 'atk/atkutil.c')
-rwxr-xr-x | atk/atkutil.c | 30 |
1 files changed, 17 insertions, 13 deletions
diff --git a/atk/atkutil.c b/atk/atkutil.c index 3540f92..c1d01a8 100755 --- a/atk/atkutil.c +++ b/atk/atkutil.c @@ -96,7 +96,7 @@ atk_focus_tracker_init (AtkEventListenerInit init) /** * atk_add_focus_tracker: * @focus_tracker: Function to be added to the list of functions to be called - * when an object receives focus. + * when an object receives focus. * * Adds the specified function to the list of functions to be called * when an object receives focus. @@ -123,7 +123,7 @@ atk_add_focus_tracker (AtkEventListener focus_tracker) item.index = ++index; item.func = focus_tracker; - trackers = g_array_append_val (trackers, item); + trackers = g_array_append_val (trackers, item); return index; } else @@ -196,18 +196,22 @@ atk_focus_tracker_notify (AtkObject *object) * * Returns: added event listener id, or 0 on failure. **/ -guint +guint atk_add_global_event_listener (GSignalEmissionHook listener, gchar* event_type) { - AtkUtilClass *klass = g_type_class_peek (ATK_TYPE_UTIL); - if (klass->add_global_event_listener) + guint retval; + AtkUtilClass *klass = g_type_class_ref (ATK_TYPE_UTIL); + if (klass->add_global_event_listener) { - return klass->add_global_event_listener (listener, event_type); + retval = klass->add_global_event_listener (listener, event_type); } else { - return -1; + retval = -1; } + g_type_class_unref (klass); + + return retval; } /** @@ -216,12 +220,12 @@ atk_add_global_event_listener (GSignalEmissionHook listener, gchar* event_type) * * Removes the specified event listener **/ -void +void atk_remove_global_event_listener (guint listener_id) { AtkUtilClass *klass = g_type_class_peek (ATK_TYPE_UTIL); - if (klass->remove_global_event_listener) + if (klass->remove_global_event_listener) klass->remove_global_event_listener (listener_id); } @@ -232,7 +236,7 @@ atk_remove_global_event_listener (guint listener_id) * * Returns: the root accessible container for the current application **/ -AtkObject* +AtkObject* atk_get_root(void) { AtkUtilClass *klass = g_type_class_peek (ATK_TYPE_UTIL); @@ -256,14 +260,14 @@ atk_get_root(void) gchar* atk_get_toolkit_name(void) { AtkUtilClass *klass = g_type_class_peek (ATK_TYPE_UTIL); - if (klass->get_toolkit_name) + if (klass->get_toolkit_name) { return klass->get_toolkit_name (); } else { return NULL; - } + } } /** @@ -273,7 +277,7 @@ gchar* atk_get_toolkit_name(void) * * Returns: version string for the GUI toolkit implementing ATK for this application **/ -gchar* +gchar* atk_get_toolkit_version(void) { AtkUtilClass *klass = g_type_class_peek (ATK_TYPE_UTIL); |