mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-07 18:04:46 +00:00
Bug 1653949 - Part 4: Add MouseExitFromWidget event to the delayed event queue if event handling is suppressed; r=smaug
So that we won't lost it if it happens in nested event loop. Differential Revision: https://phabricator.services.mozilla.com/D86953
This commit is contained in:
parent
85d4338685
commit
e4efe37095
@ -7610,7 +7610,8 @@ bool PresShell::EventHandler::MaybeDiscardOrDelayMouseEvent(
|
||||
(aGUIEvent->mMessage == eMouseUp ||
|
||||
// contextmenu is triggered after right mouseup on Windows and
|
||||
// right mousedown on other platforms.
|
||||
aGUIEvent->mMessage == eContextMenu)) {
|
||||
aGUIEvent->mMessage == eContextMenu ||
|
||||
aGUIEvent->mMessage == eMouseExitFromWidget)) {
|
||||
UniquePtr<DelayedMouseEvent> delayedMouseEvent =
|
||||
MakeUnique<DelayedMouseEvent>(aGUIEvent->AsMouseEvent());
|
||||
PushDelayedEventIntoQueue(std::move(delayedMouseEvent));
|
||||
|
@ -292,6 +292,7 @@ class WidgetMouseEvent : public WidgetMouseEventBase,
|
||||
AssignMouseEventBaseData(aEvent, aCopyTargets);
|
||||
AssignPointerHelperData(aEvent, /* aCopyCoalescedEvents */ true);
|
||||
|
||||
mExitFrom = aEvent.mExitFrom;
|
||||
mIgnoreRootScrollFrame = aEvent.mIgnoreRootScrollFrame;
|
||||
mClickCount = aEvent.mClickCount;
|
||||
mUseLegacyNonPrimaryDispatch = aEvent.mUseLegacyNonPrimaryDispatch;
|
||||
|
Loading…
Reference in New Issue
Block a user