From 6c009d8c5ec5d4cd7fd979b9efe76ea64d4e1fe5 Mon Sep 17 00:00:00 2001 From: Anton Leherbauer Date: Thu, 29 Nov 2007 15:40:33 +0000 Subject: [PATCH] Fix for 211251: Open Element takes too long when using for large project --- .../internal/ui/browser/opentype/ElementSelectionDialog.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/core/org.eclipse.cdt.ui/browser/org/eclipse/cdt/internal/ui/browser/opentype/ElementSelectionDialog.java b/core/org.eclipse.cdt.ui/browser/org/eclipse/cdt/internal/ui/browser/opentype/ElementSelectionDialog.java index 6d1afde40b4..dfaa8b9e1e7 100644 --- a/core/org.eclipse.cdt.ui/browser/org/eclipse/cdt/internal/ui/browser/opentype/ElementSelectionDialog.java +++ b/core/org.eclipse.cdt.ui/browser/org/eclipse/cdt/internal/ui/browser/opentype/ElementSelectionDialog.java @@ -81,13 +81,12 @@ public class ElementSelectionDialog extends TypeSelectionDialog { public void run() { if (!shell.isDisposed() && !monitor.isCanceled()) { setListElements(elements); - done(Status.OK_STATUS); updateOkState(); } }}; shell.getDisplay().asyncExec(update); monitor.done(); - return Job.ASYNC_FINISH; + return Status.OK_STATUS; } } return Status.CANCEL_STATUS; @@ -346,7 +345,7 @@ public class ElementSelectionDialog extends TypeSelectionDialog { newPrefix= null; needQuery= needQuery || fCurrentPrefix != null; } - if(needQuery) { + if(needQuery || fUpdateJob.getState() == Job.WAITING || fUpdateJob.getState() == Job.SLEEPING) { fUpdateJob.cancel(); fCurrentPrefix= newPrefix; fUpdateJob.schedule(200);