Fix "Assertion failed: Write access is allowed inside write-action only" in Kotlin refactoring dialog

#KT-33059 fixed
This commit is contained in:
Ilya Kirillov
2019-08-02 17:25:08 +03:00
parent b4a0436aba
commit 838582c926
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.idea.refactoring.move.moveDeclarations.ui;
import com.intellij.ide.util.DirectoryChooser;
import com.intellij.ide.util.DirectoryUtil;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.editor.Document;
import com.intellij.openapi.editor.event.DocumentEvent;
import com.intellij.openapi.editor.event.DocumentListener;
@@ -537,7 +538,9 @@ public class MoveKotlinTopLevelDeclarationsDialog extends RefactoringDialog {
);
if (ret == Messages.YES) {
try {
DirectoryUtil.mkdirs(PsiManager.getInstance(getProject()), targetDirPath.toString());
ApplicationManager.getApplication().runWriteAction(() -> {
DirectoryUtil.mkdirs(PsiManager.getInstance(getProject()), targetDirPath.toString());
});
}
catch (IncorrectOperationException e) {
setErrorText("Failed to create parent directory: " + targetDirPath);