mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
inspection view: fix alarm leak EA-92663
This commit is contained in:
+3
-8
@@ -31,14 +31,10 @@ import com.intellij.psi.*;
|
||||
import com.intellij.util.Alarm;
|
||||
import com.intellij.util.Processor;
|
||||
import com.intellij.util.containers.hash.HashSet;
|
||||
import com.intellij.util.ui.tree.TreeUtil;
|
||||
import com.intellij.util.ui.update.MergingUpdateQueue;
|
||||
import com.intellij.util.ui.update.Update;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import javax.swing.tree.DefaultTreeModel;
|
||||
import javax.swing.tree.TreePath;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
@@ -50,10 +46,11 @@ class InspectionViewPsiTreeChangeAdapter extends PsiTreeChangeAdapter {
|
||||
private final InspectionResultsView myView;
|
||||
private final MergingUpdateQueue myUpdater;
|
||||
|
||||
private final Alarm myAlarm = new Alarm(Alarm.ThreadToUse.SWING_THREAD);
|
||||
private final Alarm myAlarm;
|
||||
|
||||
public InspectionViewPsiTreeChangeAdapter(@NotNull InspectionResultsView view) {
|
||||
myView = view;
|
||||
myAlarm = new Alarm(Alarm.ThreadToUse.SWING_THREAD, view);
|
||||
myUpdater = new MergingUpdateQueue("inspection.view.psi.update.listener",
|
||||
300,
|
||||
true,
|
||||
@@ -110,9 +107,7 @@ class InspectionViewPsiTreeChangeAdapter extends PsiTreeChangeAdapter {
|
||||
});
|
||||
if (needUpdateUI[0]) {
|
||||
myAlarm.cancelAllRequests();
|
||||
myAlarm.addRequest(() -> {
|
||||
myView.resetTree();
|
||||
}, 100, ModalityState.NON_MODAL);
|
||||
myAlarm.addRequest(() -> myView.resetTree(), 100, ModalityState.NON_MODAL);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user