[java-atk-wrapper] Delegate getAccessibleIndexInParent call to EDT



commit 485c214b970ffd5b27571c33e9b30bcf868d7d5b
Author: Giuseppe <giuseppecapaldo93 gmail com>
Date:   Tue Jun 18 00:01:26 2019 +0200

    Delegate getAccessibleIndexInParent call to EDT

 jni/src/jawobject.c                            | 11 ++++-------
 wrapper/org/GNOME/Accessibility/AtkObject.java |  4 ++++
 2 files changed, 8 insertions(+), 7 deletions(-)
---
diff --git a/jni/src/jawobject.c b/jni/src/jawobject.c
index c6de08f..e9ff8ca 100644
--- a/jni/src/jawobject.c
+++ b/jni/src/jawobject.c
@@ -421,13 +421,10 @@ jaw_object_get_index_in_parent (AtkObject *atk_obj)
     return 0;
   }
 
-  jclass classAccessibleContext = (*jniEnv)->FindClass(jniEnv,
-                                                       "javax/accessibility/AccessibleContext" );
-  jmethodID jmid = (*jniEnv)->GetMethodID(jniEnv,
-                                          classAccessibleContext,
-                                          "getAccessibleIndexInParent",
-                                          "()I");
-  jint index = (*jniEnv)->CallIntMethod( jniEnv, ac, jmid );
+  jclass atkObject = (*jniEnv)->FindClass (jniEnv, "org/GNOME/Accessibility/AtkObject");
+  jmethodID jmid = (*jniEnv)->GetStaticMethodID (jniEnv, atkObject, "getAccessibleIndexInParent", 
"(Ljavax/accessibility/AccessibleContext;)I");
+  jint index = (*jniEnv)->CallStaticIntMethod (jniEnv, atkObject, jmid, ac);
+
   (*jniEnv)->DeleteGlobalRef(jniEnv, ac);
 
   return (gint)index;
diff --git a/wrapper/org/GNOME/Accessibility/AtkObject.java b/wrapper/org/GNOME/Accessibility/AtkObject.java
index b58e489..f59c83d 100644
--- a/wrapper/org/GNOME/Accessibility/AtkObject.java
+++ b/wrapper/org/GNOME/Accessibility/AtkObject.java
@@ -67,6 +67,10 @@ public class AtkObject{
         return AtkUtil.invokeInSwing( () -> { return ac.getAccessibleChildrenCount(); }, 0);
     }
 
+    public static int getAccessibleIndexInParent(AccessibleContext ac){
+        return AtkUtil.invokeInSwing( () -> { return ac.getAccessibleIndexInParent(); }, -1);
+    }
+
     public static int hashCode(AccessibleContext ac){
         return AtkUtil.invokeInSwing( () -> { return ac.hashCode(); }, 0);
     }


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