[orca] Do not assume a listbox will have items



commit fad39949539b248ae959b83b2bd6a8790d7973eb
Author: Joanmarie Diggs <jdiggs igalia com>
Date:   Fri Aug 28 17:47:00 2015 -0400

    Do not assume a listbox will have items

 src/orca/braille_generator.py |    3 +++
 src/orca/speech_generator.py  |    9 +++++----
 2 files changed, 8 insertions(+), 4 deletions(-)
---
diff --git a/src/orca/braille_generator.py b/src/orca/braille_generator.py
index 86e6361..2015504 100644
--- a/src/orca/braille_generator.py
+++ b/src/orca/braille_generator.py
@@ -326,6 +326,9 @@ class BrailleGenerator(generator.Generator):
             if not items and obj.childCount:
                 items.append(obj[0])
 
+        if not (items and items[0]):
+            return result
+
         items = list(map(self._generateName, items))
         for item in items:
             result.extend(item)
diff --git a/src/orca/speech_generator.py b/src/orca/speech_generator.py
index 9e07a7c..e6e33ba 100644
--- a/src/orca/speech_generator.py
+++ b/src/orca/speech_generator.py
@@ -467,10 +467,8 @@ class SpeechGenerator(generator.Generator):
 
         result = []
         acss = self.voice(STATE)
-        if obj.getState().contains(pyatspi.STATE_MULTISELECTABLE):
-            # Translators: "multi-select" refers to a web form list
-            # in which more than one item can be selected at a time.
-            #
+        if obj.getState().contains(pyatspi.STATE_MULTISELECTABLE) \
+           and obj.childCount:
             result.append(self._script.formatting.getString(
                 mode='speech',
                 stringType='multiselect'))
@@ -1466,6 +1464,9 @@ class SpeechGenerator(generator.Generator):
             if not items and obj.childCount:
                 items.append(obj[0])
 
+        if not (items and items[0]):
+            return result
+
         items = list(map(self._generateName, items))
         for item in items:
             result.extend(item)


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