Made BytecodeToolwindow and ResolveToolwindow disposable: got rid of unreleased editor exception on closing IDEA.
#KT-733 fixed
This commit is contained in:
@@ -20,6 +20,7 @@
|
|||||||
package org.jetbrains.jet.plugin.internal.codewindow;
|
package org.jetbrains.jet.plugin.internal.codewindow;
|
||||||
|
|
||||||
import com.intellij.ide.highlighter.JavaFileType;
|
import com.intellij.ide.highlighter.JavaFileType;
|
||||||
|
import com.intellij.openapi.Disposable;
|
||||||
import com.intellij.openapi.application.Result;
|
import com.intellij.openapi.application.Result;
|
||||||
import com.intellij.openapi.command.WriteCommandAction;
|
import com.intellij.openapi.command.WriteCommandAction;
|
||||||
import com.intellij.openapi.editor.Document;
|
import com.intellij.openapi.editor.Document;
|
||||||
@@ -52,7 +53,7 @@ import java.util.Collections;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Scanner;
|
import java.util.Scanner;
|
||||||
|
|
||||||
public class BytecodeToolwindow extends JPanel {
|
public class BytecodeToolwindow extends JPanel implements Disposable {
|
||||||
private static final int UPDATE_DELAY = 500;
|
private static final int UPDATE_DELAY = 500;
|
||||||
private static final String DEFAULT_TEXT = "/*\n" +
|
private static final String DEFAULT_TEXT = "/*\n" +
|
||||||
"Generated bytecode for Kotlin source file.\n" +
|
"Generated bytecode for Kotlin source file.\n" +
|
||||||
@@ -223,6 +224,11 @@ public class BytecodeToolwindow extends JPanel {
|
|||||||
return answer.toString();
|
return answer.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void dispose() {
|
||||||
|
EditorFactory.getInstance().releaseEditor(myEditor);
|
||||||
|
}
|
||||||
|
|
||||||
public static class Location {
|
public static class Location {
|
||||||
final Editor editor;
|
final Editor editor;
|
||||||
final long modificationStamp;
|
final long modificationStamp;
|
||||||
|
|||||||
@@ -19,6 +19,7 @@
|
|||||||
*/
|
*/
|
||||||
package org.jetbrains.jet.plugin.internal.resolvewindow;
|
package org.jetbrains.jet.plugin.internal.resolvewindow;
|
||||||
|
|
||||||
|
import com.intellij.openapi.Disposable;
|
||||||
import com.intellij.openapi.application.Result;
|
import com.intellij.openapi.application.Result;
|
||||||
import com.intellij.openapi.command.WriteCommandAction;
|
import com.intellij.openapi.command.WriteCommandAction;
|
||||||
import com.intellij.openapi.editor.Editor;
|
import com.intellij.openapi.editor.Editor;
|
||||||
@@ -62,7 +63,7 @@ import static org.jetbrains.jet.lang.resolve.calls.ResolutionDebugInfo.*;
|
|||||||
/*
|
/*
|
||||||
* @author abreslav
|
* @author abreslav
|
||||||
*/
|
*/
|
||||||
public class ResolveToolwindow extends JPanel {
|
public class ResolveToolwindow extends JPanel implements Disposable {
|
||||||
|
|
||||||
public static final String BAR = "\n\n===\n\n";
|
public static final String BAR = "\n\n===\n\n";
|
||||||
|
|
||||||
@@ -340,4 +341,9 @@ public class ResolveToolwindow extends JPanel {
|
|||||||
}
|
}
|
||||||
}.execute();
|
}.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void dispose() {
|
||||||
|
EditorFactory.getInstance().releaseEditor(myEditor);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user