RFR: 8305825: getBounds API returns wrong value resulting in multiple Regression Test Failures on Ubuntu 23.04

Phil Race prr at openjdk.org
Wed Dec 6 16:48:40 UTC 2023


On Mon, 4 Dec 2023 23:26:12 GMT, Alexander Zvegintsev <azvegint at openjdk.org> wrote:

> The root of this issue is the incorrect calculation of window decoration insets.
> 
> Previously we got non-zero window insets in the first PropertyNotify with [_NET_FRAME_EXTENTS](https://specifications.freedesktop.org/wm-spec/wm-spec-latest.html#idm45771211302000) atom, save them and never change them again.
> 
> This changed starting with Ubuntu 23.04:
> Now we can get several such notifications with zero window insets, and only then the correct value.
> 
> Our code is not ready for this. It affects all our JDK. As a result, many tests fail on Ubuntu 23.04 and 23.10.
> 
> The solution is to change these insets on the fly, for now only for Mutter window manager. 
> The guessInsets for it have also been updated.
> 
> 
> This also means that some tests need some stabilization as they are not ready for such late arrival of window insets.
> 
> Testing looks good.

Marked as reviewed by prr (Reviewer).

src/java.desktop/unix/classes/sun/awt/X11/XWM.java line 1376:

> 1374:                   break;
> 1375:               case MOTIF_WM:
> 1376:               case OPENLOOK_WM:

Out of scope for this fix but in a future fix I think we can get rid of at least
(1) LG3D
(2) OPENLOOK
and very probably
(3) MOTIF
and perhaps also
(4) CDE

They are all obsolete.

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

PR Review: https://git.openjdk.org/jdk/pull/16960#pullrequestreview-1768082781
PR Review Comment: https://git.openjdk.org/jdk/pull/16960#discussion_r1417641109


More information about the client-libs-dev mailing list