From 517e31e769f97adafbd2c56edf678e8341e10989 Mon Sep 17 00:00:00 2001 From: "Gregory.Shrago" Date: Fri, 4 Sep 2015 19:22:21 +0300 Subject: [PATCH] AssociateTypeAction: disable for scratches --- .../com/intellij/ide/actions/AssociateFileTypeAction.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) rename platform/{platform-impl => lang-impl}/src/com/intellij/ide/actions/AssociateFileTypeAction.java (88%) diff --git a/platform/platform-impl/src/com/intellij/ide/actions/AssociateFileTypeAction.java b/platform/lang-impl/src/com/intellij/ide/actions/AssociateFileTypeAction.java similarity index 88% rename from platform/platform-impl/src/com/intellij/ide/actions/AssociateFileTypeAction.java rename to platform/lang-impl/src/com/intellij/ide/actions/AssociateFileTypeAction.java index fdcb13d24fcf..61874e7413b4 100644 --- a/platform/platform-impl/src/com/intellij/ide/actions/AssociateFileTypeAction.java +++ b/platform/lang-impl/src/com/intellij/ide/actions/AssociateFileTypeAction.java @@ -15,6 +15,7 @@ */ package com.intellij.ide.actions; +import com.intellij.ide.scratch.ScratchRootType; import com.intellij.openapi.actionSystem.*; import com.intellij.openapi.fileTypes.FileTypeManager; import com.intellij.openapi.fileTypes.FileTypes; @@ -25,7 +26,7 @@ import com.intellij.openapi.vfs.VirtualFile; public class AssociateFileTypeAction extends AnAction { @Override public void actionPerformed(AnActionEvent e) { - VirtualFile file = e.getData(CommonDataKeys.VIRTUAL_FILE); + VirtualFile file = e.getRequiredData(CommonDataKeys.VIRTUAL_FILE); FileTypeChooser.associateFileType(file.getName()); } @@ -41,7 +42,8 @@ public class AssociateFileTypeAction extends AnAction { } else { // the action should also be available for files which have been auto-detected as text or as a particular language (IDEA-79574) - haveSmthToDo = FileTypeManager.getInstance().getFileTypeByFileName(file.getName()) == FileTypes.UNKNOWN; + haveSmthToDo = FileTypeManager.getInstance().getFileTypeByFileName(file.getName()) == FileTypes.UNKNOWN && + !ScratchRootType.getInstance().isScratchFile(file); } presentation.setVisible(haveSmthToDo || ActionPlaces.isMainMenuOrActionSearch(e.getPlace())); presentation.setEnabled(haveSmthToDo);