[java-atk-wrapper] Complete facility and use it everywhere
- From: Samuel Thibault <sthibaul src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [java-atk-wrapper] Complete facility and use it everywhere
- Date: Tue, 23 Jul 2019 14:30:26 +0000 (UTC)
commit e4644081d20315b7f814655069a2beaba901caf4
Author: Giuseppe <giuseppecapaldo93 gmail com>
Date: Tue Jul 23 16:29:17 2019 +0200
Complete facility and use it everywhere
jni/src/AtkWrapper.c | 135 +++++++++++++++++++++++-------------------
jni/src/jawaction.c | 46 ++++++++++++++-
jni/src/jawcomponent.c | 42 ++++++++++++-
jni/src/jaweditabletext.c | 45 ++++++++++++++
jni/src/jawhyperlink.c | 38 +++++++++++-
jni/src/jawhypertext.c | 21 +++++++
jni/src/jawimage.c | 21 +++++++
jni/src/jawimpl.c | 53 ++++++++++++-----
jni/src/jawimpl.h | 1 +
jni/src/jawobject.c | 22 +++++++
jni/src/jawselection.c | 45 ++++++++++++++
jni/src/jawtable.c | 147 ++++++++++++++++++++++++++++++++++++++++++++--
jni/src/jawtablecell.c | 33 +++++++++++
jni/src/jawtext.c | 88 +++++++++++++++++++++++++++
jni/src/jawtoplevel.c | 16 ++++-
jni/src/jawutil.c | 23 ++++++++
jni/src/jawutil.h | 37 ++++++++----
jni/src/jawvalue.c | 29 ++++++++-
18 files changed, 742 insertions(+), 100 deletions(-)
---
diff --git a/jni/src/AtkWrapper.c b/jni/src/AtkWrapper.c
index 492f1fe..f159c18 100644
--- a/jni/src/AtkWrapper.c
+++ b/jni/src/AtkWrapper.c
@@ -57,27 +57,28 @@ static gboolean jaw_initialized = FALSE;
gboolean jaw_accessibility_init (void)
{
+ JAW_DEBUG_ALL("");
if (atk_bridge_adaptor_init (NULL, NULL) < 0)
return FALSE;
- if (jaw_debug)
- printf("Atk Bridge Initialized\n");
+ JAW_DEBUG_I("Atk Bridge Initialized");
return TRUE;
}
void
jaw_accessibility_shutdown (void)
{
+ JAW_DEBUG_ALL("");
atk_bridge_adaptor_cleanup();
}
static gpointer jni_loop_callback(void *data)
{
+ JAW_DEBUG_C("%p", data);
if (!g_main_loop_is_running((GMainLoop *)data))
g_main_loop_run((GMainLoop *)data);
else
{
- if (jaw_debug)
- printf("Running JNI already\n");
+ JAW_DEBUG_I("Running JNI already");
}
return 0;
}
@@ -89,8 +90,8 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_initNativeLibrary(void)
if (debug_env)
{
int val_debug = atoi(debug_env);
- if(val_debug > 5)
- jaw_debug = 5;
+ if(val_debug > 4)
+ jaw_debug = 4;
else
jaw_debug = val_debug;
}
@@ -103,7 +104,7 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_initNativeLibrary(void)
exit(1);
}
}
- JAW_DEBUG_F(2,"");
+ JAW_DEBUG_JNI("");
if (jaw_initialized)
return TRUE;
@@ -126,6 +127,7 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_initNativeLibrary(void)
static guint
jni_main_idle_add(GSourceFunc function, gpointer data)
{
+ JAW_DEBUG_C("%p, %p", function, data);
GSource *source;
guint id;
@@ -140,6 +142,7 @@ jni_main_idle_add(GSourceFunc function, gpointer data)
JNIEXPORT void
JNICALL Java_org_GNOME_Accessibility_AtkWrapper_loadAtkBridge(void)
{
+ JAW_DEBUG_JNI("");
// Enable ATK Bridge so we can load it now
g_unsetenv ("NO_AT_BRIDGE");
@@ -150,8 +153,7 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_loadAtkBridge(void)
err = NULL;
jaw_initialized = jaw_accessibility_init();
- if (jaw_debug)
- printf("Jaw Initialization STATUS in loadAtkBridge: %d\n", jaw_initialized);
+ JAW_DEBUG_I("Jaw Initialization STATUS = %d", jaw_initialized);
if (!jaw_initialized)
return;
@@ -161,17 +163,15 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_loadAtkBridge(void)
thread = g_thread_try_new(message, jni_loop_callback, (void *) jni_main_loop, &err);
if(thread == NULL)
{
- if (jaw_debug)
- {
- printf("Thread create failed: %s!!\n", err->message );
- g_error_free (err);
- }
+ JAW_DEBUG_I("Thread create failed: %s !", err->message);
+ g_error_free (err);
}
}
JNIEXPORT void
JNICALL Java_org_GNOME_Accessibility_AtkWrapper_GC(JNIEnv *jniEnv)
{
+ JAW_DEBUG_JNI("%p", jniEnv);
object_table_gc(jniEnv);
}
@@ -214,13 +214,13 @@ typedef struct _CallbackPara {
static CallbackPara*
alloc_callback_para (JNIEnv *jniEnv, jobject ac)
{
+ JAW_DEBUG_C("%p, %p", jniEnv, ac);
if (ac == NULL)
return NULL;
JawImpl* jaw_impl = jaw_impl_get_instance(jniEnv, ac);
if (jaw_impl == NULL)
{
- if (jaw_debug)
- g_warning("\nalloc_callback_para: jaw_impl == NULL\n");
+ JAW_DEBUG_I("jaw_impl == NULL");
return NULL;
}
g_object_ref(G_OBJECT(jaw_impl));
@@ -236,16 +236,17 @@ alloc_callback_para (JNIEnv *jniEnv, jobject ac)
static void
free_callback_para (CallbackPara *para)
{
+ JAW_DEBUG_C("%p", para);
JNIEnv *jniEnv = jaw_util_get_jni_env();
if (jniEnv == NULL)
{
+ JAW_DEBUG_I("jniEnv == NULL");
return;
}
if (para->global_ac == NULL)
{
- if (jaw_debug)
- g_warning("free_callback_para: para->global_ac == NULL");
+ JAW_DEBUG_I("para->global_ac == NULL");
return;
}
@@ -267,6 +268,7 @@ static GMutex callback_para_frees_mutex;
/* Add a note that this callback param should be freed from the application */
static void queue_free_callback_para(CallbackPara *para)
{
+ JAW_DEBUG_C("%p", para);
g_mutex_lock(&callback_para_frees_mutex);
callback_para_frees = g_slist_prepend(callback_para_frees, para);
g_mutex_unlock(&callback_para_frees_mutex);
@@ -275,6 +277,7 @@ static void queue_free_callback_para(CallbackPara *para)
/* Process the unreference requests */
static void callback_para_process_frees(void)
{
+ JAW_DEBUG_C("");
GSList *list, *cur, *next;
g_mutex_lock(&callback_para_frees_mutex);
@@ -293,6 +296,7 @@ static void callback_para_process_frees(void)
static gboolean
focus_notify_handler (gpointer p)
{
+ JAW_DEBUG_C("%p", p);
CallbackPara *para = (CallbackPara*)p;
AtkObject* atk_obj = ATK_OBJECT(para->jaw_impl);
@@ -310,9 +314,9 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_focusNotify(JNIEnv *jniEnv,
jclass jClass,
jobject jAccContext)
{
+ JAW_DEBUG_JNI("%p, %p, %p", jniEnv, jClass, jAccContext);
if (!jAccContext) {
- if (jaw_debug)
- g_warning("%s: jAccContext == NULL", __func__);
+ JAW_DEBUG_I("jAccContext == NULL");
return;
}
jobject global_ac = (*jniEnv)->NewGlobalRef(jniEnv, jAccContext);
@@ -324,6 +328,7 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_focusNotify(JNIEnv *jniEnv,
static gboolean
window_open_handler (gpointer p)
{
+ JAW_DEBUG_C("%p", p);
CallbackPara *para = (CallbackPara*)p;
gboolean is_toplevel = para->is_toplevel;
AtkObject* atk_obj = ATK_OBJECT(para->jaw_impl);
@@ -366,9 +371,9 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_windowOpen(JNIEnv *jniEnv,
jobject jAccContext,
jboolean jIsToplevel)
{
+ JAW_DEBUG_JNI("%p, %p, %p, %d", jniEnv, jClass, jAccContext, jIsToplevel);
if (!jAccContext) {
- if (jaw_debug)
- g_warning("%s: jAccContext == NULL", __func__);
+ JAW_DEBUG_I("jAccContext == NULL");
return;
}
jobject global_ac = (*jniEnv)->NewGlobalRef(jniEnv, jAccContext);
@@ -381,6 +386,7 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_windowOpen(JNIEnv *jniEnv,
static gboolean
window_close_handler (gpointer p)
{
+ JAW_DEBUG_C("%p", p);
CallbackPara *para = (CallbackPara*)p;
gboolean is_toplevel = para->is_toplevel;
AtkObject* atk_obj = ATK_OBJECT(para->jaw_impl);
@@ -421,9 +427,9 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_windowClose(JNIEnv *jniEnv,
jobject jAccContext,
jboolean jIsToplevel)
{
+ JAW_DEBUG_JNI("%p, %p, %p, %d", jniEnv, jClass, jAccContext, jIsToplevel);
if (!jAccContext) {
- if (jaw_debug)
- g_warning("%s: jAccContext == NULL", __func__);
+ JAW_DEBUG_I("jAccContext == NULL");
return;
}
jobject global_ac = (*jniEnv)->NewGlobalRef(jniEnv, jAccContext);
@@ -436,6 +442,7 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_windowClose(JNIEnv *jniEnv,
static gboolean
window_minimize_handler (gpointer p)
{
+ JAW_DEBUG_C("%p", p);
CallbackPara *para = (CallbackPara*)p;
AtkObject* atk_obj = ATK_OBJECT(para->jaw_impl);
@@ -451,9 +458,9 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_windowMinimize(JNIEnv *jniEnv,
jclass jClass,
jobject jAccContext)
{
+ JAW_DEBUG_JNI("%p, %p, %p", jniEnv, jClass, jAccContext);
if (!jAccContext) {
- if (jaw_debug)
- g_warning("%s: jAccContext == NULL", __func__);
+ JAW_DEBUG_I("jAccContext == NULL");
return;
}
jobject global_ac = (*jniEnv)->NewGlobalRef(jniEnv, jAccContext);
@@ -465,6 +472,7 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_windowMinimize(JNIEnv *jniEnv,
static gboolean
window_maximize_handler (gpointer p)
{
+ JAW_DEBUG_C("%p", p);
CallbackPara *para = (CallbackPara*)p;
AtkObject* atk_obj = ATK_OBJECT(para->jaw_impl);
@@ -479,9 +487,9 @@ JNIEXPORT void JNICALL Java_org_GNOME_Accessibility_AtkWrapper_windowMaximize(JN
jclass jClass,
jobject jAccContext)
{
+ JAW_DEBUG_JNI("%p, %p, %p", jniEnv, jClass, jAccContext);
if (!jAccContext) {
- if (jaw_debug)
- g_warning("%s: jAccContext == NULL", __func__);
+ JAW_DEBUG_I("jAccContext == NULL");
return;
}
jobject global_ac = (*jniEnv)->NewGlobalRef(jniEnv, jAccContext);
@@ -493,6 +501,7 @@ JNIEXPORT void JNICALL Java_org_GNOME_Accessibility_AtkWrapper_windowMaximize(JN
static gboolean
window_restore_handler (gpointer p)
{
+ JAW_DEBUG_C("%p", p);
CallbackPara *para = (CallbackPara*)p;
AtkObject* atk_obj = ATK_OBJECT(para->jaw_impl);
@@ -507,9 +516,9 @@ JNIEXPORT void JNICALL Java_org_GNOME_Accessibility_AtkWrapper_windowRestore(JNI
jclass jClass,
jobject jAccContext)
{
+ JAW_DEBUG_JNI("%p, %p, %p", jniEnv, jClass, jAccContext);
if (!jAccContext) {
- if (jaw_debug)
- g_warning("%s: jAccContext == NULL", __func__);
+ JAW_DEBUG_I("jAccContext == NULL");
return;
}
jobject global_ac = (*jniEnv)->NewGlobalRef(jniEnv, jAccContext);
@@ -521,6 +530,7 @@ JNIEXPORT void JNICALL Java_org_GNOME_Accessibility_AtkWrapper_windowRestore(JNI
static gboolean
window_activate_handler (gpointer p)
{
+ JAW_DEBUG_C("%p", p);
CallbackPara *para = (CallbackPara*)p;
AtkObject* atk_obj = ATK_OBJECT(para->jaw_impl);
@@ -535,9 +545,9 @@ JNIEXPORT void JNICALL Java_org_GNOME_Accessibility_AtkWrapper_windowActivate(JN
jclass jClass,
jobject jAccContext)
{
+ JAW_DEBUG_JNI("%p, %p, %p", jniEnv, jClass, jAccContext);
if (!jAccContext) {
- if (jaw_debug)
- g_warning("%s: jAccContext == NULL", __func__);
+ JAW_DEBUG_I("jAccContext == NULL");
return;
}
jobject global_ac = (*jniEnv)->NewGlobalRef(jniEnv, jAccContext);
@@ -549,6 +559,7 @@ JNIEXPORT void JNICALL Java_org_GNOME_Accessibility_AtkWrapper_windowActivate(JN
static gboolean
window_deactivate_handler (gpointer p)
{
+ JAW_DEBUG_C("%p", p);
CallbackPara *para = (CallbackPara*)p;
AtkObject* atk_obj = ATK_OBJECT(para->jaw_impl);
@@ -564,9 +575,9 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_windowDeactivate(JNIEnv *jniEnv,
jclass jClass,
jobject jAccContext)
{
+ JAW_DEBUG_JNI("%p, %p, %p", jniEnv, jClass, jAccContext);
if (!jAccContext) {
- if (jaw_debug)
- g_warning("%s: jAccContext == NULL", __func__);
+ JAW_DEBUG_I("jAccContext == NULL");
return;
}
jobject global_ac = (*jniEnv)->NewGlobalRef(jniEnv, jAccContext);
@@ -578,6 +589,7 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_windowDeactivate(JNIEnv *jniEnv,
static gboolean
window_state_change_handler (gpointer p)
{
+ JAW_DEBUG_C("%p", p);
CallbackPara *para = (CallbackPara*)p;
AtkObject* atk_obj = ATK_OBJECT(para->jaw_impl);
@@ -593,9 +605,9 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_windowStateChange(JNIEnv *jniEnv
jclass jClass,
jobject jAccContext)
{
+ JAW_DEBUG_JNI("%p, %p, %p", jniEnv, jClass, jAccContext);
if (!jAccContext) {
- if (jaw_debug)
- g_warning("%s: jAccContext == NULL", __func__);
+ JAW_DEBUG_I("jAccContext == NULL");
return;
}
jobject global_ac = (*jniEnv)->NewGlobalRef(jniEnv, jAccContext);
@@ -607,6 +619,7 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_windowStateChange(JNIEnv *jniEnv
static gint
get_int_value (JNIEnv *jniEnv, jobject o)
{
+ JAW_DEBUG_C("%p, %p", jniEnv, o);
jclass classInteger = (*jniEnv)->FindClass(jniEnv, "java/lang/Integer");
jmethodID jmid = (*jniEnv)->GetMethodID(jniEnv, classInteger, "intValue", "()I");
return (gint)(*jniEnv)->CallIntMethod(jniEnv, o, jmid);
@@ -615,6 +628,7 @@ get_int_value (JNIEnv *jniEnv, jobject o)
static gboolean
signal_emit_handler (gpointer p)
{
+ JAW_DEBUG_C("%p", p);
CallbackPara *para = (CallbackPara*)p;
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobjectArray args = para->args;
@@ -850,9 +864,9 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_emitSignal(JNIEnv *jniEnv,
jint id,
jobjectArray args)
{
+ JAW_DEBUG_JNI("%p, %p, %p, %d, %p", jniEnv, jClass, jAccContext, id, args);
if (!jAccContext) {
- if (jaw_debug)
- g_warning("%s: jAccContext == NULL", __func__);
+ JAW_DEBUG_I("jAccContext == NULL");
return;
}
jobject global_ac = (*jniEnv)->NewGlobalRef(jniEnv, jAccContext);
@@ -891,8 +905,7 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_emitSignal(JNIEnv *jniEnv,
JawImpl *child_impl = jaw_impl_get_instance(jniEnv, child_ac);
if (child_impl == NULL)
{
- if (jaw_debug)
- g_warning("Java_org_GNOME_Accessibility_AtkWrapper_emitSignal: child_impl == NULL");
+ JAW_DEBUG_I("child_impl == NULL");
free_callback_para(para);
return;
}
@@ -905,8 +918,7 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_emitSignal(JNIEnv *jniEnv,
JawImpl *child_impl = jaw_impl_get_instance(jniEnv, child_ac);
if (child_impl == NULL)
{
- if (jaw_debug)
- g_warning("Java_org_GNOME_Accessibility_AtkWrapper_emitSignal: child_impl == NULL");
+ JAW_DEBUG_I("child_impl == NULL");
free_callback_para(para);
return;
}
@@ -920,6 +932,7 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_emitSignal(JNIEnv *jniEnv,
static gboolean
object_state_change_handler (gpointer p)
{
+ JAW_DEBUG_C("%p", p);
CallbackPara *para = (CallbackPara*)p;
atk_object_notify_state_change(ATK_OBJECT(para->jaw_impl),
@@ -937,9 +950,9 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_objectStateChange(JNIEnv *jniEnv
jobject state,
jboolean value)
{
+ JAW_DEBUG_JNI("%p, %p, %p, %p, %d", jniEnv, jClass, jAccContext, state, value);
if (!jAccContext) {
- if (jaw_debug)
- g_warning("%s: jAccContext == NULL", __func__);
+ JAW_DEBUG_I("jAccContext == NULL");
return;
}
jobject global_ac = (*jniEnv)->NewGlobalRef(jniEnv, jAccContext);
@@ -954,6 +967,7 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_objectStateChange(JNIEnv *jniEnv
static gboolean
component_added_handler (gpointer p)
{
+ JAW_DEBUG_C("%p", p);
CallbackPara *para = (CallbackPara*)p;
AtkObject* atk_obj = ATK_OBJECT(para->jaw_impl);
@@ -973,9 +987,9 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_componentAdded(JNIEnv *jniEnv,
jclass jClass,
jobject jAccContext)
{
+ JAW_DEBUG_JNI("%p, %p, %p", jniEnv, jClass, jAccContext);
if (!jAccContext) {
- if (jaw_debug)
- g_warning("%s: jAccContext == NULL", __func__);
+ JAW_DEBUG_I("jAccContext == NULL");
return;
}
jobject global_ac = (*jniEnv)->NewGlobalRef(jniEnv, jAccContext);
@@ -987,13 +1001,13 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_componentAdded(JNIEnv *jniEnv,
static gboolean
component_removed_handler (gpointer p)
{
+ JAW_DEBUG_C("%p", p);
CallbackPara *para = (CallbackPara*)p;
AtkObject* atk_obj = ATK_OBJECT(para->jaw_impl);
if (atk_obj == NULL)
{
- if (jaw_debug)
- g_warning("component_removed_handler: atk_obj == NULL");
+ JAW_DEBUG_I("atk_obj == NULL");
queue_free_callback_para(para);
return G_SOURCE_REMOVE;
}
@@ -1009,9 +1023,9 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_componentRemoved(JNIEnv *jniEnv,
jclass jClass,
jobject jAccContext)
{
+ JAW_DEBUG_JNI("%p, %p, %p", jniEnv, jClass, jAccContext);
if (!jAccContext) {
- if (jaw_debug)
- g_warning("%s: jAccContext == NULL", __func__);
+ JAW_DEBUG_I("jAccContext == NULL");
return;
}
jobject global_ac = (*jniEnv)->NewGlobalRef(jniEnv, jAccContext);
@@ -1026,14 +1040,14 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_componentRemoved(JNIEnv *jniEnv,
static gboolean
bounds_changed_handler (gpointer p)
{
+ JAW_DEBUG_C("%p", p);
CallbackPara *para = (CallbackPara*)p;
AtkObject* atk_obj = ATK_OBJECT(para->jaw_impl);
AtkRectangle rect;
if (atk_obj == NULL)
{
- if (jaw_debug)
- g_warning("bounds_changed_handler: atk_obj == NULL");
+ JAW_DEBUG_I("atk_obj == NULL");
queue_free_callback_para(para);
return G_SOURCE_REMOVE;
}
@@ -1052,9 +1066,9 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_boundsChanged(JNIEnv *jniEnv,
jclass jClass,
jobject jAccContext)
{
+ JAW_DEBUG_JNI("%p, %p, %p", jniEnv, jClass, jAccContext);
if (!jAccContext) {
- if (jaw_debug)
- g_warning("%s: jAccContext == NULL", __func__);
+ JAW_DEBUG_I("jAccContext == NULL");
return;
}
jobject global_ac = (*jniEnv)->NewGlobalRef(jniEnv, jAccContext);
@@ -1066,6 +1080,7 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_boundsChanged(JNIEnv *jniEnv,
static gboolean
key_dispatch_handler (gpointer p)
{
+ JAW_DEBUG_C("%p", p);
key_dispatch_result = 0;
jobject jAtkKeyEvent = (jobject)p;
AtkKeyEventStruct *event = g_new0(AtkKeyEventStruct, 1);
@@ -1073,8 +1088,7 @@ key_dispatch_handler (gpointer p)
JNIEnv *jniEnv = jaw_util_get_jni_env();
if (jniEnv == NULL)
{
- if (jaw_debug)
- g_warning("key_dispatch_handler: env == NULL");
+ JAW_DEBUG_I("jniEnv == NULL");
return G_SOURCE_REMOVE;
}
@@ -1156,8 +1170,7 @@ key_dispatch_handler (gpointer p)
event->timestamp = (guint32)(*jniEnv)->GetIntField(jniEnv, jAtkKeyEvent, jfidTimestamp);
gboolean b = jaw_util_dispatch_key_event (event);
- if(jaw_debug)
- printf("key_dispatch_result b = %d\n ", b);
+ JAW_DEBUG_I("result b = %d", b);
if (b) {
key_dispatch_result = KEY_DISPATCH_CONSUMED;
} else {
@@ -1176,13 +1189,12 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_dispatchKeyEvent(JNIEnv *jniEnv,
jclass jClass,
jobject jAtkKeyEvent)
{
+ JAW_DEBUG_JNI("%p, %p, %p", jniEnv, jClass, jAtkKeyEvent);
jboolean key_consumed;
jobject global_key_event = (*jniEnv)->NewGlobalRef(jniEnv, jAtkKeyEvent);
callback_para_process_frees();
jni_main_idle_add(key_dispatch_handler, (gpointer)global_key_event);
-
- if(jaw_debug)
- printf("key_dispatch_result saved = %d\n ", key_dispatch_result);
+ JAW_DEBUG_I("result saved = %d", key_dispatch_result);
if (key_dispatch_result == KEY_DISPATCH_CONSUMED)
{
key_consumed = TRUE;
@@ -1201,6 +1213,7 @@ JNICALL Java_org_GNOME_Accessibility_AtkWrapper_getInstance(JNIEnv *jniEnv,
jclass jClass,
jobject ac)
{
+ JAW_DEBUG_JNI("%p, %p, %p", jniEnv, jClass, ac);
if (!ac)
return 0;
diff --git a/jni/src/jawaction.c b/jni/src/jawaction.c
index 0ac04da..cbbca75 100644
--- a/jni/src/jawaction.c
+++ b/jni/src/jawaction.c
@@ -44,6 +44,7 @@ typedef struct _ActionData {
void
jaw_action_interface_init (AtkActionIface *iface, gpointer data)
{
+ JAW_DEBUG_ALL("%p, %p", iface, data);
iface->do_action = jaw_action_do_action;
iface->get_n_actions = jaw_action_get_n_actions;
iface->get_description = jaw_action_get_description;
@@ -56,6 +57,7 @@ jaw_action_interface_init (AtkActionIface *iface, gpointer data)
gpointer
jaw_action_data_init (jobject ac)
{
+ JAW_DEBUG_ALL("%p", ac);
ActionData *data = g_new0(ActionData, 1);
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -74,6 +76,7 @@ jaw_action_data_init (jobject ac)
void
jaw_action_data_finalize (gpointer p)
{
+ JAW_DEBUG_ALL("%p", p);
ActionData *data = (ActionData*)p;
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -119,11 +122,17 @@ jaw_action_data_finalize (gpointer p)
static gboolean
jaw_action_do_action (AtkAction *action, gint i)
{
+ JAW_DEBUG_C("%p, %d", action, i);
JawObject *jaw_obj = JAW_OBJECT(action);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
ActionData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_ACTION);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_action = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_action);
if (!atk_action) {
+ JAW_DEBUG_I("atk_action == NULL");
return FALSE;
}
@@ -144,11 +153,17 @@ jaw_action_do_action (AtkAction *action, gint i)
static gint
jaw_action_get_n_actions (AtkAction *action)
{
+ JAW_DEBUG_C("%p", action);
JawObject *jaw_obj = JAW_OBJECT(action);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
ActionData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_ACTION);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_action = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_action);
if (!atk_action) {
+ JAW_DEBUG_I("atk_action == NULL");
return 0;
}
@@ -166,11 +181,17 @@ jaw_action_get_n_actions (AtkAction *action)
static const gchar*
jaw_action_get_description (AtkAction *action, gint i)
{
+ JAW_DEBUG_C("%p, %d", action, i);
JawObject *jaw_obj = JAW_OBJECT(action);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
ActionData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_ACTION);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_action = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_action);
if (!atk_action) {
+ JAW_DEBUG_I("atk_action == NULL");
return NULL;
}
@@ -205,11 +226,17 @@ jaw_action_get_description (AtkAction *action, gint i)
static gboolean
jaw_action_set_description (AtkAction *action, gint i, const gchar *description)
{
+ JAW_DEBUG_C("%p, %d, %s", action, i, description);
JawObject *jaw_obj = JAW_OBJECT(action);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
ActionData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_ACTION);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_action = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_action);
if (!atk_action) {
+ JAW_DEBUG_I("atk_action == NULL");
return FALSE;
}
@@ -231,11 +258,17 @@ jaw_action_set_description (AtkAction *action, gint i, const gchar *description)
static const gchar*
jaw_action_get_name (AtkAction *action, gint i)
{
+ JAW_DEBUG_C("%p, %d", action, i);
JawObject *jaw_obj = JAW_OBJECT(action);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
ActionData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_ACTION);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_action = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_action);
if (!atk_action) {
+ JAW_DEBUG_I("atk_action == NULL");
return NULL;
}
@@ -267,11 +300,17 @@ jaw_action_get_name (AtkAction *action, gint i)
static const gchar*
jaw_action_get_localized_name (AtkAction *action, gint i)
{
+ JAW_DEBUG_C("%p, %d", action, i);
JawObject *jaw_obj = JAW_OBJECT(action);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
ActionData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_ACTION);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_action = (*env)->NewGlobalRef(env, data->atk_action);
if (!atk_action) {
+ JAW_DEBUG_I("atk_action == NULL");
return NULL;
}
@@ -295,14 +334,17 @@ jaw_action_get_localized_name (AtkAction *action, gint i)
static const gchar*
jaw_action_get_keybinding (AtkAction *action, gint i)
{
+ JAW_DEBUG_C("%p, %d", action, i);
JawObject *jaw_obj = JAW_OBJECT(action);
- if (jaw_obj == NULL)
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
return NULL;
-
+ }
ActionData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_ACTION);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_action = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_action);
if (!atk_action) {
+ JAW_DEBUG_I("atk_action == NULL");
return NULL;
}
diff --git a/jni/src/jawcomponent.c b/jni/src/jawcomponent.c
index 50130d8..a98b3fd 100644
--- a/jni/src/jawcomponent.c
+++ b/jni/src/jawcomponent.c
@@ -59,6 +59,7 @@ typedef struct _ComponentData {
void
jaw_component_interface_init (AtkComponentIface *iface, gpointer data)
{
+ JAW_DEBUG_ALL("%p,%p", iface, data);
iface->contains = jaw_component_contains;
iface->ref_accessible_at_point = jaw_component_ref_accessible_at_point;
iface->get_extents = jaw_component_get_extents;
@@ -71,6 +72,7 @@ jaw_component_interface_init (AtkComponentIface *iface, gpointer data)
gpointer
jaw_component_data_init (jobject ac)
{
+ JAW_DEBUG_ALL("%p", ac);
ComponentData *data = g_new0(ComponentData, 1);
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -90,6 +92,7 @@ jaw_component_data_init (jobject ac)
void
jaw_component_data_finalize (gpointer p)
{
+ JAW_DEBUG_ALL("%p", p);
ComponentData *data = (ComponentData*)p;
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -103,11 +106,17 @@ jaw_component_data_finalize (gpointer p)
static gboolean
jaw_component_contains (AtkComponent *component, gint x, gint y, AtkCoordType coord_type)
{
+ JAW_DEBUG_C("%p, %d, %d, %d", component, x, y, coord_type);
JawObject *jaw_obj = JAW_OBJECT(component);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
ComponentData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_COMPONENT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_component = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_component);
if (!atk_component) {
+ JAW_DEBUG_I("atk_component == NULL");
return FALSE;
}
@@ -133,11 +142,17 @@ jaw_component_contains (AtkComponent *component, gint x, gint y, AtkCoordType co
static AtkObject*
jaw_component_ref_accessible_at_point (AtkComponent *component, gint x, gint y, AtkCoordType coord_type)
{
+ JAW_DEBUG_C("%p, %d, %d, %d", component, x, y, coord_type);
JawObject *jaw_obj = JAW_OBJECT(component);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
ComponentData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_COMPONENT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_component = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_component);
if (!atk_component) {
+ JAW_DEBUG_I("atk_component == NULL");
return NULL;
}
@@ -171,6 +186,7 @@ jaw_component_get_extents (AtkComponent *component,
gint *height,
AtkCoordType coord_type)
{
+ JAW_DEBUG_C("%p, %p, %p, %p, %p, %d", component, x, y, width, height, coord_type);
if (x == NULL || y == NULL || width == NULL || height == NULL)
return;
@@ -178,11 +194,16 @@ jaw_component_get_extents (AtkComponent *component,
return;
JawObject *jaw_obj = JAW_OBJECT(component);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return;
+ }
ComponentData *data = jaw_object_get_interface_data(jaw_obj,
INTERFACE_COMPONENT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_component = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_component);
if (!atk_component) {
+ JAW_DEBUG_I("atk_component == NULL");
return;
}
@@ -224,14 +245,19 @@ jaw_component_set_extents (AtkComponent *component,
gint height,
AtkCoordType coord_type)
{
+ JAW_DEBUG_C("%p, %d, %d, %d, %d, %d", component, x, y, width, height, coord_type);
JawObject *jaw_obj = JAW_OBJECT(component);
- if (!jaw_obj)
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
return FALSE;
+ }
ComponentData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_COMPONENT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_component = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_component);
- if (!atk_component)
+ if (!atk_component) {
+ JAW_DEBUG_I("atk_component == NULL");
return FALSE;
+ }
jclass classAtkComponent = (*jniEnv)->FindClass(jniEnv, "org/GNOME/Accessibility/AtkComponent");
jmethodID jmid = (*jniEnv)->GetMethodID(jniEnv, classAtkComponent, "set_extents", "(IIIII)Z");
jboolean assigned = (*jniEnv)->CallBooleanMethod(jniEnv, atk_component, jmid, (jint)x, (jint)y,
(jint)width, (jint)height, (jint)coord_type);
@@ -242,11 +268,17 @@ jaw_component_set_extents (AtkComponent *component,
static gboolean
jaw_component_grab_focus (AtkComponent *component)
{
+ JAW_DEBUG_C("%p", component);
JawObject *jaw_obj = JAW_OBJECT(component);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
ComponentData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_COMPONENT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_component = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_component);
if (!atk_component) {
+ JAW_DEBUG_I("atk_component == NULL");
return FALSE;
}
@@ -264,12 +296,18 @@ jaw_component_grab_focus (AtkComponent *component)
static AtkLayer
jaw_component_get_layer (AtkComponent *component)
{
+ JAW_DEBUG_C("%p", component);
JawObject *jaw_obj = JAW_OBJECT(component);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
ComponentData *data = jaw_object_get_interface_data(jaw_obj,
INTERFACE_COMPONENT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_component = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_component);
if (!atk_component) {
+ JAW_DEBUG_I("atk_component == NULL");
return 0;
}
diff --git a/jni/src/jaweditabletext.c b/jni/src/jaweditabletext.c
index c37fd52..5457244 100644
--- a/jni/src/jaweditabletext.c
+++ b/jni/src/jaweditabletext.c
@@ -53,6 +53,7 @@ typedef struct _EditableTextData {
void
jaw_editable_text_interface_init (AtkEditableTextIface *iface, gpointer data)
{
+ JAW_DEBUG_ALL("%p,%p", iface, data);
iface->set_text_contents = jaw_editable_text_set_text_contents;
iface->insert_text = jaw_editable_text_insert_text;
iface->copy_text = jaw_editable_text_copy_text;
@@ -65,6 +66,7 @@ jaw_editable_text_interface_init (AtkEditableTextIface *iface, gpointer data)
gpointer
jaw_editable_text_data_init (jobject ac)
{
+ JAW_DEBUG_ALL("%p", ac);
EditableTextData *data = g_new0(EditableTextData, 1);
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -87,6 +89,7 @@ jaw_editable_text_data_init (jobject ac)
void
jaw_editable_text_data_finalize (gpointer p)
{
+ JAW_DEBUG_ALL("%p", p);
EditableTextData *data = (EditableTextData*)p;
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -101,11 +104,17 @@ void
jaw_editable_text_set_text_contents (AtkEditableText *text,
const gchar *string)
{
+ JAW_DEBUG_C("%p, %s", text, string);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return;
+ }
EditableTextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_EDITABLE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_editable_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_editable_text);
if (!atk_editable_text) {
+ JAW_DEBUG_I("atk_editable_text == NULL");
return;
}
@@ -127,11 +136,17 @@ jaw_editable_text_insert_text (AtkEditableText *text,
gint length,
gint *position)
{
+ JAW_DEBUG_C("%p, %s, %d, %p", text, string, length, position);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return;
+ }
EditableTextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_EDITABLE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_editable_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_editable_text);
if (!atk_editable_text) {
+ JAW_DEBUG_I("atk_editable_text == NULL");
return;
}
@@ -157,12 +172,18 @@ jaw_editable_text_copy_text (AtkEditableText *text,
gint start_pos,
gint end_pos)
{
+ JAW_DEBUG_C("%p, %d, %d", text, start_pos, end_pos);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return;
+ }
EditableTextData *data = jaw_object_get_interface_data(jaw_obj,
INTERFACE_EDITABLE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_editable_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_editable_text);
if (!atk_editable_text) {
+ JAW_DEBUG_I("atk_editable_text == NULL");
return;
}
@@ -184,11 +205,17 @@ void
jaw_editable_text_cut_text (AtkEditableText *text,
gint start_pos, gint end_pos)
{
+ JAW_DEBUG_C("%p, %d, %d", text, start_pos, end_pos);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return;
+ }
EditableTextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_EDITABLE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_editable_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_editable_text);
if (!atk_editable_text) {
+ JAW_DEBUG_I("atk_editable_text == NULL");
return;
}
@@ -211,12 +238,18 @@ jaw_editable_text_delete_text (AtkEditableText *text,
gint start_pos,
gint end_pos)
{
+ JAW_DEBUG_C("%p, %d, %d", text, start_pos, end_pos);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return;
+ }
EditableTextData *data = jaw_object_get_interface_data(jaw_obj,
INTERFACE_EDITABLE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_editable_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_editable_text);
if (!atk_editable_text) {
+ JAW_DEBUG_I("atk_editable_text == NULL");
return;
}
@@ -238,12 +271,18 @@ void
jaw_editable_text_paste_text (AtkEditableText *text,
gint position)
{
+ JAW_DEBUG_C("%p, %d", text, position);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return;
+ }
EditableTextData *data = jaw_object_get_interface_data(jaw_obj,
INTERFACE_EDITABLE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_editable_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_editable_text);
if (!atk_editable_text) {
+ JAW_DEBUG_I("atk_editable_text == NULL");
return;
}
@@ -266,11 +305,17 @@ jaw_editable_text_set_run_attributes(AtkEditableText *text,
gint start_offset,
gint end_offset)
{
+ JAW_DEBUG_C("%p, %p, %d, %d", text, attrib_set, start_offset, end_offset);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
EditableTextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_EDITABLE_TEXT);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_editable_text = (*env)->NewGlobalRef(env, data->atk_editable_text);
if (!atk_editable_text) {
+ JAW_DEBUG_I("atk_editable_text == NULL");
return FALSE;
}
jclass classAtkEditableText = (*env)->FindClass(env, "org/GNOME/Accessibility/AtkEditableText");
diff --git a/jni/src/jawhyperlink.c b/jni/src/jawhyperlink.c
index 6e182cc..6c2bb20 100644
--- a/jni/src/jawhyperlink.c
+++ b/jni/src/jawhyperlink.c
@@ -40,6 +40,7 @@ G_DEFINE_TYPE (JawHyperlink, jaw_hyperlink, ATK_TYPE_HYPERLINK)
JawHyperlink*
jaw_hyperlink_new (jobject jhyperlink)
{
+ JAW_DEBUG_ALL("%p", jhyperlink);
JawHyperlink* jaw_hyperlink = g_object_new(JAW_TYPE_HYPERLINK, NULL);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jaw_hyperlink->jhyperlink = (*jniEnv)->NewWeakGlobalRef(jniEnv, jhyperlink);
@@ -50,6 +51,7 @@ jaw_hyperlink_new (jobject jhyperlink)
static void
jaw_hyperlink_class_init (JawHyperlinkClass *klass)
{
+ JAW_DEBUG_ALL("%p", klass);
GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
gobject_class->dispose = jaw_hyperlink_dispose;
gobject_class->finalize = jaw_hyperlink_finalize;
@@ -66,11 +68,13 @@ jaw_hyperlink_class_init (JawHyperlinkClass *klass)
static void
jaw_hyperlink_init (JawHyperlink *link)
{
+ JAW_DEBUG_ALL("%p", link);
}
static void
jaw_hyperlink_dispose(GObject *gobject)
{
+ JAW_DEBUG_ALL("%p", gobject);
/* Chain up to parent's dispose */
G_OBJECT_CLASS(jaw_hyperlink_parent_class)->dispose(gobject);
}
@@ -78,6 +82,7 @@ jaw_hyperlink_dispose(GObject *gobject)
static void
jaw_hyperlink_finalize(GObject *gobject)
{
+ JAW_DEBUG_ALL("%p", gobject);
JawHyperlink *jaw_hyperlink = JAW_HYPERLINK(gobject);
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -92,7 +97,12 @@ static gchar*
jaw_hyperlink_get_uri (AtkHyperlink *atk_hyperlink,
gint i)
{
+ JAW_DEBUG_C("%p, %d", atk_hyperlink, i);
JawHyperlink *jaw_hyperlink = JAW_HYPERLINK(atk_hyperlink);
+ if (!jaw_hyperlink) {
+ JAW_DEBUG_I("jaw_hyperlink == NULL");
+ return NULL;
+ }
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject jhyperlink = (*jniEnv)->NewGlobalRef(jniEnv, jaw_hyperlink->jhyperlink);
if (!jhyperlink) {
@@ -103,7 +113,7 @@ jaw_hyperlink_get_uri (AtkHyperlink *atk_hyperlink,
jmethodID jmid = (*jniEnv)->GetMethodID(jniEnv, classAtkHyperlink, "get_uri",
"(I)Ljava/lang/String;");
jstring jstr = (*jniEnv)->CallObjectMethod(jniEnv, jhyperlink, jmid, (jint)i);
(*jniEnv)->DeleteGlobalRef(jniEnv, jhyperlink);
-
+
if (jaw_hyperlink->uri != NULL) {
(*jniEnv)->ReleaseStringUTFChars(jniEnv, jaw_hyperlink->jstrUri, jaw_hyperlink->uri);
(*jniEnv)->DeleteGlobalRef(jniEnv, jaw_hyperlink->jstrUri);
@@ -119,7 +129,12 @@ static AtkObject*
jaw_hyperlink_get_object (AtkHyperlink *atk_hyperlink,
gint i)
{
+ JAW_DEBUG_C("%p, %d", atk_hyperlink, i);
JawHyperlink *jaw_hyperlink = JAW_HYPERLINK(atk_hyperlink);
+ if (!jaw_hyperlink) {
+ JAW_DEBUG_I("jaw_hyperlink == NULL");
+ return NULL;
+ }
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject jhyperlink = (*jniEnv)->NewGlobalRef(jniEnv, jaw_hyperlink->jhyperlink);
if (!jhyperlink) {
@@ -142,7 +157,12 @@ jaw_hyperlink_get_object (AtkHyperlink *atk_hyperlink,
static gint
jaw_hyperlink_get_end_index (AtkHyperlink *atk_hyperlink)
{
+ JAW_DEBUG_C("%p", atk_hyperlink);
JawHyperlink *jaw_hyperlink = JAW_HYPERLINK(atk_hyperlink);
+ if (!jaw_hyperlink) {
+ JAW_DEBUG_I("jaw_hyperlink == NULL");
+ return 0;
+ }
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject jhyperlink = (*jniEnv)->NewGlobalRef(jniEnv, jaw_hyperlink->jhyperlink);
if (!jhyperlink) {
@@ -159,7 +179,12 @@ jaw_hyperlink_get_end_index (AtkHyperlink *atk_hyperlink)
static gint jaw_hyperlink_get_start_index (AtkHyperlink *atk_hyperlink)
{
+ JAW_DEBUG_C("%p", atk_hyperlink);
JawHyperlink *jaw_hyperlink = JAW_HYPERLINK(atk_hyperlink);
+ if (!jaw_hyperlink) {
+ JAW_DEBUG_I("jaw_hyperlink == NULL");
+ return 0;
+ }
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject jhyperlink = (*jniEnv)->NewGlobalRef(jniEnv, jaw_hyperlink->jhyperlink);
if (!jhyperlink) {
@@ -176,7 +201,12 @@ static gint jaw_hyperlink_get_start_index (AtkHyperlink *atk_hyperlink)
static gboolean jaw_hyperlink_is_valid (AtkHyperlink *atk_hyperlink)
{
+ JAW_DEBUG_C("%p", atk_hyperlink);
JawHyperlink *jaw_hyperlink = JAW_HYPERLINK(atk_hyperlink);
+ if (!jaw_hyperlink) {
+ JAW_DEBUG_I("jaw_hyperlink == NULL");
+ return FALSE;
+ }
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject jhyperlink = (*jniEnv)->NewGlobalRef(jniEnv, jaw_hyperlink->jhyperlink);
if (!jhyperlink) {
@@ -193,7 +223,12 @@ static gboolean jaw_hyperlink_is_valid (AtkHyperlink *atk_hyperlink)
static gint jaw_hyperlink_get_n_anchors (AtkHyperlink *atk_hyperlink)
{
+ JAW_DEBUG_C("%p", atk_hyperlink);
JawHyperlink *jaw_hyperlink = JAW_HYPERLINK(atk_hyperlink);
+ if (!jaw_hyperlink) {
+ JAW_DEBUG_I("jaw_hyperlink == NULL");
+ return 0;
+ }
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject jhyperlink = (*jniEnv)->NewGlobalRef(jniEnv, jaw_hyperlink->jhyperlink);
if (!jhyperlink) {
@@ -207,4 +242,3 @@ static gint jaw_hyperlink_get_n_anchors (AtkHyperlink *atk_hyperlink)
return janchors;
}
-
diff --git a/jni/src/jawhypertext.c b/jni/src/jawhypertext.c
index 18157b3..211666e 100644
--- a/jni/src/jawhypertext.c
+++ b/jni/src/jawhypertext.c
@@ -45,6 +45,7 @@ jaw_hypertext_interface_init (AtkHypertextIface *iface, gpointer data)
static void
link_destroy_notify (gpointer p)
{
+ JAW_DEBUG_C("%p", p);
JawHyperlink* jaw_hyperlink = (JawHyperlink*)p;
if(G_OBJECT(jaw_hyperlink) != NULL)
g_object_unref(G_OBJECT(jaw_hyperlink));
@@ -53,6 +54,7 @@ link_destroy_notify (gpointer p)
gpointer
jaw_hypertext_data_init (jobject ac)
{
+ JAW_DEBUG_ALL("%p", ac);
HypertextData *data = g_new0(HypertextData, 1);
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -69,6 +71,7 @@ jaw_hypertext_data_init (jobject ac)
void
jaw_hypertext_data_finalize (gpointer p)
{
+ JAW_DEBUG_ALL("%p", p);
HypertextData *data = (HypertextData*)p;
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -83,11 +86,17 @@ jaw_hypertext_data_finalize (gpointer p)
static AtkHyperlink*
jaw_hypertext_get_link (AtkHypertext *hypertext, gint link_index)
{
+ JAW_DEBUG_C("%p, %d", hypertext, link_index);
JawObject *jaw_obj = JAW_OBJECT(hypertext);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
HypertextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_HYPERTEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_hypertext = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_hypertext);
if (!atk_hypertext) {
+ JAW_DEBUG_I("atk_hypertext == NULL");
return NULL;
}
@@ -109,11 +118,17 @@ jaw_hypertext_get_link (AtkHypertext *hypertext, gint link_index)
static gint
jaw_hypertext_get_n_links (AtkHypertext *hypertext)
{
+ JAW_DEBUG_C("%p", hypertext);
JawObject *jaw_obj = JAW_OBJECT(hypertext);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
HypertextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_HYPERTEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_hypertext = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_hypertext);
if (!atk_hypertext) {
+ JAW_DEBUG_I("atk_hypertext == NULL");
return 0;
}
@@ -128,11 +143,17 @@ jaw_hypertext_get_n_links (AtkHypertext *hypertext)
static gint
jaw_hypertext_get_link_index (AtkHypertext *hypertext, gint char_index)
{
+ JAW_DEBUG_C("%p, %d", hypertext, char_index);
JawObject *jaw_obj = JAW_OBJECT(hypertext);
+ if(!jaw_obj){
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
HypertextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_HYPERTEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_hypertext = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_hypertext);
if (!atk_hypertext) {
+ JAW_DEBUG_I("atk_hypertext == NULL");
return 0;
}
diff --git a/jni/src/jawimage.c b/jni/src/jawimage.c
index da9701c..163749b 100644
--- a/jni/src/jawimage.c
+++ b/jni/src/jawimage.c
@@ -40,6 +40,7 @@ typedef struct _ImageData {
void
jaw_image_interface_init (AtkImageIface *iface, gpointer data)
{
+ JAW_DEBUG_ALL("%p, %p", iface, data);
iface->get_image_position = jaw_image_get_image_position;
iface->get_image_description = jaw_image_get_image_description;
iface->set_image_description = NULL;
@@ -49,6 +50,7 @@ jaw_image_interface_init (AtkImageIface *iface, gpointer data)
gpointer
jaw_image_data_init (jobject ac)
{
+ JAW_DEBUG_C("%p", ac);
ImageData *data = g_new0(ImageData, 1);
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -63,6 +65,7 @@ jaw_image_data_init (jobject ac)
void
jaw_image_data_finalize (gpointer p)
{
+ JAW_DEBUG_ALL("%p", p);
ImageData *data = (ImageData*)p;
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -84,11 +87,17 @@ static void
jaw_image_get_image_position (AtkImage *image,
gint *x, gint *y, AtkCoordType coord_type)
{
+ JAW_DEBUG_C("%p, %p, %p, %d", image, x, y, coord_type);
JawObject *jaw_obj = JAW_OBJECT(image);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return;
+ }
ImageData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_IMAGE);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_image = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_image);
if (!atk_image) {
+ JAW_DEBUG_I("atk_image == NULL");
return;
}
@@ -116,11 +125,17 @@ jaw_image_get_image_position (AtkImage *image,
static const gchar*
jaw_image_get_image_description (AtkImage *image)
{
+ JAW_DEBUG_C("%p", image);
JawObject *jaw_obj = JAW_OBJECT(image);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
ImageData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_IMAGE);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_image = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_image);
if (!atk_image) {
+ JAW_DEBUG_I("atk_image == NULL");
return NULL;
}
@@ -143,11 +158,17 @@ jaw_image_get_image_description (AtkImage *image)
static void
jaw_image_get_image_size (AtkImage *image, gint *width, gint *height)
{
+ JAW_DEBUG_C("%p, %p, %p", image, width, height);
JawObject *jaw_obj = JAW_OBJECT(image);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return;
+ }
ImageData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_IMAGE);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_image = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_image);
if (!atk_image) {
+ JAW_DEBUG_I("atk_image == NULL");
return;
}
diff --git a/jni/src/jawimpl.c b/jni/src/jawimpl.c
index 7589ac4..a9dbec7 100644
--- a/jni/src/jawimpl.c
+++ b/jni/src/jawimpl.c
@@ -57,6 +57,7 @@ static GHashTable *objectTable = NULL;
static void
object_table_insert (JNIEnv *jniEnv, jobject ac, JawImpl* jaw_impl)
{
+ JAW_DEBUG_C("%p, %p, %p", jniEnv, ac, jaw_impl);
jclass atkObject = (*jniEnv)->FindClass (jniEnv,"org/GNOME/Accessibility/AtkObject");
jmethodID jmid = (*jniEnv)->GetStaticMethodID (jniEnv, atkObject, "hashCode",
"(Ljavax/accessibility/AccessibleContext;)I");
jaw_impl->hash_key = (gint)(*jniEnv)->CallStaticIntMethod (jniEnv, atkObject, jmid, ac);
@@ -68,6 +69,7 @@ object_table_insert (JNIEnv *jniEnv, jobject ac, JawImpl* jaw_impl)
static JawImpl*
object_table_lookup (JNIEnv *jniEnv, jobject ac)
{
+ JAW_DEBUG_C("%p, %p", jniEnv, ac);
jclass atkObject = (*jniEnv)->FindClass (jniEnv,"org/GNOME/Accessibility/AtkObject");
jmethodID jmid = (*jniEnv)->GetStaticMethodID (jniEnv, atkObject, "hashCode",
"(Ljavax/accessibility/AccessibleContext;)I");
gint hash_key = (gint)(*jniEnv)->CallStaticIntMethod (jniEnv, atkObject, jmid, ac);
@@ -86,6 +88,7 @@ object_table_lookup (JNIEnv *jniEnv, jobject ac)
static void
object_table_remove(JNIEnv *jniEnv, JawImpl *jaw_impl)
{
+ JAW_DEBUG_C("%p, %p", jniEnv, jaw_impl);
g_mutex_lock(&objectTableMutex);
g_hash_table_remove(objectTable, GINT_TO_POINTER(jaw_impl->hash_key));
g_mutex_unlock(&objectTableMutex);
@@ -95,10 +98,13 @@ object_table_remove(JNIEnv *jniEnv, JawImpl *jaw_impl)
void
object_table_gc(JNIEnv *jniEnv)
{
+ JAW_DEBUG_C("%p", jniEnv);
GHashTableIter iter;
gpointer key, value;
GSList *list = NULL, *cur, *next;
+ unsigned count[INTERFACE_MASK+1] = { 0, };
+
g_mutex_lock(&objectTableMutex);
if (objectTable)
{
@@ -111,10 +117,21 @@ object_table_gc(JNIEnv *jniEnv)
/* Got garbage-collected, mark for dropping */
list = g_slist_prepend(list, jaw_impl);
}
+ else
+ {
+ count[jaw_impl->tflag]++;
+ }
}
}
g_mutex_unlock(&objectTableMutex);
+ unsigned i;
+ for (i = 0; i < INTERFACE_MASK+1; i++) {
+ if (count[i] != 0) {
+ JAW_DEBUG_JNI("%x: %d", i, count[i]);
+ }
+ }
+
for (cur = list; cur != NULL; cur = next)
{
JawImpl *jaw_impl = cur->data;
@@ -127,19 +144,23 @@ object_table_gc(JNIEnv *jniEnv)
GHashTable*
jaw_impl_get_object_hash_table(void)
{
+ JAW_DEBUG_ALL("");
return objectTable;
}
GMutex*
jaw_impl_get_object_hash_table_mutex(void)
{
+ JAW_DEBUG_ALL("");
return &objectTableMutex;
}
static void
aggregate_interface(JNIEnv *jniEnv, JawObject *jaw_obj, guint tflag)
{
+ JAW_DEBUG_C("%p, %p, %u", jniEnv, jaw_obj, tflag);
JawImpl *jaw_impl = JAW_IMPL(tflag, jaw_obj);
+ jaw_impl->tflag = tflag;
jobject ac = (*jniEnv)->NewGlobalRef(jniEnv, jaw_obj->acc_context);
jaw_impl->ifaceTable = g_hash_table_new(NULL, NULL);
@@ -250,6 +271,7 @@ aggregate_interface(JNIEnv *jniEnv, JawObject *jaw_obj, guint tflag)
JawImpl*
jaw_impl_get_instance (JNIEnv *jniEnv, jobject ac)
{
+ JAW_DEBUG_C("%p, %p", jniEnv, ac);
JawImpl *jaw_impl;
jniEnv = jaw_util_get_jni_env();
@@ -284,21 +306,18 @@ jaw_impl_get_instance (JNIEnv *jniEnv, jobject ac)
object_table_insert(jniEnv, weak_ref, jaw_impl);
} else
{
- if (jaw_debug)
- g_warning("jaw_impl_get_instance: jaw_obj == NULL");
+ JAW_DEBUG_I("jaw_obj == NULL");
(*jniEnv)->DeleteGlobalRef(jniEnv, temp_ref);
return NULL;
}
} else
{
- if (jaw_debug)
- g_warning("jaw_impl_get_instance: jaw_impl == NULL");
+ JAW_DEBUG_I("jaw_impl == NULL");
}
(*jniEnv)->DeleteGlobalRef(jniEnv, temp_ref);
} else
{
- if (jaw_debug)
- g_warning("jaw_impl_get_instance: global_ac == NULL");
+ JAW_DEBUG_I("global_ac == NULL");
return NULL;
}
}
@@ -308,6 +327,7 @@ jaw_impl_get_instance (JNIEnv *jniEnv, jobject ac)
JawImpl*
jaw_impl_get_instance_from_jaw (JNIEnv *jniEnv, jobject ac)
{
+ JAW_DEBUG_C("%p, %p", jniEnv, ac);
jclass classWrapper = (*jniEnv)->FindClass(jniEnv, "org/GNOME/Accessibility/AtkWrapper");
jmethodID jmid = (*jniEnv)->GetStaticMethodID(jniEnv, classWrapper, "getInstanceFromSwing",
"(Ljavax/accessibility/AccessibleContext;)J");
jlong ptr = (*jniEnv)->CallStaticLongMethod(jniEnv, classWrapper, jmid, ac);
@@ -317,13 +337,13 @@ jaw_impl_get_instance_from_jaw (JNIEnv *jniEnv, jobject ac)
JawImpl*
jaw_impl_find_instance (JNIEnv *jniEnv, jobject ac)
{
+ JAW_DEBUG_C("%p, %p", jniEnv, ac);
JawImpl *jaw_impl;
jaw_impl = object_table_lookup(jniEnv, ac);
if (jaw_impl == NULL)
{
- if (jaw_debug)
- g_warning("jaw_impl_find_instance: jaw_impl");
+ JAW_DEBUG_I("jaw_impl == NULL");
return NULL;
}
@@ -333,6 +353,7 @@ jaw_impl_find_instance (JNIEnv *jniEnv, jobject ac)
static void
jaw_impl_class_intern_init (gpointer klass, gpointer data)
{
+ JAW_DEBUG_ALL("%p, %p", klass, data);
if (jaw_impl_parent_class == NULL)
{
jaw_impl_parent_class = g_type_class_peek_parent (klass);
@@ -344,6 +365,7 @@ jaw_impl_class_intern_init (gpointer klass, gpointer data)
GType
jaw_impl_get_type (guint tflag)
{
+ JAW_DEBUG_C("%u", tflag);
GType type;
static const GInterfaceInfo atk_action_info =
@@ -483,6 +505,7 @@ jaw_impl_get_type (guint tflag)
static void
jaw_impl_class_init(JawImplClass *klass)
{
+ JAW_DEBUG_ALL("%p", klass);
GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
gobject_class->dispose = jaw_impl_dispose;
gobject_class->finalize = jaw_impl_finalize;
@@ -493,16 +516,11 @@ jaw_impl_class_init(JawImplClass *klass)
JawObjectClass *jaw_class = JAW_OBJECT_CLASS (klass);
jaw_class->get_interface_data = jaw_impl_get_interface_data;
}
-/*
-static void
-jaw_impl_init(JawImpl *impl)
-{
- jaw_impl->ifaceTable = g_hash_table_new(NULL, NULL);
-}
-*/
+
static void
jaw_impl_dispose(GObject *gobject)
{
+ JAW_DEBUG_ALL("%p", gobject);
/* Chain up to parent's dispose */
G_OBJECT_CLASS(jaw_impl_parent_class)->dispose(gobject);
}
@@ -510,6 +528,7 @@ jaw_impl_dispose(GObject *gobject)
static void
jaw_impl_finalize(GObject *gobject)
{
+ JAW_DEBUG_ALL("%p", gobject);
JawObject *jaw_obj = JAW_OBJECT(gobject);
JawImpl *jaw_impl = (JawImpl*)jaw_obj;
@@ -545,6 +564,7 @@ jaw_impl_finalize(GObject *gobject)
static gpointer
jaw_impl_get_interface_data (JawObject *jaw_obj, guint iface)
{
+ JAW_DEBUG_C("%p, %u", jaw_obj, iface);
JawImpl *jaw_impl = (JawImpl*)jaw_obj;
if (jaw_impl->ifaceTable == NULL || jaw_impl == NULL)
@@ -561,6 +581,7 @@ jaw_impl_get_interface_data (JawObject *jaw_obj, guint iface)
static void
jaw_impl_initialize (AtkObject *atk_obj, gpointer data)
{
+ JAW_DEBUG_C("%p, %p", atk_obj, data);
ATK_OBJECT_CLASS(jaw_impl_parent_class)->initialize(atk_obj, data);
JawObject *jaw_obj = JAW_OBJECT(atk_obj);
@@ -580,6 +601,7 @@ jaw_impl_initialize (AtkObject *atk_obj, gpointer data)
static gboolean
is_java_relation_key (JNIEnv *jniEnv, jstring jKey, const gchar* strKey)
{
+ JAW_DEBUG_C("%p, %p, %s", jniEnv, jKey, strKey);
jclass classAccessibleRelation = (*jniEnv)->FindClass(jniEnv, "javax/accessibility/AccessibleRelation");
jfieldID jfid = (*jniEnv)->GetStaticFieldID(jniEnv, classAccessibleRelation, strKey, "Ljava/lang/String;");
jstring jConstKey = (*jniEnv)->GetStaticObjectField(jniEnv, classAccessibleRelation, jfid);
@@ -589,6 +611,7 @@ is_java_relation_key (JNIEnv *jniEnv, jstring jKey, const gchar* strKey)
AtkRelationType
jaw_impl_get_atk_relation_type(JNIEnv *jniEnv, jstring jrel_key)
{
+ JAW_DEBUG_C("%p, %p", jniEnv, jrel_key);
if ( is_java_relation_key(jniEnv, jrel_key, "CHILD_NODE_OF") )
return ATK_RELATION_NODE_CHILD_OF;
if ( is_java_relation_key(jniEnv, jrel_key, "CONTROLLED_BY") )
diff --git a/jni/src/jawimpl.h b/jni/src/jawimpl.h
index f35bb1b..2c47bf8 100644
--- a/jni/src/jawimpl.h
+++ b/jni/src/jawimpl.h
@@ -48,6 +48,7 @@ struct _JawImpl
GHashTable *ifaceTable;
gint hash_key;
+ unsigned tflag;
};
JawImpl* jaw_impl_get_instance(JNIEnv*, jobject);
diff --git a/jni/src/jawobject.c b/jni/src/jawobject.c
index d8a6b39..5f63b0b 100644
--- a/jni/src/jawobject.c
+++ b/jni/src/jawobject.c
@@ -76,6 +76,7 @@ G_DEFINE_TYPE (JawObject, jaw_object, ATK_TYPE_OBJECT);
static guint
jaw_window_add_signal (const gchar *name, JawObjectClass *klass)
{
+ JAW_DEBUG_C("%s, %p", name, klass);
return g_signal_new (name,
G_TYPE_FROM_CLASS(klass),
G_SIGNAL_RUN_LAST,
@@ -89,6 +90,7 @@ jaw_window_add_signal (const gchar *name, JawObjectClass *klass)
static void
jaw_object_class_init (JawObjectClass *klass)
{
+ JAW_DEBUG_ALL("%p", klass);
GObjectClass *gobject_class = G_OBJECT_CLASS(klass);
gobject_class->dispose = jaw_object_dispose;
gobject_class->finalize = jaw_object_finalize;
@@ -129,12 +131,14 @@ jaw_object_class_init (JawObjectClass *klass)
static void
jaw_object_initialize(AtkObject *atk_obj, gpointer data)
{
+ JAW_DEBUG_ALL("%p, %p", atk_obj, data);
ATK_OBJECT_CLASS (jaw_object_parent_class)->initialize(atk_obj, data);
}
gpointer
jaw_object_get_interface_data (JawObject *jaw_obj, guint iface)
{
+ JAW_DEBUG_C("%p, %u", jaw_obj, iface);
JawObjectClass *klass = JAW_OBJECT_GET_CLASS(jaw_obj);
if (klass->get_interface_data)
return klass->get_interface_data(jaw_obj, iface);
@@ -145,6 +149,7 @@ jaw_object_get_interface_data (JawObject *jaw_obj, guint iface)
static void
jaw_object_init (JawObject *object)
{
+ JAW_DEBUG_ALL("%p", object);
AtkObject *atk_obj = ATK_OBJECT(object);
atk_obj->description = NULL;
@@ -154,6 +159,7 @@ jaw_object_init (JawObject *object)
static void
jaw_object_dispose (GObject *gobject)
{
+ JAW_DEBUG_C("%p", gobject);
/* Customized dispose code */
/* Chain up to parent's dispose method */
@@ -163,6 +169,7 @@ jaw_object_dispose (GObject *gobject)
static void
jaw_object_finalize (GObject *gobject)
{
+ JAW_DEBUG_ALL("%p", gobject);
/* Customized finalize code */
JawObject *jaw_obj = JAW_OBJECT(gobject);
AtkObject *atk_obj = ATK_OBJECT(gobject);
@@ -198,6 +205,7 @@ jaw_object_finalize (GObject *gobject)
static AtkObject*
jaw_object_get_parent(AtkObject *atk_obj)
{
+ JAW_DEBUG_C("%p", atk_obj);
if (jaw_toplevel_get_child_index(JAW_TOPLEVEL(atk_get_root()), atk_obj) != -1)
return ATK_OBJECT(atk_get_root());
@@ -227,6 +235,7 @@ jaw_object_get_parent(AtkObject *atk_obj)
static void
jaw_object_set_parent(AtkObject *atk_obj, AtkObject *parent)
{
+ JAW_DEBUG_C("%p, %p", atk_obj, parent);
JawObject *jaw_obj = JAW_OBJECT(atk_obj);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject ac = (*jniEnv)->NewGlobalRef(jniEnv, jaw_obj->acc_context);
@@ -251,6 +260,7 @@ jaw_object_set_parent(AtkObject *atk_obj, AtkObject *parent)
static const gchar*
jaw_object_get_name (AtkObject *atk_obj)
{
+ JAW_DEBUG_C("%p", atk_obj);
JawObject *jaw_obj = JAW_OBJECT(atk_obj);
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -304,6 +314,7 @@ jaw_object_get_name (AtkObject *atk_obj)
static void jaw_object_set_name (AtkObject *atk_obj, const gchar *name)
{
+ JAW_DEBUG_C("%p, %s", atk_obj, name);
JawObject *jaw_obj = JAW_OBJECT(atk_obj);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject ac = (*jniEnv)->NewGlobalRef(jniEnv, jaw_obj->acc_context);
@@ -326,6 +337,7 @@ static void jaw_object_set_name (AtkObject *atk_obj, const gchar *name)
static const gchar*
jaw_object_get_description (AtkObject *atk_obj)
{
+ JAW_DEBUG_C("%p", atk_obj);
JawObject *jaw_obj = JAW_OBJECT(atk_obj);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject ac = (*jniEnv)->NewGlobalRef(jniEnv, jaw_obj->acc_context);
@@ -360,6 +372,7 @@ jaw_object_get_description (AtkObject *atk_obj)
static void jaw_object_set_description (AtkObject *atk_obj, const gchar *description)
{
+ JAW_DEBUG_C("%p, %s", atk_obj, description);
JawObject *jaw_obj = JAW_OBJECT(atk_obj);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject ac = (*jniEnv)->NewGlobalRef(jniEnv, jaw_obj->acc_context);
@@ -383,6 +396,7 @@ static void jaw_object_set_description (AtkObject *atk_obj, const gchar *descrip
static gint
jaw_object_get_n_children (AtkObject *atk_obj)
{
+ JAW_DEBUG_C("%p", atk_obj);
JawObject *jaw_obj = JAW_OBJECT(atk_obj);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject ac = (*jniEnv)->NewGlobalRef(jniEnv, jaw_obj->acc_context);
@@ -402,6 +416,7 @@ jaw_object_get_n_children (AtkObject *atk_obj)
static gint
jaw_object_get_index_in_parent (AtkObject *atk_obj)
{
+ JAW_DEBUG_C("%p", atk_obj);
if (jaw_toplevel_get_child_index(JAW_TOPLEVEL(atk_get_root()), atk_obj) != -1)
{
return jaw_toplevel_get_child_index(JAW_TOPLEVEL(atk_get_root()), atk_obj);
@@ -426,6 +441,7 @@ jaw_object_get_index_in_parent (AtkObject *atk_obj)
static AtkRole
jaw_object_get_role (AtkObject *atk_obj)
{
+ JAW_DEBUG_C("%p", atk_obj);
if (atk_obj->role != ATK_ROLE_INVALID
&& atk_obj->role != ATK_ROLE_UNKNOWN) {
return atk_obj->role;
@@ -444,12 +460,14 @@ jaw_object_get_role (AtkObject *atk_obj)
static void
jaw_object_set_role (AtkObject *atk_obj, AtkRole role)
{
+ JAW_DEBUG_C("%p, %d", atk_obj, role);
atk_obj->role = role;
}
static AtkStateSet*
jaw_object_ref_state_set (AtkObject *atk_obj)
{
+ JAW_DEBUG_C("%p", atk_obj);
JawObject *jaw_obj = JAW_OBJECT(atk_obj);
AtkStateSet* state_set = jaw_obj->state_set;
atk_state_set_clear_states( state_set );
@@ -488,6 +506,7 @@ jaw_object_ref_state_set (AtkObject *atk_obj)
static const gchar *jaw_object_get_object_locale (AtkObject *atk_obj)
{
+ JAW_DEBUG_C("%p", atk_obj);
JawObject *jaw_obj = JAW_OBJECT(atk_obj);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject ac = (*jniEnv)->NewGlobalRef(jniEnv, jaw_obj->acc_context);
@@ -510,6 +529,7 @@ static const gchar *jaw_object_get_object_locale (AtkObject *atk_obj)
static AtkRelationSet*
jaw_object_ref_relation_set (AtkObject *atk_obj)
{
+ JAW_DEBUG_C("%p)", atk_obj);
if (atk_obj->relation_set)
g_object_unref(G_OBJECT(atk_obj->relation_set));
atk_obj->relation_set = atk_relation_set_new();
@@ -565,6 +585,7 @@ jaw_object_ref_relation_set (AtkObject *atk_obj)
static AtkObject*
jaw_object_ref_child(AtkObject *atk_obj, gint i)
{
+ JAW_DEBUG_C("%p, %d", atk_obj, i);
JawObject *jaw_obj = JAW_OBJECT(atk_obj);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject ac = (*jniEnv)->NewGlobalRef(jniEnv, jaw_obj->acc_context);
@@ -587,6 +608,7 @@ jaw_object_ref_child(AtkObject *atk_obj, gint i)
static JawObject*
jaw_object_table_lookup (JNIEnv *jniEnv, jobject ac)
{
+ JAW_DEBUG_C("%p, %p", jniEnv, ac);
GHashTable *object_table = jaw_impl_get_object_hash_table();
GMutex *object_table_mutex = jaw_impl_get_object_hash_table_mutex();
jclass atkObject = (*jniEnv)->FindClass (jniEnv, "org/GNOME/Accessibility/AtkObject");
diff --git a/jni/src/jawselection.c b/jni/src/jawselection.c
index b87e059..68ae816 100644
--- a/jni/src/jawselection.c
+++ b/jni/src/jawselection.c
@@ -41,6 +41,7 @@ typedef struct _SelectionData {
void
jaw_selection_interface_init (AtkSelectionIface *iface, gpointer data)
{
+ JAW_DEBUG_ALL("%p, %p", iface, data);
iface->add_selection = jaw_selection_add_selection;
iface->clear_selection = jaw_selection_clear_selection;
iface->ref_selection = jaw_selection_ref_selection;
@@ -53,6 +54,7 @@ jaw_selection_interface_init (AtkSelectionIface *iface, gpointer data)
gpointer
jaw_selection_data_init (jobject ac)
{
+ JAW_DEBUG_ALL("%p", ac);
SelectionData *data = g_new0(SelectionData, 1);
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -67,6 +69,7 @@ jaw_selection_data_init (jobject ac)
void
jaw_selection_data_finalize (gpointer p)
{
+ JAW_DEBUG_ALL("%p", p);
SelectionData *data = (SelectionData*)p;
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -79,11 +82,17 @@ jaw_selection_data_finalize (gpointer p)
static gboolean
jaw_selection_add_selection (AtkSelection *selection, gint i)
{
+ JAW_DEBUG_C("%p, %d", selection, i);
JawObject *jaw_obj = JAW_OBJECT(selection);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
SelectionData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_SELECTION);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_selection = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_selection);
if (!atk_selection) {
+ JAW_DEBUG_I("atk_selection == NULL");
return FALSE;
}
@@ -98,11 +107,17 @@ jaw_selection_add_selection (AtkSelection *selection, gint i)
static gboolean
jaw_selection_clear_selection (AtkSelection *selection)
{
+ JAW_DEBUG_C("%p", selection);
JawObject *jaw_obj = JAW_OBJECT(selection);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
SelectionData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_SELECTION);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_selection = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_selection);
if (!atk_selection) {
+ JAW_DEBUG_I("atk_selection == NULL");
return FALSE;
}
@@ -117,11 +132,17 @@ jaw_selection_clear_selection (AtkSelection *selection)
static AtkObject*
jaw_selection_ref_selection (AtkSelection *selection, gint i)
{
+ JAW_DEBUG_C("%p, %d", selection, i);
JawObject *jaw_obj = JAW_OBJECT(selection);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
SelectionData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_SELECTION);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_selection = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_selection);
if (!atk_selection) {
+ JAW_DEBUG_I("atk_selection == NULL");
return NULL;
}
@@ -143,11 +164,17 @@ jaw_selection_ref_selection (AtkSelection *selection, gint i)
static gint
jaw_selection_get_selection_count (AtkSelection *selection)
{
+ JAW_DEBUG_C("%p", selection);
JawObject *jaw_obj = JAW_OBJECT(selection);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
SelectionData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_SELECTION);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_selection = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_selection);
if (!atk_selection) {
+ JAW_DEBUG_I("atk_selection == NULL");
return 0;
}
@@ -162,11 +189,17 @@ jaw_selection_get_selection_count (AtkSelection *selection)
static gboolean
jaw_selection_is_child_selected (AtkSelection *selection, gint i)
{
+ JAW_DEBUG_C("%p, %d", selection, i);
JawObject *jaw_obj = JAW_OBJECT(selection);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
SelectionData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_SELECTION);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_selection = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_selection);
if (!atk_selection) {
+ JAW_DEBUG_I("atk_selection == NULL");
return FALSE;
}
@@ -181,11 +214,17 @@ jaw_selection_is_child_selected (AtkSelection *selection, gint i)
static gboolean
jaw_selection_remove_selection (AtkSelection *selection, gint i)
{
+ JAW_DEBUG_C("%p, %d", selection, i);
JawObject *jaw_obj = JAW_OBJECT(selection);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
SelectionData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_SELECTION);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_selection = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_selection);
if (!atk_selection) {
+ JAW_DEBUG_I("atk_selection == NULL");
return FALSE;
}
@@ -200,11 +239,17 @@ jaw_selection_remove_selection (AtkSelection *selection, gint i)
static gboolean
jaw_selection_select_all_selection (AtkSelection *selection)
{
+ JAW_DEBUG_C("%p", selection);
JawObject *jaw_obj = JAW_OBJECT(selection);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
SelectionData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_SELECTION);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_selection = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_selection);
if (!atk_selection) {
+ JAW_DEBUG_I("atk_selection == NULL");
return FALSE;
}
diff --git a/jni/src/jawtable.c b/jni/src/jawtable.c
index 96a2070..8756444 100644
--- a/jni/src/jawtable.c
+++ b/jni/src/jawtable.c
@@ -65,6 +65,7 @@ typedef struct _TableData {
void
jaw_table_interface_init (AtkTableIface *iface, gpointer data)
{
+ JAW_DEBUG_ALL("%p, %p", iface, data);
iface->ref_at = jaw_table_ref_at;
iface->get_column_at_index = jaw_table_get_column_at_index;
iface->get_row_at_index = jaw_table_get_row_at_index;
@@ -98,6 +99,7 @@ jaw_table_interface_init (AtkTableIface *iface, gpointer data)
gpointer
jaw_table_data_init (jobject ac)
{
+ JAW_DEBUG_ALL("%p", ac);
TableData *data = g_new0(TableData, 1);
JNIEnv *env = jaw_util_get_jni_env();
@@ -116,6 +118,7 @@ jaw_table_data_init (jobject ac)
void
jaw_table_data_finalize (gpointer p)
{
+ JAW_DEBUG_ALL("%p", p);
TableData *data = (TableData*)p;
JNIEnv *env = jaw_util_get_jni_env();
@@ -137,11 +140,17 @@ jaw_table_data_finalize (gpointer p)
static AtkObject*
jaw_table_ref_at (AtkTable *table, gint row, gint column)
{
+ JAW_DEBUG_C("%p, %d, %d", table, row, column);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return NULL;
}
@@ -167,12 +176,18 @@ jaw_table_ref_at (AtkTable *table, gint row, gint column)
static gint
jaw_table_get_column_at_index (AtkTable *table, gint index)
{
+ JAW_DEBUG_C("%p, %d", table, index);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
- return -1;
+ JAW_DEBUG_I("atk_table == NULL");
+ return 0;
}
jclass classAtkTable = (*env)->FindClass(env, "org/GNOME/Accessibility/AtkTable");
@@ -186,12 +201,18 @@ jaw_table_get_column_at_index (AtkTable *table, gint index)
static gint
jaw_table_get_row_at_index (AtkTable *table, gint index)
{
+ JAW_DEBUG_C("%p, %d", table, index);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
- return -1;
+ JAW_DEBUG_I("atk_table == NULL");
+ return 0;
}
jclass classAtkTable = (*env)->FindClass(env, "org/GNOME/Accessibility/AtkTable");
@@ -205,11 +226,17 @@ jaw_table_get_row_at_index (AtkTable *table, gint index)
static gint
jaw_table_get_n_columns (AtkTable *table)
{
+ JAW_DEBUG_C("%p", table);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return 0;
}
@@ -224,11 +251,17 @@ jaw_table_get_n_columns (AtkTable *table)
static gint
jaw_table_get_n_rows (AtkTable *table)
{
+ JAW_DEBUG_C("%p", table);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return 0;
}
@@ -243,11 +276,17 @@ jaw_table_get_n_rows (AtkTable *table)
static gint
jaw_table_get_column_extent_at (AtkTable *table, gint row, gint column)
{
+ JAW_DEBUG_C("%p, %d, %d", table, row, column);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return 0;
}
@@ -262,11 +301,17 @@ jaw_table_get_column_extent_at (AtkTable *table, gint row, gint column)
static gint
jaw_table_get_row_extent_at (AtkTable *table, gint row, gint column)
{
+ JAW_DEBUG_C("%p, %d, %d", table, row, column);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return 0;
}
@@ -281,11 +326,17 @@ jaw_table_get_row_extent_at (AtkTable *table, gint row, gint column)
static AtkObject*
jaw_table_get_caption (AtkTable *table)
{
+ JAW_DEBUG_C("%p", table);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return NULL;
}
@@ -309,11 +360,17 @@ jaw_table_get_caption (AtkTable *table)
static const gchar*
jaw_table_get_column_description (AtkTable *table, gint column)
{
+ JAW_DEBUG_C("%p, %d", table, column);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ };
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return NULL;
}
@@ -337,11 +394,17 @@ jaw_table_get_column_description (AtkTable *table, gint column)
static const gchar*
jaw_table_get_row_description (AtkTable *table, gint row)
{
+ JAW_DEBUG_C("%p, %d", table, row);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return NULL;
}
@@ -365,11 +428,17 @@ jaw_table_get_row_description (AtkTable *table, gint row)
static AtkObject*
jaw_table_get_column_header (AtkTable *table, gint column)
{
+ JAW_DEBUG_C("%p, %d", table, column);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return NULL;
}
@@ -389,11 +458,17 @@ jaw_table_get_column_header (AtkTable *table, gint column)
static AtkObject*
jaw_table_get_row_header (AtkTable *table, gint row)
{
+ JAW_DEBUG_C("%p, %d", table, row);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return NULL;
}
@@ -413,11 +488,17 @@ jaw_table_get_row_header (AtkTable *table, gint row)
static AtkObject*
jaw_table_get_summary (AtkTable *table)
{
+ JAW_DEBUG_C("%p", table);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return NULL;
}
@@ -437,11 +518,17 @@ jaw_table_get_summary (AtkTable *table)
static gint
jaw_table_get_selected_columns (AtkTable *table, gint **selected)
{
+ JAW_DEBUG_C("%p, %p", table, selected);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return 0;
}
@@ -470,11 +557,17 @@ jaw_table_get_selected_columns (AtkTable *table, gint **selected)
static gint
jaw_table_get_selected_rows (AtkTable *table, gint **selected)
{
+ JAW_DEBUG_C("%p, %p", table, selected);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return 0;
}
@@ -503,11 +596,17 @@ jaw_table_get_selected_rows (AtkTable *table, gint **selected)
static gboolean
jaw_table_is_column_selected (AtkTable *table, gint column)
{
+ JAW_DEBUG_C("%p, %d", table, column);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return FALSE;
}
@@ -521,11 +620,17 @@ jaw_table_is_column_selected (AtkTable *table, gint column)
static gboolean
jaw_table_is_row_selected (AtkTable *table, gint row)
{
+ JAW_DEBUG_C("%p, %d", table, row);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return FALSE;
}
@@ -539,11 +644,17 @@ jaw_table_is_row_selected (AtkTable *table, gint row)
static gboolean
jaw_table_is_selected (AtkTable *table, gint row, gint column)
{
+ JAW_DEBUG_C("%p, %d, %d", table, row, column);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return FALSE;
}
@@ -586,11 +697,17 @@ jaw_table_remove_column_selection (AtkTable *table, gint column)
static void
jaw_table_set_row_description(AtkTable *table, gint row, const gchar *description)
{
+ JAW_DEBUG_C("%p, %d, %s", table, row, description);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return;
}
@@ -607,11 +724,17 @@ jaw_table_set_row_description(AtkTable *table, gint row, const gchar *descriptio
static void
jaw_table_set_column_description(AtkTable *table, gint column, const gchar *description)
{
+ JAW_DEBUG_C("%p, %d, %s", table, column, description);
JawObject *jaw_obj = JAW_OBJECT(table);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
return;
}
@@ -640,12 +763,17 @@ jaw_table_set_column_header(AtkTable *table, gint column, AtkObject *header)
static void
jaw_table_set_caption(AtkTable *table, AtkObject *caption)
{
+ JAW_DEBUG_C("%p, %p", table, caption);
JawObject *jaw_obj = JAW_OBJECT(table);
- if (!jaw_obj)
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
return;
+ }
JawObject *jcaption = JAW_OBJECT(caption);
- if (!jcaption)
+ if (!jcaption) {
+ JAW_DEBUG_I("jcaption == NULL");
return;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jclass accessible = (*env)->FindClass (env, "javax/accessibility/Accessible");
@@ -656,6 +784,7 @@ jaw_table_set_caption(AtkTable *table, AtkObject *caption)
return;
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
(*env)->DeleteGlobalRef(env, obj);
return;
}
@@ -669,12 +798,17 @@ jaw_table_set_caption(AtkTable *table, AtkObject *caption)
static void
jaw_table_set_summary(AtkTable *table, AtkObject *summary)
{
+ JAW_DEBUG_C("%p, %p", table, summary);
JawObject *jaw_obj = JAW_OBJECT(table);
- if (!jaw_obj)
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
return;
+ }
JawObject *jsummary = JAW_OBJECT(summary);
- if (!jsummary)
+ if (!jsummary) {
+ JAW_DEBUG_I("jsummary == NULL");
return;
+ }
TableData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE);
JNIEnv *env = jaw_util_get_jni_env();
jclass accessible = (*env)->FindClass (env, "javax/accessibility/Accessible");
@@ -685,6 +819,7 @@ jaw_table_set_summary(AtkTable *table, AtkObject *summary)
return;
jobject atk_table = (*env)->NewGlobalRef(env, data->atk_table);
if (!atk_table) {
+ JAW_DEBUG_I("atk_table == NULL");
(*env)->DeleteGlobalRef(env, obj);
return;
}
diff --git a/jni/src/jawtablecell.c b/jni/src/jawtablecell.c
index f65f509..0dda75d 100644
--- a/jni/src/jawtablecell.c
+++ b/jni/src/jawtablecell.c
@@ -41,6 +41,7 @@ typedef struct _TableCellData {
void
jaw_table_cell_interface_init (AtkTableCellIface *iface, gpointer data)
{
+ JAW_DEBUG_ALL("%p, %p", iface, data);
iface->get_table = jaw_table_cell_get_table;
iface->get_position = jaw_table_cell_get_position;
iface->get_row_column_span = jaw_table_cell_get_row_column_span;
@@ -51,6 +52,7 @@ jaw_table_cell_interface_init (AtkTableCellIface *iface, gpointer data)
gpointer
jaw_table_cell_data_init (jobject ac)
{
+ JAW_DEBUG_ALL("%p", ac);
TableCellData *data = g_new0(TableCellData, 1);
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -65,6 +67,7 @@ jaw_table_cell_data_init (jobject ac)
void
jaw_table_cell_data_finalize (gpointer p)
{
+ JAW_DEBUG_ALL("%p", p);
TableCellData *data = (TableCellData*)p;
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -86,11 +89,17 @@ jaw_table_cell_data_finalize (gpointer p)
static AtkObject*
jaw_table_cell_get_table(AtkTableCell *cell)
{
+ JAW_DEBUG_C("%p", cell);
JawObject *jaw_obj = JAW_OBJECT(cell);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
TableCellData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE_CELL);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject jatk_table_cell = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_table_cell);
if (!jatk_table_cell) {
+ JAW_DEBUG_I("jatk_table_cell == NULL");
return NULL;
}
@@ -114,11 +123,17 @@ jaw_table_cell_get_table(AtkTableCell *cell)
static gboolean
jaw_table_cell_get_position(AtkTableCell *cell, gint *row, gint *column)
{
+ JAW_DEBUG_C("%p, %p, %p", cell, row, column);
JawObject *jaw_obj = JAW_OBJECT(cell);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
TableCellData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE_CELL);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject jatk_table_cell = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_table_cell);
if (!jatk_table_cell) {
+ JAW_DEBUG_I("jatk_table_cell == NULL");
return FALSE;
}
@@ -143,11 +158,17 @@ static gboolean jaw_table_cell_get_row_column_span(AtkTableCell *cell,
gint *row_span,
gint *column_span)
{
+ JAW_DEBUG_C("%p, %p, %p, %p, %p", cell, row, column, row_span, column_span);
JawObject *jaw_obj = JAW_OBJECT(cell);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
TableCellData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE_CELL);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject jatk_table_cell = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_table_cell);
if (!jatk_table_cell) {
+ JAW_DEBUG_I("jatk_table_cell == NULL");
return FALSE;
}
@@ -172,11 +193,17 @@ static gboolean jaw_table_cell_get_row_column_span(AtkTableCell *cell,
static gint
jaw_table_cell_get_row_span(AtkTableCell *cell)
{
+ JAW_DEBUG_C("%p", cell);
JawObject *jaw_obj = JAW_OBJECT(cell);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
TableCellData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE_CELL);
JNIEnv *env = jaw_util_get_jni_env();
jobject jatk_table_cell = (*env)->NewGlobalRef(env, data->atk_table_cell);
if (!jatk_table_cell) {
+ JAW_DEBUG_I("jatk_table_cell == NULL");
return 0;
}
@@ -194,11 +221,17 @@ jaw_table_cell_get_row_span(AtkTableCell *cell)
static gint
jaw_table_cell_get_column_span(AtkTableCell *cell)
{
+ JAW_DEBUG_C("%p", cell);
JawObject *jaw_obj = JAW_OBJECT(cell);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
TableCellData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TABLE_CELL);
JNIEnv *env = jaw_util_get_jni_env();
jobject jatk_table_cell = (*env)->NewGlobalRef(env, data->atk_table_cell);
if (!jatk_table_cell) {
+ JAW_DEBUG_I("jatk_table_cell == NULL");
return 0;
}
diff --git a/jni/src/jawtext.c b/jni/src/jawtext.c
index 814a6ea..5839fa2 100644
--- a/jni/src/jawtext.c
+++ b/jni/src/jawtext.c
@@ -86,6 +86,7 @@ typedef struct _TextData {
void
jaw_text_interface_init (AtkTextIface *iface, gpointer data)
{
+ JAW_DEBUG_ALL("%p, %p", iface, data);
iface->get_text = jaw_text_get_text;
iface->get_character_at_offset = jaw_text_get_character_at_offset;
iface->get_text_at_offset = jaw_text_get_text_at_offset;
@@ -105,6 +106,7 @@ jaw_text_interface_init (AtkTextIface *iface, gpointer data)
gpointer
jaw_text_data_init (jobject ac)
{
+ JAW_DEBUG_ALL("%p", ac);
TextData *data = g_new0(TextData, 1);
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -123,6 +125,7 @@ jaw_text_data_init (jobject ac)
void
jaw_text_data_finalize (gpointer p)
{
+ JAW_DEBUG_ALL("%p", p);
TextData *data = (TextData*)p;
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -144,6 +147,7 @@ jaw_text_data_finalize (gpointer p)
static gchar*
jaw_text_get_gtext_from_jstr (JNIEnv *jniEnv, jstring jstr)
{
+ JAW_DEBUG_C("%p, %p", jniEnv, jstr);
if (jstr == NULL)
{
return NULL;
@@ -159,11 +163,17 @@ jaw_text_get_gtext_from_jstr (JNIEnv *jniEnv, jstring jstr)
static gchar*
jaw_text_get_text (AtkText *text, gint start_offset, gint end_offset)
{
+ JAW_DEBUG_C("%p, %d, %d", text, start_offset, end_offset);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
TextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_text);
if (!atk_text) {
+ JAW_DEBUG_I("atk_text == NULL");
return NULL;
}
@@ -187,11 +197,17 @@ jaw_text_get_text (AtkText *text, gint start_offset, gint end_offset)
static gunichar
jaw_text_get_character_at_offset (AtkText *text, gint offset)
{
+ JAW_DEBUG_C("%p, %d", text, offset);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
TextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_text);
if (!atk_text) {
+ JAW_DEBUG_I("atk_text == NULL");
return 0;
}
@@ -215,11 +231,17 @@ jaw_text_get_text_at_offset (AtkText *text,
AtkTextBoundary boundary_type,
gint *start_offset, gint *end_offset)
{
+ JAW_DEBUG_C("%p, %d, %d, %p, %p", text, offset, boundary_type, start_offset, end_offset);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
TextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_text);
if (!atk_text) {
+ JAW_DEBUG_I("atk_text == NULL");
return NULL;
}
@@ -269,11 +291,17 @@ jaw_text_get_text_at_offset (AtkText *text,
static gint
jaw_text_get_caret_offset (AtkText *text)
{
+ JAW_DEBUG_C("%p", text);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
TextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_text);
if (!atk_text) {
+ JAW_DEBUG_I("atk_text == NULL");
return 0;
}
@@ -295,11 +323,17 @@ jaw_text_get_character_extents (AtkText *text,
gint *width, gint *height,
AtkCoordType coords)
{
+ JAW_DEBUG_C("%p, %d, %p, %p, %p, %p, %d", text, offset, x, y, width, height, coords);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return;
+ }
TextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_text);
if (!atk_text) {
+ JAW_DEBUG_I("atk_text == NULL");
return;
}
@@ -327,11 +361,17 @@ jaw_text_get_character_extents (AtkText *text,
static gint
jaw_text_get_character_count (AtkText *text)
{
+ JAW_DEBUG_C("%p", text);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
TextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_text);
if (!atk_text) {
+ JAW_DEBUG_I("atk_text == NULL");
return 0;
}
@@ -350,11 +390,17 @@ jaw_text_get_character_count (AtkText *text)
static gint
jaw_text_get_offset_at_point (AtkText *text, gint x, gint y, AtkCoordType coords)
{
+ JAW_DEBUG_C("%p, %d, %d, %d", text, x, y, coords);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
TextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_text);
if (!atk_text) {
+ JAW_DEBUG_I("atk_text == NULL");
return 0;
}
@@ -381,16 +427,22 @@ jaw_text_get_range_extents (AtkText *text,
AtkCoordType coord_type,
AtkTextRectangle *rect)
{
+ JAW_DEBUG_C("%p, %d, %d, %d, %p", text, start_offset, end_offset, coord_type, rect);
if (rect == NULL)
{
return;
}
JawObject *jaw_obj = JAW_OBJECT(text);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return;
+ }
TextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_text);
if (!atk_text) {
+ JAW_DEBUG_I("atk_text == NULL");
return;
}
@@ -419,11 +471,17 @@ jaw_text_get_range_extents (AtkText *text,
static gint
jaw_text_get_n_selections (AtkText *text)
{
+ JAW_DEBUG_C("%p", text);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
TextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_text);
if (!atk_text) {
+ JAW_DEBUG_I("atk_text == NULL");
return 0;
}
@@ -442,11 +500,17 @@ jaw_text_get_n_selections (AtkText *text)
static gchar*
jaw_text_get_selection (AtkText *text, gint selection_num, gint *start_offset, gint *end_offset)
{
+ JAW_DEBUG_C("%p, %d, %p, %p", text, selection_num, start_offset, end_offset);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
TextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_text);
if (!atk_text) {
+ JAW_DEBUG_I("atk_text == NULL");
return NULL;
}
@@ -488,11 +552,17 @@ jaw_text_get_selection (AtkText *text, gint selection_num, gint *start_offset, g
static gboolean
jaw_text_add_selection (AtkText *text, gint start_offset, gint end_offset)
{
+ JAW_DEBUG_C("%p, %d, %d", text, start_offset, end_offset);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
TextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_text);
if (!atk_text) {
+ JAW_DEBUG_I("atk_text == NULL");
return FALSE;
}
@@ -514,11 +584,17 @@ jaw_text_add_selection (AtkText *text, gint start_offset, gint end_offset)
static gboolean
jaw_text_remove_selection (AtkText *text, gint selection_num)
{
+ JAW_DEBUG_C("%p, %d", text, selection_num);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
TextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_text);
if (!atk_text) {
+ JAW_DEBUG_I("atk_text == NULL");
return FALSE;
}
@@ -540,11 +616,17 @@ jaw_text_remove_selection (AtkText *text, gint selection_num)
static gboolean
jaw_text_set_selection (AtkText *text, gint selection_num, gint start_offset, gint end_offset)
{
+ JAW_DEBUG_C("%p, %d, %d, %d", text, selection_num, start_offset, end_offset);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
TextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_text);
if (!atk_text) {
+ JAW_DEBUG_I("atk_text == NULL");
return FALSE;
}
@@ -564,11 +646,17 @@ jaw_text_set_selection (AtkText *text, gint selection_num, gint start_offset, gi
static gboolean
jaw_text_set_caret_offset (AtkText *text, gint offset)
{
+ JAW_DEBUG_C("%p, %d", text, offset);
JawObject *jaw_obj = JAW_OBJECT(text);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return FALSE;
+ }
TextData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_TEXT);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_text = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_text);
if (!atk_text) {
+ JAW_DEBUG_I("atk_text == NULL");
return FALSE;
}
diff --git a/jni/src/jawtoplevel.c b/jni/src/jawtoplevel.c
index eeacda5..281db85 100644
--- a/jni/src/jawtoplevel.c
+++ b/jni/src/jawtoplevel.c
@@ -22,6 +22,7 @@
#include <string.h>
#include <glib.h>
#include "jawtoplevel.h"
+#include "jawutil.h"
static void jaw_toplevel_initialize(AtkObject *accessible, gpointer data);
static void jaw_toplevel_object_finalize(GObject *obj);
@@ -40,6 +41,7 @@ G_DEFINE_TYPE (JawToplevel, jaw_toplevel, ATK_TYPE_OBJECT)
static void
jaw_toplevel_class_init (JawToplevelClass *klass)
{
+ JAW_DEBUG_ALL("%p", klass);
AtkObjectClass *atk_object_class = ATK_OBJECT_CLASS(klass);
GObjectClass *g_object_class = G_OBJECT_CLASS(klass);
@@ -58,18 +60,21 @@ jaw_toplevel_class_init (JawToplevelClass *klass)
static void
jaw_toplevel_init (JawToplevel *toplevel)
{
+ JAW_DEBUG_ALL("%p", toplevel);
toplevel->windows = NULL;
}
static void
jaw_toplevel_initialize(AtkObject *accessible, gpointer data)
{
+ JAW_DEBUG_ALL("%p, %p", accessible, data);
ATK_OBJECT_CLASS (jaw_toplevel_parent_class)->initialize(accessible, data);
}
static void
jaw_toplevel_object_finalize (GObject *obj)
{
+ JAW_DEBUG_ALL("%p", obj);
JawToplevel *jaw_toplevel = JAW_TOPLEVEL(obj);
g_list_free(jaw_toplevel->windows);
@@ -80,6 +85,7 @@ jaw_toplevel_object_finalize (GObject *obj)
static const gchar*
jaw_toplevel_get_name (AtkObject *obj)
{
+ JAW_DEBUG_C("%p", obj);
gint i;
for(i = 0; i < atk_object_get_n_accessible_children(obj); i++)
{
@@ -99,12 +105,14 @@ jaw_toplevel_get_name (AtkObject *obj)
static const gchar*
jaw_toplevel_get_description (AtkObject *obj)
{
+ JAW_DEBUG_C("%p", obj);
return "Accessible Java application";
}
static gint
jaw_toplevel_get_n_children (AtkObject *obj)
{
+ JAW_DEBUG_C("%p", obj);
JawToplevel* jaw_toplevel = JAW_TOPLEVEL(obj);
gint n = g_list_length(jaw_toplevel->windows);
@@ -114,6 +122,7 @@ jaw_toplevel_get_n_children (AtkObject *obj)
static gint
jaw_toplevel_get_index_in_parent (AtkObject *obj)
{
+ JAW_DEBUG_C("%p", obj);
JawToplevel *jaw_toplevel = JAW_TOPLEVEL(obj);
gint i = g_list_index(jaw_toplevel->windows, obj);
@@ -123,12 +132,14 @@ jaw_toplevel_get_index_in_parent (AtkObject *obj)
static AtkRole
jaw_toplevel_get_role (AtkObject *obj)
{
+ JAW_DEBUG_C("%p", obj);
return ATK_ROLE_APPLICATION;
}
static AtkObject*
jaw_toplevel_ref_child (AtkObject *obj, gint i)
{
+ JAW_DEBUG_C("%p, %d", obj, i);
JawToplevel *jaw_toplevel = JAW_TOPLEVEL(obj);
AtkObject* child = (AtkObject*)g_list_nth_data(jaw_toplevel->windows, i);
@@ -141,12 +152,14 @@ jaw_toplevel_ref_child (AtkObject *obj, gint i)
static AtkObject*
jaw_toplevel_get_parent (AtkObject *obj)
{
+ JAW_DEBUG_C("%p", obj);
return NULL;
}
gint
jaw_toplevel_add_window (JawToplevel *toplevel, AtkObject *child)
{
+ JAW_DEBUG_C("%p, %p", toplevel, child);
if (toplevel == NULL)
{
return -1;
@@ -164,6 +177,7 @@ jaw_toplevel_add_window (JawToplevel *toplevel, AtkObject *child)
gint jaw_toplevel_remove_window(JawToplevel *toplevel, AtkObject *child)
{
+ JAW_DEBUG_C("%p, %p", toplevel, child);
gint index = -1;
if (toplevel == NULL)
@@ -183,7 +197,7 @@ gint jaw_toplevel_remove_window(JawToplevel *toplevel, AtkObject *child)
gint jaw_toplevel_get_child_index(JawToplevel *toplevel, AtkObject *child)
{
+ JAW_DEBUG_C("%p, %p", toplevel, child);
gint i = g_list_index(toplevel->windows, child);
return i;
}
-
diff --git a/jni/src/jawutil.c b/jni/src/jawutil.c
index 851b174..439e180 100644
--- a/jni/src/jawutil.c
+++ b/jni/src/jawutil.c
@@ -49,6 +49,7 @@ JavaVM *cachedJVM;
GType
jaw_util_get_type(void)
{
+ JAW_DEBUG_ALL("");
static GType type = 0;
if (!type) {
@@ -74,6 +75,7 @@ jaw_util_get_type(void)
static void
jaw_util_class_init(JawUtilClass *kclass, void *klass_data)
{
+ JAW_DEBUG_ALL("%p, %p", kclass, klass_data);
AtkUtilClass *atk_class;
gpointer data;
@@ -95,6 +97,7 @@ typedef struct _JawKeyListenerInfo{
static gboolean
notify_hf (gpointer key, gpointer value, gpointer data)
{
+ JAW_DEBUG_C("%p, %p, %p", key, value, data);
JawKeyListenerInfo *info = (JawKeyListenerInfo*)value;
AtkKeyEventStruct *key_event = (AtkKeyEventStruct*)data;
@@ -107,6 +110,7 @@ notify_hf (gpointer key, gpointer value, gpointer data)
static void
insert_hf (gpointer key, gpointer value, gpointer data)
{
+ JAW_DEBUG_C("%p, %p, %p", key, value, data);
GHashTable *new_table = (GHashTable *) data;
g_hash_table_insert (new_table, key, value);
}
@@ -114,6 +118,7 @@ insert_hf (gpointer key, gpointer value, gpointer data)
gboolean
jaw_util_dispatch_key_event (AtkKeyEventStruct *event)
{
+ JAW_DEBUG_C("%p", event);
gint consumed = 0;
if (key_listener_list) {
GHashTable *new_hash = g_hash_table_new(NULL, NULL);
@@ -128,6 +133,7 @@ jaw_util_dispatch_key_event (AtkKeyEventStruct *event)
static guint
jaw_util_add_key_event_listener (AtkKeySnoopFunc listener, gpointer data)
{
+ JAW_DEBUG_C("%p, %p", listener, data);
static guint key = 0;
if (!listener) {
@@ -151,6 +157,7 @@ jaw_util_add_key_event_listener (AtkKeySnoopFunc listener, gpointer data)
static void
jaw_util_remove_key_event_listener (guint remove_listener)
{
+ JAW_DEBUG_C("%u", remove_listener);
gpointer *value = g_hash_table_lookup(key_listener_list,
GUINT_TO_POINTER(remove_listener));
if (value)
@@ -162,6 +169,7 @@ jaw_util_remove_key_event_listener (guint remove_listener)
static AtkObject*
jaw_util_get_root (void)
{
+ JAW_DEBUG_C("");
static JawToplevel *root = NULL;
if (!root) {
@@ -175,12 +183,14 @@ jaw_util_get_root (void)
static const gchar*
jaw_util_get_toolkit_name (void)
{
+ JAW_DEBUG_C("");
return "J2SE-access-bridge";
}
static const gchar*
jaw_util_get_toolkit_version (void)
{
+ JAW_DEBUG_C("");
return "1.0";
}
@@ -188,6 +198,7 @@ jaw_util_get_toolkit_version (void)
guint
jaw_util_get_tflag_from_jobj(JNIEnv *jniEnv, jobject jObj)
{
+ JAW_DEBUG_C("%p, %p", jniEnv, jObj);
jclass atkObject = (*jniEnv)->FindClass (jniEnv, "org/GNOME/Accessibility/AtkObject");
jmethodID jmid = (*jniEnv)->GetStaticMethodID(jniEnv, atkObject, "getTFlagFromObj",
"(Ljava/lang/Object;)I");
return (guint) (*jniEnv)->CallStaticIntMethod (jniEnv, atkObject, jmid, jObj);
@@ -196,6 +207,7 @@ jaw_util_get_tflag_from_jobj(JNIEnv *jniEnv, jobject jObj)
gboolean
jaw_util_is_same_jobject(gconstpointer a, gconstpointer b)
{
+ JAW_DEBUG_C("%p, %p", a, b);
JNIEnv *jniEnv = jaw_util_get_jni_env();
if ( (*jniEnv)->IsSameObject(jniEnv, (jobject)a, (jobject)b) ) {
return TRUE;
@@ -206,8 +218,10 @@ jaw_util_is_same_jobject(gconstpointer a, gconstpointer b)
JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *jvm, void *reserve)
{
+ JAW_DEBUG_JNI("%p, %p", jvm, reserve);
if (jvm == NULL)
{
+ JAW_DEBUG_I("JavaVM pointer was NULL when initializing library");
g_error("JavaVM pointer was NULL when initializing library");
return JNI_ERR;
}
@@ -217,12 +231,14 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *jvm, void *reserve)
JNIEXPORT void JNICALL JNI_OnUnload(JavaVM *jvm, void *reserve)
{
+ JAW_DEBUG_JNI("%p, %p", jvm, reserve);
g_warning("JNI_OnUnload() called but this is not supported yet\n");
}
JNIEnv*
jaw_util_get_jni_env(void)
{
+ JAW_DEBUG_C("");
JNIEnv *env;
env = NULL;
static int i;
@@ -272,6 +288,7 @@ jaw_util_get_jni_env(void)
void
jaw_util_detach(void)
{
+ JAW_DEBUG_C("");
JavaVM* jvm;
jvm = cachedJVM;
(*jvm)->DetachCurrentThread(jvm);
@@ -280,6 +297,7 @@ jaw_util_detach(void)
static jobject
jaw_util_get_java_acc_role (JNIEnv *jniEnv, const gchar* roleName)
{
+ JAW_DEBUG_C("%p, %s", jniEnv, roleName);
jclass classAccessibleRole = (*jniEnv)->FindClass(jniEnv,
"javax/accessibility/AccessibleRole");
jfieldID jfid = (*jniEnv)->GetStaticFieldID(jniEnv,
@@ -294,6 +312,7 @@ jaw_util_get_java_acc_role (JNIEnv *jniEnv, const gchar* roleName)
static gboolean
jaw_util_is_java_acc_role (JNIEnv *jniEnv, jobject acc_role, const gchar* roleName)
{
+ JAW_DEBUG_C("%p, %p, %s", jniEnv, acc_role, roleName);
jobject jrole = jaw_util_get_java_acc_role (jniEnv, roleName);
if ((*jniEnv)->IsSameObject(jniEnv, acc_role, jrole))
@@ -307,6 +326,7 @@ jaw_util_is_java_acc_role (JNIEnv *jniEnv, jobject acc_role, const gchar* roleNa
AtkRole
jaw_util_get_atk_role_from_AccessibleContext (jobject jAccessibleContext)
{
+ JAW_DEBUG_C("%p", jAccessibleContext);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jclass atkObject = (*jniEnv)->FindClass (jniEnv, "org/GNOME/Accessibility/AtkObject");
jmethodID jmidgar = (*jniEnv)->GetStaticMethodID (jniEnv, atkObject, "getAccessibleRole",
"(Ljavax/accessibility/AccessibleContext;)Ljavax/accessibility/AccessibleRole;");
@@ -531,6 +551,7 @@ jaw_util_get_atk_role_from_AccessibleContext (jobject jAccessibleContext)
static gboolean
is_same_java_state (JNIEnv *jniEnv, jobject jobj, const gchar* strState)
{
+ JAW_DEBUG_C("%p, %p, %s", jniEnv, jobj, strState);
jclass classAccessibleState = (*jniEnv)->FindClass(jniEnv,
"javax/accessibility/AccessibleState");
jfieldID jfid = (*jniEnv)->GetStaticFieldID(jniEnv,
@@ -549,6 +570,7 @@ is_same_java_state (JNIEnv *jniEnv, jobject jobj, const gchar* strState)
AtkStateType
jaw_util_get_atk_state_type_from_java_state (JNIEnv *jniEnv, jobject jobj)
{
+ JAW_DEBUG_C("%p, %p", jniEnv, jobj);
if (is_same_java_state( jniEnv, jobj, "ACTIVE" ))
return ATK_STATE_ACTIVE;
@@ -647,6 +669,7 @@ jaw_util_get_rect_info (JNIEnv *jniEnv,
gint *width,
gint *height)
{
+ JAW_DEBUG_C("%p, %p, %p, %p, %p, %p", jniEnv, jrect, x, y, width, height);
jclass classRectangle = (*jniEnv)->FindClass(jniEnv, "java/awt/Rectangle");
jfieldID jfidX = (*jniEnv)->GetFieldID(jniEnv, classRectangle, "x", "I");
jfieldID jfidY = (*jniEnv)->GetFieldID(jniEnv, classRectangle, "y", "I");
diff --git a/jni/src/jawutil.h b/jni/src/jawutil.h
index 7ce7cb5..a340560 100644
--- a/jni/src/jawutil.h
+++ b/jni/src/jawutil.h
@@ -28,22 +28,38 @@
extern int jaw_debug;
extern FILE *log_file;
-#define JAW_DEBUG(lvl, fmt, ...) do { \
+#define PRINT_AND_FLUSH(fmt, ...) do { \
+ fprintf(log_file, "TIME:[%lu] PID:{%d} %s" fmt "\n", (unsigned long) time(NULL), (int)getpid(),
__func__, ##__VA_ARGS__); \
+ fflush(log_file); \
+} while (0)
+
+#define JAW_DEBUG_I(fmt, ...) do { \
if (jaw_debug) { \
- if (lvl <= jaw_debug) \
- fprintf(log_file, "TIME:[%lu] PID:{%d} " fmt "\n", (unsigned long) time(NULL), (int)getpid(), ##
__VA_ARGS__); \
+ if (1 <= jaw_debug) \
+ PRINT_AND_FLUSH(": "fmt, ##__VA_ARGS__); \
} \
} while (0)
-#define JAW_DEBUG_I(msg, ...) JAW_DEBUG(1, "%s: " msg , __func__, ##__VA_ARGS__)
-
-#define JAW_DEBUG_F(lvl, msg, ...) JAW_DEBUG(lvl, "%s(" msg ")", __func__, ##__VA_ARGS__)
-
-#define JAW_DEBUG_JNI(msg, ...) JAW_DEBUG_F(2, msg, ##__VA_ARGS__)
+#define JAW_DEBUG_JNI(fmt, ...) do { \
+ if (jaw_debug) { \
+ if (2 <= jaw_debug) \
+ PRINT_AND_FLUSH("("fmt")", ##__VA_ARGS__); \
+ } \
+} while (0)
-#define JAW_DEBUG_C(msg, ...) JAW_DEBUG_F(3, msg, ##__VA_ARGS__)
+#define JAW_DEBUG_C(fmt, ...) do { \
+ if (jaw_debug) { \
+ if (3 <= jaw_debug) \
+ PRINT_AND_FLUSH("("fmt")", ##__VA_ARGS__); \
+ } \
+} while (0)
-#define JAW_DEBUG_ALL(msg, ...) JAW_DEBUG_F(4, msg, ##__VA_ARGS__)
+#define JAW_DEBUG_ALL(fmt, ...) do { \
+ if (jaw_debug) { \
+ if (4 <= jaw_debug) \
+ PRINT_AND_FLUSH("("fmt")", ##__VA_ARGS__); \
+ } \
+} while (0)
G_BEGIN_DECLS
@@ -60,6 +76,7 @@ G_BEGIN_DECLS
#define INTERFACE_TABLE_CELL 0x00000400
#define INTERFACE_TEXT 0x00000800
#define INTERFACE_VALUE 0x00001000
+#define INTERFACE_MASK 0x00001fff
#define JAW_TYPE_UTIL (jaw_util_get_type())
#define JAW_UTIL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JAW_TYPE_UTIL, JawUtil))
diff --git a/jni/src/jawvalue.c b/jni/src/jawvalue.c
index 1308328..efe96a7 100644
--- a/jni/src/jawvalue.c
+++ b/jni/src/jawvalue.c
@@ -39,6 +39,7 @@ typedef struct _ValueData {
void
jaw_value_interface_init (AtkValueIface *iface, gpointer data)
{
+ JAW_DEBUG_ALL("%p, %p", iface, data);
iface->get_current_value = jaw_value_get_current_value;
iface->set_value = jaw_value_set_value;
iface->get_increment = jaw_value_get_increment;
@@ -48,6 +49,7 @@ jaw_value_interface_init (AtkValueIface *iface, gpointer data)
gpointer
jaw_value_data_init (jobject ac)
{
+ JAW_DEBUG_ALL("%p", ac);
ValueData *data = g_new0(ValueData, 1);
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -66,6 +68,7 @@ jaw_value_data_init (jobject ac)
void
jaw_value_data_finalize (gpointer p)
{
+ JAW_DEBUG_ALL("%p", p);
ValueData *data = (ValueData*)p;
JNIEnv *jniEnv = jaw_util_get_jni_env();
@@ -79,6 +82,7 @@ jaw_value_data_finalize (gpointer p)
static void
get_g_value_from_java_number (JNIEnv *jniEnv, jobject jnumber, GValue *value)
{
+ JAW_DEBUG_C("%p, %p, %p", jniEnv, jnumber, value);
jclass classByte = (*jniEnv)->FindClass(jniEnv, "java/lang/Byte");
jclass classDouble = (*jniEnv)->FindClass(jniEnv, "java/lang/Double");
jclass classFloat = (*jniEnv)->FindClass(jniEnv, "java/lang/Float");
@@ -142,16 +146,22 @@ get_g_value_from_java_number (JNIEnv *jniEnv, jobject jnumber, GValue *value)
static void
jaw_value_get_current_value (AtkValue *obj, GValue *value)
{
+ JAW_DEBUG_C("%p, %p", obj, value);
if (!value)
{
return;
}
JawObject *jaw_obj = JAW_OBJECT(obj);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return;
+ }
ValueData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_VALUE);
JNIEnv *jniEnv = jaw_util_get_jni_env();
jobject atk_value = (*jniEnv)->NewGlobalRef(jniEnv, data->atk_value);
if (!atk_value) {
+ JAW_DEBUG_I("atk_value == NULL");
return;
}
@@ -177,14 +187,20 @@ jaw_value_get_current_value (AtkValue *obj, GValue *value)
static void
jaw_value_set_value(AtkValue *obj, const gdouble value)
{
+ JAW_DEBUG_C("%p, %lf", obj, value);
if (!value)
return;
JawObject *jaw_obj = JAW_OBJECT(obj);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return;
+ }
ValueData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_VALUE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_value = (*env)->NewGlobalRef(env, data->atk_value);
if (!atk_value) {
+ JAW_DEBUG_I("atk_value == NULL");
return;
}
@@ -200,12 +216,17 @@ jaw_value_set_value(AtkValue *obj, const gdouble value)
static AtkRange*
jaw_value_get_range(AtkValue *obj)
{
-
+ JAW_DEBUG_C("%p", obj);
JawObject *jaw_obj = JAW_OBJECT(obj);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return NULL;
+ }
ValueData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_VALUE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_value = (*env)->NewGlobalRef(env, data->atk_value);
if (!atk_value) {
+ JAW_DEBUG_I("atk_value == NULL");
return NULL;
}
@@ -222,11 +243,17 @@ jaw_value_get_range(AtkValue *obj)
static gdouble
jaw_value_get_increment (AtkValue *obj)
{
+ JAW_DEBUG_C("%p", obj);
JawObject *jaw_obj = JAW_OBJECT(obj);
+ if (!jaw_obj) {
+ JAW_DEBUG_I("jaw_obj == NULL");
+ return 0;
+ }
ValueData *data = jaw_object_get_interface_data(jaw_obj, INTERFACE_VALUE);
JNIEnv *env = jaw_util_get_jni_env();
jobject atk_value = (*env)->NewGlobalRef(env, data->atk_value);
if (!atk_value) {
+ JAW_DEBUG_I("atk_value == NULL");
return 0.;
}
jclass classAtkValue = (*env)->FindClass(env, "org/GNOME/Accessibility/AtkValue");
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]