RFR: 6681958: Maximization state of JInternalFrames is corrupted by WindowsDesktopManager

Prasanta Sadhukhan psadhukhan at openjdk.org
Wed Nov 26 07:53:07 UTC 2025


Issue is if one internal frame is open and maximized and another internal frame is created which is initialized with `setMaximum(true)` then after opening the second internal frame the new internal frame is opened as non-maximized

The fix makes sure the 2nd internal frame remains maximised if it is set with maximized attrbute, that is
If the current frame is maximized, transfer that attribute to the frame being activated. 
which is also mentioned in this comment 
https://github.com/openjdk/jdk/blob/46ee8d550e42f756dd04fa67ed549c93b632df77/src/java.desktop/windows/classes/com/sun/java/swing/plaf/windows/WindowsDesktopManager.java#L70-L71
 
This code seems to be added for [JDK-5036083](https://bugs.openjdk.org/browse/JDK-5036083) which expects
When a frame is maximized and then minimized, the next frame should NOT be maximized.

It still honours that fix as the test mentioned in JDK-5036083 works as expected as mentioned above along with fixing the present issue..

-------------

Commit messages:
 - Optimize fix
 - 6681958: Maximization state of JInternalFrames is corrupted by WindowsDesktopManager

Changes: https://git.openjdk.org/jdk/pull/28502/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=28502&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-6681958
  Stats: 108 lines in 2 files changed: 104 ins; 2 del; 2 mod
  Patch: https://git.openjdk.org/jdk/pull/28502.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/28502/head:pull/28502

PR: https://git.openjdk.org/jdk/pull/28502


More information about the client-libs-dev mailing list