[orca] Move getTopLevelDocumentForObject() to default script utilities



commit c53972a3fc81202146c74d79151730b48b6b8c02
Author: Joanmarie Diggs <jdiggs igalia com>
Date:   Tue Mar 17 11:51:01 2020 -0400

    Move getTopLevelDocumentForObject() to default script utilities
    
    Also use it rather than getDocumentForObject() to get the active
    document so we handle embedded documents from apps which don't
    get handled by the web script.

 src/orca/script_utilities.py             | 12 +++++++++++-
 src/orca/scripts/web/script_utilities.py | 10 ----------
 2 files changed, 11 insertions(+), 11 deletions(-)
---
diff --git a/src/orca/script_utilities.py b/src/orca/script_utilities.py
index c0987960a..90ae7f89e 100644
--- a/src/orca/script_utilities.py
+++ b/src/orca/script_utilities.py
@@ -1207,7 +1207,17 @@ class Utilities:
         return self.getDocumentForObject(obj) is not None
 
     def activeDocument(self, window=None):
-        return self.getDocumentForObject(orca_state.locusOfFocus)
+        return self.getTopLevelDocumentForObject(orca_state.locusOfFocus)
+
+    def getTopLevelDocumentForObject(self, obj):
+        document = self.getDocumentForObject(obj)
+        while document:
+            ancestor = pyatspi.findAncestor(document, self.isDocument)
+            if not ancestor or ancestor == document:
+                break
+            document = ancestor
+
+        return document
 
     def getDocumentForObject(self, obj):
         if not obj:
diff --git a/src/orca/scripts/web/script_utilities.py b/src/orca/scripts/web/script_utilities.py
index 56d99774d..8132a91f5 100644
--- a/src/orca/scripts/web/script_utilities.py
+++ b/src/orca/scripts/web/script_utilities.py
@@ -225,16 +225,6 @@ class Utilities(script_utilities.Utilities):
         self._inDocumentContent[hash(obj)] = rv
         return rv
 
-    def getTopLevelDocumentForObject(self, obj):
-        document = self.getDocumentForObject(obj)
-        while document:
-            ancestor = pyatspi.findAncestor(document, self.isDocument)
-            if not ancestor or ancestor == document:
-                break
-            document = ancestor
-
-        return document
-
     def _getDocumentsEmbeddedBy(self, frame):
         if not frame:
             return []


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