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
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
This makes Gecko conform to the newly documented expected behavior of ATK.
MozReview-Commit-ID: K9sRUDqeLq4
Differential Revision: https://phabricator.services.mozilla.com/D22550
--HG--
extra : moz-landing-system : lando
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
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.
This is a best effort attempt at ensuring that the adverse impact of
reformatting the entire tree over the comments would be minimal. I've used a
combination of strategies including disabling of formatting, some manual
formatting and some changes to formatting to work around some clang-format
limitations.
Differential Revision: https://phabricator.services.mozilla.com/D13046
--HG--
extra : moz-landing-system : lando
Create states::CURRENT and add it to the list of "universal" (global)
ARIA states. Map states::CURRENT to ATK_STATE_ACTIVE and emit accessible
state-change notifications when the value of aria-current is modified.
Move the object attribute exposure of states::HASPOPUP from the ATK wrapper
code to the shared accessibility code. Call UniversalStatesFor() rather than
State() for performance.
--HG--
extra : rebase_source : e31c2d00da302538a7f6962d8f4dfd148a7d877e
Change the mapping of states::HASPOPUP from kNone to ATK_STATE_HAS_POPUP.
No new test added because there is not yet support for testing platform
accessibility API mappings via mochitest.
--HG--
extra : rebase_source : bdf50704fa23db29ec5d5b3cdc0b51c8e6466215
Use strcmp() instead of strncmp() when comparing the AtkObject name
before changing it. 9133117f410c06ad7fa25323a168bc97200043b9 changed
from Equals() to strncmp() to prevent issues related to embedded NUL
bytes, but the change lead to only checking if the AtkObject name has
the new value as prefix. Instead, use strcmp() to check the whole
C strings, but still stopping at the first NUL byte in the new name.
strcmp() has to be safe here, as NS_ConvertUTF16toUTF8::get() has to
return a NUL-terminated string or the code would crash a few lines
below when calling strdup() on it.