http://bugs.winehq.org/show_bug.cgi?id=15083
Summary: ReadConsoleInputW() returns wrong values for CTRL+SPACE Product: Wine Version: 1.1.3 Platform: Other OS/Version: other Status: UNCONFIRMED Severity: minor Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: dg@cowlark.com
On the Windows console, if I use ReadConsoleInputW() to read user input and the user types CTRL+SPACE, wine returns wVirtualKeyCode=VK_SPACE, UnicodeChar=0 where Windows XP returns wVirtualKeyCode=VK_SPACE, UnicodeChar=32.
http://bugs.winehq.org/show_bug.cgi?id=15083
--- Comment #1 from Austin English austinenglish@gmail.com 2008-09-01 18:43:45 --- A testcase would be useful.
http://bugs.winehq.org/show_bug.cgi?id=15083
--- Comment #2 from Austin English austinenglish@gmail.com 2009-03-10 15:05:27 --- Is this still an issue in current (1.1.16 or newer) wine?
http://bugs.winehq.org/show_bug.cgi?id=15083
--- Comment #3 from David Given dg@cowlark.com 2009-03-10 15:35:13 --- I don't know; I'm not in a position to test this any more and the relevant piece of code isn't particularly obvious.
http://bugs.winehq.org/show_bug.cgi?id=15083
--- Comment #4 from Austin English austinenglish@gmail.com 2009-09-15 15:34:57 --- Is this still an issue in current (1.1.29 or newer) wine?
http://bugs.winehq.org/show_bug.cgi?id=15083
--- Comment #5 from David Given dg@cowlark.com 2009-09-15 16:21:47 --- I don't know; I'm not in a position to test this any more and the relevant piece of code isn't particularly obvious.
http://bugs.winehq.org/show_bug.cgi?id=15083
--- Comment #6 from Austin English austinenglish@gmail.com 2010-12-20 21:25:10 CST --- Presumably still present.
http://bugs.winehq.org/show_bug.cgi?id=15083
Ryno rmathee@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |rmathee@gmail.com
--- Comment #7 from Ryno rmathee@gmail.com 2013-01-30 14:13:21 CST --- This bug still seems to be present. It's killing me because the crappy IDE we use @ work uses ctrl + space to expand aliases lol :P
Could anyone maybe give me some info on how to go about fixing it? I'd like to contribute if possible.
http://bugs.winehq.org/show_bug.cgi?id=15083
Eric Pouech eric.pouech@orange.fr changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |eric.pouech@orange.fr
--- Comment #8 from Eric Pouech eric.pouech@orange.fr 2013-02-06 15:14:33 CST --- which console backend are you using ? I bet it's the console backend likely the ToUnicode call in programs/wineconsole/user.c (WCUSER_GenerateKeyInputRecord) is to blame A+
http://bugs.winehq.org/show_bug.cgi?id=15083
--- Comment #9 from Ryno rmathee@gmail.com 2013-02-07 11:51:21 CST --- I'm not really sure what u mean by which console backend :P I've been using wine for a few weeks now (Ex windows n00b)
So the ToUnicode functions is where the issue lies?
trace:console:WriteConsoleInputW (0xf,0x32dbe4,4,0x32dc9c) trace:console:CONSOLE_Readline keyDown repeatCount=1, keyCode=11 scanCode=1d char=00 keyState=00000008 trace:console:CONSOLE_Readline keyDown repeatCount=1, keyCode=00 scanCode=00 char=00 keyState=00000008 trace:console:CONSOLE_Readline keyUp repeatCount=1, keyCode=00 scanCode=00 char=00 keyState=00000008 trace:console:CONSOLE_Readline keyUp repeatCount=1, keyCode=11 scanCode=1d char=00 keyState=00000000
I've checked out the code so i gots the source, but I'm really a n00b. I guess all I can do is some debugging and see why its giving 0 instead of 32 :?
(In reply to comment #8)
which console backend are you using ? I bet it's the console backend likely the ToUnicode call in programs/wineconsole/user.c (WCUSER_GenerateKeyInputRecord) is to blame A+
http://bugs.winehq.org/show_bug.cgi?id=15083
--- Comment #10 from David Given dg@cowlark.com 2013-02-07 12:08:37 CST --- It's been so long I can't even remember what I was doing now, but I do know that in a Unix console, CTRL+SPACE returns 0. Is the Windows console in Wine just run on the terminal, or does it put up its own window?
http://bugs.winehq.org/show_bug.cgi?id=15083
--- Comment #11 from Ryno rmathee@gmail.com 2013-02-07 12:17:35 CST --- I've tried a few ways, running it in a new xterm window, running it in wineconsole, and running it in the normal console. They all seem to return 00...
I guess I can play around, thanks so much for the help!
http://bugs.winehq.org/show_bug.cgi?id=15083
Daniel Jelinski djelinski1@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |djelinski1@gmail.com
--- Comment #12 from Daniel Jelinski djelinski1@gmail.com 2013-02-08 02:49:29 CST --- (In reply to comment #7)
This bug still seems to be present. It's killing me because the crappy IDE we use @ work uses ctrl + space to expand aliases lol :P
Are you talking about Delphi? If not, well, add Delphi 7 to the list of applications that can't handle ctrl+space correctly. I don't know if ReadConsoleInput is involved there though.
http://bugs.winehq.org/show_bug.cgi?id=15083
--- Comment #13 from Ryno Mathee rmathee@gmail.com 2013-02-08 03:16:16 CST --- Its a "niche" proprietary language called OpenEdge ABL (I hate it). They do have a linux "IDE" (Just an editor really which sucks), but we use one of their products called RoundTable for Issue tracking, development and deployment, and there are only windows hooks for that thing...
They use vslick for their editor, so I'm assuming windows eclipse will give the same problem.
I use the IDE maybe once or twice a week to commit code, otherwise I just use vi/nano, but when I commit there's usually allot of merging, and kinda miss the alias expansion for that half an hour twice a week :P
Maybe in this case we can hard code a fix? O_o
(In reply to comment #12)
(In reply to comment #7)
This bug still seems to be present. It's killing me because the crappy IDE we use @ work uses ctrl + space to expand aliases lol :P
Are you talking about Delphi? If not, well, add Delphi 7 to the list of applications that can't handle ctrl+space correctly. I don't know if ReadConsoleInput is involved there though.
https://bugs.winehq.org/show_bug.cgi?id=15083
--- Comment #14 from Austin English austinenglish@gmail.com --- Is this still an issue in current (1.7.36 or newer) wine? If so, please attach terminal output.
https://bugs.winehq.org/show_bug.cgi?id=15083
Sasha2048 sasha2048@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |sasha2048@gmail.com
--- Comment #15 from Sasha2048 sasha2048@gmail.com --- (In reply to Austin English from comment #14)
Is this still an issue in current (1.7.36 or newer) wine? If so, please attach terminal output.
In wine-1.7.50 Ctrl+Space still doesn't work in Delphi. However I'm not sure if it relates to ReadConsoleInputW. I don't see ReadConsoleInput in WINEDEBUG=+relay wine output. (Am I right for using WINEDEBUG=+relay?)
https://bugs.winehq.org/show_bug.cgi?id=15083
--- Comment #16 from Sasha2048 sasha2048@gmail.com --- Just for further info (may be moved to other bug report).
Ctrl+Space and Ctrl+Shift+Space don't work in Borland Delphi 7 under wine-1.7.50. (But typing "." opens completions successfully and typing "(" opens parameter hints successfully -- this means that features themselves ARE working, but they cannot be invoked explicitly by pressing Ctrl+Space and Ctrl+Shift+Space.) If I run Delphi 7 WITHOUT pressing Ctrl+Space, and then run it again WITH pressing Ctrl+Space, the following new items appear in the WINEDEBUG=+relay output: -imm32.ImmGetDefaultIMEWnd -imm32.ImmLockIMC -imm32.ImmProcessKey -imm32.__wine_get_ui_window -KERNEL32.GlobalGetAtomNameW -KERNEL32.IsBadReadPtr -user32.GetKeyboardState -user32.ToAscii -winex11.drv.ImeInquire -winex11.drv.ImeProcessKey -winex11.drv.ImeSelect -winex11.drv.ToUnicodeEx But neither WriteConsoleInputW, nor WriteConsoleInputA never appears in the WINEDEBUG=+relay output. Thus Ctrl+Space/Ctrl+Shift+Space issue of Delphi 7 is probably unrelated to WriteConsoleInputW, but instead is related to one of the functions listed above.
https://bugs.winehq.org/show_bug.cgi?id=15083
Vijay Kamuju infyquest@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |598d334e73784ab686d460a5930 | |1bf9cdeff5719 Status|UNCONFIRMED |RESOLVED CC| |infyquest@gmail.com Resolution|--- |FIXED
--- Comment #17 from Vijay Kamuju infyquest@gmail.com --- Fixed by 598d334e73784ab686d460a59301bf9cdeff5719
https://bugs.winehq.org/show_bug.cgi?id=15083
Hugh McMaster hugh.mcmaster@outlook.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |hugh.mcmaster@outlook.com
https://bugs.winehq.org/show_bug.cgi?id=15083
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #18 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 1.8-rc3.