diff --git a/app/src/processing/mode/javascript/JavaScriptEditor.java b/app/src/processing/mode/javascript/JavaScriptEditor.java index 444cadae8..44d23a2b4 100644 --- a/app/src/processing/mode/javascript/JavaScriptEditor.java +++ b/app/src/processing/mode/javascript/JavaScriptEditor.java @@ -440,9 +440,16 @@ public class JavaScriptEditor extends Editor null); } - /** JavaScript mode has no runner. This method is empty. */ - public void internalCloseRunner () { } + /** + * Called when the window is going to be reused for another sketch. + */ + public void internalCloseRunner() + { + handleStopServer(); + } - /** JavaScript mode does not run anything. This method is empty. */ - public void deactivateRun () { } + public void deactivateRun () + { + // not sure what to do here .. + } } diff --git a/app/src/processing/mode/javascript/JavaScriptMode.java b/app/src/processing/mode/javascript/JavaScriptMode.java index 4d28cc65f..5deb2c102 100644 --- a/app/src/processing/mode/javascript/JavaScriptMode.java +++ b/app/src/processing/mode/javascript/JavaScriptMode.java @@ -1,5 +1,8 @@ package processing.mode.javascript; +import java.awt.event.WindowEvent; +import java.awt.event.WindowAdapter; + import java.io.BufferedReader; import java.io.File; import java.io.IOException; @@ -19,11 +22,14 @@ import processing.mode.java.JavaMode; * replacement for the normal runner. */ public class JavaScriptMode extends Mode -{ +{ + private JavaScriptEditor jsEditor; + // create a new editor with the mode public Editor createEditor( Base base, String path, int[] location ) { - return new JavaScriptEditor( base, path, location, this ); + jsEditor = new JavaScriptEditor( base, path, location, this ); + return jsEditor; } public JavaScriptMode( Base base, File folder ) @@ -77,8 +83,6 @@ public class JavaScriptMode extends Mode // public Formatter createFormatter() { } // public Editor createEditor(Base ibase, String path, int[] location) { } - - // abstract public void internalCloseRunner(); // ------------------------------------------------