Dmitry Timoshkov : wineconsole: Don't ignore extended keys.

Alexandre Julliard julliard at winehq.org
Tue Oct 28 10:01:53 CDT 2008


Module: wine
Branch: master
Commit: b8b0b7fa41640bc983479595f9bb337bbdbbd019
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=b8b0b7fa41640bc983479595f9bb337bbdbbd019

Author: Dmitry Timoshkov <dmitry at codeweavers.com>
Date:   Mon Oct 27 19:14:05 2008 +0800

wineconsole: Don't ignore extended keys.

---

 programs/wineconsole/user.c |   33 +++++++++++++++------------------
 1 files changed, 15 insertions(+), 18 deletions(-)

diff --git a/programs/wineconsole/user.c b/programs/wineconsole/user.c
index 01950a3..1c00f31 100644
--- a/programs/wineconsole/user.c
+++ b/programs/wineconsole/user.c
@@ -1035,26 +1035,23 @@ static void    WCUSER_GenerateKeyInputRecord(struct inner_data* data, BOOL down,
     if (lParam & (1L << 24))		ir.Event.KeyEvent.dwControlKeyState |= ENHANCED_KEY;
     if (sys)				ir.Event.KeyEvent.dwControlKeyState |= LEFT_ALT_PRESSED; /* FIXME: gotta choose one */
 
-    if (!(ir.Event.KeyEvent.dwControlKeyState & ENHANCED_KEY))
+    if (down)
     {
-	if (down)
-	{
-	    switch (ToUnicode(wParam, HIWORD(lParam), keyState, buf, 2, 0))
-	    {
-	    case 2:
-		/* FIXME... should generate two events... */
-		/* fall thru */
-	    case 1:
-		last = buf[0];
-		break;
-	    default:
-		last = 0;
-		break;
-	    }
-	}
-	ir.Event.KeyEvent.uChar.UnicodeChar = last; /* FIXME: HACKY... and buggy because it should be a stack, not a single value */
-	if (!down) last = 0;
+        switch (ToUnicode(wParam, HIWORD(lParam), keyState, buf, 2, 0))
+        {
+        case 2:
+            /* FIXME... should generate two events... */
+            /* fall thru */
+        case 1:
+            last = buf[0];
+            break;
+        default:
+            last = 0;
+            break;
+        }
     }
+    ir.Event.KeyEvent.uChar.UnicodeChar = last; /* FIXME: HACKY... and buggy because it should be a stack, not a single value */
+    if (!down) last = 0;
 
     WriteConsoleInput(data->hConIn, &ir, 1, &n);
 }




More information about the wine-cvs mailing list