mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Inline action works from Structure view
This commit is contained in:
@@ -38,6 +38,7 @@ import com.intellij.usageView.UsageInfo;
|
||||
import com.intellij.util.containers.HashMap;
|
||||
import com.intellij.util.containers.HashSet;
|
||||
import com.intellij.util.containers.MultiMap;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
@@ -47,8 +48,8 @@ import java.util.*;
|
||||
@SuppressWarnings({"UtilityClassWithoutPrivateConstructor"})
|
||||
public class GenericInlineHandler {
|
||||
|
||||
public static boolean invoke(final PsiElement element, final Editor editor, final InlineHandler languageSpecific) {
|
||||
final PsiReference invocationReference = TargetElementUtilBase.findReference(editor);
|
||||
public static boolean invoke(final PsiElement element, @Nullable Editor editor, final InlineHandler languageSpecific) {
|
||||
final PsiReference invocationReference = editor != null ? TargetElementUtilBase.findReference(editor) : null;
|
||||
final InlineHandler.Settings settings = languageSpecific.prepareInlineElement(element, editor, invocationReference != null);
|
||||
if (settings == null || settings == InlineHandler.Settings.CANNOT_INLINE_SETTINGS) {
|
||||
return settings != null;
|
||||
@@ -65,7 +66,7 @@ public class GenericInlineHandler {
|
||||
public void run() {
|
||||
usagesRef.set(ReferencesSearch.search(element).findAll());
|
||||
}
|
||||
}, "Find Usages", false, editor.getProject());
|
||||
}, "Find Usages", false, element.getProject());
|
||||
allReferences = usagesRef.get();
|
||||
}
|
||||
|
||||
|
||||
+4
-1
@@ -38,6 +38,7 @@ import com.intellij.refactoring.RefactoringActionHandler;
|
||||
import com.intellij.refactoring.RefactoringBundle;
|
||||
import com.intellij.refactoring.util.CommonRefactoringUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -57,6 +58,8 @@ public class InlineRefactoringActionHandler implements RefactoringActionHandler
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
invokeInliner(editor, elements[0]);
|
||||
}
|
||||
|
||||
public void invoke(@NotNull final Project project, Editor editor, PsiFile file, DataContext dataContext) {
|
||||
@@ -78,7 +81,7 @@ public class InlineRefactoringActionHandler implements RefactoringActionHandler
|
||||
}
|
||||
}
|
||||
|
||||
public static boolean invokeInliner(Editor editor, PsiElement element) {
|
||||
public static boolean invokeInliner(@Nullable Editor editor, PsiElement element) {
|
||||
final List<InlineHandler> handlers = InlineHandlers.getInlineHandlers(element.getLanguage());
|
||||
for (InlineHandler handler : handlers) {
|
||||
if (GenericInlineHandler.invoke(element, editor, handler)) {
|
||||
|
||||
Reference in New Issue
Block a user