Index: src/orca/default.py
===================================================================
--- src/orca/default.py	(revision 3434)
+++ src/orca/default.py	(working copy)
@@ -2663,24 +2663,26 @@
                     pyatspi.ROLE_TREE_TABLE,
                     pyatspi.ROLE_TREE):
             if event.source.childCount:
-                # Well...we'll first see if there is a selection.  If there
-                # is, we'll use it.
+                # We might have tucked away some information for this 
+                # thing in the onActiveDescendantChanged method.
                 #
-                try:
-                    selection = event.source.querySelection()
-                except NotImplementedError:
-                    selection = None
-                if selection and selection.nSelectedChildren > 0:
-                    newFocus = selection.getSelectedChild(0)
-
-                # Otherwise, we might have tucked away some information
-                # for this thing in the onActiveDescendantChanged method.
-                #
-                elif self.pointOfReference.has_key("activeDescendantInfo"):
+                if self.pointOfReference.has_key("activeDescendantInfo"):
                     [parent, index] = \
                         self.pointOfReference['activeDescendantInfo']
+                    print "Found activeDescendantInfo index: ", index
                     newFocus = parent[index]
 
+                else:
+                    # Well...we'll first see if there is a selection.  If there
+                    # is, we'll use it.
+                    #
+                    try:
+                        selection = event.source.querySelection()
+                    except NotImplementedError:
+                        selection = None
+                    if selection and selection.nSelectedChildren > 0:
+                        newFocus = selection.getSelectedChild(0)
+
         orca.setLocusOfFocus(event, newFocus)
 
     def onNameChanged(self, event):
@@ -3069,6 +3071,7 @@
         - event: the Event
         """
 
+        print "default: onActiveDescendantChanged called."
         if not event.source.getState().contains(pyatspi.STATE_FOCUSED):
             return
 
@@ -3078,6 +3081,8 @@
         #
         child = event.any_data
         if child:
+            print "STOPPING speech."
+            speech.stop()
             orca.setLocusOfFocus(event, child)
         else:
             orca.setLocusOfFocus(event, event.source)
