[orca] Check for both focusable and focused states when determining text block elements
- From: Joanmarie Diggs <joanied src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [orca] Check for both focusable and focused states when determining text block elements
- Date: Mon, 22 Sep 2014 00:32:44 +0000 (UTC)
commit 21567b54a722d63422915eb4cf3c96489a31051d
Author: Joanmarie Diggs <jdiggs igalia com>
Date: Sun Sep 21 20:31:08 2014 -0400
Check for both focusable and focused states when determining text block elements
Some widgets, such as the Dojo combo box list, lack state focusable even
when focused. This check is a safe-enough workaround.
.../scripts/toolkits/Gecko/script_utilities.py | 5 ++++-
test/keystrokes/firefox/aria_combobox_dojo.py | 3 ++-
test/keystrokes/firefox/line_nav_simple_form.py | 4 ++--
3 files changed, 8 insertions(+), 4 deletions(-)
---
diff --git a/src/orca/scripts/toolkits/Gecko/script_utilities.py
b/src/orca/scripts/toolkits/Gecko/script_utilities.py
index c563177..860f69a 100644
--- a/src/orca/scripts/toolkits/Gecko/script_utilities.py
+++ b/src/orca/scripts/toolkits/Gecko/script_utilities.py
@@ -867,8 +867,11 @@ class Utilities(script_utilities.Utilities):
if state.contains(pyatspi.STATE_EDITABLE):
return False
+ if role == pyatspi.ROLE_DOCUMENT_FRAME:
+ return True
+
if not state.contains(pyatspi.STATE_FOCUSABLE) \
- or role == pyatspi.ROLE_DOCUMENT_FRAME:
+ and not state.contains(pyatspi.STATE_FOCUSED):
return True
return False
diff --git a/test/keystrokes/firefox/aria_combobox_dojo.py b/test/keystrokes/firefox/aria_combobox_dojo.py
index 70c6382..4c6381e 100644
--- a/test/keystrokes/firefox/aria_combobox_dojo.py
+++ b/test/keystrokes/firefox/aria_combobox_dojo.py
@@ -7,6 +7,7 @@ import utils
sequence = MacroSequence()
+sequence.append(PauseAction(5000))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("Tab"))
@@ -118,7 +119,7 @@ sequence.append(utils.AssertPresentationAction(
"10. Basic Where Am I - Combo box expanded",
["BRAILLE LINE: 'California (CA)'",
" VISIBLE: 'California (CA)', cursor=1",
- "SPEECH OUTPUT: 'list item California (CA)'"]))
+ "SPEECH OUTPUT: 'list item California (CA) 1 of 3'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Escape"))
diff --git a/test/keystrokes/firefox/line_nav_simple_form.py b/test/keystrokes/firefox/line_nav_simple_form.py
index 3718704..9991227 100644
--- a/test/keystrokes/firefox/line_nav_simple_form.py
+++ b/test/keystrokes/firefox/line_nav_simple_form.py
@@ -176,7 +176,7 @@ sequence.append(utils.AssertPresentationAction(
"20. line Up",
["BRAILLE LINE: ' $l'",
" VISIBLE: ' $l', cursor=1",
- "SPEECH OUTPUT: ' '"]))
+ "SPEECH OUTPUT: 'Tell me a little more about yourself: entry '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -209,7 +209,7 @@ sequence.append(utils.AssertPresentationAction(
"24. line Up",
["BRAILLE LINE: 'I am a monkey with a long tail. I like $l'",
" VISIBLE: 'I am a monkey with a long tail. ', cursor=1",
- "SPEECH OUTPUT: 'Tell me a little more about yourself: entry I am a monkey with a long tail. I like
'"]))
+ "SPEECH OUTPUT: 'I am a monkey with a long tail. I like '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]