--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/Tools/jEdit/patches/docking Sun Mar 19 20:28:21 2017 +0100
@@ -0,0 +1,52 @@
+diff -ru 5.4.0/jEdit-orig/org/gjt/sp/jedit/gui/FloatingWindowContainer.java 5.4.0/jEdit-patched/org/gjt/sp/jedit/gui/FloatingWindowContainer.java
+--- 5.4.0/jEdit-orig/org/gjt/sp/jedit/gui/FloatingWindowContainer.java 2017-03-18 14:30:25.000000000 +0100
++++ 5.4.0/jEdit-patched/org/gjt/sp/jedit/gui/FloatingWindowContainer.java 2017-03-19 19:27:45.730945687 +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;
+@@ -51,7 +51,7 @@
+ * @version $Id: FloatingWindowContainer.java 24411 2016-06-19 11:02:53Z kerik-sf $
+ * @since jEdit 4.0pre1
+ */
+-public class FloatingWindowContainer extends JFrame implements DockableWindowContainer,
++public class FloatingWindowContainer extends JDialog implements DockableWindowContainer,
+ PropertyChangeListener
+ {
+ String dockableName = null;
+@@ -59,6 +59,8 @@
+ public FloatingWindowContainer(DockableWindowManagerImpl dockableWindowManager,
+ boolean clone)
+ {
++ super(dockableWindowManager.getView());
++
+ this.dockableWindowManager = dockableWindowManager;
+
+ dockableWindowManager.addPropertyChangeListener(this);
+@@ -94,7 +96,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);
+@@ -161,8 +162,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();
+ } //}}}
+