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

Replacement for com.apple.eawt.FullScreen*

    Details

    • Subcomponent:
    • CPU:
      x86
    • OS:
      os_x

      Description

      A DESCRIPTION OF THE PROBLEM :
      If I understand correctly from reading JDK-8048731 and JDK-8143914, the latter was supposed to allow macOS "native" full-screen mode to be activated by calling setExtendedState(MAXIMIZED_BOTH), exposing similar functionality to the now-deprecated com.apple.eawt.Application.requestToggleFullScreen() method. However, I was never able to make it work, and in looking at the JDK code, I don't see how it can possibly work. The com.apple.eawt.Application.requestToggleFullScreen() method hooks into PlatformWindow.toggleFullScreen(). The new code implemented in JDK-8143914 provides additional hooks into CPlatformWindow.toggleFullScreen(), but they appear to be activated only if:

      1. getRootPane().putClientProperty("apple.awt.fullscreenable", false) is called and the window is already in full-screen mode, or

      2. setResizable(false) is called and the window is already in full-screen mode.

      That does not expose the same functionality to applications as com.apple.eawt.Application.requestToggleFullScreen(). Even if it did, it could not replace com.apple.eawt.FullScreenListener, which is needed in order for applications to be notified when full-screen mode is activated or deactivated.


        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                serb Sergey Bylokhov
                Reporter:
                webbuggrp Webbug Group
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated: