From 36f5beef356205b8b095e4fb51093e3080c8a3f4 Mon Sep 17 00:00:00 2001 From: Konstantin Bulenkov Date: Thu, 30 Aug 2012 01:28:07 +0400 Subject: [PATCH] disable on directories and archives --- .../src/com/intellij/openapi/diff/actions/CompareFiles.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/platform/platform-impl/src/com/intellij/openapi/diff/actions/CompareFiles.java b/platform/platform-impl/src/com/intellij/openapi/diff/actions/CompareFiles.java index 1573a24105f7..6336fddac623 100644 --- a/platform/platform-impl/src/com/intellij/openapi/diff/actions/CompareFiles.java +++ b/platform/platform-impl/src/com/intellij/openapi/diff/actions/CompareFiles.java @@ -15,6 +15,7 @@ */ package com.intellij.openapi.diff.actions; +import com.intellij.ide.highlighter.ArchiveFileType; import com.intellij.openapi.actionSystem.*; import com.intellij.openapi.diff.DiffBundle; import com.intellij.openapi.diff.DiffManager; @@ -72,6 +73,11 @@ public class CompareFiles extends BaseDiffAction { @Nullable private static DiffRequest getDiffRequest(Project project, VirtualFile[] files) { if (files == null || files.length != 2) return null; + if (files[0].isDirectory() || files[1].isDirectory() + || files[0].getFileType() instanceof ArchiveFileType + || files[1].getFileType() instanceof ArchiveFileType) { + return null; + } String title = DiffBundle.message("diff.element.qualified.name.vs.element.qualified.name.dialog.title", getVirtualFileContentTitle(files [0]), getVirtualFileContentTitle(files [1]));