[orca] Filter out an extraneous focus: event from a newly-focused egg-list-box



commit d7fb31a686e4cdc82333ff8e247f0b06393a64d2
Author: Joanmarie Diggs <jdiggs igalia com>
Date:   Mon Feb 4 17:50:05 2013 -0500

    Filter out an extraneous focus: event from a newly-focused egg-list-box

 src/orca/scripts/default.py |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)
---
diff --git a/src/orca/scripts/default.py b/src/orca/scripts/default.py
index 1371cc4..0c8de4a 100644
--- a/src/orca/scripts/default.py
+++ b/src/orca/scripts/default.py
@@ -3333,6 +3333,14 @@ class Script(script.Script):
             except:
                 pass
 
+        # When tabbing into an egg-list-box, we get a focus: event after the
+        # object:active-descendant-changed event. We already presented the
+        # list box from its object:state-changed:focused event, so we can and
+        # should ignore this event.
+        if role == pyatspi.ROLE_LIST_BOX and orca_state.locusOfFocus \
+                and orca_state.locusOfFocus.parent == event.source:
+            return
+
         # [[[TODO: WDW - HACK to deal with the fact that active cells
         # may or may not get focus.  Their parents, however, do tend to
         # get focus, but when the parent gets focus, it really means



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