diff options
Diffstat (limited to 'bundles/org.eclipse.compare/plugins/org.eclipse.compare/compare/org/eclipse/compare/internal/ResizableDialog.java')
-rw-r--r-- | bundles/org.eclipse.compare/plugins/org.eclipse.compare/compare/org/eclipse/compare/internal/ResizableDialog.java | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/bundles/org.eclipse.compare/plugins/org.eclipse.compare/compare/org/eclipse/compare/internal/ResizableDialog.java b/bundles/org.eclipse.compare/plugins/org.eclipse.compare/compare/org/eclipse/compare/internal/ResizableDialog.java index 3f21c5ace..26e5fe34d 100644 --- a/bundles/org.eclipse.compare/plugins/org.eclipse.compare/compare/org/eclipse/compare/internal/ResizableDialog.java +++ b/bundles/org.eclipse.compare/plugins/org.eclipse.compare/compare/org/eclipse/compare/internal/ResizableDialog.java @@ -45,14 +45,6 @@ public abstract class ResizableDialog extends Dialog { final Shell s= getShell(); if (s != null) { - s.addShellListener( - new ShellAdapter() { - public void shellClosed(ShellEvent arg0) { - if (fNewBounds != null) - saveBounds(fNewBounds); - } - } - ); s.addControlListener( new ControlListener() { public void controlMoved(ControlEvent arg0) { @@ -123,6 +115,13 @@ public abstract class ResizableDialog extends Dialog { return loc; } + public boolean close() { + boolean closed= super.close(); + if (closed && fNewBounds != null) + saveBounds(fNewBounds); + return closed; + } + private void saveBounds(Rectangle bounds) { IDialogSettings dialogBounds= fSettings.getSection(DIALOG_BOUNDS_KEY); if (dialogBounds == null) { |