[orca] Attempt to filter out more bogus events from Eclipse



commit b5c765bee1b326c3e09f7140f036cd1a830c4ea4
Author: Joanmarie Diggs <jdiggs igalia com>
Date:   Sun Jul 1 10:08:19 2018 -0400

    Attempt to filter out more bogus events from Eclipse

 src/orca/script_utilities.py            | 7 +++++++
 src/orca/scripts/apps/Eclipse/script.py | 7 +++++++
 2 files changed, 14 insertions(+)
---
diff --git a/src/orca/script_utilities.py b/src/orca/script_utilities.py
index fff79b99a..15763ead1 100644
--- a/src/orca/script_utilities.py
+++ b/src/orca/script_utilities.py
@@ -4487,6 +4487,13 @@ class Utilities:
         keyString, mods = self.lastKeyAndModifiers()
         return mods & keybindings.CTRL_MODIFIER_MASK
 
+    def lastInputEventWasUnmodifiedArrow(self):
+        keyString, mods = self.lastKeyAndModifiers()
+        if not keyString in ["Left", "Right", "Up", "Down"]:
+            return False
+
+        return not mods
+
     def lastInputEventWasCharNav(self):
         keyString, mods = self.lastKeyAndModifiers()
         if not keyString in ["Left", "Right"]:
diff --git a/src/orca/scripts/apps/Eclipse/script.py b/src/orca/scripts/apps/Eclipse/script.py
index e002bcbc6..abe9e636c 100644
--- a/src/orca/scripts/apps/Eclipse/script.py
+++ b/src/orca/scripts/apps/Eclipse/script.py
@@ -96,6 +96,13 @@ class Script(GAIL.Script):
             orca.setLocusOfFocus(event, event.source)
             return
 
+        if role == pyatspi.ROLE_TEXT \
+           and self.utilities.lastInputEventWasUnmodifiedArrow() \
+           and self.utilities.inMenu():
+            msg = "ECLIPSE: Ignoring event. In menu."
+            debug.println(debug.LEVEL_INFO, msg, True)
+            return
+
         super().onFocus(event)
 
     def onTextInserted(self, event):


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