Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8238722

[macOS] Delete the property which use deprecated prefix "com.apple.macos."

XMLWordPrintable

    • Icon: CSR CSR
    • Resolution: Approved
    • Icon: P4 P4
    • 15
    • client-libs
    • None
    • behavioral
    • medium
    • Applications which have not heeded 14 years of advice to migrate will be adversely affected and may not be able to function properly.
    • System or security property
    • JDK

      Summary

      Remove the deprecated macOS-only Swing system Property: com.apple.macos.useScreenMenuBar

      Problem

      The Swing UI toolkit on macOS supports two implementation System properties, either of which can be used to enable the global menu bar on macOS by setting the value to "true"

      • "com.apple.macos.useScreenMenuBar"
      • "apple.laf.useScreenMenuBar"

      The "com.apple.macos." variant of the "useScreenMenuBar" property was deprecated a long time ago, in Apple JDK 6 and this deprecation was inherited in the initial integration of the macOS port to OpenJDK.

      if this property is used the following message is printed to System.err :

      "com.apple.macos.useScreenMenuBar has been deprecated. Please switch to apple.laf.useScreenMenuBar"

      but it is still currently recognised and honoured.

      The earliest message about deprecation which I found was in 2006 and it is long overdue for removal.

      Solution

      Delete the long-deprecated System property.

      Specification

      No changes in the specification. This is a JDK implementation property

            serb Sergey Bylokhov
            serb Sergey Bylokhov
            Philip Race, Stuart Marks
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: