RFR: 8322750: Test "api/java_awt/interactive/SystemTrayTests.html" failed because A blue ball icon is added outside of the system tray
Prasanta Sadhukhan
psadhukhan at openjdk.org
Thu Feb 15 06:57:02 UTC 2024
On Thu, 15 Feb 2024 01:11:51 GMT, Alexander Zvegintsev <azvegint at openjdk.org> wrote:
> There is an issue displaying the xembed icons in the appIndicators area which are not displayed correctly with certain Gnome Shell versions.
> It was already fixed [externally](https://gitlab.gnome.org/3v1n0/gnome-shell/-/commit/20a81d786697f40880e81d867453b1bad9524ec1).
>
> However this is still a blocker on systems that have not received this fix, so this fix disables a SystemTray's support for Gnome Shell < 45 versions.
>
> Gnome Shell version detection has the following logic:
> * execute `/usr/bin/gnome-shell --version`
> * parse its output to extract the major version
> * disable the SystemTray support if the version < 45 or parsing failed for some reason
>
>
> The numbering convention changed with the introduction of Gnome Shell 40.
> The old numbering convention is also handled correctly(e.g. [3.38.1](https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/d15f6c75b19be1e32ec24165f09b3e74afaf7395/NEWS#L1134))
>
> This is a simplified fix to make it easier to backport it.
> The improved solution will be to [receive the ShellVersion property via the DBUS API](https://unix.stackexchange.com/questions/73212/how-to-get-the-gnome-version/73225#73225)
>
> Testing looks good:
> Oracle Linux 7.9, Gnome Shell 3.28.3
> Ubuntu 22.04, Gnome Shell 42.9
> Ubuntu 23.04, Gnome Shell 44.3
> Ubuntu 23.10, Gnome Shell 45.0
> Fedora 38, Gnome Shell 44.0
src/java.desktop/unix/classes/sun/awt/X11/XSystemTrayPeer.java line 58:
> 56: peerInstance = this;
> 57:
> 58: UNIXToolkit tk = (UNIXToolkit)Toolkit.getDefaultToolkit();
can we always cast to UNIXToolkit...shouldn't "instanceof" check be done here for SunToolkit or HeadlessToolkit instance, say?
src/java.desktop/unix/classes/sun/awt/X11/XSystemTrayPeer.java line 94:
> 92: return;
> 93: }
> 94:
What about `getTrayIconSize`? Should we allow to return TRAY_ICON_HEIGHT/TRAY_ICON_WIDTH if disable system tray is on?
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/17860#discussion_r1490495425
PR Review Comment: https://git.openjdk.org/jdk/pull/17860#discussion_r1490497813
More information about the client-libs-dev
mailing list