diff --git a/platform/lang-impl/src/com/intellij/ide/actions/GotoActionBase.java b/platform/lang-impl/src/com/intellij/ide/actions/GotoActionBase.java index 931d28e2bd7a..186e58b11333 100644 --- a/platform/lang-impl/src/com/intellij/ide/actions/GotoActionBase.java +++ b/platform/lang-impl/src/com/intellij/ide/actions/GotoActionBase.java @@ -351,7 +351,7 @@ public abstract class GotoActionBase extends AnAction { } IdeEventQueue.getInstance().getPopupManager().closeAllPopups(false); - seManager.show(searchProviderID); + seManager.show(searchProviderID, getInitialTextForNavigation(evnt.getData(CommonDataKeys.EDITOR))); } private static boolean historyEnabled() { diff --git a/platform/lang-impl/src/com/intellij/ide/actions/SearchEverywhereAction.java b/platform/lang-impl/src/com/intellij/ide/actions/SearchEverywhereAction.java index a5eb19471087..8619844c4089 100644 --- a/platform/lang-impl/src/com/intellij/ide/actions/SearchEverywhereAction.java +++ b/platform/lang-impl/src/com/intellij/ide/actions/SearchEverywhereAction.java @@ -582,7 +582,8 @@ public class SearchEverywhereAction extends AnAction implements CustomComponentA } IdeEventQueue.getInstance().getPopupManager().closeAllPopups(false); - seManager.show(searchProviderID); + String text = GotoActionBase.getInitialTextForNavigation(e.getData(CommonDataKeys.EDITOR)); + seManager.show(searchProviderID, text); return; } diff --git a/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereManager.java b/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereManager.java index ce3b42275059..b623241cf6ee 100644 --- a/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereManager.java +++ b/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereManager.java @@ -4,6 +4,7 @@ package com.intellij.ide.actions.searcheverywhere; import com.intellij.openapi.components.ServiceManager; import com.intellij.openapi.project.Project; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; /** * @author Mikhail.Sokolov @@ -16,7 +17,7 @@ public interface SearchEverywhereManager { boolean isShown(); - void show(@NotNull String selectedContributorID); //todo change to contributor??? UX-1 + void show(@NotNull String selectedContributorID, @Nullable String searchText); //todo change to contributor??? UX-1 String getShownContributorID(); diff --git a/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereManagerImpl.java b/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereManagerImpl.java index 9fa70631d231..60bc21967669 100644 --- a/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereManagerImpl.java +++ b/platform/lang-impl/src/com/intellij/ide/actions/searcheverywhere/SearchEverywhereManagerImpl.java @@ -14,6 +14,7 @@ import com.intellij.ui.SearchTextField; import com.intellij.ui.awt.RelativePoint; import com.intellij.util.ui.UIUtil; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import javax.swing.*; import java.awt.*; @@ -51,13 +52,18 @@ public class SearchEverywhereManagerImpl implements SearchEverywhereManager { } @Override - public void show(@NotNull String selectedContributorID) { + public void show(@NotNull String selectedContributorID, @Nullable String searchText) { if (isShown()) { setShownContributor(selectedContributorID); } else { mySearchEverywhereUI = createView(myProject, myServiceContributors, myShownContributors); mySearchEverywhereUI.switchToContributor(selectedContributorID); + if (searchText != null && !searchText.isEmpty()) { + mySearchEverywhereUI.getSearchField().setText(searchText); + mySearchEverywhereUI.getSearchField().selectAll(); + } + myHistoryIterator = myHistoryList.getIterator(selectedContributorID); myBalloon = JBPopupFactory.getInstance().createComponentPopupBuilder(mySearchEverywhereUI, mySearchEverywhereUI.getSearchField()) .setProject(myProject)