Author: hbelusca
Date: Sat Jun 29 20:22:36 2013
New Revision: 59373

URL: http://svn.reactos.org/svn/reactos?rev=59373&view=rev
Log:
[FREELDR]
Fix extended and control characters handling in text-boxes. We don't show 
anymore strange characters when pressing on, e.g. up or down arrows anymore.
Also, fix uppercase 'o' character (which has the same scan code but is not an 
extended key, as the End key).
The culprit revision which introduced this bug is r58658.

CORE-7323 #resolve #comment The uppercase 'o' problem is fixed in revision 
r59373. Thanks for your report :)

Modified:
    trunk/reactos/boot/freeldr/freeldr/ui/tui.c

Modified: trunk/reactos/boot/freeldr/freeldr/ui/tui.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/ui/tui.c?rev=59373&r1=59372&r2=59373&view=diff
==============================================================================
--- trunk/reactos/boot/freeldr/freeldr/ui/tui.c [iso-8859-1] (original)
+++ trunk/reactos/boot/freeldr/freeldr/ui/tui.c [iso-8859-1] Sat Jun 29 
20:22:36 2013
@@ -952,29 +952,29 @@
                     MachBeep();
                 }
             }
-            else if (key == KEY_HOME) // Go to the start of the buffer
+            else if (Extended && key == KEY_HOME) // Go to the start of the 
buffer
             {
                 EditBoxTextPosition = 0;
             }
-            else if (key == KEY_END) // Go to the end of the buffer
+            else if (Extended && key == KEY_END) // Go to the end of the buffer
             {
                 EditBoxTextPosition = EditBoxTextLength;
             }
-            else if (key == KEY_RIGHT) // Go right
+            else if (Extended && key == KEY_RIGHT) // Go right
             {
                 if (EditBoxTextPosition < EditBoxTextLength)
                     EditBoxTextPosition++;
                 else
                     MachBeep();
             }
-            else if (key == KEY_LEFT) // Go left
+            else if (Extended && key == KEY_LEFT) // Go left
             {
                 if (EditBoxTextPosition > 0)
                     EditBoxTextPosition--;
                 else
                     MachBeep();
             }
-            else // Add this key to the buffer
+            else if (!Extended) // Add this key to the buffer
             {
                 if ( (EditBoxTextLength   < Length - 1) &&
                      (EditBoxTextPosition < Length - 1) )
@@ -991,6 +991,10 @@
                 {
                     MachBeep();
                 }
+            }
+            else
+            {
+                MachBeep();
             }
         }
 


Reply via email to