forked from mirrors/gecko-dev
Bug 1832515, remove unsused *PrivilegedClickListeners and mIsChrome, r=masayuki
Differential Revision: https://phabricator.services.mozilla.com/D177737
This commit is contained in:
parent
a97ea15efa
commit
f588c0a3e3
4 changed files with 1 additions and 61 deletions
|
|
@ -339,11 +339,6 @@ class EventTargetChainItem {
|
|||
NS_ASSERTION(aVisitor.mEvent->mCurrentTarget == nullptr,
|
||||
"CurrentTarget should be null!");
|
||||
|
||||
if (aVisitor.mEvent->mMessage == eMouseClick) {
|
||||
aVisitor.mEvent->mFlags.mHadNonPrivilegedClickListeners =
|
||||
aVisitor.mEvent->mFlags.mHadNonPrivilegedClickListeners ||
|
||||
mManager->HasNonPrivilegedClickListeners();
|
||||
}
|
||||
mManager->HandleEvent(aVisitor.mPresContext, aVisitor.mEvent,
|
||||
&aVisitor.mDOMEvent, CurrentTarget(),
|
||||
&aVisitor.mEventStatus, IsItemInShadowTree());
|
||||
|
|
|
|||
|
|
@ -113,9 +113,7 @@ EventListenerManagerBase::EventListenerManagerBase()
|
|||
mMayHaveFormSelectEventListener(false),
|
||||
mMayHaveTransitionEventListener(false),
|
||||
mClearingListeners(false),
|
||||
mIsMainThreadELM(NS_IsMainThread()),
|
||||
mHasNonPrivilegedClickListeners(false),
|
||||
mUnknownNonPrivilegedClickListeners(false) {
|
||||
mIsMainThreadELM(NS_IsMainThread()) {
|
||||
ClearNoListenersForEvents();
|
||||
static_assert(sizeof(EventListenerManagerBase) == sizeof(uint64_t),
|
||||
"Keep the size of EventListenerManagerBase size compact!");
|
||||
|
|
@ -249,8 +247,6 @@ void EventListenerManager::AddEventListenerInternal(
|
|||
listener->mListenerIsHandler = aHandler;
|
||||
listener->mHandlerIsString = false;
|
||||
listener->mAllEvents = aAllEvents;
|
||||
listener->mIsChrome =
|
||||
mIsMainThreadELM && nsContentUtils::LegacyIsCallerChromeOrNativeCode();
|
||||
|
||||
// Detect the type of event listener.
|
||||
if (aFlags.mListenerIsJSListener) {
|
||||
|
|
@ -636,13 +632,6 @@ void EventListenerManager::AddEventListenerInternal(
|
|||
EventListenerService::NotifyAboutMainThreadListenerChange(mTarget,
|
||||
aTypeAtom);
|
||||
}
|
||||
|
||||
if (!mHasNonPrivilegedClickListeners || mUnknownNonPrivilegedClickListeners) {
|
||||
if (IsNonChromeClickListener(listener)) {
|
||||
mHasNonPrivilegedClickListeners = true;
|
||||
mUnknownNonPrivilegedClickListeners = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void EventListenerManager::ProcessApzAwareEventListenerAdd() {
|
||||
|
|
@ -819,9 +808,6 @@ void EventListenerManager::RemoveEventListenerInternal(
|
|||
if (EVENT_TYPE_EQUALS(listener, aEventMessage, aUserType, aAllEvents)) {
|
||||
if (listener->mListener == aListenerHolder &&
|
||||
listener->mFlags.EqualsForRemoval(aFlags)) {
|
||||
if (IsNonChromeClickListener(listener)) {
|
||||
mUnknownNonPrivilegedClickListeners = true;
|
||||
}
|
||||
mListeners.RemoveElementAt(i);
|
||||
NotifyEventListenerRemoved(aUserType);
|
||||
if (!aAllEvents && deviceType) {
|
||||
|
|
@ -833,23 +819,6 @@ void EventListenerManager::RemoveEventListenerInternal(
|
|||
}
|
||||
}
|
||||
|
||||
bool EventListenerManager::HasNonPrivilegedClickListeners() {
|
||||
if (mUnknownNonPrivilegedClickListeners) {
|
||||
Listener* listener;
|
||||
|
||||
mUnknownNonPrivilegedClickListeners = false;
|
||||
for (uint32_t i = 0; i < mListeners.Length(); ++i) {
|
||||
listener = &mListeners.ElementAt(i);
|
||||
if (IsNonChromeClickListener(listener)) {
|
||||
mHasNonPrivilegedClickListeners = true;
|
||||
return mHasNonPrivilegedClickListeners;
|
||||
}
|
||||
}
|
||||
mHasNonPrivilegedClickListeners = false;
|
||||
}
|
||||
return mHasNonPrivilegedClickListeners;
|
||||
}
|
||||
|
||||
bool EventListenerManager::ListenerCanHandle(const Listener* aListener,
|
||||
const WidgetEvent* aEvent,
|
||||
EventMessage aEventMessage) const
|
||||
|
|
@ -1104,9 +1073,6 @@ void EventListenerManager::RemoveEventHandler(nsAtom* aName) {
|
|||
Listener* listener = FindEventHandler(eventMessage, aName);
|
||||
|
||||
if (listener) {
|
||||
if (IsNonChromeClickListener(listener)) {
|
||||
mUnknownNonPrivilegedClickListeners = true;
|
||||
}
|
||||
mListeners.RemoveElementAt(uint32_t(listener - &mListeners.ElementAt(0)));
|
||||
NotifyEventListenerRemoved(aName);
|
||||
if (IsDeviceType(eventMessage)) {
|
||||
|
|
@ -1115,13 +1081,6 @@ void EventListenerManager::RemoveEventHandler(nsAtom* aName) {
|
|||
}
|
||||
}
|
||||
|
||||
bool EventListenerManager::IsNonChromeClickListener(Listener* aListener) {
|
||||
return !aListener->mFlags.mInSystemGroup && !aListener->mIsChrome &&
|
||||
aListener->mEventMessage == eMouseClick &&
|
||||
(aListener->GetJSEventHandler() ||
|
||||
aListener->mListener.HasWebIDLCallback());
|
||||
}
|
||||
|
||||
nsresult EventListenerManager::CompileEventHandlerInternal(
|
||||
Listener* aListener, const nsAString* aBody, Element* aElement) {
|
||||
MOZ_ASSERT(aListener->GetJSEventHandler());
|
||||
|
|
|
|||
|
|
@ -166,8 +166,6 @@ class EventListenerManagerBase {
|
|||
uint16_t mMayHaveTransitionEventListener : 1;
|
||||
uint16_t mClearingListeners : 1;
|
||||
uint16_t mIsMainThreadELM : 1;
|
||||
uint16_t mHasNonPrivilegedClickListeners : 1;
|
||||
uint16_t mUnknownNonPrivilegedClickListeners : 1;
|
||||
};
|
||||
|
||||
/*
|
||||
|
|
@ -227,7 +225,6 @@ class EventListenerManager final : public EventListenerManagerBase {
|
|||
bool mListenerIsHandler : 1;
|
||||
bool mHandlerIsString : 1;
|
||||
bool mAllEvents : 1;
|
||||
bool mIsChrome : 1;
|
||||
bool mEnabled : 1;
|
||||
|
||||
EventListenerFlags mFlags;
|
||||
|
|
@ -244,7 +241,6 @@ class EventListenerManager final : public EventListenerManagerBase {
|
|||
mListenerIsHandler(false),
|
||||
mHandlerIsString(false),
|
||||
mAllEvents(false),
|
||||
mIsChrome(false),
|
||||
mEnabled(true) {}
|
||||
|
||||
Listener(Listener&& aOther)
|
||||
|
|
@ -256,14 +252,12 @@ class EventListenerManager final : public EventListenerManagerBase {
|
|||
mListenerIsHandler(aOther.mListenerIsHandler),
|
||||
mHandlerIsString(aOther.mHandlerIsString),
|
||||
mAllEvents(aOther.mAllEvents),
|
||||
mIsChrome(aOther.mIsChrome),
|
||||
mEnabled(aOther.mEnabled) {
|
||||
aOther.mEventMessage = eVoidEvent;
|
||||
aOther.mListenerType = eNoListener;
|
||||
aOther.mListenerIsHandler = false;
|
||||
aOther.mHandlerIsString = false;
|
||||
aOther.mAllEvents = false;
|
||||
aOther.mIsChrome = false;
|
||||
aOther.mEnabled = true;
|
||||
}
|
||||
|
||||
|
|
@ -504,8 +498,6 @@ class EventListenerManager final : public EventListenerManagerBase {
|
|||
return mMayHaveTransitionEventListener;
|
||||
}
|
||||
|
||||
bool HasNonPrivilegedClickListeners();
|
||||
|
||||
/**
|
||||
* Returns true if there may be a key event listener (keydown, keypress,
|
||||
* or keyup) registered, or false if there definitely isn't.
|
||||
|
|
@ -540,8 +532,6 @@ class EventListenerManager final : public EventListenerManagerBase {
|
|||
|
||||
bool HasNonPassiveWheelListener();
|
||||
|
||||
// Return true if aListener is a non-chrome-privileged click event listner
|
||||
bool IsNonChromeClickListener(Listener* aListener);
|
||||
/**
|
||||
* Remove all event listeners from the event target this EventListenerManager
|
||||
* is for.
|
||||
|
|
|
|||
|
|
@ -182,10 +182,6 @@ struct BaseEventFlags {
|
|||
// If mCameFromAnotherProcess is true, the event came from another process.
|
||||
bool mCameFromAnotherProcess : 1;
|
||||
|
||||
// At lease one of the event in the event path had non privileged click
|
||||
// listener.
|
||||
bool mHadNonPrivilegedClickListeners : 1;
|
||||
|
||||
// If the event is being handled in target phase, returns true.
|
||||
inline bool InTargetPhase() const {
|
||||
return (mInBubblingPhase && mInCapturePhase);
|
||||
|
|
|
|||
Loading…
Reference in a new issue