From d310838d2a81b89eff62684337d6ac93e85ed1d9 Mon Sep 17 00:00:00 2001 From: Sergey Malenkov Date: Fri, 21 Nov 2014 16:14:49 +0300 Subject: [PATCH] IDEA-122994 Expanding hints overlaps real content & artifacts (to remove artifacts on method lookup we should not use several handlers at the same time) --- .../com/intellij/codeInsight/lookup/impl/LookupImpl.java | 5 ++--- .../src/com/intellij/ui/components/JBList.java | 7 ++++++- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/codeInsight/lookup/impl/LookupImpl.java b/platform/lang-impl/src/com/intellij/codeInsight/lookup/impl/LookupImpl.java index 0290e11b7c82..e88a0000a191 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/lookup/impl/LookupImpl.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/lookup/impl/LookupImpl.java @@ -93,11 +93,10 @@ public class LookupImpl extends LightweightHint implements LookupEx, Disposable, super.processKeyEvent(e); } - ExpandableItemsHandler myExtender = new CompletionExtender(this); @NotNull @Override - public ExpandableItemsHandler getExpandableItemsHandler() { - return myExtender; + protected ExpandableItemsHandler createExpandableItemsHandler() { + return new CompletionExtender(this); } }; final LookupCellRenderer myCellRenderer; diff --git a/platform/platform-api/src/com/intellij/ui/components/JBList.java b/platform/platform-api/src/com/intellij/ui/components/JBList.java index 6d14c60faa48..da76c0303892 100644 --- a/platform/platform-api/src/com/intellij/ui/components/JBList.java +++ b/platform/platform-api/src/com/intellij/ui/components/JBList.java @@ -173,7 +173,7 @@ public class JBList extends JList implements ComponentWithEmptyText, ComponentWi } }; - myExpandableItemsHandler = ExpandableItemsHandlerFactory.install(this); + myExpandableItemsHandler = createExpandableItemsHandler(); setCellRenderer(new DefaultListCellRenderer()); } @@ -202,6 +202,11 @@ public class JBList extends JList implements ComponentWithEmptyText, ComponentWi return myExpandableItemsHandler; } + @NotNull + protected ExpandableItemsHandler createExpandableItemsHandler() { + return ExpandableItemsHandlerFactory.install(this); + } + @Override public void setExpandableItemsEnabled(boolean enabled) { myExpandableItemsHandler.setEnabled(enabled);