[orca/gnome-3-14] Fix for bug 736595 - Orca's new layout mode setting should be configurable via GUI



commit 27e9cf21ac80d83f8ee6078d7b3b82ff59ebf469
Author: Joanmarie Diggs <jdiggs igalia com>
Date:   Fri Sep 12 18:11:11 2014 -0400

    Fix for bug 736595 - Orca's new layout mode setting should be configurable via GUI

 src/orca/guilabels.py                     |   12 ++++++++++++
 src/orca/scripts/toolkits/Gecko/script.py |    8 ++++++++
 2 files changed, 20 insertions(+), 0 deletions(-)
---
diff --git a/src/orca/guilabels.py b/src/orca/guilabels.py
index 6d9e439..bb9f695 100644
--- a/src/orca/guilabels.py
+++ b/src/orca/guilabels.py
@@ -137,6 +137,18 @@ CHAT_SPEAK_MESSAGES_ACTIVE = _("A channel only if its _window is active")
 # chat room prior to presenting an incoming message.
 CHAT_SPEAK_ROOM_NAME = _("_Speak Chat Room name")
 
+# Translators: When presenting the content of a line on a web page, Orca by
+# default presents the full line, including any links or form fields on that
+# line, in order to reflect the on-screen layout as seen by sighted users.
+# Not all users like this presentation, however, and prefer to have objects
+# treated as if they were on individual lines, such as is done by Windows
+# screen readers, so that unrelated objects (e.g. links in a navbar) are not
+# all jumbled together. As a result, this is now configurable. If layout mode
+# is enabled, Orca will present the full line as it appears on the screen; if
+# it is disabled, Orca will treat each object as if it were on a separate line,
+# both for presentation and navigation.
+CONTENT_LAYOUT_MODE = _("Enable layout mode for content")
+
 # Translators: Orca's keybindings support double and triple "clicks" or key
 # presses, similar to using a mouse. This string appears in Orca's preferences
 # dialog after a keybinding which requires a double click.
diff --git a/src/orca/scripts/toolkits/Gecko/script.py b/src/orca/scripts/toolkits/Gecko/script.py
index 03b09bd..44bdb8d 100644
--- a/src/orca/scripts/toolkits/Gecko/script.py
+++ b/src/orca/scripts/toolkits/Gecko/script.py
@@ -108,6 +108,7 @@ class Script(default.Script):
         self.structuralNavigationCheckButton = None
         self.autoFocusModeStructNavCheckButton = None
         self.autoFocusModeCaretNavCheckButton = None
+        self.layoutModeCheckButton = None
 
         # _caretNavigationFunctions are functions that represent fundamental
         # ways to move the caret (e.g., by the arrow keys).
@@ -507,6 +508,12 @@ class Script(default.Script):
         self.sayAllOnLoadCheckButton.set_active(value)
         generalGrid.attach(self.sayAllOnLoadCheckButton, 0, 4, 1, 1)
 
+        label = guilabels.CONTENT_LAYOUT_MODE
+        value = _settingsManager.getSetting('layoutMode')
+        self.layoutModeCheckButton = Gtk.CheckButton.new_with_mnemonic(label)
+        self.layoutModeCheckButton.set_active(value)
+        generalGrid.attach(self.layoutModeCheckButton, 0, 5, 1, 1)
+
         tableFrame = Gtk.Frame()
         grid.attach(tableFrame, 0, 1, 1, 1)
 
@@ -617,6 +624,7 @@ class Script(default.Script):
             'caretNavigationEnabled': self.controlCaretNavigationCheckButton.get_active(),
             'caretNavTriggersFocusMode': self.autoFocusModeCaretNavCheckButton.get_active(),
             'speakCellCoordinates': self.speakCellCoordinatesCheckButton.get_active(),
+            'layoutMode': self.layoutModeCheckButton.get_active(),
             'speakCellSpan': self.speakCellSpanCheckButton.get_active(),
             'speakCellHeaders': self.speakCellHeadersCheckButton.get_active(),
             'skipBlankCells': self.skipBlankCellsCheckButton.get_active()


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