Skip to content

[Linux/X11] RetroArch is not using _NET_WM_NAME(UTF8_STRING) for proper Unicode support, causing window title become unreadable. #18444

@shodanwang

Description

@shodanwang

Is there an existing issue for this?

  • This is a bug in RetroArch frontend
  • I have searched the existing issues

Description

After installing RetroArch through flatpak and launch the software, the window title shows garbled characters:

Image

The language is set to Traditional Chinese. The system font for the Window Title is "Noto Sans CJK JP Bold".

After some debugging, I think the issue is that RetroArch is not using _NET_WM_NAME with UTF8_STRING for proper Unicode support. The output of xprop is provided at the "Relevant log output" section. We can see that it's using WM_NAME(STRING), not _NET_WM_NAME(UTF8_STRING). Using the following command can fix the issue temporarily:

# The `<window ID>` can be obtained with `wmctrl -lx`
xprop -id <window ID> -f _NET_WM_NAME 8u -set _NET_WM_NAME "復古電玩"
Image

However when RetroArch create a new window for a game, or, closing the game and switch back to the main interface, the window title will become unreadable again.

To fix the issue, RetroArch should make sure it's using _NET_WM_NAME(UTF8_STRING), not WM_NAME(STRING).

Expected behavior

Window Title should show readable characters ( e.g. "復古電玩" ), not garbled characters.

Steps to reproduce the bug

I'm using Linux Mint 22.2 Zara Cinnamon, with Language set to Traditional Chinese (繁體中文) . The output of locale:

> locale
LANG=zh_TW.UTF-8
LANGUAGE=zh_TW:zh
LC_CTYPE="zh_TW.UTF-8"
LC_NUMERIC="zh_TW.UTF-8"
LC_TIME="zh_TW.UTF-8"
LC_COLLATE="zh_TW.UTF-8"
LC_MONETARY="zh_TW.UTF-8"
LC_MESSAGES="zh_TW.UTF-8"
LC_PAPER="zh_TW.UTF-8"
LC_NAME="zh_TW.UTF-8"
LC_ADDRESS="zh_TW.UTF-8"
LC_TELEPHONE="zh_TW.UTF-8"
LC_MEASUREMENT="zh_TW.UTF-8"
LC_IDENTIFICATION="zh_TW.UTF-8"
LC_ALL=

The font I'm using is Noto Sans CJK JP Regular and Noto Sans CJK JP Bold ( can be downloaded from here ).
To reproduce:

  1. Install the latest RetroArch (v1.22.2) through flatpak.
  2. Open RetroArch. Set the language to Traditional Chinese, then restart.
  3. The main interface should be normal, only the window title will show unreadable string.
  4. Also, when we choose a game and play, RetroArch will open another window for showing the game, this window is also affected. Switching back to the main interface after closing the game also has this issue.

For nightly build ( 2025-11-25_RetroArch.7z ), it doesn't show window title, however the xprop output are basically the same, so I'll treat it as reproducible in nightly build. The one installed through apt also has this issue ( xprop not showing _NET_WM_NAME(UTF8_STRING) ).

Version/Commit

1.22.2

Bisect Results

I don't know

Present in the nightly version

Yes, this is reproduced in the nightly build

Platform & operating system

Linux Mint 22.2 Zara Cinnamon

Affected Cores

All cores.

Environment information

  • $XDG_CURRENT_DESKTOP: X-Cinnamon.
  • Installed through flatpak.

Relevant log output

# this is the xprop output of RetroArch

WM_NAME(STRING) = "復å\302\217¤é\302\233»ç\302\216©"
WM_PROTOCOLS(ATOM): protocols  WM_DELETE_WINDOW
XKLAVIER_STATE(INTEGER) = 0, -2062181120
_NET_WM_STATE(ATOM) = _NET_WM_STATE_MAXIMIZED_HORZ, _NET_WM_STATE_MAXIMIZED_VERT
WM_STATE(WM_STATE):
                window state: Normal
                icon window: 0x0
_NET_WM_DESKTOP(CARDINAL) = 0
_GTK_EDGE_CONSTRAINTS(CARDINAL) = 85
_NET_FRAME_EXTENTS(CARDINAL) = 0, 0, 64, 0
WM_CLIENT_MACHINE(STRING) = <redacted>
_NET_WM_PID(CARDINAL) = 2
WM_CLASS(STRING) = "retroarch", "retroarch"
_NET_WM_ICON(CARDINAL) =        Icon (16 x 16):
.............<redacted>................

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions