mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Doc/Impl popups in various PSI chooser lists
This commit is contained in:
+2
@@ -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<DocumentationComp
|
||||
((AbstractPopup)hint).focusPreferredComponent();
|
||||
return;
|
||||
}
|
||||
if (action instanceof ListScrollingUtil.ListScrollAction) return;
|
||||
if (action == myActionManagerEx.getAction(IdeActions.ACTION_EDITOR_MOVE_CARET_DOWN)) return;
|
||||
if (action == myActionManagerEx.getAction(IdeActions.ACTION_EDITOR_MOVE_CARET_UP)) return;
|
||||
if (action == myActionManagerEx.getAction(IdeActions.ACTION_EDITOR_MOVE_CARET_PAGE_DOWN)) return;
|
||||
|
||||
+2
@@ -180,6 +180,8 @@ public class ShowImplementationsAction extends AnAction implements PopupAction {
|
||||
String text = "";
|
||||
if (element != null) {
|
||||
// if (element instanceof PsiPackage) return;
|
||||
PsiFile containingFile = element.getContainingFile();
|
||||
if (containingFile == null || !containingFile.getViewProvider().isPhysical()) return;
|
||||
|
||||
impls = getSelfAndImplementations(editor, element, createImplementationsSearcher());
|
||||
text = SymbolPresentationUtil.getSymbolPresentableText(element);
|
||||
|
||||
@@ -34,6 +34,7 @@ import com.intellij.psi.PsiElement;
|
||||
import com.intellij.psi.PsiFile;
|
||||
import com.intellij.psi.impl.ElementBase;
|
||||
import com.intellij.psi.search.PsiElementProcessor;
|
||||
import com.intellij.ui.JBListWithHintProvider;
|
||||
import com.intellij.ui.components.JBList;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
@@ -83,7 +84,13 @@ public final class NavigationUtil {
|
||||
@Nullable final String title,
|
||||
@NotNull final PsiElementProcessor<T> 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);
|
||||
|
||||
Reference in New Issue
Block a user