diff -ru 5.2.0/jEdit/org/gjt/sp/jedit/gui/FloatingWindowContainer.java 5.2.0/jEdit-patched/org/gjt/sp/jedit/gui/FloatingWindowContainer.java
--- 5.2.0/jEdit/org/gjt/sp/jedit/gui/FloatingWindowContainer.java 2015-02-02 02:14:28.000000000 +0100
+++ 5.2.0/jEdit-patched/org/gjt/sp/jedit/gui/FloatingWindowContainer.java 2015-02-28 20:55:01.800035337 +0100
@@ -35,7 +35,7 @@
import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.JButton;
-import javax.swing.JFrame;
+import javax.swing.JDialog;
import javax.swing.JPopupMenu;
import javax.swing.JSeparator;
import javax.swing.SwingUtilities;
@@ -50,7 +50,7 @@
* @version $Id: FloatingWindowContainer.java 21831 2012-06-18 22:54:17Z ezust $
* @since jEdit 4.0pre1
*/
-public class FloatingWindowContainer extends JFrame implements DockableWindowContainer,
+public class FloatingWindowContainer extends JDialog implements DockableWindowContainer,
PropertyChangeListener
{
String dockableName = null;
@@ -58,6 +58,8 @@
public FloatingWindowContainer(DockableWindowManagerImpl dockableWindowManager,
boolean clone)
{
+ super(dockableWindowManager.getView());
+
this.dockableWindowManager = dockableWindowManager;
dockableWindowManager.addPropertyChangeListener(this);
@@ -93,7 +95,6 @@
pack();
Container parent = dockableWindowManager.getView();
GUIUtilities.loadGeometry(this, parent, dockableName);
- GUIUtilities.addSizeSaver(this, parent, dockableName);
KeyListener listener = dockableWindowManager.closeListener(dockableName);
addKeyListener(listener);
getContentPane().addKeyListener(listener);
@@ -160,8 +161,11 @@
@Override
public void dispose()
{
- entry.container = null;
- entry.win = null;
+ GUIUtilities.saveGeometry(this, dockableWindowManager.getView(), dockableName);
+ if (entry != null) {
+ entry.container = null;
+ entry.win = null;
+ }
super.dispose();
} //}}}