[orca] spd: Make sure sayAll progress callback gets the correct offsets
- From: Joanmarie Diggs <joanied src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [orca] spd: Make sure sayAll progress callback gets the correct offsets
- Date: Fri, 7 Oct 2022 10:40:32 +0000 (UTC)
commit af44e7f258eabce4f9e7a9731b3d3ef9ff9274ba
Author: Colomban Wendling <cwendling hypra fr>
Date: Fri Oct 7 10:40:30 2022 +0000
spd: Make sure sayAll progress callback gets the correct offsets
src/orca/speechdispatcherfactory.py | 2 +-
src/orca/speechserver.py | 7 +++++++
2 files changed, 8 insertions(+), 1 deletion(-)
---
diff --git a/src/orca/speechdispatcherfactory.py b/src/orca/speechdispatcherfactory.py
index c6558e29c..b332274cb 100644
--- a/src/orca/speechdispatcherfactory.py
+++ b/src/orca/speechdispatcherfactory.py
@@ -507,7 +507,7 @@ class SpeechServer(speechserver.SpeechServer):
elif t == speechserver.SayAllContext.COMPLETED:
context.currentOffset = context.endOffset
context.currentEndOffset = None
- GLib.idle_add(orca_callback, context, t)
+ GLib.idle_add(orca_callback, context.copy(), t)
if t == speechserver.SayAllContext.COMPLETED:
GLib.idle_add(self._say_all, iterator, orca_callback)
self._speak(context.utterance, acss, callback=callback,
diff --git a/src/orca/speechserver.py b/src/orca/speechserver.py
index 377d81a28..e97bac1df 100644
--- a/src/orca/speechserver.py
+++ b/src/orca/speechserver.py
@@ -90,6 +90,13 @@ class SayAllContext:
return "SAY ALL: %s '%s' (%i-%i, current: %i)" % \
(self.obj, self.utterance, self.startOffset, self.endOffset, self.currentOffset)
+ def copy(self):
+ new = SayAllContext(self.obj, self.utterance,
+ self.startOffset, self.endOffset)
+ new.currentOffset = self.currentOffset
+ new.currentEndOffset = self.currentEndOffset
+ return new
+
class SpeechServer(object):
"""Provides speech server abstraction."""
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]