-
Notifications
You must be signed in to change notification settings - Fork 946
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix for not providing the correct information on Ctrl-[ and CTRL-] in Windows #3696
base: v0.29.x
Are you sure you want to change the base?
Conversation
I have a feeling it is needed to describe better (possibly 🙂 ) what I try to achieve in this PR. The goal is to force two keys with scan codes
Now I will dive in to how windows handle keys when pressed with
Not regarding this PR and only in my humble opinion, control codes should be treated in WM_CHAR message using caret notation this way:
|
Fix for rust-windowing#3621 part 2 Discard part 1 and part 2 Fix for rust-windowing#3621 adjusted
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you show me what KeyboardInput
events are now compared to before when you press [
, Shift+[
, Ctrl+[
, Shift+Ctrl+[
. For regular keys, like A
and Shift+A
logical key should change as well.
In general, the only value that should change from ctrl
is the text_with_all_modifiers
IIRC.
If that's all good, it should be fine after you fix the CI issue.
@kchibisov, I don't know if this fix is correct or not, but the Windows keyboard layouts do in fact allow mapping of ctrl+key to something. Check BTW, if you can ignore my analysis in the original Neovide report, since I don't think it's correct. I'm not sure what's the best way to fix this is, without further studing, but my first impression is that if the layout maps ctrl, then that should be respected and the winit handling of ctrl disabled for that key. If @zbyna doesn't want to continue (see neovide/neovide#2459 (comment)) looking at this and at least provide the logs that were requested, I make take a stab at some point. But it will take at least one month before doing that, or even have a windows machine available. I think we have a few other keyboard bugs on Windows as well that could be looked at at the same time. For example this #3012, which might very well be closely related. |
EDIT: added table from log @fredizzimo
Log: Click to here.
Table: |
This fixes #3621 .
I tested it in neovide
OS: Windows 10 Pro 22H2, Neovide Version 0.12.2
with
Czech, German and English
layout:I am new in Rust, so please be patient 🙂 Thank you for possible merge.