[orca] Sanity-check focus events for tables after leaving typeahead search
- From: Joanmarie Diggs <joanied src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [orca] Sanity-check focus events for tables after leaving typeahead search
- Date: Tue, 16 Jan 2018 18:31:06 +0000 (UTC)
commit c373327a54c777f36e1bb7ac695800b4159e1a09
Author: Joanmarie Diggs <jdiggs igalia com>
Date: Tue Jan 16 13:27:40 2018 -0500
Sanity-check focus events for tables after leaving typeahead search
If something else has already claimed focus, announcing the table
which has already given up focus is just pointless noise.
src/orca/scripts/toolkits/GAIL/script.py | 5 +++++
src/orca/scripts/toolkits/gtk/script.py | 5 +++++
2 files changed, 10 insertions(+), 0 deletions(-)
---
diff --git a/src/orca/scripts/toolkits/GAIL/script.py b/src/orca/scripts/toolkits/GAIL/script.py
index 8b98329..e870dd7 100644
--- a/src/orca/scripts/toolkits/GAIL/script.py
+++ b/src/orca/scripts/toolkits/GAIL/script.py
@@ -75,6 +75,11 @@ class Script(default.Script):
if self.utilities.isLayoutOnly(event.source):
return
+ if self.utilities.isTypeahead(orca_state.locusOfFocus) \
+ and "Table" in pyatspi.listInterfaces(event.source) \
+ and not event.source.getState().contains(pyatspi.STATE_FOCUSED):
+ return
+
ancestor = pyatspi.findAncestor(orca_state.locusOfFocus, lambda x: x == event.source)
if not ancestor:
orca.setLocusOfFocus(event, event.source)
diff --git a/src/orca/scripts/toolkits/gtk/script.py b/src/orca/scripts/toolkits/gtk/script.py
index 8fc9e07..96cb8d3 100644
--- a/src/orca/scripts/toolkits/gtk/script.py
+++ b/src/orca/scripts/toolkits/gtk/script.py
@@ -120,6 +120,11 @@ class Script(default.Script):
if self.utilities.isLayoutOnly(event.source):
return
+ if self.utilities.isTypeahead(orca_state.locusOfFocus) \
+ and "Table" in pyatspi.listInterfaces(event.source) \
+ and not event.source.getState().contains(pyatspi.STATE_FOCUSED):
+ return
+
ancestor = pyatspi.findAncestor(orca_state.locusOfFocus, lambda x: x == event.source)
if not ancestor:
orca.setLocusOfFocus(event, event.source)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]