[orca] Create a dedicated object:state-changed callback for the "pressed" state



commit 8bffb6234c14c68d6f83ffde123b57b2c8c2f6d4
Author: Joanmarie Diggs <jdiggs igalia com>
Date:   Mon Nov 4 16:32:23 2013 -0500

    Create a dedicated object:state-changed callback for the "pressed" state

 src/orca/scripts/default.py |   13 +++++++++++--
 1 files changed, 11 insertions(+), 2 deletions(-)
---
diff --git a/src/orca/scripts/default.py b/src/orca/scripts/default.py
index f284580..35e24e0 100644
--- a/src/orca/scripts/default.py
+++ b/src/orca/scripts/default.py
@@ -538,7 +538,7 @@ class Script(script.Script):
         listeners["object:state-changed:checked"]           = \
             self.onCheckedChanged
         listeners["object:state-changed:pressed"]           = \
-            self.onStateChanged
+            self.onPressedChanged
         listeners["object:state-changed:indeterminate"]     = \
             self.onIndeterminateChanged
         listeners["object:state-changed:expanded"]          = \
@@ -2506,6 +2506,16 @@ class Script(script.Script):
         self.updateBraille(obj)
         speech.speak(self.speechGenerator.generateSpeech(obj, alreadyFocused=True))
 
+    def onPressedChanged(self, event):
+        """Callback for object:state-changed:pressed accessibility events."""
+
+        obj = event.source
+        if not self.utilities.isSameObject(obj, orca_state.locusOfFocus):
+            return
+
+        self.updateBraille(obj)
+        speech.speak(self.speechGenerator.generateSpeech(obj, alreadyFocused=True))
+
     def onSelectionChanged(self, event):
         """Callback for object:selection-changed accessibility events."""
 
@@ -5099,4 +5109,3 @@ state_change_notifiers = {}
 state_change_notifiers[pyatspi.ROLE_PANEL]           = ("showing", None)
 state_change_notifiers[pyatspi.ROLE_LABEL]           = ("showing", None)
 state_change_notifiers[pyatspi.ROLE_NOTIFICATION]    = ("showing", None)
-state_change_notifiers[pyatspi.ROLE_TOGGLE_BUTTON]   = ("pressed", None)


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