Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
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.java15
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) {

Back to the top