Skip to content

Allow read-write access to raw WindowEvents within Bevy apps #5977

@alice-i-cecile

Description

@alice-i-cecile

What problem does this solve or what need does it fill?

While working on an input capture and playback library, @plof27 pointed out that I may be able to capture raw events from winit directly, rather than dealing with the separated event streams.

Unfortunately, the necessary WindowEvent type is not exposed in winit_runner_with, our winit-based app runner.

What solution would you like?

  1. Allow users to read the full list of raw window events sent.
  2. Allow users to send raw window events from within systems, which are then processed by the winit loop.

These should be exposed as a simple Events<WindowEvent>; the complexity comes from ensuring that winit_runner_with responds appropriately.

What alternative(s) have you considered?

I've considered exposing this with a custom runner, however #4537 means this is a tedious and duplication-heavy task.

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-InputPlayer input via keyboard, mouse, gamepad, and moreA-WindowingPlatform-agnostic interface layer to run your app inC-TestingA change that impacts how we test Bevy or how users test their appsC-UsabilityA targeted quality-of-life change that makes Bevy easier to useD-ModestA "normal" level of difficulty; suitable for simple features or challenging fixesS-Needs-DesignThis issue requires design work to think about how it would best be accomplished

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions