Show the same dialog when processing single selected file and multiple selected files

This commit is contained in:
Yaroslav Lepenkin
2015-01-19 19:36:33 +03:00
parent ef4c357e0b
commit 41989392ae
2 changed files with 6 additions and 9 deletions
@@ -59,7 +59,7 @@ public class OptimizeImportsAction extends AnAction {
if (file == null) return;
dir = file.getContainingDirectory();
}
else if (files != null && ReformatCodeAction.areFiles(files)) {
else if (files != null && ReformatCodeAction.containsAtLeastOneFile(files)) {
final ReadonlyStatusHandler.OperationStatus operationStatus = ReadonlyStatusHandler.getInstance(project).ensureFilesWritable(files);
if (!operationStatus.hasReadonlyFiles()) {
new OptimizeImportsProcessor(project, ReformatCodeAction.convertToPsiFiles(files, project), null).run();
@@ -160,7 +160,7 @@ public class OptimizeImportsAction extends AnAction {
return;
}
}
else if (files != null && ReformatCodeAction.areFiles(files)) {
else if (files != null && ReformatCodeAction.containsAtLeastOneFile(files)) {
boolean anyHasOptimizeImports = false;
for (VirtualFile virtualFile : files) {
PsiFile file = PsiManager.getInstance(project).findFile(virtualFile);
@@ -88,7 +88,7 @@ public class ReformatCodeAction extends AnAction implements DumbAware {
dir = file.getContainingDirectory();
hasSelection = editor.getSelectionModel().hasSelection();
}
else if (areFiles(files)) {
else if (containsAtLeastOneFile(files)) {
final ReadonlyStatusHandler.OperationStatus operationStatus = ReadonlyStatusHandler.getInstance(project).ensureFilesWritable(files);
if (!operationStatus.hasReadonlyFiles()) {
ReformatFilesOptions selectedFlags = getReformatFilesOptions(project, files);
@@ -118,9 +118,6 @@ public class ReformatCodeAction extends AnAction implements DumbAware {
}
return;
}
else if (files != null && files.length == 1) {
file = PsiManager.getInstance(project).findFile(files[0]);
}
else {
PsiElement element = CommonDataKeys.PSI_ELEMENT.getData(dataContext);
if (element == null) return;
@@ -385,7 +382,7 @@ public class ReformatCodeAction extends AnAction implements DumbAware {
return;
}
}
else if (files!= null && areFiles(files)) {
else if (files!= null && containsAtLeastOneFile(files)) {
boolean anyFormatters = false;
for (VirtualFile virtualFile : files) {
if (virtualFile.isDirectory()) {
@@ -490,9 +487,9 @@ public class ReformatCodeAction extends AnAction implements DumbAware {
myTestOptions = options;
}
public static boolean areFiles(final VirtualFile[] files) {
public static boolean containsAtLeastOneFile(final VirtualFile[] files) {
if (files == null) return false;
if (files.length < 2) return false;
if (files.length < 1) return false;
for (VirtualFile virtualFile : files) {
if (virtualFile.isDirectory()) return false;
}