Open Bug 1037048 Opened 10 years ago Updated 7 months ago

if wheel or DOMMouseScroll listener added to window, scroll event not triggered IF you scroll your wheel when context menu is open AND mouse pointer is not over the menu (Linux only bug)

Categories

(Core :: Widget: Gtk, defect, P5)

29 Branch
x86_64
Linux
defect

Tracking

()

UNCONFIRMED

People

(Reporter: noit_linux, Unassigned)

Details

Attachments

(1 obsolete file)

User Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:29.0) Gecko/20100101 Firefox/29.0 (Beta/Release) Build ID: 20140428193813 Steps to reproduce: Detailed Summary: if DOMMouseScroll or wheel event listener added to window, then if right click to open context menu, then if ou scroll your wheel while mouse is NOT over opened context menu it will not trigger scroll event (Linux only) (In Windows XP and 7 scroll event is triggered regadless if mouse is over context menu or not) ------------- Open scratchpad, copy paste this code: window.addEventListener('wheel', function() { window.removeEventListener('wheel', arguments.callee, true); console.log('scroll caught and removed') }, true) Then go to your browser window, right click, this opens the context menu Now move your mouse so that it is not hovering over the context menu that just opened and scroll your wheel on the mouse. In linux it will not trigger the event. In windows it will. Actual results: wheel and DOMMouseScroll event not triggered (in above copy paste code i gave addEventListener(wheel) but you can do same with DOMMouseScroll and will get same result Expected results: event should trigger regardless if mouse is over context menu or not, like it does in Windows XP and 7
I tried setting consumeoutsideclicks to false and sometimes and it makes wheel event off of context menu sometimes work, sometimes not: so update the scratchpad code: var m = document.querySelector('#contentAreaContextMenu'); m.setAttribute('consumeoutsideclicks', false); window.addEventListener('wheel', function() { window.removeEventListener('wheel', arguments.callee, true); console.log('scroll caught and removed') }, true) run this code. then go to browser window. right click. move mouse pointer so its not over menu. scroll. IF it logs "scroll caught and removed" then this is good IF it doesnt log it to console, then left click in window, then right click again to open context menu, then try scrolling again it should work. so this is buggy, sometimes it works sometimes it doesnt
Component: Untriaged → Widget: Gtk
Product: Firefox → Core
Confirmed on Firefox 59 Fedora 27
Severity: normal → S3
Attachment #9385324 - Attachment is obsolete: true
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: