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

172 Коммитов

Автор SHA1 Сообщение Дата
James Teh c604c6018c Bug 1616078: Don't use HTMLListBulletAccessible for CSS ::marker content. r=eeejay,emilio,MarcoZ
::marker content gets handled like text from any other CSS pseudo-class.
Therefore, using HTMLListBulletAccessible ends up duplicating the content already exposed in the a11y tree.
Now, we only use HTMLListBulletAccessible for nsBulletFrames instead of all marker frames.

As part of this, remove nsContainerFrame::GetSpokenMarkerContent, since we no longer need it to retrieve ::marker content.
The bulk of its other work was done by nsBulletFrame::GetSpokenContent, which we now call directly.
It also handled producing a default bullet character for list-style-image, but it makes sense for this to live in the a11y code.

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

--HG--
extra : moz-landing-system : lando
2020-02-21 01:23:37 +00:00
Mirko Brodesser f170973369 Bug 1615581: part 1) Rename `TableSelection` to `TableSelectionMode`. r=jfkthame
See part 2) why this is necessary.

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

--HG--
extra : moz-landing-system : lando
2020-02-18 12:28:45 +00:00
Eitan Isaacson 1fedcb34de Bug 1615502 - Support list items with display:contents. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D62947

--HG--
extra : moz-landing-system : lando
2020-02-14 21:14:02 +00:00
Eitan Isaacson 809ed89d61 Bug 895323 - Don't create bullet accessible when list style is none. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D62537

--HG--
extra : moz-landing-system : lando
2020-02-12 06:25:29 +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
Eitan Isaacson c676e8c521 Bug 1597916 - Allow frameless containers when dispatching text removed events. r=Jamie
This reverts the change I made in bug 1572811, and instead fixes a much
more narrow case when the inner table frame is mid-construction.

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

--HG--
extra : moz-landing-system : lando
2020-01-13 01:02:51 +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
Masayuki Nakano eea1784f2d 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-24 05:38:02 +00:00
James Teh a984f604fe Bug 1587557: When activating an HTML text field via a11y APIs, if it already has focus, simulate a click. r=MarcoZ
Previously, HTMLTextFieldAccessible::DoAction just called TakeFocus().
When the field already has focus, TakeFocus() will do nothing.
However, the user might be activating this element because they dismissed a touch keyboard and want to bring it back.
Therefore, we must simulate a click so Gecko will bring up the keyboard.

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

--HG--
extra : moz-landing-system : lando
2019-11-21 10:42:36 +00:00
Emilio Cobos Álvarez 96429549f0 Bug 1596768 - Remove GetBindingParent() in HTMLFormControlAccessible. r=surkov
This code doesn't want to deal with Shadow DOM but with <input type=number> and
such native-anonymous inputs. So do that explicitly.

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

--HG--
extra : moz-landing-system : lando
2019-11-16 10:15:26 +00:00
Tim Nguyen 9d40766fe5 Bug 1596193 - Replace outdated references to XUL textbox. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D53177

--HG--
extra : moz-landing-system : lando
2019-11-15 13:35:14 +00:00
Sylvestre Ledru f12b9fa5c3 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-10-06 18:29:55 +00:00
Tim Nguyen b0d1ddb586 Bug 1581956 - Make search-textbox not use the <textbox> tag. r=surkov,MarcoZ
Differential Revision: https://phabricator.services.mozilla.com/D46219

--HG--
extra : moz-landing-system : lando
2019-09-25 19:12:48 +00:00
James Teh 79314daf0b Bug 1316965: Give file inputs an a11y role of GROUPING so screen readers report their label when focus enters them. r=MarcoZ
Differential Revision: https://phabricator.services.mozilla.com/D46375

--HG--
extra : moz-landing-system : lando
2019-09-19 04:39:21 +00:00
James Teh 90f724704e Bug 1582323: When a file input has DOM focus, focus the browse button inside it for a11y. r=MarcoZ
Differential Revision: https://phabricator.services.mozilla.com/D46386

--HG--
extra : moz-landing-system : lando
2019-09-19 04:34:29 +00:00
Eitan Isaacson 4b3b42e7be Bug 1578416 - Don't allow children of list item to move before bullet. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D45578

--HG--
extra : moz-landing-system : lando
2019-09-12 01:00:15 +00:00
Morgan Reschenberg 6867a0ceea Bug 1580583: Remove faulty assert; not all details items have summaries r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D45742

--HG--
extra : moz-landing-system : lando
2019-09-16 20:18:52 +00:00
Morgan Reschenberg 107633cba4 Bug 1277201: Fire a STATE_CHANGE event when a details element is opened or closed. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D44872

--HG--
extra : moz-landing-system : lando
2019-09-10 16:16:53 +00:00
Mike Hommey 66d7fe943e Bug 1575420 - Replace MOZ_WIDGET_TOOLKIT value of "gtk3" with "gtk". r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D42765

--HG--
extra : moz-landing-system : lando
2019-08-21 12:25:42 +00:00
Mats Palmgren a74c7c2d43 Bug 1574123 - Use nsLayoutUtils::GetMarkerFrame() more to avoid manual null-checks. r=emilio
(This basically addresses the review comments that I missed in
bug 1105868 part 4. My bad.)

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

--HG--
extra : moz-landing-system : lando
2019-08-15 14:23:37 +00:00
Mats Palmgren 53321dfa54 Bug 1105868 part 4 - Accessibility support for inline list-items. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D39833

--HG--
extra : moz-landing-system : lando
2019-08-14 14:37:16 +00:00
Marco Zehe d30cbb2973 Bug 1573750 - If header or footer elements are descendants of the main element, do not expose them as landmarks, r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D41893

--HG--
extra : moz-landing-system : lando
2019-08-14 06:10:24 +00:00
Marco Zehe b999f08200 Bug 1568360 - Don't calculate the accessible names for table or grid rows unless they have an explicit ARIA role, r=Jamie
Previously, we would always calculate the name for tr elements from their descendants unconditionally. Assistive technologies aren't using this information, moreover, it causes problems if the name gets too long, for example in layout tables.

We now only calculate the name if the tr element has an explicit ARIA role.

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

--HG--
extra : moz-landing-system : lando
2019-07-26 09:14:55 +00:00
Sylvestre Ledru d57d4905f1 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-05-25 17:46:15 +00:00
arthur.iakab af8e458c5f Backed out changeset a296439a25ff (bug 1519636) for frequent Windows cppunit failures CLOSED TREE 2019-05-24 14:26:01 +03:00
Sylvestre Ledru c82ea97226 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-05-24 09:59:17 +00:00
Eitan Isaacson cf9dd32a8b Bug 1380905 - Allow HTMLComboboxAccessible to be shut down twice. r=Jamie
Accessibles can be shut down twice. For example, their doc might shut
them down in its own ShutDown, while a reference is still being held by
a dispatched event. When the event goes away, or the cycle collector
kicks in, the accessible may be finally released and shut down again via
LastRelease.

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

--HG--
extra : moz-landing-system : lando
2019-05-22 04:50:31 +00:00
Alexander Surkov d2bee9f0fe Bug 1521280 - support XUL textboxes implemented as Custom Elements using HTML:input in explicit content r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D29874

--HG--
extra : moz-landing-system : lando
2019-05-08 13:43:58 +00:00
Masayuki Nakano d8d0bcab65 Bug 1543013 - part 2: Make accessible use mozilla::PresShell directly rather than via nsIPresShell r=Jamie
This patch makes accessible module use `mozilla::PresShell` directly rather
than via `nsIPresShell`.  Additionally, renames `DocAccessible::PresShell()`
to `DocAccessible::PresShellPtr()` for avoiding conflict with using
`PresShell` in it and its sub classes.

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

--HG--
extra : moz-landing-system : lando
2019-04-13 12:13:15 +00:00
Masayuki Nakano 5e41233499 Bug 1540990 - Get rid of unnecessary nsIPresShell.h inclusions r=emilio
A lot of files include `nsIPresShell.h` even though currently they don't
need it.  This patch removes the unnecessary inclusions.

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

--HG--
extra : moz-landing-system : lando
2019-04-04 00:19:48 +00:00
Razvan Maries 1cd564b971 Backed out changeset 3b94c20ba873 (bug 1540990) for build bustages. CLOSED TREE 2019-04-04 02:44:00 +03:00
Masayuki Nakano b2bba953cc Bug 1540990 - Get rid of unnecessary nsIPresShell.h inclusions r=emilio
A lot of files include `nsIPresShell.h` even though currently they don't
need it.  This patch removes the unnecessary inclusions.

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

--HG--
extra : moz-landing-system : lando
2019-04-03 23:29:38 +00:00
Mats Palmgren be049c79d6 Bug 205202 part 4 - [css-lists][css-pseudo] Rename various uses of bullet with marker to avoid any misleading association with nsBulletFrame (idempotent patch). r=emilio 2019-03-24 23:13:53 +01:00
Marco Zehe 7f72d56975 Bug 1303429 - expose placeholder object attribute for HTML placeholder, r=Jamie
The appropriate case is when placeholder is not used as the absolutely last fallback for the accessible name, and the input is not labeled by the same text as in the placeholder attribute itself. So a label and the placeholder text must be different for the object attribute to be exposed.

In addition, for ATK, placeholder is being renamed to placeholder-text to comply with the platform specification.

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

--HG--
extra : moz-landing-system : lando
2019-02-18 09:21:32 +00:00
Emilio Cobos Álvarez d2ed260822 Bug 1517241 - Rename nsIDocument to mozilla::dom::Document. r=smaug
Summary: Really sorry for the size of the patch. It's mostly automatic
s/nsIDocument/Document/ but I had to fix up in a bunch of places manually to
add the right namespacing and such.

Overall it's not a very interesting patch I think.

nsDocument.cpp turns into Document.cpp, nsIDocument.h into Document.h and
nsIDocumentInlines.h into DocumentInlines.h.

I also changed a bunch of nsCOMPtr usage to RefPtr, but not all of it.

While fixing up some of the bits I also removed some unneeded OwnerDoc() null
checks and such, but I didn't do anything riskier than that.
2019-01-03 17:48:33 +01: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
Paolo Amadini b2a83ffc85 Bug 1499947 - Part 1 - Remove XULProgressMeterAccessible and its base template class. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D12144

--HG--
extra : rebase_source : 81275b233770a7e9716a2b811a08060fc5006e1b
2018-11-20 14:10:38 +00:00
Marco Zehe a7b776042d Bug 1501273 - Expose an html:form element as a landmark role if it has an accessible name, r=Jamie
If html:form has a name given via ARIA, expose it as a landmark to platform APIS that require it. At the time of this submission, this is the case for ATK.

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

--HG--
extra : moz-landing-system : lando
2018-11-02 01:06:56 +00:00
Alexander Surkov 4536232292 Bug 1052866 - Expose IAccessibleText on tables, rows, etc., r=tbsaunde. Bustage fix by MarcoZ. 2018-10-26 11:07:27 +02:00
Brindusan Cristian a663055a3b Backed out changeset a69a426bdb14 (bug 1052866) for mochitest failures on test_selection.html. CLOSED TREE 2018-10-26 11:51:22 +03:00
Alexander Surkov cda4486cbb Bug 1052866 - Expose IAccessibleText on tables, rows, etc., r=tbsaunde
--HG--
extra : rebase_source : 993e03d0f304a02654e11d1c3d7c9abfd85da273
2018-10-26 09:54:20 +02:00
Marco Zehe d66ed81dfa Bug 1501595 - Return the correct region-specific role for named html:section elements, r=Jamie
Bug 1210630 introduced a mapping of the html:section element to roles::LANDMARK, however roles::REGION is more appropriate since that is also used by the WAI-ARIA role mapping and contains specific mappings for regions, e. g. on Mac.

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

--HG--
extra : moz-landing-system : lando
2018-10-25 01:41:15 +00:00
Marco Zehe c5581dfc0f Bug 1210630 - Section elements with accessible names should be mapped the same as ARIA role region, r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D9480

--HG--
extra : moz-landing-system : lando
2018-10-24 05:34:22 +00:00
Marco Zehe f1a7d75388 Bug 614572 - Expose the correct new landmark role for HTML aside, header, footer, main and nav elements, r=Jamie
According to the HTML Accessibility API mappings spec, aside, footer, header, main and nav elements should be mapped to the WAI-ARIA landmark role exposure. For footer and header, this is only true if scoped to the body element.

This patch changes the exposed roles to the new landmark mapping for the various platforms.

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

--HG--
extra : moz-landing-system : lando
2018-10-23 06:11:59 +00:00
Marco Zehe c90a496216 Bug 1492393 - Make our table index methods aware of cells spanning multiple columns, r=surkov
Sometimes, when cells have display:block, and a different cell in the same row has a column span, our index methods did not take these into account. Also, when regular tables encounter such a cell, index calculation failed.

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

--HG--
extra : moz-landing-system : lando
2018-10-19 08:18:04 +00:00
Narcis Beleuzu b9b1c8ff17 Merge inbound to mozilla-central. a=merge 2018-10-04 18:48:04 +03:00