Open Bug 1542056 Opened 6 years ago Updated 2 years ago

Input events can build up in the OS event loop on some platforms

Categories

(Core :: Graphics, defect, P3)

defect

Tracking

()

ASSIGNED

People

(Reporter: nical, Assigned: nical)

References

Details

Attachments

(1 obsolete file)

Mac isn't affected, but Linux is, I don't know about windows.

If the code that runs in the input callback takes a long time, new input events can build up in the event loop faster than we can consume them. The issue is particularly severe when scrolling with the touch pad with WebRender if frame building takes a long time as hit-testing blocks on a synchronous message to the render backend.

It would nice if we had a way it collapse input events that have built up in the event loop when they do.

One way to do it could be to push input events into an array and schedule handling them in the event loop similarly to how we schedule composites on the compositor thread. this way when we get to handling input events we can collapse everything that is in the array. In most case we would have only one event to process and in the bad case we'd avoid accumulating.
This is what comes to mind but there are certainly other ways to avoid this problem.

Depends on: 1580178
Assignee: nobody → nical.bugzilla
Status: NEW → ASSIGNED
Attachment #9091727 - Attachment description: Bug 1542056 - Allow hit-testing without synchronous messaging. r=botond → Bug 1542056 - Allow hit-testing without synchronous messaging. r=botond, kats

Comment on attachment 9091727 [details]
Bug 1542056 - Allow hit-testing without synchronous messaging. r=botond, kats

Revision D45345 was moved to bug 1580178. Setting attachment 9091727 [details] to obsolete.

Attachment #9091727 - Attachment is obsolete: true
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: