From 6f3fb8f20448c6dbb4cd6173c28670cbac865ae4 Mon Sep 17 00:00:00 2001 From: peter Date: Tue, 3 Feb 2015 13:04:13 +0100 Subject: [PATCH] change line separators in a write action (IDEA-135914) --- .../AbstractConvertLineSeparatorsAction.java | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/platform/editor-ui-ex/src/com/intellij/codeStyle/AbstractConvertLineSeparatorsAction.java b/platform/editor-ui-ex/src/com/intellij/codeStyle/AbstractConvertLineSeparatorsAction.java index 8f54a068385a..c0541d66bd57 100644 --- a/platform/editor-ui-ex/src/com/intellij/codeStyle/AbstractConvertLineSeparatorsAction.java +++ b/platform/editor-ui-ex/src/com/intellij/codeStyle/AbstractConvertLineSeparatorsAction.java @@ -16,7 +16,8 @@ package com.intellij.codeStyle; import com.intellij.openapi.actionSystem.*; -import com.intellij.openapi.command.CommandProcessor; +import com.intellij.openapi.application.Result; +import com.intellij.openapi.command.WriteCommandAction; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.editor.Document; import com.intellij.openapi.fileEditor.FileDocumentManager; @@ -34,8 +35,6 @@ import com.intellij.util.containers.Convertor; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import java.io.IOException; - /** * @author Nikolai Matveev */ @@ -155,17 +154,11 @@ public abstract class AbstractConvertLineSeparatorsAction extends AnAction { LineSeparator.fromString(currentSeparator), LineSeparator.fromString(newSeparator)); } - CommandProcessor commandProcessor = CommandProcessor.getInstance(); - commandProcessor.executeCommand(project, new Runnable() { + new WriteCommandAction(project, commandText) { @Override - public void run() { - try { - LoadTextUtil.changeLineSeparators(project, virtualFile, newSeparator, this); - } - catch (IOException e) { - LOG.warn(e); - } + protected void run(@NotNull Result result) throws Throwable { + LoadTextUtil.changeLineSeparators(project, virtualFile, newSeparator, this); } - }, commandText, null); + }.execute(); } }