Hi,

  Interesting. I saw that you did this:

 if (sizeof(ImWchar) == 2)
                cp = 0xFFFD;

  We use the TCHAR definition which is a 16 bits value when UNICODE is
defined (the default in IUP), i.e. sizeof==2 by default. So we don't
actually need the "Surrogate" variable storage but just to replace the
surrogate pair by 0xFFFD. Is that correct?

Best,
Scuri


Em qui, 9 de mai de 2019 às 04:45, 云风 Cloud Wu <clou...@gmail.com> escreveu:

> IupGLText can't handle surrogate pairs (
> https://en.wikipedia.org/wiki/UTF-16 ) now.
>
> In windows, a unicode above U+10000 (For example U+1F604 😀 ) will be
> separated into two WM_CHAR messages. If we got a WM_CHAR with WPARAM
> between 0xD800 to 0xDBFF , we should wait for another part of
> surrogate pair, and combine them into one unicode code point.
>
> btw, I fix the same issue for imgui . This patch   (
>
> https://github.com/ocornut/imgui/pull/2541/commits/fc2dff0ab602e77628a97edd983f03f6f571487a
> ) is for your reference.
>
> --
> http://blog.codingnow.com
>
>
> _______________________________________________
> Iup-users mailing list
> Iup-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/iup-users
>
_______________________________________________
Iup-users mailing list
Iup-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/iup-users

Reply via email to