AtspiAccessibleNode: change target object for atspi_accessible_get_toolkit_name. 11/283011/2
authorHosang Kim <hosang12.kim@samsung.com>
Fri, 14 Oct 2022 10:20:07 +0000 (19:20 +0900)
committerwoochan lee <wc0917.lee@samsung.com>
Thu, 20 Oct 2022 02:04:10 +0000 (02:04 +0000)
atspi_accessible_get_toolkit_name is only working on root object.

Change-Id: I1b87b7f4e74cd8fbcfc7dd0063dd8e81aff4e402

libaurum/src/Impl/Accessibility/AtspiAccessibleNode.cc

index 00e5f7f4d9dc3c38413bdac6056f2216a88d9ee8..1f40f58a45bdface8f4d30826b4a4eea68097fe4 100644 (file)
@@ -146,12 +146,14 @@ void AtspiAccessibleNode::updateName()
 
 void AtspiAccessibleNode::updateToolkitName()
 {
-    AtspiWrapper::Atspi_accessible_clear_cache(mNode);
-
-    gchar *toolkitName = AtspiWrapper::Atspi_accessible_get_toolkit_name(mNode, NULL);
-    if (toolkitName) {
-        mToolkitName = toolkitName;
-        g_free(toolkitName);
+    AtspiAccessible *app = AtspiWrapper::Atspi_accessible_get_application(mNode, NULL);
+    if (app) {
+        gchar *toolkitName = AtspiWrapper::Atspi_accessible_get_toolkit_name(app, NULL);
+        if (toolkitName) {
+            mToolkitName = toolkitName;
+            g_free(toolkitName);
+        }
+        g_object_unref(app);
     }
 }