copy json pointer: make unavailable for non-json files

GitOrigin-RevId: 82291d395bd5a3a55fbcf455c67ff4afb0e6d434
This commit is contained in:
Anton Lobov
2019-10-01 10:11:58 +00:00
committed by intellij-monorepo-bot
parent 0ff3963399
commit b02d538d00
@@ -3,11 +3,15 @@ package com.intellij.json.editor;
import com.intellij.execution.actions.ConfigurationContext;
import com.intellij.ide.actions.CopyReferenceAction;
import com.intellij.json.JsonUtil;
import com.intellij.json.navigation.JsonQualifiedNameKind;
import com.intellij.json.navigation.JsonQualifiedNameProvider;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.CommonDataKeys;
import com.intellij.openapi.actionSystem.DataContext;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.fileEditor.FileDocumentManager;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.PsiElement;
import org.jetbrains.annotations.NotNull;
@@ -22,6 +26,10 @@ public class JsonCopyPointerAction extends CopyReferenceAction {
public void update(@NotNull AnActionEvent e) {
super.update(e);
e.getPresentation().setText("Copy JSON Pointer");
DataContext dataContext = e.getDataContext();
Editor editor = CommonDataKeys.EDITOR.getData(dataContext);
VirtualFile file = editor == null ? null : FileDocumentManager.getInstance().getFile(editor.getDocument());
e.getPresentation().setVisible(file != null && JsonUtil.isJsonFile(file));
}
@Override