I added some repaints to the DefaultDesktopManager. This was necessary because otherwise an InternalFrame is staying on the screen when iconifying it, or the icon is staying on the screen when deiconifying it.
2006-03-16 Roman Kennke <[EMAIL PROTECTED]> * javax/swing/DefaultDesktopManager.java (iconifyFrame): Repaint after removing the frame. (removeIconFor): Repaint after removing the icon. /Roman -- “Improvement makes straight roads, but the crooked roads, without Improvement, are roads of Genius.” - William Blake
Index: javax/swing/DefaultDesktopManager.java =================================================================== RCS file: /cvsroot/classpath/classpath/javax/swing/DefaultDesktopManager.java,v retrieving revision 1.15 diff -u -r1.15 DefaultDesktopManager.java --- javax/swing/DefaultDesktopManager.java 19 Oct 2005 15:45:03 -0000 1.15 +++ javax/swing/DefaultDesktopManager.java 16 Mar 2006 13:54:59 -0000 @@ -244,7 +244,9 @@ c.add(icon); icon.setVisible(true); } + Rectangle b = frame.getBounds(); c.remove(frame); + c.repaint(b.x, b.y, b.width, b.height); } } @@ -501,7 +503,11 @@ JDesktopIcon icon = frame.getDesktopIcon(); Container c = icon.getParent(); if (c != null && icon != null) - c.remove(icon); + { + Rectangle b = icon.getBounds(); + c.remove(icon); + c.repaint(b.x, b.y, b.width, b.height); + } } /**
signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil