void nsButtonBoxFrame::DoMouseClick(nsGUIEvent* aEvent, PRBool aTrustEvent) { // Don't execute if we're disabled. if (mContent->AttrValueIs(kNameSpaceID_None, nsGkAtoms::disabled, nsGkAtoms::_true, eCaseMatters)) return; // Execute the oncommand event handler. PRBool isShift = PR_FALSE; PRBool isControl = PR_FALSE; PRBool isAlt = PR_FALSE; PRBool isMeta = PR_FALSE; if(aEvent) { isShift = ((nsInputEvent*)(aEvent))->isShift; isControl = ((nsInputEvent*)(aEvent))->isControl; isAlt = ((nsInputEvent*)(aEvent))->isAlt; isMeta = ((nsInputEvent*)(aEvent))->isMeta; } // Have the content handle the event, propagating it according to normal DOM rules. nsCOMPtr<nsIPresShell> shell = PresContext()->GetPresShell(); if (shell) { nsContentUtils::DispatchXULCommand(mContent, aEvent ? NS_IS_TRUSTED_EVENT(aEvent) : aTrustEvent, nsnull, shell, isControl, isAlt, isShift, isMeta); } }
void nsMenuFrame::CreateMenuCommandEvent(nsGUIEvent *aEvent, PRBool aFlipChecked) { // Create a trusted event if the triggering event was trusted, or if // we're called from chrome code (since at least one of our caller // passes in a null event). PRBool isTrusted = aEvent ? NS_IS_TRUSTED_EVENT(aEvent) : nsContentUtils::IsCallerChrome(); PRBool shift = PR_FALSE, control = PR_FALSE, alt = PR_FALSE, meta = PR_FALSE; if (aEvent && (aEvent->eventStructType == NS_MOUSE_EVENT || aEvent->eventStructType == NS_KEY_EVENT)) { shift = static_cast<nsInputEvent *>(aEvent)->isShift; control = static_cast<nsInputEvent *>(aEvent)->isControl; alt = static_cast<nsInputEvent *>(aEvent)->isAlt; meta = static_cast<nsInputEvent *>(aEvent)->isMeta; } // Because the command event is firing asynchronously, a flag is needed to // indicate whether user input is being handled. This ensures that a popup // window won't get blocked. PRBool userinput = nsEventStateManager::IsHandlingUserInput(); mDelayedMenuCommandEvent = new nsXULMenuCommandEvent(mContent, isTrusted, shift, control, alt, meta, userinput, aFlipChecked); }
void nsTitleBarFrame::MouseClicked(nsPresContext* aPresContext, nsGUIEvent* aEvent) { // Execute the oncommand event handler. nsContentUtils::DispatchXULCommand(mContent, aEvent ? NS_IS_TRUSTED_EVENT(aEvent) : PR_FALSE); }
nsAsyncDOMEvent::nsAsyncDOMEvent(nsINode *aEventNode, nsEvent &aEvent) : mEventNode(aEventNode), mDispatchChromeOnly(false) { bool trusted = NS_IS_TRUSTED_EVENT(&aEvent); nsEventDispatcher::CreateEvent(nullptr, &aEvent, EmptyString(), getter_AddRefs(mEvent)); NS_ASSERTION(mEvent, "Should never fail to create an event"); mEvent->DuplicatePrivateData(); mEvent->SetTrusted(trusted); }
void nsResizerFrame::MouseClicked(nsPresContext* aPresContext, nsGUIEvent *aEvent) { // Execute the oncommand event handler. nsEventStatus status = nsEventStatus_eIgnore; nsXULCommandEvent event(aEvent ? NS_IS_TRUSTED_EVENT(aEvent) : PR_FALSE, NS_XUL_COMMAND, nsnull); nsEventDispatcher::Dispatch(mContent, aPresContext, &event, nsnull, &status); }
void nsTitleBarFrame::MouseClicked(nsPresContext* aPresContext, nsGUIEvent* aEvent) { // Execute the oncommand event handler. nsEventStatus status = nsEventStatus_eIgnore; nsXULCommandEvent event(aEvent ? NS_IS_TRUSTED_EVENT(aEvent) : PR_FALSE, NS_XUL_COMMAND, nsnull); mContent->HandleDOMEvent(aPresContext, &event, nsnull, NS_EVENT_FLAG_INIT, &status); }
nsAsyncDOMEvent::nsAsyncDOMEvent(nsINode *aEventNode, nsEvent &aEvent) : mEventNode(aEventNode), mDispatchChromeOnly(false) { bool trusted = NS_IS_TRUSTED_EVENT(&aEvent); nsEventDispatcher::CreateEvent(nsnull, &aEvent, EmptyString(), getter_AddRefs(mEvent)); NS_ASSERTION(mEvent, "Should never fail to create an event"); nsCOMPtr<nsIPrivateDOMEvent> priv = do_QueryInterface(mEvent); NS_ASSERTION(priv, "Should also not fail to QI to nsIDOMEventPrivate"); priv->DuplicatePrivateData(); priv->SetTrusted(trusted); }