[orca] Speak state changes in locking keys independent of key echo
- From: Joanmarie Diggs <joanied src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [orca] Speak state changes in locking keys independent of key echo
- Date: Tue, 3 Jan 2012 12:29:32 +0000 (UTC)
commit a56676e2f94f31b4463a5a410e4fecc050a4dd26
Author: Joanmarie Diggs <jdiggs igalia com>
Date: Tue Jan 3 07:28:37 2012 -0500
Speak state changes in locking keys independent of key echo
src/orca/input_event.py | 10 +++++++---
src/orca/orca-setup.ui | 19 -------------------
src/orca/orca_console_prefs.py | 18 ------------------
src/orca/orca_gui_prefs.py | 3 ---
src/orca/settings.py | 11 ++++++-----
5 files changed, 13 insertions(+), 48 deletions(-)
---
diff --git a/src/orca/input_event.py b/src/orca/input_event.py
index cd6ccf8..60ff8f7 100644
--- a/src/orca/input_event.py
+++ b/src/orca/input_event.py
@@ -168,7 +168,9 @@ class KeyboardEvent(InputEvent):
self.shouldEcho = settings.enableDiacriticalKeys
elif self.isLockingKey():
self.keyType = KeyboardEvent.TYPE_LOCKING
- self.shouldEcho = settings.enableLockingKeys
+ self.shouldEcho = settings.presentLockingKeys
+ if self.shouldEcho == None:
+ self.shouldEcho = not settings.onlySpeakDisplayedText
elif self.isPrintableKey():
self.keyType = KeyboardEvent.TYPE_PRINTABLE
self.shouldEcho = \
@@ -177,9 +179,11 @@ class KeyboardEvent(InputEvent):
self.keyType = KeyboardEvent.TYPE_UNKNOWN
self.shouldEcho = False
+ if not self.isLockingKey():
+ self.shouldEcho = self.shouldEcho and settings.enableKeyEcho
+
# Never echo if the user doesn't want any echo, as defined by
# preferences and whether or not we are in a password field.
- self.shouldEcho = self.shouldEcho and settings.enableKeyEcho
if self.shouldEcho:
try:
role = orca_state.locusOfFocus.getRole()
@@ -387,7 +391,7 @@ class KeyboardEvent(InputEvent):
if we presented the event. False if there was some reason the event
was not worthy of presentation."""
- if not self.shouldEcho:
+ if self.shouldEcho == False:
return False
orca_state.lastKeyEchoTime = time.time()
diff --git a/src/orca/orca-setup.ui b/src/orca/orca-setup.ui
index b24e0e9..bc18e34 100644
--- a/src/orca/orca-setup.ui
+++ b/src/orca/orca-setup.ui
@@ -2480,25 +2480,6 @@
</packing>
</child>
<child>
- <object class="GtkCheckButton" id="enableLockingKeysCheckButton">
- <property name="label" translatable="yes">Enable lockin_g keys</property>
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="use_action_appearance">False</property>
- <property name="use_underline">True</property>
- <property name="xalign">0</property>
- <property name="draw_indicator">True</property>
- <signal name="toggled" handler="checkButtonToggled" swapped="no"/>
- </object>
- <packing>
- <property name="left_attach">0</property>
- <property name="top_attach">2</property>
- <property name="width">1</property>
- <property name="height">1</property>
- </packing>
- </child>
- <child>
<object class="GtkCheckButton" id="enableFunctionKeysCheckButton">
<property name="label" translatable="yes">Enable _function keys</property>
<property name="visible">True</property>
diff --git a/src/orca/orca_console_prefs.py b/src/orca/orca_console_prefs.py
index e3849f0..d7e38c8 100644
--- a/src/orca/orca_console_prefs.py
+++ b/src/orca/orca_console_prefs.py
@@ -365,7 +365,6 @@ def setupSpeech(prefsDict):
prefsDict["enableKeyEcho"] = False
prefsDict["enablePrintableKeys"] = False
prefsDict["enableModifierKeys"] = False
- prefsDict["enableLockingKeys"] = False
prefsDict["enableFunctionKeys"] = False
prefsDict["enableActionKeys"] = False
@@ -407,23 +406,6 @@ def setupSpeech(prefsDict):
stop = True
while keyEcho and True:
# Translators: this is in reference to key echo for
- # Caps Lock, Num Lock, Scroll Lock, etc.
- #
- answer = sayAndPrint(_("Enable locking keys? Enter y or n: "),
- stop,
- True,
- speechServerChoice,
- speechVoiceChoice)
- try:
- prefsDict["enableLockingKeys"] = checkYes(answer)
- break
- except:
- stop = False
- sayAndPrint(_("Please enter y or n."))
-
- stop = True
- while keyEcho and True:
- # Translators: this is in reference to key echo for
# the keys at the top of the keyboard.
#
answer = sayAndPrint(_("Enable function keys? Enter y or n: "),
diff --git a/src/orca/orca_gui_prefs.py b/src/orca/orca_gui_prefs.py
index cb90b83..273fdb8 100644
--- a/src/orca/orca_gui_prefs.py
+++ b/src/orca/orca_gui_prefs.py
@@ -1710,8 +1710,6 @@ class OrcaSetupGUI(orca_gtkbuilder.GtkBuilderWrapper):
prefs["enablePrintableKeys"])
self.get_widget("enableModifierKeysCheckButton").set_active( \
prefs["enableModifierKeys"])
- self.get_widget("enableLockingKeysCheckButton").set_active( \
- prefs["enableLockingKeys"])
self.get_widget("enableFunctionKeysCheckButton").set_active( \
prefs["enableFunctionKeys"])
self.get_widget("enableActionKeysCheckButton").set_active( \
@@ -1957,7 +1955,6 @@ class OrcaSetupGUI(orca_gtkbuilder.GtkBuilderWrapper):
enable = self.get_widget("keyEchoCheckButton").get_active()
self.get_widget("enablePrintableKeysCheckButton").set_sensitive(enable)
self.get_widget("enableModifierKeysCheckButton").set_sensitive(enable)
- self.get_widget("enableLockingKeysCheckButton").set_sensitive(enable)
self.get_widget("enableFunctionKeysCheckButton").set_sensitive(enable)
self.get_widget("enableActionKeysCheckButton").set_sensitive(enable)
self.get_widget("enableNavigationKeysCheckButton").set_sensitive(enable)
diff --git a/src/orca/settings.py b/src/orca/settings.py
index 29e2092..22b34c0 100644
--- a/src/orca/settings.py
+++ b/src/orca/settings.py
@@ -74,7 +74,6 @@ userCustomizableSettings = [
"enableKeyEcho",
"enablePrintableKeys",
"enableModifierKeys",
- "enableLockingKeys",
"enableFunctionKeys",
"enableActionKeys",
"enableNavigationKeys",
@@ -416,10 +415,6 @@ enablePrintableKeys = True
#
enableModifierKeys = True
-# If True and key echo is enabled, echo Locking keys.
-#
-enableLockingKeys = True
-
# If True and key echo is enabled, echo Function keys.
#
enableFunctionKeys = True
@@ -457,6 +452,12 @@ showMainWindow = True
#
quitOrcaNoConfirmation = False
+# If True, always present locking key state changes; if False, never present
+# locking key state changes. If None, make the decision based on Orca's normal
+# behavior.
+#
+presentLockingKeys = None
+
# Whether the user wants tooltips presented or not.
#
presentToolTips = False
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]