Commit graph

93 commits

Author SHA1 Message Date
Andi-Bogdan Postelnicu
d7e8a09c21 Bug 1519636 - Reformat recent changes to the Google coding style. r=glandium
Updated with clang-format version 15.0.5 (taskcluster-MKK8dHUpQkGfPLA793lizg)
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D168658
2023-02-13 15:02:07 +00:00
Adam Vandolder
0be4513261 Bug 1665151 - Part 2: Expose custom element default accessibility attributes. r=edgar,Jamie,credential-management-reviewers,sgalich
Differential Revision: https://phabricator.services.mozilla.com/D159237
2022-11-02 14:50:56 +00:00
Morgan Rae Reschenberg
dbeec6c2f2 Bug 1787284: [Part 2] Cache name and create radio name pivot rule r=eeejay
Depends on D158892

Differential Revision: https://phabricator.services.mozilla.com/D159118
2022-10-27 20:32:18 +00:00
Csoregi Natalia
34701eeef7 Backed out 4 changesets (bug 1787284) for causing failures on browser_caching_relations.js. CLOSED TREE
Backed out changeset fe4a5fa0fa27 (bug 1787284)
Backed out changeset 54e0b1365f89 (bug 1787284)
Backed out changeset c6db418af190 (bug 1787284)
Backed out changeset fda6706bb580 (bug 1787284)
2022-10-21 02:43:42 +03:00
Morgan Rae Reschenberg
91b749da9e Bug 1787284: [Part 2] Cache name and create radio name pivot rule r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D159118
2022-10-20 21:40:06 +00:00
Mike Conley
90013f044d Bug 1779516 - Make sure input / change events fire for range elements when changing their value via the a11y API. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D151847
2022-07-25 16:38:31 +00:00
Emilio Cobos Álvarez
255763ef57 Bug 1773070 - Unify Gecko and Servo EventState/ElementState bits. r=smaug
Add a dom/base/rust crate called just "dom" where we can share these.

Most of the changes are automatic:

  s/mozilla::EventStates/mozilla::dom::ElementState/
  s/EventStates/ElementState/
  s/NS_EVENT_STATE_/ElementState::/
  s/NS_DOCUMENT_STATE_/DocumentState::/

And so on. This requires a new cbindgen version to avoid ugly casts for
large shifts.

Differential Revision: https://phabricator.services.mozilla.com/D148537
2022-06-07 23:09:52 +00:00
Eitan Isaacson
4fb238b0ec Bug 1755817 - Move LandmarkRole to Accessible. r=Jamie
Current mochitests should prove the soundness of this. The only thing
preventing this from becoming a non-virtual method is the reliance
on TagName which is only available when cached is enabled. When it
is disabled we need to fallback on the sync IPDL call.

Differential Revision: https://phabricator.services.mozilla.com/D138964
2022-02-18 18:21:01 +00:00
Eitan Isaacson
c61f9c123e Bug 1752380 - P1: Introduce HasPrimaryAction and remove redundant DoAction/ActionCount implementation. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D137200
2022-02-15 23:20:11 +00:00
Eitan Isaacson
df3b1159a6 Bug 1747835 - P2: Cache text-input-type attribute for text and date/time inputs. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D134759
2022-01-05 22:30:53 +00:00
Eitan Isaacson
af27cd475b Bug 1737944 - P7: Move and rename GetPositionAndSizeInternal to Accessible. r=Jamie
Now that the AccGroupInfo getter is in Accessible, the position and size
getter could go there too.

Differential Revision: https://phabricator.services.mozilla.com/D134210
2022-01-04 21:01:37 +00:00
Eitan Isaacson
254970745b Bug 1733248 - Fire state change events for autocomplete changes. r=morgan
Trickier than just listening for attributes on inputs since a form
can toggle autocomplete too.

Also fixed To32States to work on the 32nd bit.

Differential Revision: https://phabricator.services.mozilla.com/D128913
2021-10-21 22:47:43 +00:00
Eitan Isaacson
9ea8dc7379 Bug 1736115 - Remove HTMLTextFieldAccessible::BindingOrWidgetParent. r=Jamie
Also fix search-textbox's use of aria-autocomplete and a test.

Differential Revision: https://phabricator.services.mozilla.com/D128655
2021-10-21 22:47:43 +00:00
Eitan Isaacson
41ca3eadd8 Bug 1733223 - Fire READONLY state change when input gets readonly attribute. r=morgan
This patch also adds tests for other READONLY/EDITABLE state changes
that already work.

Differential Revision: https://phabricator.services.mozilla.com/D127165
2021-10-04 16:47:34 +00:00
Eitan Isaacson
130f52e318 Bug 1611062 - Remove unused eAutoComplete. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D127148
2021-10-04 16:30:45 +00:00
Eitan Isaacson
1de5b0abcd Bug 1731374 - Add string storage to AccAttributes with move semantics. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D126012
2021-09-28 22:01:35 +00:00
Andi-Bogdan Postelnicu
093ebdff41 Bug 1725145 - reference implementation of doc accessible. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D123527
2021-08-25 10:46:16 +00:00
Edgar Chen
3d5334b444 Bug 1726393 - Part 2: Rename nsIFormControl::GetFormElement to GetForm; r=smaug
Depends on D122995

Differential Revision: https://phabricator.services.mozilla.com/D122996
2021-08-19 09:20:24 +00:00
Eitan Isaacson
7255c6bf8e Bug 1723614 - P2: Robustify name change events and use events in name tests. r=Jamie
Changed the browser and mochitest name tests to rely exclusively on name change
events. To make this happen, I fixed all the cases where we were
event-deficient in the code:

* Examine target in PushNameOrDescriptionChange if it has eNameFromSubtreeRule.
  Fixes cases where a text change event happens with the subtree name root as target.
* Change in aria-labelledby should always result in a name change event because
  that attribute has highest prescedence.
* Add eHasNameDependent/eHasDescriptionDependent context flags when dependee accessible
  is added after dependent accessible to tree.
* Handle value attribute change in HTML buttons and determine if they should trigger a
  name changed event.
* Use accessible tree instead of content tree when calculating HTMLSelectOptionAccessible
  name, this keeps the PushNameOrDescriptionChange sees in name flags consistent with
  the actual tree.
* Handle label attribute change in select options and determine if they should trigger
  a name changed event.
* Determine if s summary attribute change on a table triggers a name change event.
* If a title attribute is changed, reliably fire a name change event if
  it is used in name calculation.

Differential Revision: https://phabricator.services.mozilla.com/D121580
2021-08-05 23:04:17 +00:00
Eitan Isaacson
caafeaea2a Bug 1723614 - P1: Override DOMAttributeChanged where it makes sense. r=Jamie
Added a MIXED state change event when progress goes from determinate to
undeterminate.

Differential Revision: https://phabricator.services.mozilla.com/D121579
2021-08-05 23:04:17 +00:00
Eitan Isaacson
62d0cdcad4 Bug 1714390 - P2: Use AccAttributes for accessible and text attributes. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D116783
2021-06-10 23:07:05 +00:00
Masayuki Nakano
4bc0632c23 Bug 1713758 - Make everyone outside editor module use EditorBase instead of TextEditor if the instance can be an HTMLEditor instance r=m_kato
Differential Revision: https://phabricator.services.mozilla.com/D117119
2021-06-09 23:51:37 +00:00
Eitan Isaacson
6e49732365 Bug 1693597 - P1: Rename Accessible to LocalAccessible. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D105670
2021-02-19 23:14:32 +00:00
Eitan Isaacson
f48f468cb7 Bug 1693607 - [Linux] Add braces around statements. r=morgan
This is a collaboration between clang-tidy and clang-format.

clang-tidy uses compiled code paths, so this patch is linux specific.

Differential Revision: https://phabricator.services.mozilla.com/D105669
2021-02-19 23:14:32 +00:00
Morgan Reschenberg
588e12696e Bug 1460378: Introduce meter role and HTMLMeterAccessible class. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D104759
2021-02-17 15:58:31 +00:00
Eitan Isaacson
8c842a59e3 Bug 1692523 - P1: Prefix local heirarchy functions with 'Local'. r=Jamie
Parent -> LocalParent
GetChildAt -> LocalChildAt
FirstChild -> LocalFirstChild
LastChild -> LocalLastChild
NextSibling -> LocalNextSibling
PrevSibling -> LocalPrevSibling

Differential Revision: https://phabricator.services.mozilla.com/D105034
2021-02-16 20:05:10 +00:00
Edgar Chen
07458c65e6 Bug 1670919 - Cleanup some code around nsIFormControl::GetFormElement; r=emilio
nsIFormControl::GetFormElement now returns HTMLFormElement*, we could remove
some type convertion.

Differential Revision: https://phabricator.services.mozilla.com/D93349
2020-10-13 15:15:57 +00:00
Simon Giesecke
cd8b8939b9 Bug 1648010 - Replace uses of NS_LITERAL_STRING/NS_LITERAL_CSTRING macros by _ns literals. r=geckoview-reviewers,jgilbert,agi,hsivonen,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80860
2020-07-01 08:29:29 +00:00
Morgan Reschenberg
d93dd3ccbb Bug 1624909: Create and maintain radio siblings array for position information. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D72751
2020-05-29 17:37:46 +00:00
Narcis Beleuzu
0bb36c9ac1 Backed out changeset d2b10235d8ac (bug 1624909) for bustages on Pivot.h . CLOSED TREE 2020-05-29 07:05:21 +03:00
Morgan Reschenberg
d013e0b775 Bug 1624909: Create and maintain radio siblings array for position information. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D72751
2020-05-28 15:53:01 +00:00
Razvan Maries
0b581d46a0 Backed out changeset 156d42f01488 (bug 1624909) for build bustages on Pivot.h. CLOSED TREE 2020-05-27 22:49:22 +03:00
Morgan Reschenberg
c29473e265 Bug 1624909: Create and maintain radio siblings array for position information. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D72751
2020-05-27 19:23:32 +00:00
Razvan Maries
e44db87b99 Backed out changeset b4c58d9afd4b (bug 1624909) for build bustages on Pivot.h. CLOSED TREE 2020-05-27 21:04:58 +03:00
Morgan Reschenberg
812a214eeb Bug 1624909: Create and maintain radio siblings array for position information. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D72751
2020-05-27 17:51:30 +00:00
Sylvestre Ledru
615c83d723 Bug 1519636 - Reformat recent changes to the Google coding style r=andi
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D76451
2020-05-25 07:42:38 +00:00
Bogdan Tara
6bd3bb7800 Backed out changeset d9a39c63e40e (bug 1624909) for Pivot.h related bustages CLOSED TREE 2020-05-22 02:58:12 +03:00
Morgan Reschenberg
7a58efe041 Bug 1624909: Create and maintain radio siblings array for position information. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D72751
2020-05-21 23:36:13 +00:00
James Teh
be8c555522 Bug 1409084: Map inputs with a list attribute to role EDITCOMBOBOX. r=eeejay
Previously, we mapped these to ENTRY.
This is incorrect according to the HTML AAM spec and causes problems for JAWS.

Differential Revision: https://phabricator.services.mozilla.com/D76066
2020-05-20 23:58:22 +00:00
Eitan Isaacson
d7324d465e Bug 1625870 - Support figure and figcaption is OSX. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D72509
2020-04-28 19:45:51 +00:00
Brindusan Cristian
ae12f8e207 Backed out changeset b9710246d416 (bug 1625870) for mochitest failures at test_figure.html. CLOSED TREE 2020-04-28 21:54:31 +03:00
Eitan Isaacson
b62ce6a55b Bug 1625870 - Support figure and figcaption is OSX. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D72509
2020-04-28 18:04:00 +00:00
Marco Zehe
834e69c0ae Bug 1624826 - Remove trailing whitespace from accessible name of fieldset element if provided by legend, r=eeejay
This was an oversight in the HTMLGroupBoxAccessible implementation of NativeName, others trim their whitespaces by default.

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

--HG--
extra : moz-landing-system : lando
2020-03-25 15:13:50 +00:00
Marco Zehe
2c553e7cf6 Bug 1371712 - Fall through to ARIA landmark role determination if native landmark roles fail, r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D65946

--HG--
extra : moz-landing-system : lando
2020-03-11 16:23:38 +00:00
Emilio Cobos Álvarez
fff6c9e1ac Bug 981248 - Rewrite <input type=number> to avoid an anonymous input. r=masayuki,surkov,jwatt,ntim,jfkthame,smaug
Instead, subclass nsTextControlFrame. This simplifies the code and avoids
correctness issues.

I kept the localization functionality though it is not spec compliant. But I
filed a bug to remove it in a followup.

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

--HG--
extra : moz-landing-system : lando
2020-01-14 19:01:05 +00:00
Mihai Alexandru Michis
0d01c60c37 Backed out 2 changesets (bug 981248) for causing multiple failures.
CLOSED TREE

Backed out changeset 7a96708cc8b7 (bug 981248)
Backed out changeset 1eace7bd28d9 (bug 981248)
2020-01-14 19:28:17 +02:00
Emilio Cobos Álvarez
da2e4ef888 Bug 981248 - Rewrite <input type=number> to avoid an anonymous input. r=masayuki,surkov,jwatt,ntim,jfkthame,smaug
Instead, subclass nsTextControlFrame. This simplifies the code and avoids
correctness issues.

I kept the localization functionality though it is not spec compliant. But I
filed a bug to remove it in a followup.

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

--HG--
extra : moz-landing-system : lando
2020-01-14 15:05:22 +00:00
Gabriele Svelto
69790bc62e Bug 1600545 - Remove useless inclusions of header files generated from IDL files in accessible/, browser/, caps/, chrome/, devtools/, docshell/, editor/, extensions/, gfx/, hal/, image/, intl/, ipc/, js/, layout/, and media/ r=Ehsan
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.

find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
    interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
    if [ -n "$interfaces" ]; then
        if [[ "$interfaces" == *$'\n'* ]]; then
          regexp="\("
          for i in $interfaces; do regexp="$regexp$i\|"; done
          regexp="${regexp%%\\\|}\)"
        else
          regexp="$interfaces"
        fi
        interface=$(basename "$path")
        rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
            hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
            if [ $hits -eq 0 ]; then
                echo "Removing ${interface} from ${path2}"
                grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
                mv -f "$path2".tmp "$path2"
            fi
        done
    fi
done

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

--HG--
extra : moz-landing-system : lando
2019-12-06 09:16:44 +00:00
Masayuki Nakano
20699e2189 Bug 1597679 - part 2: Make nsITextControlElement inherit nsGenericHTMLFormElementWithState r=smaug
Sub classes of `nsITextControlElement` are only `HTMLInputElement` and
`HTMLTextAreaElement`. And both base class is
`nsGenericHTMLFormElementWithState`.  Therefore, we can make
`nsITextControlElement` inherit `nsGenericHTMLFormElementWithState` and
make `HTMLInputElement` and `HTMLTextAreaElement` inherit
`nsITextControlElement`.  Then, we can get rid of a lot of QI between
`nsINode`/`nsIContent`/`Element` and `nsITextControlElement` (and note that
some of them in a hot path).

Additionally, this patch renames `nsITextControlElement` to
`mozilla::TextControlElement`.

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

--HG--
rename : dom/html/nsITextControlElement.h => dom/html/TextControlElement.h
extra : moz-landing-system : lando
2019-11-25 06:35:15 +00:00
Coroiu Cristina
84bf2b6d25 Backed out 3 changesets (bug 1597679) for Android debug build bustage at build/src/dom/base/nsContentAreaDragDrop.cpp
Backed out changeset 6a73b58e0db4 (bug 1597679)
Backed out changeset 90a172eff2de (bug 1597679)
Backed out changeset d4a156cf28ff (bug 1597679)

--HG--
rename : dom/html/TextControlElement.h => dom/html/nsITextControlElement.h
2019-11-24 09:02:53 +02:00