diff --git a/plugins/ui-designer/src/com/intellij/uiDesigner/binding/FormReferencesSearcher.java b/plugins/ui-designer/src/com/intellij/uiDesigner/binding/FormReferencesSearcher.java index 0ad32e0a2294..d39768ca991c 100644 --- a/plugins/ui-designer/src/com/intellij/uiDesigner/binding/FormReferencesSearcher.java +++ b/plugins/ui-designer/src/com/intellij/uiDesigner/binding/FormReferencesSearcher.java @@ -194,16 +194,15 @@ public class FormReferencesSearcher implements QueryExecutor() { - public Boolean compute() { - return ref.isReferenceTo(element); - } - }).booleanValue(); - if (isReferenceTo){ - if (!processor.process(ref)) return false; + final int finalIndex = index; + final PsiReference ref = ApplicationManager.getApplication().runReadAction(new NullableComputable() { + public PsiReference compute() { + final PsiReference ref = file.findReferenceAt(finalIndex + offset + 1); + return ref != null && ref.isReferenceTo(element) ? ref : null; } + }); + if (ref != null) { + if (!processor.process(ref)) return false; } index++; }