RFR: JDK-8255439: System Tray icons get corrupted when windows scaling changes [v9]
Alexey Ivanov
aivanov at openjdk.java.net
Tue May 17 12:24:04 UTC 2022
On Mon, 16 May 2022 17:04:20 GMT, Harshitha Onkar <duke at openjdk.java.net> wrote:
>> In Windows, when desktop scaling is changed the tray icons was distorted/blurred a bit each time scaling changes.
>>
>> With the proposed fix, the tray icon scales according to on-the-fly DPI scale settings. A test case has been added which adds a MRI icon to system tray, to observe the icon scaling when DPI is changed. Since the scale cannot be programmatically changed (for dynamic on-the-fly scale changes), I have used a manual test case to test this scenario.
>>
>> When DPI changes usually two messages are sent by windows -
>>
>> - [WM_DPICHANGED](https://docs.microsoft.com/en-us/windows/win32/hidpi/wm-dpichanged)
>> - [WMPOSCHANGING](https://docs.microsoft.com/en-us/windows/win32/winmsg/wm-windowposchanging)
>>
>> I'm triggering an update on tray icons on receiving WMPOSCHANGING msg through the Tray icon's Window Procedure. Triggering an update on WM_DPICHANGED was still causing the icons to be distorted, hence WMPOSCHANGING is being used as the message to trigger the update.
>
> Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision:
>
> added ExceptionClear, fixed CI debug build issue
test/jdk/java/awt/TrayIcon/TrayIconScalingTest.java line 54:
> 52: private static SystemTray tray;
> 53: private static TrayIcon icon;
> 54:
I'm nitpicking but I guess the blank line between the fields used in the test and the instructions was in its own place to separate the two different groups.
test/jdk/java/awt/TrayIcon/TrayIconScalingTest.java line 87:
> 85: }
> 86: }
> 87:
There's usually a blank line between methods to visually separate the end of the previous method from the start of the following one.
-------------
PR: https://git.openjdk.java.net/jdk/pull/8441
More information about the client-libs-dev
mailing list