Usermode/AxWin3 WM - Fixed cursor position not changing in edit control when arrow...
authorJohn Hodge <[email protected]>
Sun, 1 Apr 2012 02:34:10 +0000 (10:34 +0800)
committerJohn Hodge <[email protected]>
Sun, 1 Apr 2012 02:34:10 +0000 (10:34 +0800)
Usermode/Applications/axwin3_src/WM/renderers/widget/textinput.c

index 9a0ae64..6d34a8e 100644 (file)
@@ -140,13 +140,25 @@ int Widget_TextInput_KeyFire(tElement *Element, int KeySym, int Character)
                        {
                                len = ReadUTF8Rev(Element->Text, info->CursorByteOfs, &cp);
                                info->CursorByteOfs -= len;
+                               WM_Render_GetTextDims(
+                                       gpTextInput_Font,
+                                       Element->Text+info->CursorByteOfs,
+                                       len, &w, 0
+                                       );
+                               info->CursorXOfs -= w;
                        }
                        break;
                case KEYSYM_RIGHTARROW:
                        if( info->CursorByteOfs < info->Length )
                        {
                                len = ReadUTF8(Element->Text + info->CursorByteOfs, &cp);
+                               WM_Render_GetTextDims(
+                                       gpTextInput_Font,
+                                       Element->Text+info->CursorByteOfs,
+                                       len, &w, 0
+                                       );
                                info->CursorByteOfs += len;
+                               info->CursorXOfs += w;
                        }
                        break;
                }

UCC git Repository :: git.ucc.asn.au