[java-atk-wrapper] JNI: create jaw_object_set_parent



commit dbda22be9a51bf07ff4bc39281243eac96758197
Author: Magdalen Berns <m berns thismagpie com>
Date:   Tue Jun 9 17:42:07 2015 +0100

    JNI: create jaw_object_set_parent
    
    Bug: https://bugzilla.gnome.org/show_bug.cgi?id=750655

 jni/src/jawobject.c |   22 +++++++++++++++++++---
 1 files changed, 19 insertions(+), 3 deletions(-)
---
diff --git a/jni/src/jawobject.c b/jni/src/jawobject.c
index 133106e..96f1ab6 100644
--- a/jni/src/jawobject.c
+++ b/jni/src/jawobject.c
@@ -48,7 +48,7 @@ static AtkObject * jaw_object_ref_child (AtkObject *atk_obj, gint i);
 static AtkRelationSet* jaw_object_ref_relation_set(AtkObject *atk_obj);
 static void jaw_object_set_name (AtkObject *atk_obj, const gchar *name);
 static void jaw_object_set_description (AtkObject *atk_obj, const gchar *description);
-
+static void jaw_object_set_parent(AtkObject *atk_obj, AtkObject *parent);
 
 static gpointer parent_class = NULL;
 
@@ -75,8 +75,8 @@ jaw_object_class_init (JawObjectClass *klass)
   atk_class->ref_relation_set = jaw_object_ref_relation_set;
   atk_class->set_name = jaw_object_set_name;
   atk_class->set_description = jaw_object_set_description;
-/*atk_class->set_parent = jaw_object_set_parent;
-       atk_class->set_role = jaw_object_set_role;
+  atk_class->set_parent = jaw_object_set_parent;
+/* atk_class->set_role = jaw_object_set_role;
        atk_class->connect_property_change_handler = jaw_object_connect_property_change_handler;
        atk_class->remove_property_change_handler = jaw_object_remove_property_change_handler;
        atk_class->children_changed = jaw_object_children_changed;
@@ -158,6 +158,22 @@ static AtkObject* jaw_object_get_parent(AtkObject *atk_obj)
   return ATK_OBJECT(jparent);
 }
 
+static void
+jaw_object_set_parent(AtkObject *atk_obj, AtkObject *parent)
+{
+  JawObject *jaw_obj = JAW_OBJECT(atk_obj);
+  jobject ac = jaw_obj->acc_context;
+  JNIEnv *jniEnv = jaw_util_get_jni_env();
+
+  jclass classAccessibleContext = (*jniEnv)->FindClass(jniEnv,
+                                                       "javax/accessibility/AccessibleContext" );
+  jmethodID jmid = (*jniEnv)->GetMethodID(jniEnv,
+                                          classAccessibleContext,
+                                          "setAccessibleParent",
+                                          "(Ljavax/accessibility/AccessibleContext;)");
+  jobject jparent = (*jniEnv)->CallObjectMethod( jniEnv, ac, jmid );
+}
+
 static const gchar*
 jaw_object_get_name (AtkObject *atk_obj)
 {


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