You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Backends (drm, udev, libinput, etc...) should be reworkable as calloop event sources allowing greater flexibility in general and possibly a smoother overall design.
The idea would be to follow this general pattern:
each backend generating events that need to be processed have a method with a prototype like:
that calls the provided closure on all pending events for this source, but does not block if no events are available
each backend also implements the calloop::EventSource trait, proxying to the above method, allowing them to be easily inserted into an event loop.
This may need some modifications in calloop to work properly, the initial blocking point I've met is that currently some callback methods provide arguments that are borrows, while currently calloop requires Event: 'static, and I've not yet found a way to relax this constraint.
The text was updated successfully, but these errors were encountered:
Backends (drm, udev, libinput, etc...) should be reworkable as calloop event sources allowing greater flexibility in general and possibly a smoother overall design.
The idea would be to follow this general pattern:
calloop::EventSource
trait, proxying to the above method, allowing them to be easily inserted into an event loop.This may need some modifications in calloop to work properly, the initial blocking point I've met is that currently some callback methods provide arguments that are borrows, while currently calloop requires
Event: 'static
, and I've not yet found a way to relax this constraint.The text was updated successfully, but these errors were encountered: