JetBrains / compose-multiplatform

Compose Multiplatform, a modern UI framework for Kotlin that makes building performant and beautiful user interfaces easy and enjoyable.
https://jetbrains.com/lp/compose-multiplatform
Apache License 2.0
15.9k stars 1.16k forks source link

[desktop] SystemTray Enhancement #3684

Open xinkunZ opened 1 year ago

xinkunZ commented 1 year ago

compose desktop use awt SystemTray, it has many broken behavior:

  1. not support CJK font on windows #1936
  2. not support hidpi on windows
  3. SystemTray use awt PopupMenu, It has not been maintained for a long time, maybe use JPopupMenu instead or some compose way used in Toolbox like this
    • plz let me know how toolbox implement the system tray in this picture
MatkovIvan commented 1 year ago

Thank you for opening this issue and detailing the problems you're experiencing with SystemTray when using Compose Desktop. Here's some information to address your concerns:

  1. Regarding the issue of Chinese characters generating garbled code in the system tray (#1936), we acknowledge that this is an existing problem, so please follow the mentioned issue.

  2. As for the concern on HiDPI support on Windows, could you please follow bug issue template and provide more details for us to better understand the problem? Kindly describe the current situation, what was expected, the environment where you noticed this issue, and the version of Compose Desktop you're using.

  3. The issue is already discussed in #289. According to the discussions there, Toolbox uses a system API to position an undecorated compose window. This is a similar strategy we could consider for solving the present matter.

Thank you for your patience and your valuable contributions to the community.

okushnikov commented 2 weeks ago

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.