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

[macos] Java frame and dialog presented full screen freeze application

XMLWordPrintable

    • Icon: CSR CSR
    • Resolution: Approved
    • Icon: P3 P3
    • 17
    • client-libs
    • None
    • minimal
    • This is just adding a new property.
    • System or security property
    • Implementation

      Summary

      Define a new implementation system property "jdk.allowMacOSTabbedWindows" which allows users to over-ride the default JDK behaviour of disabling these

      Problem

      macOS provides a System Setting "Prefer tabbed windows" which forces all top-level windows of an application to open as a tab of a single top-level window. This does not work well with most Java applications and can even cause them to freeze. Consquently JDK over-rides this System Setting to disable tabbed windows. But some applications may want to use this setting, so we need a way to let them over-ride the JDK default behaviour.

      Solution

      Define a new implementation system property "jdk.allowMacOSTabbedWindows", to let users opt in to the Mac OS tabbed Window functionality. This property is set to false by default. It does not itself force tabbed windows, but allows JDK to follow the system default behavior.

      This property has no effect on any platform other than macOS.

      The choice of "jdk" prefix is in large part because OpenJFX intends to adopt the same prefix and there is precedent for this in other cases where AWT/2D/Swing and OpenJFX want to behave consistently with each other.

      This system property will not be documented but will be provided on request.

      Specification

      Tabbed windows for JDK applications on macOS can be allowed by specifying -Djdk.allowMacOSTabbedWindows=true/TRUE/tRUE/TrUE..

            trebari Tejpal Rebari (Inactive)
            webbuggrp Webbug Group
            Kevin Rushforth, Philip Race
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: