Граф коммитов

67 Коммитов

Автор SHA1 Сообщение Дата
Eitan Isaacson 8e38a4587c Bug 1616466 - Support expand/collapse android accessibility actions. r=Jamie,geckoview-reviewers,snorp
Differential Revision: https://phabricator.services.mozilla.com/D63290

--HG--
extra : moz-landing-system : lando
2020-02-25 22:37:00 +00:00
Eitan Isaacson 1e2369f4ca Bug 1615562 - Don't move accessible focus if caret is collapsed or not on focusable. r=Jamie
If a keyboard-focused accessible is removed, the caret jumps to its
nearest ancestor. To avoid arbitrary accessibility focus moves, ignore
caret events that have no selection and are not focusable items.

Differential Revision: https://phabricator.services.mozilla.com/D63541

--HG--
extra : moz-landing-system : lando
2020-02-20 21:49:20 +00:00
Eitan Isaacson 5f6ff669bf Bug 1616146 - Cache accessibility focus boundaries in java. r=Jamie
This allows `performAction` to immediately return false if a boundary is
reached and allow TalkBack to navigate past the web view.

Change viewport cache listener to reorder since it should catch all tree
mutations in the document.

Differential Revision: https://phabricator.services.mozilla.com/D63117

--HG--
extra : moz-landing-system : lando
2020-02-18 21:09:06 +00:00
Eitan Isaacson 697e001179 Bug 1604103 - Instead of pruning links and headings use contentDescription. r=Jamie
Chrome prunes the subtrees of links and headings (with single text leaf
children) and we mimic this in Gecko. The problem is that sometimes a
heading can be a child of a link, and it would be impossible to reach
when navigating by headings.

The main reason we mimiced chrome is because we would getthe name of the
node and its subtree uttered, so you would hear the name of the node
twice. By using contentDescription we can suppress the subtree from
TalkBack's utterance and preserve the node's children for heading
navigation.

Differential Revision: https://phabricator.services.mozilla.com/D61766

--HG--
extra : moz-landing-system : lando
2020-02-06 04:11:47 +00:00
James Teh 29e4eb9ab1 Bug 1604101: Fix Android a11y text navigation between nodes. r=MarcoZ
Talkback users expect that when you navigate past the end of the text in a node, Talkback will move into the next node and navigate there.
However, even though text navigation is async (client performs an action on the focused accessible and then waits for a text traversal event), firing a traversal event with a different accessible from the focused accessible is not supported by Talkback.
Firing a11y focus on the new node (as we did previously) doesn't fix this, but instead causes the entire node to be reported, among other weird behaviour.

1. Don't fire a11y focus for text traversal.
    Aside from Talkback reporting the entire node, this was also confusing Talkback, causing it to try to navigate several times into the new node.
2. When navigating text, cache whether we're at either edge.
    We do this because we need to be able to synchronously query whether we're at the edge, but we do navigation async.
    Special handling is needed for words at the end because words don't include trailing space.
3. When performing a text navigation action, check if we're already at the edge using the cache described above.
    If we are, synchronously return false, as Talkback expects.
    Talkback will then move to the next/previous node itself and navigate the text there.

Differential Revision: https://phabricator.services.mozilla.com/D57926

--HG--
extra : moz-landing-system : lando
2019-12-20 12:02:17 +00:00
James Teh 437c05d961 Bug 1601537: Fix text navigation in text leaf Accessibles on Android. ?MarcoZ r=MarcoZ
For paragraphs, divs, spans, etc., a11y focus on Android goes to text leaf Accessibles, rather than to the HyperTextAccessible container.
This does make sense, as these containers frequently embed other content, so the text needs to be reachable as a separate item.
However, previously, performing text navigation on these text leaf Accessibles returned the HyperTextAccessible parent.
This isn't supported by Talkback, and even if it were, it causes other problems; e.g. a11y focus being lost if the user was focused on a child other than the first child of such a container.
Therefore, if text navigation was performed on a text leaf Accessible, we now return a result within the text leaf Accessible if possible, rather than the HyperTextAccessible.

1. Make AccessibleWrap::GetTextContents support text leaf Accessibles (for both local and remote proxied Accessibles).
    This is used when providing text for text traversal events.

2. When navigating text on Android, we use Pivot::Next/PrevText.
    However, this will always return a HyperTextAccessible, even when starting on a text leaf.
    Therefore, if the result from Pivot::Next/prevText resides entirely within the same text leaf, translate the offsets from the HyperTextAccessible so they're relative to the text leaf and return the text leaf.

3. Pivot::Next/PrevText already supported starting from a text leaf Accessible.
    However, they ignored the offsets, which meant that navigating from a text leaf would always navigate to the start/end of the text leaf.
    Now, if a text leaf is passed to Pivot::Next/PrevText, the offsets (if specified) are translated to the HyperTextAccessible parent first.

4. Adjust the existing character/word/line tests so they ensure that navigation returns the node that has a11y focus; i.e. the text leaf.

Differential Revision: https://phabricator.services.mozilla.com/D57269

--HG--
extra : moz-landing-system : lando
2019-12-16 06:25:54 +00:00
Emilio Cobos Álvarez 3c12d374bc Bug 1600362 - Cleanup IntersectionObserver. r=smaug
Initially this was going to be a simple cleanup: Remove some useless namespaces
here and there and so on, remove `using` statements from the header and so on.

But unfortunately, DOMIntersectionObserver.h (which is included in Element.h,
unnecessarily) ended up exposing `Element` unnamespaced to a lot of code, so I
had to fix that.

Differential Revision: https://phabricator.services.mozilla.com/D55316

--HG--
extra : moz-landing-system : lando
2019-11-29 20:39:36 +00:00
James Teh 4cfde48bec Bug 1566878: Android a11y: Don't expose <a> elements with no href or onclick as links. r=MarcoZ
Gecko's link role is used even for <a> elements without href or onclick.
Actionable links are indicated using the linked state.
However, Android doesn't have a concept equivalent to the linked state.
Thus, on Android, we must not expose an element as a link at all if it does not have the linked state.

Differential Revision: https://phabricator.services.mozilla.com/D55207

--HG--
extra : moz-landing-system : lando
2019-11-29 05:47:12 +00:00
Andrew Creskey b491100580 Bug 1593104 - Fixes to issues encountered when building on Android with optimization r=Jamie
We noticed a handful of linker errors when building with other build optimization flags  -Os, -O2, and -O3 instead the default, -Oz.
(see Bug 1591725).
This change is intended to be 0-impact on functionality -- simply resolving the linker errors.

Differential Revision: https://phabricator.services.mozilla.com/D51312

--HG--
extra : moz-landing-system : lando
2019-11-05 13:05:06 +00:00
Eitan Isaacson cff449b020 Bug 1564549 - Implement clipboard actions natively. r=geckoview-reviewers,yzen,snorp
Differential Revision: https://phabricator.services.mozilla.com/D45602

--HG--
extra : moz-landing-system : lando
2019-09-23 23:42:38 +00:00
Eitan Isaacson 967793da25 Bug 1564549 - Implement set selection natively. r=geckoview-reviewers,yzen,snorp
Differential Revision: https://phabricator.services.mozilla.com/D45601

--HG--
extra : moz-landing-system : lando
2019-09-23 23:42:40 +00:00
Eitan Isaacson 1bce54c7cc Bug 1564549 - Implement text navigation natively. r=geckoview-reviewers,Jamie,snorp
Differential Revision: https://phabricator.services.mozilla.com/D45600

--HG--
extra : moz-landing-system : lando
2019-09-23 23:42:47 +00:00
Eitan Isaacson 0f147877cd Bug 1564549 - Implement move and explore by touch natively. r=geckoview-reviewers,yzen,snorp
Differential Revision: https://phabricator.services.mozilla.com/D45599

--HG--
extra : moz-landing-system : lando
2019-09-23 23:42:49 +00:00
Noemi Erli ecdbbb2a1f Backed out 8 changesets (bug 1564549) for causing failures in browser_all_files_referenced.js CLOSED TREE
Backed out changeset a6b83802832c (bug 1564549)
Backed out changeset 7f38c6ddd009 (bug 1564549)
Backed out changeset 15a754fb192e (bug 1564549)
Backed out changeset 34441585469f (bug 1564549)
Backed out changeset aada27f6ad6e (bug 1564549)
Backed out changeset 103dbf465704 (bug 1564549)
Backed out changeset c38e72058869 (bug 1564549)
Backed out changeset aca91e9add16 (bug 1564549)
2019-09-24 02:38:39 +03:00
Eitan Isaacson 11dd6681cd Bug 1564549 - Implement clipboard actions natively. r=geckoview-reviewers,yzen,snorp
Differential Revision: https://phabricator.services.mozilla.com/D45602

--HG--
extra : moz-landing-system : lando
2019-09-23 21:07:08 +00:00
Eitan Isaacson ef8c8bacd2 Bug 1564549 - Implement set selection natively. r=geckoview-reviewers,yzen,snorp
Differential Revision: https://phabricator.services.mozilla.com/D45601

--HG--
extra : moz-landing-system : lando
2019-09-23 21:07:02 +00:00
Eitan Isaacson ac01020042 Bug 1564549 - Implement text navigation natively. r=geckoview-reviewers,Jamie,snorp
Differential Revision: https://phabricator.services.mozilla.com/D45600

--HG--
extra : moz-landing-system : lando
2019-09-23 21:06:58 +00:00
Eitan Isaacson 85d6a5f093 Bug 1564549 - Implement move and explore by touch natively. r=geckoview-reviewers,yzen,snorp
Differential Revision: https://phabricator.services.mozilla.com/D45599

--HG--
extra : moz-landing-system : lando
2019-09-23 21:06:51 +00:00
Eitan Isaacson 1a3b5051f6 Bug 1576549 - Use bounds in bundle argument instead of getter method. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D44041

--HG--
extra : moz-landing-system : lando
2019-08-30 01:29:31 +00:00
Eitan Isaacson 3194a92923 Bug 1572256 - Clear virtual cursor position when focus clear action is invoked. r=geckoview-reviewers,Jamie,snorp
Differential Revision: https://phabricator.services.mozilla.com/D41114

--HG--
extra : moz-landing-system : lando
2019-08-09 00:07:21 +00:00
Boris Zbarsky 9de72a3ac6 Bug 1557793 part 2. Stop using [array] in nsIStringBundle. r=Pike
Differential Revision: https://phabricator.services.mozilla.com/D34196

--HG--
extra : moz-landing-system : lando
2019-06-11 15:51:51 +00:00
J.C. Jones cad430cae6 Bug 1391438 - Move GECKOBUNDLE macros into their own header r=snorp
The GECKOBUNDLE macros are useful to more than just a11y code, so let's move them into the jni package so that all jni consumers may drink of their sweet nectar.

Differential Revision: https://phabricator.services.mozilla.com/D30585

--HG--
extra : moz-landing-system : lando
2019-05-10 17:59:46 +00:00
Masayuki Nakano 09fd54444c Bug 1543013 - part 1: Mark some methods of nsCoreUtils as MOZ_CAN_RUN_SCRIPT r=Jamie
This patch marks some methods of nsCoreUtils which are found at writing the
following patches, as `MOZ_CAN_RUN_SCRIPT`.

Due to bug 1543294, some of them are marked as `MOZ_CAN_RUN_SCRIPT_BOUNDARY`
because `MOZ_CAN_RUN_SCRIPT` requires to change base class, but that's
other licenses header or used in our code too many places.

Differential Revision: https://phabricator.services.mozilla.com/D26926

--HG--
extra : moz-landing-system : lando
2019-04-13 12:13:13 +00:00
Eitan Isaacson c35dbb6950 Bug 1479042 - Handle text insertion and name change events as live regions and announce. r=yzen
Differential Revision: https://phabricator.services.mozilla.com/D21612

--HG--
extra : moz-landing-system : lando
2019-03-15 23:10:42 +00:00
Eitan Isaacson 6d8e53ccd1 Bug 1479042 - Add Android announcement event plumbing. r=yzen
Depends on D21610

Differential Revision: https://phabricator.services.mozilla.com/D21611

--HG--
extra : moz-landing-system : lando
2019-03-05 19:36:05 +00:00
Eitan Isaacson 50711a42d5 Bug 1531579 - Refresh viewport cache on tree mutations and fire android event. r=yzen
Differential Revision: https://phabricator.services.mozilla.com/D21610

--HG--
extra : moz-landing-system : lando
2019-03-12 21:58:37 +00:00
Dorel Luca df51e27b6a Backed out changeset 583048926c12 (bug 1531579) for Geckoview failure. CLOSED TREE 2019-03-12 01:38:46 +02:00
Eitan Isaacson adcc1ec434 Bug 1531579 - Refresh viewport cache on tree mutations and fire android event. r=yzen
Differential Revision: https://phabricator.services.mozilla.com/D21610

--HG--
extra : moz-landing-system : lando
2019-03-05 19:28:41 +00:00
Eitan Isaacson bf64f6d78e Bug 1525470 - Include description in accessible hints. r=yzen
Differential Revision: https://phabricator.services.mozilla.com/D19870

--HG--
extra : moz-landing-system : lando
2019-02-21 17:45:17 +00:00
Dorel Luca 0c4863aaf0 Backed out changeset ac4f1b5527fd (bug 1525470) for failures in geckoview in org.mozilla.geckoview.test.AccessibilityTest.testCheckbox. CLOSED TREE 2019-02-20 02:53:14 +02:00
Eitan Isaacson 2ba937125b Bug 1525470 - Include description in accessible hints. r=yzen
Differential Revision: https://phabricator.services.mozilla.com/D19870

--HG--
extra : moz-landing-system : lando
2019-02-19 18:56:30 +00:00
Eitan Isaacson e63779903d Bug 1520611 - Prune children in Android. r=yzen
Differential Revision: https://phabricator.services.mozilla.com/D16743

--HG--
extra : moz-landing-system : lando
2019-01-24 00:23:45 +00:00
Dorel Luca 207c24c7d2 Backed out 3 changesets (bug 1520611) for Android gv-junit failures in org.mozilla.geckoview.test.AccessibilityTest.testTree
Backed out changeset 0a48519a9ad1 (bug 1520611)
Backed out changeset 1fea939a7e7c (bug 1520611)
Backed out changeset c9e244ccc88d (bug 1520611)

--HG--
extra : rebase_source : 448bfe14fbb8741251064da295e036a93a376145
2019-01-23 12:09:29 +02:00
Eitan Isaacson 8bcf525c5a Bug 1520611 - Prune children in Android. r=yzen
Differential Revision: https://phabricator.services.mozilla.com/D16743

--HG--
extra : moz-landing-system : lando
2019-01-22 19:49:05 +00:00
Eitan Isaacson ce8d13e455 Bug 1518247 - Pass name in viewport cache. r=yzen
Differential Revision: https://phabricator.services.mozilla.com/D15857

--HG--
extra : moz-landing-system : lando
2019-01-14 20:04:58 +00:00
Eitan Isaacson e027ad57e6 Bug 1507713 - Provide heading level in roleDescription. r=yzen
Differential Revision: https://phabricator.services.mozilla.com/D13504

--HG--
extra : moz-landing-system : lando
2018-12-05 20:13:07 +00:00
Eitan Isaacson 2cd7977288 Bug 1510794 - Implement AccessibilityNodeInfo.ACTION_CLICK natively. r=yzen
Differential Revision: https://phabricator.services.mozilla.com/D13321

--HG--
extra : moz-landing-system : lando
2018-12-05 16:08:01 +00:00
Eitan Isaacson 8e0b1240c1 Bug 1510791 - Add action count to BatchData and set isClickable correctly in Android. r=yzen
Differential Revision: https://phabricator.services.mozilla.com/D13320

--HG--
extra : moz-landing-system : lando
2018-12-05 15:37:24 +00:00
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Eitan Isaacson 30fe7d0849 Bug 1509111 - Populate viewIdResourceName correctly. r=yzen
Differential Revision: https://phabricator.services.mozilla.com/D12583

--HG--
extra : moz-landing-system : lando
2018-11-21 21:07:20 +00:00
Eitan Isaacson 413fe38c65 Bug 1479039 - Update SessionAccessibility cache and state from events. r=snorp,yzen
Differential Revision: https://phabricator.services.mozilla.com/D11217

--HG--
extra : moz-landing-system : lando
2018-11-12 16:42:37 +00:00
Eitan Isaacson 970933ad81 Bug 1479039 - Extend BatchData struct and added focus path cache. r=yzen
Differential Revision: https://phabricator.services.mozilla.com/D11214

--HG--
extra : moz-landing-system : lando
2018-11-12 16:41:38 +00:00
Eitan Isaacson 5b5349d41f Bug 1479039 - Refactor ToBundle to have a multiple argument version. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D11213

--HG--
extra : moz-landing-system : lando
2018-11-12 16:41:33 +00:00
Eitan Isaacson 7befdbc6f7 Bug 1502187 - Implement native part of viewport caching. r=Jamie
Depends on D9865

Differential Revision: https://phabricator.services.mozilla.com/D9866

--HG--
extra : moz-landing-system : lando
2018-11-06 04:35:51 +00:00
Eitan Isaacson 72450b73d0 Bug 1501496 - Don't send accessible GeckoBundle in sendEvent, class names is enough. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D9689

--HG--
extra : moz-landing-system : lando
2018-10-25 21:49:28 +00:00
Eitan Isaacson 0716f068cd Bug 1499209 - Send abbreviated source bundles with accessibility events. r=Jamie
Depends on D8778

Differential Revision: https://phabricator.services.mozilla.com/D8779

--HG--
extra : moz-landing-system : lando
2018-10-22 18:15:34 +00:00
Eitan Isaacson 41167ad214 Bug 1499209 - Refactor AccessibleWrap::ToBundle 1/2. r=Jamie
This refactor does a few things:
1. Unifies the composition of the GeckoBundle, so that some tricky edge
cases don't need to be implemented twice.
2. Allows us to be more frugal with round trip sync ipc calls. Instead
of retrieving everything from the start, only progressivley retrieve
what we need.
3. Sets the groundwork for the next patch that will return from this
function earlier with a smaller bundle.

Differential Revision: https://phabricator.services.mozilla.com/D8778

--HG--
extra : moz-landing-system : lando
2018-10-22 18:15:27 +00:00
Gurzau Raul 0468dba8b1 Backed out 2 changesets (bug 1499209) for Accessibility crashes [@ mozilla::a11y::Accessible::Proxy() const] on a CLOSED TREE
Backed out changeset c8d88737a20e (bug 1499209)
Backed out changeset 6a22bf58801f (bug 1499209)
2018-10-20 04:22:52 +03:00
Eitan Isaacson 45919aed72 Bug 1499209 - Send abbreviated source bundles with accessibility events. r=Jamie
Depends on D8778

Differential Revision: https://phabricator.services.mozilla.com/D8779

--HG--
extra : moz-landing-system : lando
2018-10-19 23:26:10 +00:00
Eitan Isaacson af39427a8f Bug 1499209 - Refactor AccessibleWrap::ToBundle 1/2. r=Jamie
This refactor does a few things:
1. Unifies the composition of the GeckoBundle, so that some tricky edge
cases don't need to be implemented twice.
2. Allows us to be more frugal with round trip sync ipc calls. Instead
of retrieving everything from the start, only progressivley retrieve
what we need.
3. Sets the groundwork for the next patch that will return from this
function earlier with a smaller bundle.

Differential Revision: https://phabricator.services.mozilla.com/D8778

--HG--
extra : moz-landing-system : lando
2018-10-19 23:26:02 +00:00