UX-157 IJP-56 RA execution with 'nullable' module logging

This commit is contained in:
Dmitry.Krasilschikov
2018-05-22 15:23:46 +03:00
parent d60585c3ab
commit a0a54aeb79
2 changed files with 18 additions and 8 deletions
@@ -459,15 +459,21 @@ public class RunAnythingAction extends AnAction implements CustomComponentAction
Project project = getProject();
if (myVirtualFile != null) {
return ModuleUtilCore.findModuleForFile(myVirtualFile, project);
Module moduleForFile = ModuleUtilCore.findModuleForFile(myVirtualFile, project);
if (moduleForFile != null) {
return moduleForFile;
}
}
VirtualFile[] selectedFiles = FileEditorManager.getInstance(project).getSelectedFiles();
if (selectedFiles.length == 0) {
return null;
if (selectedFiles.length != 0) {
Module moduleForFile = ModuleUtilCore.findModuleForFile(selectedFiles[0], project);
if (moduleForFile != null) {
return moduleForFile;
}
}
return ModuleUtilCore.findModuleForFile(selectedFiles[0], project);
return null;
}
@NotNull
@@ -8,14 +8,12 @@ import com.intellij.ide.IdeBundle;
import com.intellij.ide.actions.runAnything.activity.RunAnythingProvider;
import com.intellij.ide.ui.search.OptionDescription;
import com.intellij.ide.util.PropertiesComponent;
import com.intellij.openapi.actionSystem.CommonDataKeys;
import com.intellij.openapi.actionSystem.DataContext;
import com.intellij.openapi.actionSystem.KeyboardShortcut;
import com.intellij.openapi.actionSystem.Shortcut;
import com.intellij.openapi.actionSystem.*;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.keymap.KeymapUtil;
import com.intellij.openapi.keymap.MacKeymapUtil;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.popup.JBPopup;
import com.intellij.openapi.util.Key;
@@ -191,6 +189,12 @@ public class RunAnythingUtil {
public static void executeMatched(@NotNull DataContext dataContext, @NotNull String pattern) {
List<String> commands = RunAnythingCache.getInstance(fetchProject(dataContext)).getState().getCommands();
Module module = LangDataKeys.MODULE.getData(dataContext);
if (module == null) {
LOG.info("RunAnything: module hasn't been found, command will be executed in context of 'null' module.");
}
for (RunAnythingProvider provider : RunAnythingProvider.EP_NAME.getExtensions()) {
Object value = provider.findMatchingValue(dataContext, pattern);
if (value != null) {