[orca/570658] Cache isAriaWidget calculation



commit 66b53deda1bf5fd87a230b50bf6ca635bd7edd1b
Author: Willie Walker <william walker sun com>
Date:   Thu Jul 2 10:22:10 2009 -0400

    Cache isAriaWidget calculation

 src/orca/scripts/toolkits/Gecko/script.py |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)
---
diff --git a/src/orca/scripts/toolkits/Gecko/script.py b/src/orca/scripts/toolkits/Gecko/script.py
index 3458b91..e7b479f 100644
--- a/src/orca/scripts/toolkits/Gecko/script.py
+++ b/src/orca/scripts/toolkits/Gecko/script.py
@@ -2979,9 +2979,16 @@ class Script(default.Script):
         - obj: The accessible object of interest.  If None, the
         locusOfFocus is examined.
         """
+        try:
+            return self.generatorCache['isAria'][obj]
+        except:
+            if not self.generatorCache.has_key('isAria'):
+                self.generatorCache['isAria'] = {}
         obj = obj or orca_state.locusOfFocus
         attrs = self._getAttrDictionary(obj)
-        return ('xml-roles' in attrs and 'live' not in attrs)
+        self.generatorCache['isAria'][obj] = \
+            ('xml-roles' in attrs and 'live' not in attrs)
+        return self.generatorCache['isAria'][obj]
 
     def _getAttrDictionary(self, obj):
         if not obj:



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