From b829df699c585ec26ccf6d5ce288c5d75f436e36 Mon Sep 17 00:00:00 2001 From: Konstantin Bulenkov Date: Thu, 29 Dec 2011 18:36:48 +0100 Subject: [PATCH] yield update + npe fix --- .../com/intellij/ide/util/FileStructurePopup.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/ide/util/FileStructurePopup.java b/platform/lang-impl/src/com/intellij/ide/util/FileStructurePopup.java index 7bb2536ff676..6f856340fc48 100644 --- a/platform/lang-impl/src/com/intellij/ide/util/FileStructurePopup.java +++ b/platform/lang-impl/src/com/intellij/ide/util/FileStructurePopup.java @@ -150,11 +150,11 @@ public class FileStructurePopup implements Disposable { @Override public void revalidateTree() { - myTree.revalidate(); - myTree.repaint(); + //myTree.revalidate(); + //myTree.repaint(); } }; - + myAbstractTreeBuilder.setCanYieldUpdate(true); } public void show() { @@ -197,7 +197,7 @@ public class FileStructurePopup implements Disposable { if (!filter.equals(prefix)) { filter = prefix; - //myAbstractTreeBuilder.refilter(); + myAbstractTreeBuilder.refilter(null, false, false); } alarm.addRequest(this, 500); } @@ -490,7 +490,9 @@ public class FileStructurePopup implements Disposable { return true; } - final Iterable ranges = mySpeedSearch.matchingFragments(value.toString()); + final String text = value.toString(); + if (text == null) return false; + final Iterable ranges = mySpeedSearch.matchingFragments(text); boolean matches = ranges != null && ranges.iterator().hasNext(); if (matches) {