☠☠ backed out by b3b9d24cdb97 ☠ ☠ | |
author | Trevor Saunders <tbsaunde@tbsaunde.org> |
Mon, 05 Sep 2016 22:53:08 -0400 | |
changeset 322842 | 8e5f19f19b7f51090ba93d21bae1210f89ba5497 |
parent 322841 | 0e27121698e4290495ce00e04b2778d2856c62a1 |
child 322843 | 4c58195d6bcf62a04f8f23b5c199b33db05808e7 |
push id | 83989 |
push user | tsaunders@mozilla.com |
push date | Wed, 16 Nov 2016 23:06:07 +0000 |
treeherder | mozilla-inbound@916cbaf21a63 [default view] [failures only] |
perfherder | [talos] [build metrics] [platform microbench] (compared to previous push) |
reviewers | davidb |
bugs | 1270916 |
milestone | 53.0a1 |
first release with | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
last release without | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
accessible/generic/Accessible.cpp | file | annotate | diff | comparison | revisions | |
accessible/generic/Accessible.h | file | annotate | diff | comparison | revisions |
--- a/accessible/generic/Accessible.cpp +++ b/accessible/generic/Accessible.cpp @@ -104,17 +104,18 @@ NS_INTERFACE_MAP_END NS_IMPL_CYCLE_COLLECTING_ADDREF(Accessible) NS_IMPL_CYCLE_COLLECTING_RELEASE_WITH_DESTROY(Accessible, LastRelease()) Accessible::Accessible(nsIContent* aContent, DocAccessible* aDoc) : mContent(aContent), mDoc(aDoc), mParent(nullptr), mIndexInParent(-1), mRoleMapEntryIndex(aria::NO_ROLE_MAP_ENTRY_INDEX), - mStateFlags(0), mContextFlags(0), mType(0), mGenericTypes(0) + mStateFlags(0), mContextFlags(0), mType(0), mGenericTypes(0), + mReorderEventTarget(false), mShowEventTarget(false), mHideEventTarget(false) { mBits.groupInfo = nullptr; mInt.mIndexOfEmbeddedChild = -1; } Accessible::~Accessible() { NS_ASSERTION(!mDoc, "LastRelease was never called!?!");
--- a/accessible/generic/Accessible.h +++ b/accessible/generic/Accessible.h @@ -951,16 +951,46 @@ public: bool IsARIAHidden() const { return mContextFlags & eARIAHidden; } void SetARIAHidden(bool aIsDefined); /** * Return true if the element is inside an alert. */ bool IsInsideAlert() const { return mContextFlags & eInsideAlert; } + /** + * Return true if there is a pending reorder event for this accessible. + */ + bool ReorderEventTarget() const { return mReorderEventTarget; } + + /** + * Return true if there is a pending show event for this accessible. + */ + bool ShowEventTarget() const { return mShowEventTarget; } + + /** + * Return true if there is a pending hide event for this accessible. + */ + bool HideEventTarget() const { return mHideEventTarget; } + + /** + * Set if there is a pending reorder event for this accessible. + */ + void SetReorderEventTarget(bool aTarget) { mReorderEventTarget = aTarget; } + + /** + * Set if this accessible is a show event target. + */ + void SetShowEventTarget(bool aTarget) { mShowEventTarget = aTarget; } + + /** + * Set if this accessible is a hide event target. + */ + void SetHideEventTarget(bool aTarget) { mHideEventTarget = aTarget; } + protected: virtual ~Accessible(); /** * Return the accessible name provided by native markup. It doesn't take * into account ARIA markup used to specify the name. */ virtual mozilla::a11y::ENameValueFlag NativeName(nsString& aName); @@ -1127,16 +1157,19 @@ protected: /** * Keep in sync with StateFlags, ContextFlags, and AccTypes. */ uint32_t mStateFlags : kStateFlagsBits; uint32_t mContextFlags : kContextFlagsBits; uint32_t mType : kTypeBits; uint32_t mGenericTypes : kGenericTypesBits; + uint32_t mReorderEventTarget : 1; + uint32_t mShowEventTarget : 1; + uint32_t mHideEventTarget : 1; void StaticAsserts() const; #ifdef A11Y_LOG friend void logging::Tree(const char* aTitle, const char* aMsgText, Accessible* aRoot, logging::GetTreePrefix aPrefixFunc, void* aGetTreePrefixData);