[orca] Don't present name and summary for page which is no longer showing or visible
- From: Joanmarie Diggs <joanied src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [orca] Don't present name and summary for page which is no longer showing or visible
- Date: Tue, 12 Jul 2016 16:02:42 +0000 (UTC)
commit d18131258c05a06f61eb08729ce0cdad82d17503
Author: Joanmarie Diggs <jdiggs igalia com>
Date: Tue Jul 12 12:01:51 2016 -0400
Don't present name and summary for page which is no longer showing or visible
src/orca/script_utilities.py | 16 ++++++++++++++++
src/orca/scripts/web/script.py | 5 +++--
2 files changed, 19 insertions(+), 2 deletions(-)
---
diff --git a/src/orca/script_utilities.py b/src/orca/script_utilities.py
index bbed192..b7949ed 100644
--- a/src/orca/script_utilities.py
+++ b/src/orca/script_utilities.py
@@ -3483,6 +3483,22 @@ class Utilities:
return False
+ def isShowingOrVisible(self, obj):
+ try:
+ state = obj.getState()
+ except:
+ msg = "ERROR: Exception getting state of %s" % obj
+ debug.println(debug.LEVEL_INFO, msg, True)
+ return False
+
+ if state.contains(pyatspi.STATE_SHOWING) \
+ or state.contains(pyatspi.STATE_VISIBLE):
+ return True
+
+ msg = "INFO: %s is neither showing nor visible" % obj
+ debug.println(debug.LEVEL_INFO, msg, True)
+ return False
+
def isDead(self, obj):
try:
name = obj.name
diff --git a/src/orca/scripts/web/script.py b/src/orca/scripts/web/script.py
index 04b2559..c04e25c 100644
--- a/src/orca/scripts/web/script.py
+++ b/src/orca/scripts/web/script.py
@@ -1105,10 +1105,11 @@ class Script(default.Script):
if not obj or self.utilities.isZombie(obj):
self.utilities.clearCaretContext()
+ shouldPresent = self.utilities.isShowingOrVisible(event.source)
if not _settingsManager.getSetting('onlySpeakDisplayedText'):
if event.detail1:
self.presentMessage(messages.PAGE_LOADING_START)
- elif event.source.name:
+ elif event.source.name and shouldPresent:
msg = messages.PAGE_LOADING_END_NAMED % event.source.name
self.presentMessage(msg, resetStyles=False)
else:
@@ -1119,7 +1120,7 @@ class Script(default.Script):
self.utilities.clearCachedObjects()
- if _settingsManager.getSetting('pageSummaryOnLoad'):
+ if _settingsManager.getSetting('pageSummaryOnLoad') and shouldPresent:
msg = "WEB: Getting page summary for obj %s" % obj
debug.println(debug.LEVEL_INFO, msg, True)
summary = self.utilities.getPageSummary(obj)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]