MegaGlest / megaglest-source

MegaGlest real-time strategy game engine (cross-platform, 3-d)
http://megaglest.org/
349 stars 89 forks source link

sdl2: In the Polish language is not possible to write special character "ę" (RAlt+e) #78

Closed filux closed 8 years ago

filux commented 8 years ago

RAlt+e wrongly enables some modifier (something like "g" with hat g with hat ) and then you can write another character which is modified in most cases by adding something under or on top of it. Key test for RAlt+e shows ("A" with 2 dots on top) -60,-60,512 notfullscreen2.

Normally character "ę" should be created instant by single use RAlt+e. In the Polish language don't exist "accents" produced "in two steps" at all.

softcoder commented 8 years ago

What screen is this defect referring to?

filux commented 8 years ago

Both. First screen ("g" with hat) is in game chat after single RAlt+e (enabled some modifier mode and waits for next letter). Second screen shows in game key test for RAlt+e. In both cases expected is "ę" character.

softcoder commented 8 years ago

Which page in the game are you typing this.

filux commented 8 years ago

1-st screen. New Game > Custom Game > Play now > Enter > RAlt+e (in the chat, single use RAlt+e) 2-nd screen. Options > Keyboard setup > RAlt+e (in the key test box)

titiger commented 8 years ago

I have similar issues with the Euro ( € ) character. I cannot input it in irc chat in the lobby for example. This works in sdl1.2 MG

filux commented 8 years ago

a bit unrelated but also ctrl+L - hidden language menu doesn't work (fixed since 6d0592d)

filux commented 8 years ago

since 6d0592d RAlt+e works different but still wrong (single use RAlt+e), because produces "e" and "g with hat" at once wrongletter

filux commented 8 years ago

today I got idea about check/compare codes in key test, because maybe this may be somehow helpful, so now (sdl2) I see:

... and for old values (sdl1 / 3.11.1) I see:

... so 3 values vs 4 values and for sure this long sdl2 numbers for "RAlt" look strange

titiger commented 8 years ago

Suggestion: currently we use key events like MainMenu::keyPress and so on. Thats ok for normal button pressed events in the game and so on. For real textinput ( active text input label ) its maybe better to use a new SDL2 way and use SDL_TextInputEvent directly in the places where text input is needed.

filux commented 8 years ago

on 76d41df in game I don't see any difference: wrongletter3

... on the "headless configuration screen" is the same situation: wrongletter2

... but in the lobby I see something different (first time I tested here, didn't expected differencess): wrongletter1 so in the lobby is very close (e + proper and expected: "ę") and second RAlt+e produces again "eę" so somehow modifier "g with hat" is not present here. ... but if I do "Ralt+e" and then "Backspace" (removing character before cursor) then I got same effect like in game:

wrongletter3

... so for removing "ę" in the lobby I have to use "Backspace" twice :|.

filux commented 8 years ago

on 964c776 in game still old behavior ^. ... in the lobby "ę" works but backspace doesn't work at all, so you can't remove characters.

filux commented 8 years ago

on 81346ba all looks to be fixed :)