[orca] Set the locusOfFocus to context menus when Gecko apps pop them up
- From: Joanmarie Diggs <joanied src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [orca] Set the locusOfFocus to context menus when Gecko apps pop them up
- Date: Mon, 11 Nov 2013 21:47:04 +0000 (UTC)
commit 83f823422a12f284eba96e52aa0e911d9b49238f
Author: Joanmarie Diggs <jdiggs igalia com>
Date: Mon Nov 11 16:43:19 2013 -0500
Set the locusOfFocus to context menus when Gecko apps pop them up
src/orca/scripts/apps/Thunderbird/script.py | 10 ++++++++++
src/orca/scripts/toolkits/Gecko/script.py | 18 ++++++++++++++++++
2 files changed, 28 insertions(+), 0 deletions(-)
---
diff --git a/src/orca/scripts/apps/Thunderbird/script.py b/src/orca/scripts/apps/Thunderbird/script.py
index f138d8d..7d1a2ee 100644
--- a/src/orca/scripts/apps/Thunderbird/script.py
+++ b/src/orca/scripts/apps/Thunderbird/script.py
@@ -401,6 +401,16 @@ class Script(Gecko.Script):
self._presentMessage(obj)
+ def onShowingChanged(self, event):
+ """Callback for object:state-changed:showing accessibility events."""
+
+ # TODO - JD: Once there are separate scripts for the Gecko toolkit
+ # and the Firefox browser, this method can be deleted. It's here
+ # right now just to prevent the Gecko script from presenting non-
+ # existent browsery autocompletes for Thunderbird.
+
+ default.Script.onShowingChanged(self, event)
+
def onTextDeleted(self, event):
"""Called whenever text is from an an object.
diff --git a/src/orca/scripts/toolkits/Gecko/script.py b/src/orca/scripts/toolkits/Gecko/script.py
index 075454f..a90502d 100644
--- a/src/orca/scripts/toolkits/Gecko/script.py
+++ b/src/orca/scripts/toolkits/Gecko/script.py
@@ -1264,6 +1264,20 @@ class Script(default.Script):
if event.source.getRole() == pyatspi.ROLE_FRAME:
self.liveMngr.flushMessages()
+ def onFocus(self, event):
+ """Callback for focus: accessibility events."""
+
+ # NOTE: This event type is deprecated and Orca should no longer use it.
+ # This callback remains just to handle bugs in applications and toolkits
+ # during the remainder of the unstable (3.11) development cycle.
+
+ role = event.source.getRole()
+
+ # Unfiled. When a context menu pops up, we seem to get a focus: event,
+ # but no object:state-changed:focused event from Gecko.
+ if role == pyatspi.ROLE_MENU:
+ orca.setLocusOfFocus(event, event.source)
+
def onFocusedChanged(self, event):
"""Callback for object:state-changed:focused accessibility events."""
@@ -1355,6 +1369,10 @@ class Script(default.Script):
def onShowingChanged(self, event):
"""Callback for object:state-changed:showing accessibility events."""
+
+ # TODO - JD: Once there are separate scripts for the Gecko toolkit
+ # and the Firefox browser, the stuff below belongs in the browser
+ # script and not in the toolkit script.
try:
eventRole = event.source.getRole()
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]