mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-09 03:15:11 +00:00
Bug 1538794, add AnonymousContent.getTargetIdForEvent to be able to detect the event target in anonymous content, r=baku
Differential Revision: https://phabricator.services.mozilla.com//D24955 --HG-- extra : rebase_source : 85fd7443f018b0733826f316e3d79eaa93bac02d extra : amend_source : c330a92b8c237c6464afb279ef9ffe69e4ce3baa
This commit is contained in:
parent
44a2124609
commit
ab42137d71
@ -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
|
||||
|
@ -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;
|
||||
|
@ -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);
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user