Index: src/orca/Gecko.py
===================================================================
--- src/orca/Gecko.py	(revision 2586)
+++ src/orca/Gecko.py	(working copy)
@@ -3709,7 +3709,6 @@
         - oldLocusOfFocus: Accessible that is the old locus of focus
         - newLocusOfFocus: Accessible that is the new locus of focus
         """
-
         # Sometimes we get different accessibles for the same object.
         #
         if self.isSameObject(oldLocusOfFocus, newLocusOfFocus):
@@ -3739,6 +3738,12 @@
                         self.speakContents(self.getLineContentsAtOffset(
                                                 newLocusOfFocus, caretOffset))
                         return
+                elif newLocusOfFocus.role == rolenames.ROLE_DIALOG:
+                    self.setCaretPosition(newLocusOfFocus, caretOffset)
+                    self.updateBraille(newLocusOfFocus)
+                    self.speakContents(self.getLineContentsAtOffset(
+                                            newLocusOfFocus, caretOffset))
+                    
 
             else:
                 caretOffset = 0
Index: src/orca/braille.py
===================================================================
--- src/orca/braille.py	(revision 2586)
+++ src/orca/braille.py	(working copy)
@@ -435,6 +435,8 @@
         selection."""
 
         text = self.accessible.text
+        if not text:
+            return ''
 
         # Start with an empty mask.
         #
