diff --git a/mozilla/content/base/src/nsDocument.cpp b/mozilla/content/base/src/nsDocument.cpp index 7c867952c41..0581ca7a8f8 100644 --- a/mozilla/content/base/src/nsDocument.cpp +++ b/mozilla/content/base/src/nsDocument.cpp @@ -971,14 +971,17 @@ nsIPrincipal* nsDocument::GetPrincipal() { if (!mPrincipal) { - nsresult rv; - nsCOMPtr securityManager = - do_GetService(NS_SCRIPTSECURITYMANAGER_CONTRACTID, &rv); - if (NS_FAILED(rv)) + nsIScriptSecurityManager *securityManager = + nsContentUtils::GetSecurityManager(); + + if (!securityManager) { return nsnull; + } + NS_WARN_IF_FALSE(mDocumentURI, "no URI!"); - rv = securityManager->GetCodebasePrincipal(mDocumentURI, - getter_AddRefs(mPrincipal)); + nsresult rv = + securityManager->GetCodebasePrincipal(mDocumentURI, + getter_AddRefs(mPrincipal)); if (NS_FAILED(rv)) { return nsnull; @@ -1914,8 +1917,8 @@ nsDocument::EndLoad() if (event) { event->InitEvent(NS_LITERAL_STRING("DOMContentLoaded"), PR_TRUE, PR_TRUE); - PRBool noDefault; - DispatchEvent(event, &noDefault); + PRBool defaultActionEnabled; + DispatchEvent(event, &defaultActionEnabled); } // If this document is a [i]frame, fire a DOMFrameContentLoaded @@ -2838,8 +2841,8 @@ nsDocument::SetTitle(const nsAString& aTitle) CreateEvent(NS_LITERAL_STRING("Events"), getter_AddRefs(event)); if (event) { event->InitEvent(NS_LITERAL_STRING("DOMTitleChanged"), PR_TRUE, PR_TRUE); - PRBool noDefault; - DispatchEvent(event, &noDefault); + PRBool defaultActionEnabled; + DispatchEvent(event, &defaultActionEnabled); } return NS_OK; @@ -3754,9 +3757,8 @@ nsDocument::GetListenerManager(nsIEventListenerManager **aInstancePtrResult) nsresult nsDocument::HandleEvent(nsIDOMEvent *aEvent) { - PRBool noDefault; - - return DispatchEvent(aEvent, &noDefault); + PRBool defaultActionEnabled; + return DispatchEvent(aEvent, &defaultActionEnabled); } NS_IMETHODIMP @@ -3894,10 +3896,6 @@ NS_IMETHODIMP nsDocument::DispatchEvent(nsIDOMEvent* aEvent, PRBool *_retval) { // Obtain a presentation context - PRInt32 count = GetNumberOfShells(); - if (count == 0) - return NS_OK; - nsIPresShell *shell = GetShellAt(0); if (!shell) return NS_ERROR_FAILURE; diff --git a/mozilla/content/events/public/nsIEventStateManager.h b/mozilla/content/events/public/nsIEventStateManager.h index 4ce7de06541..9fb2ef13571 100644 --- a/mozilla/content/events/public/nsIEventStateManager.h +++ b/mozilla/content/events/public/nsIEventStateManager.h @@ -126,7 +126,7 @@ public: NS_IMETHOD SetCursor(PRInt32 aCursor, imgIContainer* aContainer, nsIWidget* aWidget, PRBool aLockCursor) = 0; //Method for centralized distribution of new DOM events - NS_IMETHOD DispatchNewEvent(nsISupports* aTarget, nsIDOMEvent* aEvent, PRBool* aPreventDefault) = 0; + NS_IMETHOD DispatchNewEvent(nsISupports* aTarget, nsIDOMEvent* aEvent, PRBool* aDefaultActionEnabled) = 0; // Method for moving the focus forward/back. NS_IMETHOD ShiftFocus(PRBool aDirection, nsIContent* aStart)=0; diff --git a/mozilla/content/events/src/nsDOMEvent.cpp b/mozilla/content/events/src/nsDOMEvent.cpp index e3042b2075c..6ab98e8b870 100644 --- a/mozilla/content/events/src/nsDOMEvent.cpp +++ b/mozilla/content/events/src/nsDOMEvent.cpp @@ -592,9 +592,11 @@ nsDOMEvent::GetEventPopupControlState(nsEvent *aEvent) case NS_FORM_SELECTED : if (::PopupAllowedForEvent("select")) abuse = openControlled; + break; case NS_FORM_CHANGE : if (::PopupAllowedForEvent("change")) abuse = openControlled; + break; } } break; diff --git a/mozilla/content/events/src/nsEventListenerManager.cpp b/mozilla/content/events/src/nsEventListenerManager.cpp index b048f066d2d..cb9a6ae0c75 100644 --- a/mozilla/content/events/src/nsEventListenerManager.cpp +++ b/mozilla/content/events/src/nsEventListenerManager.cpp @@ -1640,58 +1640,70 @@ nsEventListenerManager::CreateEvent(nsPresContext* aPresContext, { *aDOMEvent = nsnull; - if (aEvent) - { - switch(aEvent->eventStructType) - { - case NS_MUTATION_EVENT: - return NS_NewDOMMutationEvent(aDOMEvent, aPresContext, NS_STATIC_CAST(nsMutationEvent*,aEvent)); - case NS_GUI_EVENT: - case NS_COMPOSITION_EVENT: - case NS_RECONVERSION_EVENT: - case NS_QUERYCARETRECT_EVENT: - return NS_NewDOMUIEvent(aDOMEvent, aPresContext, NS_STATIC_CAST(nsGUIEvent*,aEvent)); - case NS_KEY_EVENT: - return NS_NewDOMKeyboardEvent(aDOMEvent, aPresContext, NS_STATIC_CAST(nsKeyEvent*,aEvent)); - case NS_MOUSE_EVENT: - case NS_MOUSE_SCROLL_EVENT: - return NS_NewDOMMouseEvent(aDOMEvent, aPresContext, NS_STATIC_CAST(nsInputEvent*,aEvent)); - case NS_POPUP_EVENT: - return NS_NewDOMPopupBlockedEvent(aDOMEvent, aPresContext, NS_STATIC_CAST(nsPopupBlockedEvent*,aEvent)); - case NS_TEXT_EVENT: - return NS_NewDOMTextEvent(aDOMEvent, aPresContext, NS_STATIC_CAST(nsTextEvent*,aEvent)); - default: - return NS_NewDOMEvent(aDOMEvent, aPresContext, aEvent); + if (aEvent) { + switch(aEvent->eventStructType) { + case NS_MUTATION_EVENT: + return NS_NewDOMMutationEvent(aDOMEvent, aPresContext, + NS_STATIC_CAST(nsMutationEvent*,aEvent)); + case NS_GUI_EVENT: + case NS_COMPOSITION_EVENT: + case NS_RECONVERSION_EVENT: + case NS_QUERYCARETRECT_EVENT: + return NS_NewDOMUIEvent(aDOMEvent, aPresContext, + NS_STATIC_CAST(nsGUIEvent*,aEvent)); + case NS_KEY_EVENT: + return NS_NewDOMKeyboardEvent(aDOMEvent, aPresContext, + NS_STATIC_CAST(nsKeyEvent*,aEvent)); + case NS_MOUSE_EVENT: + case NS_MOUSE_SCROLL_EVENT: + return NS_NewDOMMouseEvent(aDOMEvent, aPresContext, + NS_STATIC_CAST(nsInputEvent*,aEvent)); + case NS_POPUP_EVENT: + return NS_NewDOMPopupBlockedEvent(aDOMEvent, aPresContext, + NS_STATIC_CAST(nsPopupBlockedEvent*, + aEvent)); + case NS_TEXT_EVENT: + return NS_NewDOMTextEvent(aDOMEvent, aPresContext, + NS_STATIC_CAST(nsTextEvent*,aEvent)); } + + // For all other types of events, create a vanilla event object. + return NS_NewDOMEvent(aDOMEvent, aPresContext, aEvent); } - else - { - nsAutoString str(aEventType); - if (str.EqualsIgnoreCase("MouseEvent") || - str.EqualsIgnoreCase("MouseEvents") || - str.EqualsIgnoreCase("MouseScrollEvents")) - return NS_NewDOMMouseEvent(aDOMEvent, aPresContext, NS_STATIC_CAST(nsMouseEvent*,aEvent)); - if (str.EqualsIgnoreCase("KeyboardEvent") || - str.EqualsIgnoreCase("KeyEvents")) - return NS_NewDOMKeyboardEvent(aDOMEvent, aPresContext, NS_STATIC_CAST(nsKeyEvent*,aEvent)); - if (str.EqualsIgnoreCase("MutationEvent") || - str.EqualsIgnoreCase("MutationEvents")) - return NS_NewDOMMutationEvent(aDOMEvent, aPresContext, NS_STATIC_CAST(nsMutationEvent*,aEvent)); - if (str.EqualsIgnoreCase("TextEvent") || - str.EqualsIgnoreCase("TextEvents")) - return NS_NewDOMTextEvent(aDOMEvent, aPresContext, NS_STATIC_CAST(nsTextEvent*,aEvent)); - if (str.EqualsIgnoreCase("PopupBlockedEvents")) - return NS_NewDOMPopupBlockedEvent(aDOMEvent, aPresContext, NS_STATIC_CAST(nsPopupBlockedEvent*,aEvent)); - if (str.EqualsIgnoreCase("UIEvent") || - str.EqualsIgnoreCase("UIEvents")) - return NS_NewDOMUIEvent(aDOMEvent, aPresContext, NS_STATIC_CAST(nsGUIEvent*,aEvent)); - if (str.EqualsIgnoreCase("Event") || - str.EqualsIgnoreCase("Events") || - str.EqualsIgnoreCase("HTMLEvents")) - return NS_NewDOMEvent(aDOMEvent, aPresContext, aEvent); - - return NS_ERROR_DOM_NOT_SUPPORTED_ERR; - } + + // And if we didn't get an event, check the type argument. + + if (aEventType.LowerCaseEqualsLiteral("mouseevent") || + aEventType.LowerCaseEqualsLiteral("mouseevents") || + aEventType.LowerCaseEqualsLiteral("mousescrollevents")) + return NS_NewDOMMouseEvent(aDOMEvent, aPresContext, + NS_STATIC_CAST(nsMouseEvent*,aEvent)); + if (aEventType.LowerCaseEqualsLiteral("keyboardevent") || + aEventType.LowerCaseEqualsLiteral("keyevents")) + return NS_NewDOMKeyboardEvent(aDOMEvent, aPresContext, + NS_STATIC_CAST(nsKeyEvent*,aEvent)); + if (aEventType.LowerCaseEqualsLiteral("mutationevent") || + aEventType.LowerCaseEqualsLiteral("mutationevents")) + return NS_NewDOMMutationEvent(aDOMEvent, aPresContext, + NS_STATIC_CAST(nsMutationEvent*,aEvent)); + if (aEventType.LowerCaseEqualsLiteral("textevent") || + aEventType.LowerCaseEqualsLiteral("textevents")) + return NS_NewDOMTextEvent(aDOMEvent, aPresContext, + NS_STATIC_CAST(nsTextEvent*,aEvent)); + if (aEventType.LowerCaseEqualsLiteral("popupblockedevents")) + return NS_NewDOMPopupBlockedEvent(aDOMEvent, aPresContext, + NS_STATIC_CAST(nsPopupBlockedEvent*, + aEvent)); + if (aEventType.LowerCaseEqualsLiteral("uievent") || + aEventType.LowerCaseEqualsLiteral("uievents")) + return NS_NewDOMUIEvent(aDOMEvent, aPresContext, + NS_STATIC_CAST(nsGUIEvent*,aEvent)); + if (aEventType.LowerCaseEqualsLiteral("event") || + aEventType.LowerCaseEqualsLiteral("events") || + aEventType.LowerCaseEqualsLiteral("htmlevents")) + return NS_NewDOMEvent(aDOMEvent, aPresContext, aEvent); + + return NS_ERROR_DOM_NOT_SUPPORTED_ERR; } /** @@ -1993,8 +2005,8 @@ nsEventListenerManager::GetListenerManager(nsIEventListenerManager** aInstancePt NS_IMETHODIMP nsEventListenerManager::HandleEvent(nsIDOMEvent *aEvent) { - PRBool noDefault; - return DispatchEvent(aEvent, &noDefault); + PRBool defaultActionEnabled; + return DispatchEvent(aEvent, &defaultActionEnabled); } NS_IMETHODIMP diff --git a/mozilla/content/events/src/nsEventStateManager.cpp b/mozilla/content/events/src/nsEventStateManager.cpp index 4888e9f57d5..46231a5267f 100644 --- a/mozilla/content/events/src/nsEventStateManager.cpp +++ b/mozilla/content/events/src/nsEventStateManager.cpp @@ -1659,11 +1659,11 @@ nsEventStateManager::DoScrollText(nsPresContext* aPresContext, aEvent->isControl, aEvent->isAlt, aEvent->isShift, aEvent->isMeta, 0, nsnull); - PRBool allowDefault; nsCOMPtr target(do_QueryInterface(targetContent)); if (target) { - target->DispatchEvent(event, &allowDefault); - if (!allowDefault) + PRBool defaultActionEnabled; + target->DispatchEvent(event, &defaultActionEnabled); + if (!defaultActionEnabled) return NS_OK; // Re-resolve |aTargetFrame| in case it was destroyed by the // DOM event handler above, bug 257998. @@ -4353,7 +4353,7 @@ nsEventStateManager::ForceViewUpdate(nsIView* aView) NS_IMETHODIMP nsEventStateManager::DispatchNewEvent(nsISupports* aTarget, nsIDOMEvent* aEvent, - PRBool *aPreventDefault) + PRBool *aDefaultActionEnabled) { nsresult ret = NS_OK; @@ -4416,7 +4416,7 @@ nsEventStateManager::DispatchNewEvent(nsISupports* aTarget, } } - *aPreventDefault = status != nsEventStatus_eConsumeNoDefault; + *aDefaultActionEnabled = status != nsEventStatus_eConsumeNoDefault; } } diff --git a/mozilla/content/events/src/nsEventStateManager.h b/mozilla/content/events/src/nsEventStateManager.h index f4e9983c577..f1cd88c483d 100644 --- a/mozilla/content/events/src/nsEventStateManager.h +++ b/mozilla/content/events/src/nsEventStateManager.h @@ -131,7 +131,7 @@ public: NS_IMETHOD SetCursor(PRInt32 aCursor, imgIContainer* aContainer, nsIWidget* aWidget, PRBool aLockCursor); //Method for centralized distribution of new DOM events - NS_IMETHOD DispatchNewEvent(nsISupports* aTarget, nsIDOMEvent* aEvent, PRBool *aPreventDefault); + NS_IMETHOD DispatchNewEvent(nsISupports* aTarget, nsIDOMEvent* aEvent, PRBool *aDefaultActionEnabled); NS_IMETHOD ShiftFocus(PRBool aForward, nsIContent* aStart=nsnull); diff --git a/mozilla/content/html/content/src/nsGenericHTMLElement.cpp b/mozilla/content/html/content/src/nsGenericHTMLElement.cpp index a1fbdb6071c..d897766397e 100644 --- a/mozilla/content/html/content/src/nsGenericHTMLElement.cpp +++ b/mozilla/content/html/content/src/nsGenericHTMLElement.cpp @@ -1399,8 +1399,8 @@ nsGenericHTMLElement::DispatchEvent(nsPresContext* aPresContext, } if (aFullDispatch) { - return shell->HandleEventWithTarget(aEvent, nsnull, aTarget, NS_EVENT_FLAG_INIT, - aStatus); + return shell->HandleEventWithTarget(aEvent, nsnull, aTarget, + NS_EVENT_FLAG_INIT, aStatus); } return shell->HandleDOMEventWithTarget(aTarget, aEvent, aStatus); diff --git a/mozilla/content/html/content/src/nsGenericHTMLElement.h b/mozilla/content/html/content/src/nsGenericHTMLElement.h index d6e5b156e8b..67a9e7e8966 100644 --- a/mozilla/content/html/content/src/nsGenericHTMLElement.h +++ b/mozilla/content/html/content/src/nsGenericHTMLElement.h @@ -154,8 +154,9 @@ public: nsresult GetClientHeight(PRInt32* aClientHeight); nsresult GetClientWidth(PRInt32* aClientWidth); nsresult ScrollIntoView(PRBool aTop); - // Declare Focus(), Blur(), GetTabIndex() and SetTabIndex() such that classes that - // inherit interfaces with those methods properly override them + // Declare Focus(), Blur(), GetTabIndex() and SetTabIndex() such + // that classes that inherit interfaces with those methods properly + // override them NS_IMETHOD Focus(); NS_IMETHOD Blur(); NS_IMETHOD GetTabIndex(PRInt32 *aTabIndex); diff --git a/mozilla/content/html/content/src/nsHTMLInputElement.cpp b/mozilla/content/html/content/src/nsHTMLInputElement.cpp index d8b892a39ef..44cd8583695 100644 --- a/mozilla/content/html/content/src/nsHTMLInputElement.cpp +++ b/mozilla/content/html/content/src/nsHTMLInputElement.cpp @@ -2043,10 +2043,10 @@ nsHTMLInputElement::FireEventForAccessibility(nsPresContext* aPresContext, NS_SUCCEEDED(manager->CreateEvent(aPresContext, nsnull, NS_LITERAL_STRING("Events"), getter_AddRefs(event)))) { event->InitEvent(aEventType, PR_TRUE, PR_TRUE); - PRBool noDefault; nsISupports *target = NS_STATIC_CAST(nsIDOMHTMLInputElement*, this); + PRBool defaultActionEnabled; aPresContext->EventStateManager()->DispatchNewEvent(target, event, - &noDefault); + &defaultActionEnabled); } return NS_OK; diff --git a/mozilla/content/html/content/src/nsHTMLLinkElement.cpp b/mozilla/content/html/content/src/nsHTMLLinkElement.cpp index 7ad1ccb5bb7..97e1f27dd86 100644 --- a/mozilla/content/html/content/src/nsHTMLLinkElement.cpp +++ b/mozilla/content/html/content/src/nsHTMLLinkElement.cpp @@ -235,7 +235,6 @@ nsHTMLLinkElement::CreateAndDispatchEvent(nsIDocument* aDoc, docEvent->CreateEvent(NS_LITERAL_STRING("Events"), getter_AddRefs(event)); if (event) { event->InitEvent(aEventName, PR_TRUE, PR_TRUE); - PRBool noDefault; nsCOMPtr target = do_QueryInterface(NS_STATIC_CAST(nsIDOMNode*, this)); if (target) { @@ -243,7 +242,8 @@ nsHTMLLinkElement::CreateAndDispatchEvent(nsIDocument* aDoc, if (privEvent) { privEvent->SetTrusted(PR_TRUE); } - target->DispatchEvent(event, &noDefault); + PRBool defaultActionEnabled; + target->DispatchEvent(event, &defaultActionEnabled); } } } diff --git a/mozilla/content/html/content/src/nsHTMLSelectElement.cpp b/mozilla/content/html/content/src/nsHTMLSelectElement.cpp index 7003799b6e4..5aa5dc03a18 100644 --- a/mozilla/content/html/content/src/nsHTMLSelectElement.cpp +++ b/mozilla/content/html/content/src/nsHTMLSelectElement.cpp @@ -2009,9 +2009,10 @@ nsHTMLSelectElement::DispatchDOMEvent(const nsAString& aName) domDoc->CreateEvent(NS_LITERAL_STRING("Events"), getter_AddRefs(selectEvent)); if (selectEvent) { selectEvent->InitEvent(aName, PR_TRUE, PR_TRUE); - nsCOMPtr target(do_QueryInterface(NS_STATIC_CAST(nsIDOMNode*, this))); - PRBool noDefault; - target->DispatchEvent(selectEvent, &noDefault); + nsCOMPtr target = + do_QueryInterface(NS_STATIC_CAST(nsIDOMNode*, this)); + PRBool defaultActionEnabled; + target->DispatchEvent(selectEvent, &defaultActionEnabled); } } } diff --git a/mozilla/content/xul/content/src/nsXULElement.cpp b/mozilla/content/xul/content/src/nsXULElement.cpp index 0f0a387569a..714e6992b48 100644 --- a/mozilla/content/xul/content/src/nsXULElement.cpp +++ b/mozilla/content/xul/content/src/nsXULElement.cpp @@ -1201,10 +1201,11 @@ nsXULElement::RemoveChildAt(PRUint32 aIndex, PRBool aNotify) docEvent->CreateEvent(NS_LITERAL_STRING("Events"), getter_AddRefs(event)); if (event) { event->InitEvent(NS_LITERAL_STRING("select"), PR_FALSE, PR_TRUE); - PRBool noDefault; - nsCOMPtr target(do_QueryInterface(NS_STATIC_CAST(nsIContent *, this))); + nsCOMPtr target = + do_QueryInterface(NS_STATIC_CAST(nsIContent *, this)); NS_ENSURE_TRUE(target, NS_ERROR_FAILURE); - target->DispatchEvent(event, &noDefault); + PRBool defaultActionEnabled; + target->DispatchEvent(event, &defaultActionEnabled); } } diff --git a/mozilla/dom/public/idl/events/nsIDOMMouseEvent.idl b/mozilla/dom/public/idl/events/nsIDOMMouseEvent.idl index b3d3ceb8778..4b9089ed36c 100644 --- a/mozilla/dom/public/idl/events/nsIDOMMouseEvent.idl +++ b/mozilla/dom/public/idl/events/nsIDOMMouseEvent.idl @@ -67,15 +67,15 @@ interface nsIDOMMouseEvent : nsIDOMUIEvent readonly attribute nsIDOMEventTarget relatedTarget; void initMouseEvent(in DOMString typeArg, - in boolean canBubbleArg, - in boolean cancelableArg, + in boolean canBubbleArg, + in boolean cancelableArg, in nsIDOMAbstractView viewArg, in long detailArg, in long screenXArg, in long screenYArg, in long clientXArg, in long clientYArg, - in boolean ctrlKeyArg, + in boolean ctrlKeyArg, in boolean altKeyArg, in boolean shiftKeyArg, in boolean metaKeyArg, diff --git a/mozilla/dom/src/base/nsGlobalWindow.cpp b/mozilla/dom/src/base/nsGlobalWindow.cpp index 98f2a35d199..a1d49530727 100644 --- a/mozilla/dom/src/base/nsGlobalWindow.cpp +++ b/mozilla/dom/src/base/nsGlobalWindow.cpp @@ -2095,10 +2095,7 @@ nsGlobalWindow::DispatchCustomEvent(const char *aEventName) nsCOMPtr doc(do_QueryInterface(mDocument)); nsCOMPtr event; - // Doesn't this seem backwards? Seems like - // nsEventStateManager::DispatchNewEvent() screws up on the - // logic for its prevent default argument... - PRBool preventDefault = PR_TRUE; + PRBool defaultActionEnabled = PR_TRUE; if (doc) { doc->CreateEvent(NS_LITERAL_STRING("Events"), getter_AddRefs(event)); @@ -2109,11 +2106,11 @@ nsGlobalWindow::DispatchCustomEvent(const char *aEventName) privateEvent->SetTrusted(PR_TRUE); - DispatchEvent(event, &preventDefault); + DispatchEvent(event, &defaultActionEnabled); } } - return preventDefault; + return defaultActionEnabled; } static already_AddRefed @@ -3062,9 +3059,9 @@ void FirePopupBlockedEvent(nsIDOMDocument* aDoc, nsCOMPtr privateEvent(do_QueryInterface(event)); privateEvent->SetTrusted(PR_TRUE); - PRBool noDefault; nsCOMPtr targ(do_QueryInterface(aDoc)); - targ->DispatchEvent(event, &noDefault); + PRBool defaultActionEnabled; + targ->DispatchEvent(event, &defaultActionEnabled); } } } @@ -3082,9 +3079,9 @@ void FirePopupWindowEvent(nsIDOMDocument* aDoc) nsCOMPtr privateEvent(do_QueryInterface(event)); privateEvent->SetTrusted(PR_TRUE); - PRBool noDefault; + PRBool defaultActionEnabled; nsCOMPtr targ(do_QueryInterface(aDoc)); - targ->DispatchEvent(event, &noDefault); + targ->DispatchEvent(event, &defaultActionEnabled); } } } @@ -4096,8 +4093,8 @@ nsGlobalWindow::DispatchEvent(nsIDOMEvent* aEvent, PRBool* _retval) } // Retrieve the context - nsCOMPtr aPresContext = shell->GetPresContext(); - return aPresContext->EventStateManager()-> + nsCOMPtr presContext = shell->GetPresContext(); + return presContext->EventStateManager()-> DispatchNewEvent(NS_STATIC_CAST(nsIScriptGlobalObject*, this), aEvent, _retval); } @@ -4197,8 +4194,8 @@ nsGlobalWindow::GetListenerManager(nsIEventListenerManager **aResult) NS_IMETHODIMP nsGlobalWindow::HandleEvent(nsIDOMEvent *aEvent) { - PRBool noDefault; - return DispatchEvent(aEvent, &noDefault); + PRBool defaultActionEnabled; + return DispatchEvent(aEvent, &defaultActionEnabled); } NS_IMETHODIMP diff --git a/mozilla/dom/src/base/nsWindowRoot.cpp b/mozilla/dom/src/base/nsWindowRoot.cpp index a0904d2ec91..e201c1e8e5f 100644 --- a/mozilla/dom/src/base/nsWindowRoot.cpp +++ b/mozilla/dom/src/base/nsWindowRoot.cpp @@ -188,8 +188,8 @@ nsWindowRoot::GetListenerManager(nsIEventListenerManager** aResult) NS_IMETHODIMP nsWindowRoot::HandleEvent(nsIDOMEvent *aEvent) { - PRBool noDefault; - return DispatchEvent(aEvent, &noDefault); + PRBool defaultActionEnabled; + return DispatchEvent(aEvent, &defaultActionEnabled); } NS_IMETHODIMP diff --git a/mozilla/embedding/browser/cocoa/src/CHClickListener.mm b/mozilla/embedding/browser/cocoa/src/CHClickListener.mm index e94163123ee..cb62bfe4ffb 100644 --- a/mozilla/embedding/browser/cocoa/src/CHClickListener.mm +++ b/mozilla/embedding/browser/cocoa/src/CHClickListener.mm @@ -95,9 +95,9 @@ docEvent->CreateEvent(NS_LITERAL_STRING("Events"), getter_AddRefs(event)); if (event) { event->InitEvent(NS_LITERAL_STRING("change"), PR_TRUE, PR_TRUE); - PRBool noDefault; nsCOMPtr target(do_QueryInterface(mSelectElt)); - target->DispatchEvent(event, &noDefault); + PRBool defaultActionEnabled; + target->DispatchEvent(event, &defaultActionEnabled); } } diff --git a/mozilla/embedding/components/windowwatcher/src/nsPrompt.cpp b/mozilla/embedding/components/windowwatcher/src/nsPrompt.cpp index 78e37cb6775..757f9f6e006 100644 --- a/mozilla/embedding/components/windowwatcher/src/nsPrompt.cpp +++ b/mozilla/embedding/components/windowwatcher/src/nsPrompt.cpp @@ -127,27 +127,27 @@ public: nsAutoDOMEventDispatcher(nsIDOMWindow *aWindow); ~nsAutoDOMEventDispatcher(); - PRBool DefaultPrevented() + PRBool DefaultEnabled() { - return mDefaultPrevented; + return mDefaultEnabled; } protected: PRBool DispatchCustomEvent(const char *aEventName); nsIDOMWindow *mWindow; - PRBool mDefaultPrevented; + PRBool mDefaultEnabled; }; nsAutoDOMEventDispatcher::nsAutoDOMEventDispatcher(nsIDOMWindow *aWindow) : mWindow(aWindow), - mDefaultPrevented(DispatchCustomEvent("DOMWillOpenModalDialog")) + mDefaultEnabled(DispatchCustomEvent("DOMWillOpenModalDialog")) { } nsAutoDOMEventDispatcher::~nsAutoDOMEventDispatcher() { - if (!mDefaultPrevented) { + if (mDefaultEnabled) { DispatchCustomEvent("DOMModalDialogClosed"); } } @@ -156,7 +156,7 @@ PRBool nsAutoDOMEventDispatcher::DispatchCustomEvent(const char *aEventName) { if (!mWindow) { - return PR_FALSE; + return PR_TRUE; } nsCOMPtr domdoc; @@ -165,10 +165,7 @@ nsAutoDOMEventDispatcher::DispatchCustomEvent(const char *aEventName) nsCOMPtr docevent(do_QueryInterface(domdoc)); nsCOMPtr event; - // Doesn't this seem backwards? Seems like - // nsEventStateManager::DispatchNewEvent() screws up on the - // logic for its prevent default argument... - PRBool preventDefault = PR_FALSE; + PRBool defaultActionEnabled = PR_TRUE; if (docevent) { docevent->CreateEvent(NS_LITERAL_STRING("Events"), getter_AddRefs(event)); @@ -181,14 +178,11 @@ nsAutoDOMEventDispatcher::DispatchCustomEvent(const char *aEventName) nsCOMPtr target(do_QueryInterface(mWindow)); - target->DispatchEvent(event, &preventDefault); - - // DispatchEvent() is buggy, it returns the wrong boolean value. - preventDefault = !preventDefault; + target->DispatchEvent(event, &defaultActionEnabled); } } - return preventDefault; + return defaultActionEnabled; } @@ -198,7 +192,7 @@ nsPrompt::Alert(const PRUnichar* dialogTitle, { nsAutoDOMEventDispatcher autoDOMEventDispatcher(mParent); - if (autoDOMEventDispatcher.DefaultPrevented()) { + if (!autoDOMEventDispatcher.DefaultEnabled()) { return NS_OK; } @@ -213,7 +207,7 @@ nsPrompt::AlertCheck(const PRUnichar* dialogTitle, { nsAutoDOMEventDispatcher autoDOMEventDispatcher(mParent); - if (autoDOMEventDispatcher.DefaultPrevented()) { + if (!autoDOMEventDispatcher.DefaultEnabled()) { return NS_OK; } @@ -228,7 +222,7 @@ nsPrompt::Confirm(const PRUnichar* dialogTitle, { nsAutoDOMEventDispatcher autoDOMEventDispatcher(mParent); - if (autoDOMEventDispatcher.DefaultPrevented()) { + if (!autoDOMEventDispatcher.DefaultEnabled()) { return NS_OK; } @@ -244,7 +238,7 @@ nsPrompt::ConfirmCheck(const PRUnichar* dialogTitle, { nsAutoDOMEventDispatcher autoDOMEventDispatcher(mParent); - if (autoDOMEventDispatcher.DefaultPrevented()) { + if (!autoDOMEventDispatcher.DefaultEnabled()) { return NS_OK; } @@ -265,7 +259,7 @@ nsPrompt::ConfirmEx(const PRUnichar *dialogTitle, { nsAutoDOMEventDispatcher autoDOMEventDispatcher(mParent); - if (autoDOMEventDispatcher.DefaultPrevented()) { + if (!autoDOMEventDispatcher.DefaultEnabled()) { return NS_OK; } @@ -284,7 +278,7 @@ nsPrompt::Prompt(const PRUnichar *dialogTitle, { nsAutoDOMEventDispatcher autoDOMEventDispatcher(mParent); - if (autoDOMEventDispatcher.DefaultPrevented()) { + if (!autoDOMEventDispatcher.DefaultEnabled()) { return NS_OK; } @@ -303,7 +297,7 @@ nsPrompt::PromptUsernameAndPassword(const PRUnichar *dialogTitle, { nsAutoDOMEventDispatcher autoDOMEventDispatcher(mParent); - if (autoDOMEventDispatcher.DefaultPrevented()) { + if (!autoDOMEventDispatcher.DefaultEnabled()) { return NS_OK; } @@ -323,7 +317,7 @@ nsPrompt::PromptPassword(const PRUnichar *dialogTitle, { nsAutoDOMEventDispatcher autoDOMEventDispatcher(mParent); - if (autoDOMEventDispatcher.DefaultPrevented()) { + if (!autoDOMEventDispatcher.DefaultEnabled()) { return NS_OK; } @@ -341,7 +335,7 @@ nsPrompt::Select(const PRUnichar *dialogTitle, { nsAutoDOMEventDispatcher autoDOMEventDispatcher(mParent); - if (autoDOMEventDispatcher.DefaultPrevented()) { + if (!autoDOMEventDispatcher.DefaultEnabled()) { return NS_OK; } @@ -366,7 +360,7 @@ nsPrompt::Prompt(const PRUnichar* dialogTitle, { nsAutoDOMEventDispatcher autoDOMEventDispatcher(mParent); - if (autoDOMEventDispatcher.DefaultPrevented()) { + if (!autoDOMEventDispatcher.DefaultEnabled()) { return NS_OK; } @@ -394,7 +388,7 @@ nsPrompt::PromptUsernameAndPassword(const PRUnichar* dialogTitle, { nsAutoDOMEventDispatcher autoDOMEventDispatcher(mParent); - if (autoDOMEventDispatcher.DefaultPrevented()) { + if (!autoDOMEventDispatcher.DefaultEnabled()) { return NS_OK; } @@ -414,7 +408,7 @@ nsPrompt::PromptPassword(const PRUnichar* dialogTitle, { nsAutoDOMEventDispatcher autoDOMEventDispatcher(mParent); - if (autoDOMEventDispatcher.DefaultPrevented()) { + if (!autoDOMEventDispatcher.DefaultEnabled()) { return NS_OK; } diff --git a/mozilla/extensions/xforms/nsXFormsDispatchElement.cpp b/mozilla/extensions/xforms/nsXFormsDispatchElement.cpp index cfa2e2868b1..da97b45f090 100644 --- a/mozilla/extensions/xforms/nsXFormsDispatchElement.cpp +++ b/mozilla/extensions/xforms/nsXFormsDispatchElement.cpp @@ -109,8 +109,8 @@ nsXFormsDispatchElement::HandleAction(nsIDOMEvent* aEvent, event->InitEvent(name, bubbles, cancelable); nsCOMPtr targetEl = do_QueryInterface(el); if (targetEl) { - PRBool cancelled; - targetEl->DispatchEvent(event, &cancelled); + PRBool defaultActionEnabled; + targetEl->DispatchEvent(event, &defaultActionEnabled); } return NS_OK; } diff --git a/mozilla/extensions/xforms/nsXFormsUtils.cpp b/mozilla/extensions/xforms/nsXFormsUtils.cpp index aefe4f9332f..ac286817dc9 100644 --- a/mozilla/extensions/xforms/nsXFormsUtils.cpp +++ b/mozilla/extensions/xforms/nsXFormsUtils.cpp @@ -726,8 +726,8 @@ nsXFormsUtils::DispatchEvent(nsIDOMNode* aTarget, nsXFormsEvent aEvent) nsCOMPtr target = do_QueryInterface(aTarget); NS_ENSURE_STATE(target); - PRBool cancelled; - return target->DispatchEvent(event, &cancelled); + PRBool defaultActionEnabled; + return target->DispatchEvent(event, &defaultActionEnabled); } /* static */ PRBool diff --git a/mozilla/layout/forms/nsComboboxControlFrame.cpp b/mozilla/layout/forms/nsComboboxControlFrame.cpp index 7760e5d74aa..42fcb14630c 100644 --- a/mozilla/layout/forms/nsComboboxControlFrame.cpp +++ b/mozilla/layout/forms/nsComboboxControlFrame.cpp @@ -2406,8 +2406,9 @@ void nsComboboxControlFrame::FireValueChangeEvent() if (manager && NS_SUCCEEDED(manager->CreateEvent(presContext, nsnull, NS_LITERAL_STRING("Events"), getter_AddRefs(event)))) { event->InitEvent(NS_LITERAL_STRING("ValueChange"), PR_TRUE, PR_TRUE); - PRBool noDefault; - presContext->EventStateManager()->DispatchNewEvent(mContent, event, &noDefault); + PRBool defaultActionEnabled; + presContext->EventStateManager()->DispatchNewEvent(mContent, event, + &defaultActionEnabled); } } diff --git a/mozilla/layout/forms/nsListControlFrame.cpp b/mozilla/layout/forms/nsListControlFrame.cpp index dff664a1231..bd7a950e7b5 100644 --- a/mozilla/layout/forms/nsListControlFrame.cpp +++ b/mozilla/layout/forms/nsListControlFrame.cpp @@ -2575,10 +2575,9 @@ nsListControlFrame::FireMenuItemActiveEvent() if (manager && NS_SUCCEEDED(manager->CreateEvent(presContext, nsnull, NS_LITERAL_STRING("Events"), getter_AddRefs(event)))) { event->InitEvent(NS_LITERAL_STRING("DOMMenuItemActive"), PR_TRUE, PR_TRUE); - PRBool noDefault; - + PRBool defaultActionEnabled; presContext->EventStateManager()->DispatchNewEvent(optionContent, event, - &noDefault); + &defaultActionEnabled); } } #endif diff --git a/mozilla/layout/generic/nsObjectFrame.cpp b/mozilla/layout/generic/nsObjectFrame.cpp index 2d5a0f06543..0c7d6ee3341 100644 --- a/mozilla/layout/generic/nsObjectFrame.cpp +++ b/mozilla/layout/generic/nsObjectFrame.cpp @@ -651,8 +651,8 @@ FirePluginNotFoundEvent(nsIContent *aTarget) rv = event->InitEvent(NS_LITERAL_STRING("PluginNotFound"), PR_TRUE, PR_TRUE); if (NS_SUCCEEDED(rv)) { - PRBool unused; - target->DispatchEvent(event, &unused); + PRBool defaultActionEnabled; + target->DispatchEvent(event, &defaultActionEnabled); } } } diff --git a/mozilla/layout/xul/base/src/nsBoxFrame.cpp b/mozilla/layout/xul/base/src/nsBoxFrame.cpp index 3da4c436a63..38025e47597 100644 --- a/mozilla/layout/xul/base/src/nsBoxFrame.cpp +++ b/mozilla/layout/xul/base/src/nsBoxFrame.cpp @@ -2580,9 +2580,9 @@ nsBoxFrame::FireDOMEvent(const nsAString& aDOMEventName, nsIContent *aContent) NS_LITERAL_STRING("Events"), getter_AddRefs(event)))) { event->InitEvent(aDOMEventName, PR_TRUE, PR_TRUE); - PRBool noDefault; - mPresContext->EventStateManager()->DispatchNewEvent(content, event, - &noDefault); + PRBool defaultActionEnabled; + mPresContext->EventStateManager()-> + DispatchNewEvent(content, event, &defaultActionEnabled); } } } diff --git a/mozilla/toolkit/components/satchel/src/nsFormFillController.cpp b/mozilla/toolkit/components/satchel/src/nsFormFillController.cpp index afdcaf8e85e..a40be93b283 100644 --- a/mozilla/toolkit/components/satchel/src/nsFormFillController.cpp +++ b/mozilla/toolkit/components/satchel/src/nsFormFillController.cpp @@ -453,8 +453,8 @@ nsFormFillController::OnTextEntered(PRBool *_retval) event->InitEvent(NS_LITERAL_STRING("DOMAutoComplete"), PR_TRUE, PR_TRUE); nsCOMPtr targ = do_QueryInterface(mFocusedInput); - PRBool noDefault; - targ->DispatchEvent(event, &noDefault); + PRBool defaultActionEnabled; + targ->DispatchEvent(event, &defaultActionEnabled); return NS_OK; } diff --git a/mozilla/xpfe/appshell/src/nsXULWindow.cpp b/mozilla/xpfe/appshell/src/nsXULWindow.cpp index 74250cfa8b8..60096bc30a4 100644 --- a/mozilla/xpfe/appshell/src/nsXULWindow.cpp +++ b/mozilla/xpfe/appshell/src/nsXULWindow.cpp @@ -257,10 +257,11 @@ NS_IMETHODIMP nsXULWindow::SetZLevel(PRUint32 aLevel) docEvent->CreateEvent(NS_LITERAL_STRING("Events"), getter_AddRefs(event)); if (event) { event->InitEvent(NS_LITERAL_STRING("windowZLevel"), PR_TRUE, PR_FALSE); - PRBool noDefault; nsCOMPtr targ(do_QueryInterface(doc)); - if (targ) - targ->DispatchEvent(event, &noDefault); + if (targ) { + PRBool defaultActionEnabled; + targ->DispatchEvent(event, &defaultActionEnabled); + } } } }