From 8c6b5a8d9c4b4060573d02104bf129c3cd56aeab Mon Sep 17 00:00:00 2001 From: peter Date: Fri, 4 Mar 2011 19:58:10 +0100 Subject: [PATCH] advertise autopopup shortcuts --- .../completion/CompletionProgressIndicator.java | 7 ++++--- .../com/intellij/codeInsight/lookup/impl/Advertiser.java | 2 ++ .../com/intellij/codeInsight/lookup/impl/LookupImpl.java | 6 +++++- .../src/com/intellij/openapi/actionSystem/IdeActions.java | 3 +++ 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/codeInsight/completion/CompletionProgressIndicator.java b/platform/lang-impl/src/com/intellij/codeInsight/completion/CompletionProgressIndicator.java index 5fd530db23e3..909e841d81a1 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/completion/CompletionProgressIndicator.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/completion/CompletionProgressIndicator.java @@ -23,6 +23,7 @@ import com.intellij.codeInsight.hint.HintManager; import com.intellij.codeInsight.lookup.*; import com.intellij.codeInsight.lookup.impl.LookupImpl; import com.intellij.lang.Language; +import com.intellij.openapi.actionSystem.IdeActions; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.Result; import com.intellij.openapi.command.CommandProcessor; @@ -150,11 +151,11 @@ public class CompletionProgressIndicator extends ProgressIndicatorBase implement ((CompletionPhase.BgCalculation)phase).focusLookupWhenDone = true; } } else { - /* - myLookup.setAdvertisementText("Press " + + myLookup.addAdvertisement("Press " + CompletionContributor.getActionShortcut(IdeActions.ACTION_CHOOSE_LOOKUP_ITEM_REPLACE) + " to choose the first suggestion"); - */ + myLookup.addAdvertisement(CompletionContributor.getActionShortcut(IdeActions.ACTION_LOOKUP_DOWN) + " and " + CompletionContributor.getActionShortcut(IdeActions.ACTION_LOOKUP_UP) + + " will move caret down and up"); } } diff --git a/platform/lang-impl/src/com/intellij/codeInsight/lookup/impl/Advertiser.java b/platform/lang-impl/src/com/intellij/codeInsight/lookup/impl/Advertiser.java index a224a51f0499..be79b9705e09 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/lookup/impl/Advertiser.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/lookup/impl/Advertiser.java @@ -84,6 +84,8 @@ public class Advertiser implements Disposable { public synchronized void clearAdvertisements() { myTexts.clear(); + myCurrentItem = 0; + myScrollingOffset = 0; } private static Font adFont() { 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 844bc7fa6c1d..69897372505b 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 @@ -295,7 +295,7 @@ public class LookupImpl extends LightweightHint implements Lookup, Disposable { public void setAdvertisementText(@Nullable String text) { myAdText = text; if (StringUtil.isNotEmpty(text)) { - myAdComponent.addAdvertisement(text); + addAdvertisement(text); } } @@ -1165,6 +1165,10 @@ public class LookupImpl extends LightweightHint implements Lookup, Disposable { myPreselectedItem = null; } + public void addAdvertisement(@NotNull String text) { + myAdComponent.addAdvertisement(text); + } + public boolean isLookupDisposed() { return myDisposed; } diff --git a/platform/platform-api/src/com/intellij/openapi/actionSystem/IdeActions.java b/platform/platform-api/src/com/intellij/openapi/actionSystem/IdeActions.java index 919717957f94..c7d1ef878132 100644 --- a/platform/platform-api/src/com/intellij/openapi/actionSystem/IdeActions.java +++ b/platform/platform-api/src/com/intellij/openapi/actionSystem/IdeActions.java @@ -71,6 +71,9 @@ public interface IdeActions { @NonNls String ACTION_CHOOSE_LOOKUP_ITEM_REPLACE = "EditorChooseLookupItemReplace"; @NonNls String ACTION_CHOOSE_LOOKUP_ITEM_COMPLETE_STATEMENT = "EditorChooseLookupItemCompleteStatement"; + @NonNls String ACTION_LOOKUP_UP = "EditorLookupUp"; + @NonNls String ACTION_LOOKUP_DOWN = "EditorLookupDown"; + @NonNls String GROUP_EXTERNAL_TOOLS = "ExternalToolsGroup"; @NonNls String GROUP_MAIN_MENU = "MainMenu";