orca r4166 - in trunk: . src/orca src/orca/scripts/toolkits/Gecko
- From: joanied svn gnome org
- To: svn-commits-list gnome org
- Subject: orca r4166 - in trunk: . src/orca src/orca/scripts/toolkits/Gecko
- Date: Sun, 7 Sep 2008 05:04:53 +0000 (UTC)
Author: joanied
Date: Sun Sep 7 05:04:53 2008
New Revision: 4166
URL: http://svn.gnome.org/viewvc/orca?rev=4166&view=rev
Log:
* src/orca/scripts/toolkits/Gecko/speech_generator.py:
src/orca/scripts/toolkits/Gecko/where_am_i.py:
src/orca/where_am_I.py:
Bit more work on the fix for bug #515923 - 'Area' labels of Calc
Headers/Footers dialog not always announced.
Modified:
trunk/ChangeLog
trunk/src/orca/scripts/toolkits/Gecko/speech_generator.py
trunk/src/orca/scripts/toolkits/Gecko/where_am_i.py
trunk/src/orca/where_am_I.py
Modified: trunk/src/orca/scripts/toolkits/Gecko/speech_generator.py
==============================================================================
--- trunk/src/orca/scripts/toolkits/Gecko/speech_generator.py (original)
+++ trunk/src/orca/scripts/toolkits/Gecko/speech_generator.py Sun Sep 7 05:04:53 2008
@@ -79,7 +79,7 @@
doNotSpeak.append(pyatspi.ROLE_LIST)
utterances = []
- if not obj.getRole() in doNotSpeak:
+ if role or not obj.getRole() in doNotSpeak:
utterances.append(rolenames.getSpeechForRoleName(obj, role))
if obj.getRole() == pyatspi.ROLE_HEADING:
level = self._script.getHeadingLevel(obj)
Modified: trunk/src/orca/scripts/toolkits/Gecko/where_am_i.py
==============================================================================
--- trunk/src/orca/scripts/toolkits/Gecko/where_am_i.py (original)
+++ trunk/src/orca/scripts/toolkits/Gecko/where_am_i.py Sun Sep 7 05:04:53 2008
@@ -83,6 +83,26 @@
and not self._script.isAriaWidget(orca_state.locusOfFocus)):
where_am_I.WhereAmI._speakDefaultButton(self, obj)
+ def _getSpeechForRoleName(self, obj, role=None):
+ """Returns the rolename to be spoken for the object. Overridden
+ here because there are times when we do not want the speech
+ generator returning a role to speak (e.g. navigating within
+ a document), but other times when we would (e.g. during a
+ whereAmI).
+ """
+
+ objRole = obj.getRole()
+ if not role and objRole in [pyatspi.ROLE_DOCUMENT_FRAME,
+ pyatspi.ROLE_FORM,
+ pyatspi.ROLE_LIST_ITEM,
+ pyatspi.ROLE_LIST,
+ pyatspi.ROLE_PARAGRAPH,
+ pyatspi.ROLE_SECTION,
+ pyatspi.ROLE_TABLE_CELL]:
+ role = objRole
+
+ return where_am_I.WhereAmI._getSpeechForRoleName(self, obj, role)
+
def _speakObjDescription(self, obj):
"""Speaks the object's description if it is not the same as the
object's name or label. Overridden here because Gecko tacks on
Modified: trunk/src/orca/where_am_I.py
==============================================================================
--- trunk/src/orca/where_am_I.py (original)
+++ trunk/src/orca/where_am_I.py Sun Sep 7 05:04:53 2008
@@ -1147,8 +1147,11 @@
"""Returns the rolename to be spoken for the object.
"""
- return self._script.speechGenerator.\
- getSpeechForObjectRole(obj, role)[0]
+ try:
+ return self._script.speechGenerator.\
+ getSpeechForObjectRole(obj, role)[0]
+ except:
+ return ""
def _getGroupLabel(self, obj):
"""Returns the label for a group of components.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]