[orca] Include infobars when presenting status bar and default button content



commit a78f91f0767d69cb8244565be9560b5078095f9c
Author: Joanmarie Diggs <jdiggs igalia com>
Date:   Wed Dec 14 07:04:41 2016 -0500

    Include infobars when presenting status bar and default button content

 src/orca/script_utilities.py                      |    3 +++
 src/orca/scripts/default.py                       |    3 +++
 src/orca/scripts/toolkits/gtk/script_utilities.py |    4 ++++
 3 files changed, 10 insertions(+), 0 deletions(-)
---
diff --git a/src/orca/script_utilities.py b/src/orca/script_utilities.py
index 0e9f11e..3816e22 100644
--- a/src/orca/script_utilities.py
+++ b/src/orca/script_utilities.py
@@ -1826,6 +1826,9 @@ class Utilities:
 
         return statusBar
 
+    def infoBar(self, root):
+        return None
+
     def _topLevelRoles(self):
         return [pyatspi.ROLE_ALERT,
                 pyatspi.ROLE_DIALOG,
diff --git a/src/orca/scripts/default.py b/src/orca/scripts/default.py
index 4b063e5..f6b9bac 100644
--- a/src/orca/scripts/default.py
+++ b/src/orca/scripts/default.py
@@ -1245,6 +1245,9 @@ class Script(script.Script):
         frame, dialog = self.utilities.frameAndDialog(obj)
         if frame:
             speech.speak(self.speechGenerator.generateStatusBar(frame))
+            infobar = self.utilities.infoBar(frame)
+            if infobar:
+                speech.speak(self.speechGenerator.generateSpeech(infobar))
 
         window = dialog or frame
         if window:
diff --git a/src/orca/scripts/toolkits/gtk/script_utilities.py 
b/src/orca/scripts/toolkits/gtk/script_utilities.py
index 812acc5..930817f 100644
--- a/src/orca/scripts/toolkits/gtk/script_utilities.py
+++ b/src/orca/scripts/toolkits/gtk/script_utilities.py
@@ -58,6 +58,10 @@ class Utilities(script_utilities.Utilities):
         self._script.generatorCache[self.DISPLAYED_TEXT][obj] = displayedText
         return displayedText
 
+    def infoBar(self, root):
+        isInfoBar = lambda x: x and x.getRole() == pyatspi.ROLE_INFO_BAR
+        return pyatspi.findDescendant(root, isInfoBar)
+
     def isComboBoxWithToggleDescendant(self, obj):
         if not (obj and obj.getRole() == pyatspi.ROLE_COMBO_BOX):
             return False


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