Merge inbound to mozilla-central. a=merge

This commit is contained in:
Brindusan Cristian 2019-04-02 18:47:16 +03:00
commit b2cbe5adc9
3 changed files with 20 additions and 0 deletions

View File

@ -197,5 +197,16 @@ void AnonymousContent::GetComputedStylePropertyValue(
aRv = cs->GetPropertyValue(aPropertyName, aResult);
}
void AnonymousContent::GetTargetIdForEvent(Event& aEvent, DOMString& aResult)
{
nsCOMPtr<Element> el = do_QueryInterface(aEvent.GetOriginalTarget());
if (el && el->IsInNativeAnonymousSubtree() && mContentNode->Contains(el)) {
aResult.SetKnownLiveAtom(el->GetID(), DOMString::eTreatNullAsNull);
return;
}
aResult.SetNull();
}
} // namespace dom
} // namespace mozilla

View File

@ -8,6 +8,7 @@
#define mozilla_dom_AnonymousContent_h
#include "mozilla/dom/Element.h"
#include "mozilla/dom/Event.h"
#include "nsCycleCollectionParticipant.h"
#include "nsICSSDeclaration.h"
#include "mozilla/dom/Document.h"
@ -68,6 +69,8 @@ class AnonymousContent final {
const nsAString& aPropertyName,
DOMString& aResult, ErrorResult& aRv);
void GetTargetIdForEvent(Event& aEvent, DOMString& aResult);
private:
~AnonymousContent();
RefPtr<Element> mContentNode;

View File

@ -85,4 +85,10 @@ interface AnonymousContent {
[Throws]
DOMString? getComputedStylePropertyValue(DOMString elementId,
DOMString propertyName);
/**
* If event's original target is in the anonymous content, this returns the id
* attribute value of the target.
*/
DOMString? getTargetIdForEvent(Event event);
};