[orca/new-settings] Some extra tweaks while debugging.
- From: Joanmarie Diggs <joanied src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [orca/new-settings] Some extra tweaks while debugging.
- Date: Sat, 24 Jul 2010 19:59:03 +0000 (UTC)
commit 70cdd62fb81c564bf034cfdbc474cda0a8364510
Author: Joanmarie Diggs <joanmarie diggs gmail com>
Date: Sat Jul 24 15:44:53 2010 -0400
Some extra tweaks while debugging.
src/orca/backends/gconf_backend.py | 23 ++++++++++++++++++++---
src/orca/orca_gui_prefs.py | 23 ++++++++++++++++++-----
src/orca/settings_manager.py | 1 +
src/orca/speechdispatcherfactory.py | 5 +++++
4 files changed, 44 insertions(+), 8 deletions(-)
---
diff --git a/src/orca/backends/gconf_backend.py b/src/orca/backends/gconf_backend.py
index 63fa9d8..46d373d 100644
--- a/src/orca/backends/gconf_backend.py
+++ b/src/orca/backends/gconf_backend.py
@@ -931,7 +931,11 @@ class OrcaPrefs():
# as a result of this call.
#
- if not 'activeProfile' in self.prefsDict: self.prefsDict['activeProfile']='default'
+ # JD -> JH: Another sanity check: self.prefsDict['activeProfile']
+ # might exist with a value of None.
+ #
+ if not self.prefsDict.get('activeProfile'):
+ self.prefsDict['activeProfile'] = 'default'
if self.prefsDict:
self._client.set_string('/apps/gnome-orca/activeProfile',self.prefsDict['activeProfile'])
@@ -1030,7 +1034,11 @@ class OrcaPrefs():
# Load settings in userCustomizableSettings
#
for key in settings.userCustomizableSettings:
- if key != 'voices' and key != 'speechServerFactory':
+ # JD -> JH: In OpenSolaris I was getting tracebacks due to some
+ # problem with the speechServerInfo. I haven't added handling
+ # below. Just getting things working in the environment for now.
+ #
+ if key not in ['voices', 'speechServerFactory']:
#value = self._getValueForKey(self.settingsDict, key)
value = self.settingsDict[key]
if value != None:
@@ -1043,7 +1051,16 @@ class OrcaPrefs():
# Load orca.settings.speechServerFactory and orca.settings.voices
#
- ssfLoad = "orca.settings.speechServerFactory = %s" % self.settingsDict['speechServerFactory']
+ factory = self.settingsDict.get('speechServerFactory')
+
+ # JD -> JH: In OpenSolaris I was getting tracebacks due to factory
+ # being None. I need to investigate further. I might have just
+ # borked something while testing. :-/ This is a just in case....
+ #
+ if not factory:
+ factory = settings.speechServerFactory
+
+ ssfLoad = "orca.settings.speechServerFactory = %s" % factory
print 'speechServerFactory = ', ssfLoad
exec(ssfLoad)
diff --git a/src/orca/orca_gui_prefs.py b/src/orca/orca_gui_prefs.py
index de5ebbf..508c617 100644
--- a/src/orca/orca_gui_prefs.py
+++ b/src/orca/orca_gui_prefs.py
@@ -850,6 +850,18 @@ class OrcaSetupGUI(orca_gtkbuilder.GtkBuilderWrapper):
box item.
"""
+ print "_setSpeechSystemsChoice, systemName is: %s" % systemName
+ # JD -> JH: We aren't expecting this string in quotes, yet we
+ # seem to be getting it that way from the gconf backend. That
+ # is causing the 'endswith(systemName)' test to fail. That in
+ # turn is resulting in our failing to find a match. I'm not
+ # suggesting this hack is the solution; I'm merely trying to
+ # make your hang go away. :-) If you comment this line, you
+ # should see the hang and the debug output -- assuming your
+ # active speech factory is speechdispatcherfactory.
+ #
+ systemName = systemName.strip("'")
+
if len(self.speechSystemsChoices) == 0:
self.speechSystemsChoice = None
return
@@ -2166,11 +2178,12 @@ class OrcaSetupGUI(orca_gtkbuilder.GtkBuilderWrapper):
for profile in availableProfiles:
iterChilds.update({profile: self.profilesComboModel.append([profile])})
- if 'activeProfile' in prefs:
- activeProfile = prefs['activeProfile']
- else:
- activeProfile = 'default'
-
+ # JD -> JH: It seems that 'activeProfile' is in prefs at this point
+ # but initially prefs['activeProfile'] == None, so it wasn't getting
+ # set to 'default'. That causes the symptoms Jose asked about on the
+ # list.
+ #
+ activeProfile = prefs.get('activeProfile') or 'default'
activeProfileItem = int(self.profilesComboModel.get_string_from_iter(iterChilds[activeProfile]))
# If not classic backend, show active profile
diff --git a/src/orca/settings_manager.py b/src/orca/settings_manager.py
index 2c45466..8e594c4 100644
--- a/src/orca/settings_manager.py
+++ b/src/orca/settings_manager.py
@@ -45,6 +45,7 @@ class SettingsManager(Singleton):
# At the moment, DEFAULT_BACKEND can be established here
# Possible values are: classic and gconf
DEFAULT_BACKEND = 'gconf_backend'
+ #DEFAULT_BACKEND = 'classic'
def __init__(self, backend = None):
"""Initialize a SettingsManager Object.
diff --git a/src/orca/speechdispatcherfactory.py b/src/orca/speechdispatcherfactory.py
index 3461a0d..d9293dd 100644
--- a/src/orca/speechdispatcherfactory.py
+++ b/src/orca/speechdispatcherfactory.py
@@ -122,8 +122,13 @@ class SpeechServer(speechserver.SpeechServer):
getSpeechServer = staticmethod(getSpeechServer)
def shutdownActiveServers():
+ print "speechdispatcherfactory.shutdownActiveServers"
+ if not SpeechServer._active_servers:
+ print " HANG LIKELY: NO ACTIVE SERVERS TO SHUTDOWN"
for server in SpeechServer._active_servers.values():
+ print " server is", server
server.shutdown()
+ print "shutdownActiveServers Completed"
shutdownActiveServers = staticmethod(shutdownActiveServers)
# *** Instance methods ***
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]