[orca] Work around https://bugs.documentfoundation.org/show_bug.cgi?id=109398



commit 055374f84982ecf1a24fefbbf0fd282314954bbf
Author: Joanmarie Diggs <jdiggs igalia com>
Date:   Thu Feb 8 11:57:02 2018 -0500

    Work around https://bugs.documentfoundation.org/show_bug.cgi?id=109398

 src/orca/script_utilities.py                      |    3 +++
 src/orca/scripts/apps/soffice/script_utilities.py |    3 +++
 src/orca/scripts/default.py                       |    3 ++-
 3 files changed, 8 insertions(+), 1 deletions(-)
---
diff --git a/src/orca/script_utilities.py b/src/orca/script_utilities.py
index 8510198..0ede8d9 100644
--- a/src/orca/script_utilities.py
+++ b/src/orca/script_utilities.py
@@ -542,6 +542,9 @@ class Utilities:
 
         return results
 
+    def presentEventFromNonShowingObject(self, event):
+        return False
+
     def grabFocusBeforeRouting(self, obj, offset):
         """Whether or not we should perform a grabFocus before routing
         the cursor via the braille cursor routing keys.
diff --git a/src/orca/scripts/apps/soffice/script_utilities.py 
b/src/orca/scripts/apps/soffice/script_utilities.py
index 3bb7ee3..cf13556 100644
--- a/src/orca/scripts/apps/soffice/script_utilities.py
+++ b/src/orca/scripts/apps/soffice/script_utilities.py
@@ -745,3 +745,6 @@ class Utilities(script_utilities.Utilities):
             return False
 
         return self.cellRowChanged(obj)
+
+    def presentEventFromNonShowingObject(self, event):
+        return self.inDocumentContent(event.source)
diff --git a/src/orca/scripts/default.py b/src/orca/scripts/default.py
index 9c45c19..5f59bf3 100644
--- a/src/orca/scripts/default.py
+++ b/src/orca/scripts/default.py
@@ -2189,7 +2189,8 @@ class Script(script.Script):
         if not state.contains(pyatspi.STATE_SHOWING):
             msg = "DEFAULT: Event source is not showing"
             debug.println(debug.LEVEL_INFO, msg, True)
-            return
+            if not self.utilities.presentEventFromNonShowingObject(event):
+                return
 
         if event.source != orca_state.locusOfFocus \
            and state.contains(pyatspi.STATE_FOCUSED):


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