src/macosx/classes/sun/awt/CGraphicsDevice.java

Print this page

        

*** 28,37 **** --- 28,38 ---- import java.awt.GraphicsConfiguration; import java.awt.GraphicsDevice; import java.awt.Window; import java.awt.AWTPermission; import java.awt.DisplayMode; + import java.util.Objects; import sun.java2d.opengl.CGLGraphicsConfig; public final class CGraphicsDevice extends GraphicsDevice {
*** 120,135 **** } boolean fsSupported = isFullScreenSupported(); if (fsSupported && old != null) { ! // enter windowed mode (and restore original display mode) ! exitFullScreenExclusive(old); if (originalMode != null) { setDisplayMode(originalMode); originalMode = null; } } super.setFullScreenWindow(w); if (fsSupported && w != null) { --- 121,136 ---- } boolean fsSupported = isFullScreenSupported(); if (fsSupported && old != null) { ! // restore original display mode and enter windowed mode. if (originalMode != null) { setDisplayMode(originalMode); originalMode = null; } + exitFullScreenExclusive(old); } super.setFullScreenWindow(w); if (fsSupported && w != null) {
*** 184,200 **** public boolean isDisplayChangeSupported() { return true; } @Override ! public void setDisplayMode(DisplayMode dm) { if (dm == null) { throw new IllegalArgumentException("Invalid display mode"); } ! nativeSetDisplayMode(displayID, dm.getWidth(), dm.getHeight(), dm.getBitDepth(), dm.getRefreshRate()); ! if (isFullScreenSupported() && getFullScreenWindow() != null) { ! getFullScreenWindow().setSize(dm.getWidth(), dm.getHeight()); } } @Override public DisplayMode getDisplayMode() { --- 185,208 ---- public boolean isDisplayChangeSupported() { return true; } @Override ! public void setDisplayMode(final DisplayMode dm) { if (dm == null) { throw new IllegalArgumentException("Invalid display mode"); } ! if (!Objects.equals(dm, getDisplayMode())) { ! final Window w = getFullScreenWindow(); ! if (w != null) { ! exitFullScreenExclusive(w); ! } ! nativeSetDisplayMode(displayID, dm.getWidth(), dm.getHeight(), ! dm.getBitDepth(), dm.getRefreshRate()); ! if (isFullScreenSupported() && w != null) { ! enterFullScreenExclusive(w); ! } } } @Override public DisplayMode getDisplayMode() {