Cache text selection
Categories
(Core :: Disability Access APIs, task)
Tracking
()
Tracking | Status | |
---|---|---|
firefox99 | --- | fixed |
People
(Reporter: Jamie, Assigned: Jamie)
References
(Blocks 1 open bug)
Details
(Whiteboard: [ctw-m1])
Attachments
(6 files)
We need to cache text selection ranges in the parent process cache.
Assignee | ||
Updated•3 years ago
|
Assignee | ||
Comment 1•3 years ago
|
||
This class needs to be updated to support base Accessible and it doesn't make sense to port methods that can never be used.
Also, any new functionality (e.g. needed for the UIA text pattern) should now be implemented using TextLeafPoint/Range, not TextRange.
Assignee | ||
Comment 2•3 years ago
|
||
Even though we'd ideally be using TextLeafRange for new things, TextRange is still needed by our selection events (which still use HyperText offsets) and IA2/ATK clients which depend on HyperText offsets.
Thus, we need TextRange to support RemoteAccessible.
Although the start and end containers are HyperTextAccessibles, I chose to store Accessible rather than HyperTextAccessibleBase because HyperTextAccessibleBase doesn't inherit from Accessible and having an Accessible is easier.
XPCOM needs to hold a reference to any state objects.
Because we can't hold a reference to an Accessible (due to RemoteAccessible), xpcAccessibleTextRange holds references to xpcAccessibleHyperText instead.
Assignee | ||
Comment 3•3 years ago
|
||
This uses selection changed and caret moved events.
Assignee | ||
Comment 4•3 years ago
|
||
The original non-Windows RemoteAccessible SelectionBoundsAt method still exists because it allows the caller to retrieve both the offsets and the text in a single call, which can't be done with the unified API.
Thus, platform code still needs a separate code path for non-cached RemoteAccessible.
Assignee | ||
Comment 5•3 years ago
|
||
Assignee | ||
Comment 6•3 years ago
|
||
Updated•3 years ago
|
Comment 8•3 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/e46f519715bb
https://hg.mozilla.org/mozilla-central/rev/9b08846e5ee3
https://hg.mozilla.org/mozilla-central/rev/65397920b811
https://hg.mozilla.org/mozilla-central/rev/639172abb542
https://hg.mozilla.org/mozilla-central/rev/364cf24d2689
https://hg.mozilla.org/mozilla-central/rev/c817b1fb4e22
Description
•