rust-windowing / winit

Window handling library in pure Rust
https://docs.rs/winit/
Apache License 2.0
4.73k stars 888 forks source link

[Windows] Missing keyboard navigation code #1590

Open tim-weis opened 4 years ago

tim-weis commented 4 years ago

winit currently doesn't support keyboard navigation in windows (e.g. TAB navigation). Windows' window manager implements this already (see IsDialogMessageW), but winit doesn't employ it.

It would be great to get support for keyboard navigation in winit out of the box. To get there, all message-retrieval code would need to be revisited and updated to either:

I acknowledge that neither of these suggestions is trivial to implement, with the latter likely opening up a whole new can of worms.

The following links by Raymond Chen may prove to be helpful in evaluating cost and risk for implementing the former:

Osspial commented 4 years ago

I don't think it's Winit's place to do this, since there isn't a clear simple API for the feature and (as you said) it's non-trivial to implement. However, once #1508 is merged it should be possible to implement this outside of Winit's codebase.