Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrey Loskutov2022-02-18 10:21:52 +0000
committerAndrey Loskutov2022-02-18 16:36:47 +0000
commita30da53f3a5a0d1b0befd73a55b77fd7ac68b359 (patch)
tree5702c1d25e07902cdb214aaddfb1f9c4edb0b64b
parent4f5c0274a0707c974528cb23578d60a8ac4033d0 (diff)
downloadeclipse.platform.ui-Y20220219-0600.tar.gz
eclipse.platform.ui-Y20220219-0600.tar.xz
eclipse.platform.ui-Y20220219-0600.zip
disabled Dispose all created arrowCursors' properly. Change-Id: Icd4c46657f59c4dd5285c2b4aa12bbc89e967aaf Reviewed-on: https://git.eclipse.org/r/c/platform/eclipse.platform.ui/+/190942 Reviewed-by: Matthias Becker <ma.becker@sap.com> Reviewed-by: Lars Vogel <Lars.Vogel@vogella.com> Reviewed-by: Andrey Loskutov <loskutov@gmx.de> Tested-by: Andrey Loskutov <loskutov@gmx.de>
-rw-r--r--bundles/org.eclipse.e4.ui.progress/src/org/eclipse/e4/ui/progress/internal/ProgressMonitorJobsDialog.java4
-rw-r--r--bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/ProgressMonitorDialog.java4
-rw-r--r--bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java4
3 files changed, 9 insertions, 3 deletions
diff --git a/bundles/org.eclipse.e4.ui.progress/src/org/eclipse/e4/ui/progress/internal/ProgressMonitorJobsDialog.java b/bundles/org.eclipse.e4.ui.progress/src/org/eclipse/e4/ui/progress/internal/ProgressMonitorJobsDialog.java
index a6f701f7359..0f6bdf3d87d 100644
--- a/bundles/org.eclipse.e4.ui.progress/src/org/eclipse/e4/ui/progress/internal/ProgressMonitorJobsDialog.java
+++ b/bundles/org.eclipse.e4.ui.progress/src/org/eclipse/e4/ui/progress/internal/ProgressMonitorJobsDialog.java
@@ -219,7 +219,9 @@ public class ProgressMonitorJobsDialog extends ProgressMonitorDialog {
composite.setFont(parent.getFont());
// Add the buttons to the button bar.
if (arrowCursor == null) {
- arrowCursor = new Cursor(parent.getDisplay(), SWT.CURSOR_ARROW);
+ Cursor cursor = new Cursor(parent.getDisplay(), SWT.CURSOR_ARROW);
+ arrowCursor = cursor;
+ composite.addDisposeListener(e -> cursor.dispose());
}
createButtonsForButtonBar(composite);
return composite;
diff --git a/bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/ProgressMonitorDialog.java b/bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/ProgressMonitorDialog.java
index f81abbd43ef..f9c8d820cac 100644
--- a/bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/ProgressMonitorDialog.java
+++ b/bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/ProgressMonitorDialog.java
@@ -395,7 +395,9 @@ public class ProgressMonitorDialog extends IconAndMessageDialog implements
cancel = createButton(parent, IDialogConstants.CANCEL_ID,
IDialogConstants.CANCEL_LABEL, true);
if (arrowCursor == null) {
- arrowCursor = new Cursor(cancel.getDisplay(), SWT.CURSOR_ARROW);
+ Cursor cursor = new Cursor(cancel.getDisplay(), SWT.CURSOR_ARROW);
+ arrowCursor = cursor;
+ cancel.addDisposeListener(e -> cursor.dispose());
}
cancel.setCursor(arrowCursor);
setOperationCancelButtonEnabled(enableCancelButton);
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java
index d843e8b7d2d..34d0fc5f740 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java
@@ -192,7 +192,9 @@ public class ProgressMonitorJobsDialog extends ProgressMonitorDialog {
composite.setFont(parent.getFont());
// Add the buttons to the button bar.
if (arrowCursor == null) {
- arrowCursor = new Cursor(parent.getDisplay(), SWT.CURSOR_ARROW);
+ Cursor cursor = new Cursor(parent.getDisplay(), SWT.CURSOR_ARROW);
+ arrowCursor = cursor;
+ composite.addDisposeListener(e -> cursor.dispose());
}
createButtonsForButtonBar(composite);
return composite;

Back to the top