[orca] Web: Move tree and tree table to browsable in sticky browse mode only



commit be6d7fd4455d43676bd4e922ddb0df1a847101e8
Author: Joanmarie Diggs <jdiggs igalia com>
Date:   Tue Mar 23 17:23:16 2021 +0100

    Web: Move tree and tree table to browsable in sticky browse mode only
    
    Depending on the user's settings and navigation methods, trees and
    tree tables do not automatically cause Orca to switch to focus mode.
    Due to some recent changes and fixes to make badly-authored ARIA
    more readable, trees should now be relatively accessible in browse
    mode. However, this improvement in Orca can make web app enhanced
    functionality less discoverable which in turn can make those authors
    unhappy.
    
    In order to balance everyone's needs and preferences, we will not
    descend trees and tree tables unless we are in sticky browse mode.
    This should accomplish the following:
    
    * Trees that are not of interest can be quickly skipped over.
    * Users are more likely to remember to switch to focus mode to
      use the author-provided navigation in order to descend the tree.
    * If that author-provided navigation is lacking, sticky browse mode
      can still be used to read and interact with the content.

 src/orca/scripts/web/script_utilities.py | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)
---
diff --git a/src/orca/scripts/web/script_utilities.py b/src/orca/scripts/web/script_utilities.py
index ef3c12c05..0d2133da4 100644
--- a/src/orca/scripts/web/script_utilities.py
+++ b/src/orca/scripts/web/script_utilities.py
@@ -1145,9 +1145,7 @@ class Utilities(script_utilities.Utilities):
         descendable = [pyatspi.ROLE_MENU,
                        pyatspi.ROLE_MENU_BAR,
                        pyatspi.ROLE_TOOL_BAR,
-                       pyatspi.ROLE_TREE,
-                       pyatspi.ROLE_TREE_ITEM,
-                       pyatspi.ROLE_TREE_TABLE]
+                       pyatspi.ROLE_TREE_ITEM]
 
         role = obj.getRole()
         if role in always:
@@ -1183,7 +1181,7 @@ class Utilities(script_utilities.Utilities):
         if role == pyatspi.ROLE_COMBO_BOX:
             return True
 
-        if role == pyatspi.ROLE_EMBEDDED:
+        if role in [pyatspi.ROLE_EMBEDDED, pyatspi.ROLE_TREE, pyatspi.ROLE_TREE_TABLE]:
             return not self._script.browseModeIsSticky()
 
         if role == pyatspi.ROLE_LINK:


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