On Wed, 15 Apr 2026 10:21:53 GMT, Thiago Milczarek Sayao <[email protected]> 
wrote:

> `GetStringUTFChars` returns a modified UTF-8 string  that encodes 
> supplementary characters differently from standard UTF-8, so emojis may not 
> be handled as expected by GTK or other Linux desktop components that expect 
> standard UTF-8.
> 
> See:
> https://www.oracle.com/technical-resources/articles/javase/supplementary.html
> https://www.javathinking.com/blog/what-is-the-java-s-internal-represention-for-string-modified-utf-8-utf-16/
> 
> There are other places where `GetStringUTFChars` is used, such as in the file 
> open dialog, but it’s unclear whether this is affected in any real user 
> scenarios.
> 
> Using the sample from the bug report with this fix:
> <img width="778" height="574" alt="image" 
> src="https://github.com/user-attachments/assets/6a66a746-2239-465d-ad5f-688933deb537";
>  />
> 
> 
> ---------
> - [x] I confirm that I make this contribution in accordance with the [OpenJDK 
> Interim AI Policy](https://openjdk.org/legal/ai).

Testing looks good. I left one minor comment. I'll reapprove if you make the 
suggested change.

modules/javafx.graphics/src/main/native-glass/gtk/glass_general.cpp line 894:

> 892: 
> 893: /*
> 894:  * GetStringUTFChars returns a modified UTF-8 string

I recommend adding an initial sentence before this one stating what the method 
does (followed by the comment you added, which explains why). Something like:


Convert from jstring to standard UTF-8 using GTK utility method g_utf16_to_utf8.

-------------

Marked as reviewed by kcr (Lead).

PR Review: https://git.openjdk.org/jfx/pull/2150#pullrequestreview-4113535577
PR Review Comment: https://git.openjdk.org/jfx/pull/2150#discussion_r3086431920

Reply via email to