JDK-8240995 : [macos] Unified toolbar is broken in JDK 11
  • Type: Bug
  • Component: client-libs
  • Sub-Component: javax.swing
  • Affected Version: 8,11
  • Priority: P3
  • Status: Closed
  • Resolution: Not an Issue
  • OS: os_x
  • CPU: x86
  • Submitted: 2020-03-11
  • Updated: 2021-11-30
  • Resolved: 2020-04-07
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Other
tbdResolved
Sub Tasks
JDK-8241676 :  
Description
ADDITIONAL SYSTEM INFORMATION :
macOS Catalina
Version 10.15.3

A DESCRIPTION OF THE PROBLEM :
A unified toolbar can be achieved on macOS by setting the client property "apple.awt.brushMetalLook" to true on the root pane of a Frame. This will remove the visual appearance of the title bar.
The unified toolbar appearance is broken in Java 13.0.2 and in early access Java 14.

REGRESSION : Last worked in version 8u241

STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
- Run the test program.
- Notice that some sort of title bar appears at the top.

EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
There should not appear a title bar like band, the window background should remain a smooth gradient.
ACTUAL -
There appears some kind of title bar at the top. The window background is no longer a smooth gradient.

---------- BEGIN SOURCE ----------
import javax.swing.*;

public class AppleBrushMetal
{
    public static void main(String[] args)
    {
        SwingUtilities.invokeLater(() ->
        {
            JFrame f = new JFrame();
            JRootPane r = f.getRootPane();
            r.putClientProperty("apple.awt.brushMetalLook", true);
            f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            f.setSize(200, 200);
            f.setVisible(true);
        });
    }
}

---------- END SOURCE ----------

FREQUENCY : always



Comments
Release Note: Type: External Issue Textured window support was implemented by using NSTexturedBackgroundWindowMask value of NSWindowStyleMask. However it was deprecated in 10.12 with NSWindowStyleMaskTexturedBackground which also got deprecated in 10.14 ============= http://codeworkshop.net/objc-diff/sdkdiffs/macos/10.14/AppKit.html Modified NSWindowStyleMaskTexturedBackground Availability Deprecation Message From Available none To Deprecated Textured window style should no longer be used ============================================ so from osx10.14 onwards, there is no support for Textured window style
24-03-2020

http://mail.openjdk.java.net/pipermail/swing-dev/2020-March/010231.html
22-03-2020

Please see discussion http://mail.openjdk.java.net/pipermail/swing-dev/2020-March/010230.html
22-03-2020

Seems to be regression from JDK-8205424
17-03-2020