diff --git a/platform/lang-impl/src/com/intellij/codeInsight/documentation/DocumentationManager.java b/platform/lang-impl/src/com/intellij/codeInsight/documentation/DocumentationManager.java index f6f153a676fa..9f55baad59b1 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/documentation/DocumentationManager.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/documentation/DocumentationManager.java @@ -52,6 +52,7 @@ import com.intellij.openapi.wm.ex.WindowManagerEx; import com.intellij.psi.*; import com.intellij.psi.presentation.java.SymbolPresentationUtil; import com.intellij.psi.util.PsiTreeUtil; +import com.intellij.ui.ListScrollingUtil; import com.intellij.ui.content.Content; import com.intellij.ui.popup.AbstractPopup; import com.intellij.ui.popup.NotLookupOrSearchCondition; @@ -135,6 +136,7 @@ public class DocumentationManager extends DockablePopupManager processor, @Nullable final T selection) { - final JList list = new JBList(elements); + final JList list = new JBListWithHintProvider(elements) { + @Nullable + @Override + protected PsiElement getPsiElementForHint(Object selectedValue) { + return (PsiElement)selectedValue; + } + }; list.setCellRenderer(renderer); if (selection != null) { list.setSelectedValue(selection, true);