orca r4338 - in branches/gnome-2-24: . src/orca src/orca/scripts/apps/Thunderbird src/orca/scripts/apps/evolution src/orca/scripts/apps/soffice src/orca/scripts/toolkits/Gecko



Author: joanied
Date: Mon Nov 17 22:05:37 2008
New Revision: 4338
URL: http://svn.gnome.org/viewvc/orca?rev=4338&view=rev

Log:
* src/orca/scripts/toolkits/Gecko/script.py:
  src/orca/scripts/apps/evolution/script.py:
  src/orca/scripts/apps/Thunderbird/script.py:
  src/orca/scripts/apps/soffice/script.py:
  src/orca/flat_review.py:
  Fix for bug #551891 - Flat review does not always start in
  the correct place when focus is in a tree table.



Modified:
   branches/gnome-2-24/ChangeLog
   branches/gnome-2-24/src/orca/flat_review.py
   branches/gnome-2-24/src/orca/scripts/apps/Thunderbird/script.py
   branches/gnome-2-24/src/orca/scripts/apps/evolution/script.py
   branches/gnome-2-24/src/orca/scripts/apps/soffice/script.py
   branches/gnome-2-24/src/orca/scripts/toolkits/Gecko/script.py

Modified: branches/gnome-2-24/src/orca/flat_review.py
==============================================================================
--- branches/gnome-2-24/src/orca/flat_review.py	(original)
+++ branches/gnome-2-24/src/orca/flat_review.py	Mon Nov 17 22:05:37 2008
@@ -638,7 +638,7 @@
             currentZoneIndex = 0
             while currentZoneIndex < len(line.zones):
                 zone = line.zones[currentZoneIndex]
-                if zone.accessible == searchZone:
+                if self.script.isSameObject(zone.accessible, searchZone):
                     foundZoneWithFocus = True
                     break
                 else:

Modified: branches/gnome-2-24/src/orca/scripts/apps/Thunderbird/script.py
==============================================================================
--- branches/gnome-2-24/src/orca/scripts/apps/Thunderbird/script.py	(original)
+++ branches/gnome-2-24/src/orca/scripts/apps/Thunderbird/script.py	Mon Nov 17 22:05:37 2008
@@ -228,18 +228,20 @@
 
         # This is a better fix for bug #405541. Thunderbird gives
         # focus to the cell in the column that is being sorted
-        # (e.g., Date). Braille should show the row from the begining.
-        # This fix calls orca.setLocusOfFocus to give focus to the
-        # cell at the beginning of the row. It consume the event
-        # so Gecko.py doesn't reset the focus.
+        # (e.g., Date). Braille should show the row beginning with
+        # the first populated cell. Set the locusOfFocus to that
+        # cell and consume the event so that the Gecko script
+        # doesn't reset it.
         #
         if obj.getRole() == pyatspi.ROLE_TABLE_CELL:
             table = parent.queryTable()
-            index = self.getCellIndex(obj)
-            row = table.getRowAtIndex(index)
-            acc = table.getAccessibleAt(row, 0)
-            orca.setLocusOfFocus(event, acc)
-            consume = True
+            row = table.getRowAtIndex(self.getCellIndex(obj))
+            for i in range(0, table.nColumns):
+                acc = table.getAccessibleAt(row, i)
+                if acc.name:                
+                    orca.setLocusOfFocus(event, acc)
+                    consume = True
+                    break
 
         # Text area (for caching handle for spell checking purposes).
         #

Modified: branches/gnome-2-24/src/orca/scripts/apps/evolution/script.py
==============================================================================
--- branches/gnome-2-24/src/orca/scripts/apps/evolution/script.py	(original)
+++ branches/gnome-2-24/src/orca/scripts/apps/evolution/script.py	Mon Nov 17 22:05:37 2008
@@ -596,6 +596,12 @@
                                event,
                                debug.getAccessibleDetails(event.source))
 
+        # We always automatically go back to focus tracking mode when
+        # the focus changes.
+        #
+        if self.flatReviewContext:
+            self.toggleFlatReviewMode()
+
         # self.printAncestry(event.source)
 
         # 1) Mail view: current message pane: individual lines of text.

Modified: branches/gnome-2-24/src/orca/scripts/apps/soffice/script.py
==============================================================================
--- branches/gnome-2-24/src/orca/scripts/apps/soffice/script.py	(original)
+++ branches/gnome-2-24/src/orca/scripts/apps/soffice/script.py	Mon Nov 17 22:05:37 2008
@@ -1300,6 +1300,12 @@
             self.find()
             return
 
+        # We always automatically go back to focus tracking mode when
+        # the focus changes.
+        #
+        if self.flatReviewContext:
+            self.toggleFlatReviewMode()
+
         # If we are inside a paragraph inside a table cell (in Writer),
         # then speak/braille that parent table cell (see bug #382415).
         # Also announce that a table has been entered or left.

Modified: branches/gnome-2-24/src/orca/scripts/toolkits/Gecko/script.py
==============================================================================
--- branches/gnome-2-24/src/orca/scripts/toolkits/Gecko/script.py	(original)
+++ branches/gnome-2-24/src/orca/scripts/toolkits/Gecko/script.py	Mon Nov 17 22:05:37 2008
@@ -1838,6 +1838,12 @@
         if self.isSameObject(oldLocusOfFocus, newLocusOfFocus):
             return
 
+        # We always automatically go back to focus tracking mode when
+        # the focus changes.
+        #
+        if self.flatReviewContext:
+            self.toggleFlatReviewMode()
+
         # Try to handle the case where a spurious focus event was tossed
         # at us.
         #



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