[orca] Prevent Orca from combining words into a single word in web content
- From: Joanmarie Diggs <joanied src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [orca] Prevent Orca from combining words into a single word in web content
- Date: Mon, 16 Mar 2020 15:52:27 +0000 (UTC)
commit 9e2e6bdd1a894060206b2588959cd871181cdd2b
Author: Joanmarie Diggs <jdiggs igalia com>
Date: Mon Mar 16 11:45:00 2020 -0400
Prevent Orca from combining words into a single word in web content
src/orca/caret_navigation.py | 2 +-
src/orca/scripts/web/script.py | 4 ++--
src/orca/scripts/web/script_utilities.py | 5 ++++-
3 files changed, 7 insertions(+), 4 deletions(-)
---
diff --git a/src/orca/caret_navigation.py b/src/orca/caret_navigation.py
index ad6b829f6..278f61ec6 100644
--- a/src/orca/caret_navigation.py
+++ b/src/orca/caret_navigation.py
@@ -282,7 +282,7 @@ class CaretNavigation:
return False
obj, end, string = contents[-1][0], contents[-1][2], contents[-1][3]
- if string and not string[-1].isalnum():
+ if string and string[-1].isspace():
end -= 1
script.utilities.setCaretPosition(obj, end)
diff --git a/src/orca/scripts/web/script.py b/src/orca/scripts/web/script.py
index 287a876e2..e6c9707fc 100644
--- a/src/orca/scripts/web/script.py
+++ b/src/orca/scripts/web/script.py
@@ -871,8 +871,8 @@ class Script(default.Script):
return
obj, offset = self.utilities.getCaretContext(documentFrame=None)
- text = self.utilities.queryNonEmptyText(obj)
- if text and offset == text.characterCount:
+ keyString, mods = self.utilities.lastKeyAndModifiers()
+ if keyString == "Right":
offset -= 1
wordContents = self.utilities.getWordContentsAtOffset(obj, offset)
diff --git a/src/orca/scripts/web/script_utilities.py b/src/orca/scripts/web/script_utilities.py
index e9e15671f..bb513b6a9 100644
--- a/src/orca/scripts/web/script_utilities.py
+++ b/src/orca/scripts/web/script_utilities.py
@@ -1424,7 +1424,7 @@ class Utilities(script_utilities.Utilities):
# Check for things in the same word to the left of this object.
firstObj, firstStart, firstEnd, firstString = objects[0]
prevObj, pOffset = self.findPreviousCaretInOrder(firstObj, firstStart)
- while prevObj and firstString:
+ while prevObj and firstString and prevObj != firstObj:
text = self.queryNonEmptyText(prevObj)
if not text or text.getText(pOffset, pOffset + 1).isspace():
break
@@ -1445,6 +1445,9 @@ class Utilities(script_utilities.Utilities):
lastObj, lastStart, lastEnd, lastString = objects[-1]
while lastObj and lastString and not lastString[-1].isspace():
nextObj, nOffset = self.findNextCaretInOrder(lastObj, lastEnd - 1)
+ if nextObj == lastObj:
+ break
+
onRight = self._getContentsForObj(nextObj, nOffset, boundary)
if onRight and self._contentIsSubsetOf(objects[0], onRight[-1]):
onRight = onRight[0:-1]
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]