On Wed, 19 May 2021 10:23:01 GMT, Maxim Kartashev
<[email protected]> wrote:
> This commit introduces a new client property xawt.mwm_decor_title
> implementing JDK-8267307. The property can be set prior to showing a window
> or after the window has been displayed, in which case the window will have to
> be hidden/shown (re-mapped) for the property to take effect.
>
> The general idea is to provide control over the "decorations" part of the X11
> window property called _MOTIF_WM_HINTS. Those "decoration" bits are set to 1
> (XWindowAttributesData.AWT_DECOR_ALL) to show all the decorations or 0
> (XWindowAttributesData.AWT_DECOR_NONE) to ask the window manager (WM) not to
> decorate with anything, even borders or resize handles. With
> xawt.mwm_decor_title property set to "true", this commit adds the ability to
> set the bits to 2 (XWindowAttributesData.AWT_DECOR_BORDER), which some WMs
> take as "decorate with only a border", thus effectively removing the window's
> title bar, but still leaving the resize capability.
>
> This feature was tested and works correctly on "vanilla" Ubuntu 20.04 with
> the "GNOME Shell" window manager. It was also tested with Xfwm4 and KDE,
> where it did not have any effect; these two WMs have limited respected for
> the "decorations" bits of the _MOTIF_WM_HINTS window property.
This fix most likely will require a CSR
test/jdk/java/awt/Window/WindowTitleVisibleTest/WindowTitleVisibleTestLinuxGnome.java
line 111:
> 109: private void captureTitleBarNotVisible() {
> 110: runSwing( () -> {
> 111: titleBarImageNotVisible =
> robot.createScreenCapture(titleBarBounds);
`createScreenCapture` does not require to be called on EDT.
-------------
PR: https://git.openjdk.java.net/jdk/pull/4113