NS_IMETHODIMP EventListenerService::AddListenerForAllEvents(nsIDOMEventTarget* aTarget, nsIDOMEventListener* aListener, bool aUseCapture, bool aWantsUntrusted, bool aSystemEventGroup) { NS_ENSURE_STATE(aTarget && aListener); nsCOMPtr<EventTarget> eventTarget = do_QueryInterface(aTarget); NS_ENSURE_TRUE(eventTarget, NS_ERROR_NO_INTERFACE); EventListenerManager* manager = eventTarget->GetOrCreateListenerManager(); NS_ENSURE_STATE(manager); manager->AddListenerForAllEvents(aListener, aUseCapture, aWantsUntrusted, aSystemEventGroup); return NS_OK; }
NS_IMETHODIMP EventListenerService::AddListenerForAllEvents(EventTarget* aTarget, JS::Handle<JS::Value> aListener, bool aUseCapture, bool aWantsUntrusted, bool aSystemEventGroup, JSContext* aCx) { NS_ENSURE_STATE(aTarget); RefPtr<EventListener> listener = ToEventListener(aCx, aListener); if (!listener) { return NS_ERROR_UNEXPECTED; } EventListenerManager* manager = aTarget->GetOrCreateListenerManager(); NS_ENSURE_STATE(manager); manager->AddListenerForAllEvents(listener, aUseCapture, aWantsUntrusted, aSystemEventGroup); return NS_OK; }