Unicode Client Communications
Client/server data flow has be reworked to support unicode data.
Overview
Initially, Only the Java Client will communicate using unicode data. The Win32 and Character clients will not support unicode data at this time.
- Client and Server exchange all alpha data as UTF-8
- Client transcodes received data from UTF-8 to UTF-32
- Client transcodes sent data from UTF-32 to UTF-8
- Server transcodes received data from UTF-8 to the single-byte encoding (8859-15) for RAW fields or UTF-32 as appropriate
- Server transcodes sent data from the internal single-byte encoding (8859-15) for RAW fields or UTF-32 to UTF-8.
Test Plan:
Bugs:
- Some characters do not display properly. In the range U+0400 to U+0402, the top part of the character is missing, which makes the first two characters look the same (Mac client) or the U+0400 character does not display at all (Windows client). The Windows probelm could be because the font DialogInput does not have anythhing to display for U+0400.
- A field that contains '\n', chr(10) or '\r' and is set as a Label widget does not display correctly. Those characters should create a new line, but instead display as a space, or treat them as literals (as the non unicode client does).
--
PeteBrower - 2011-03-04