File tree Expand file tree Collapse file tree 2 files changed +24
-3
lines changed Expand file tree Collapse file tree 2 files changed +24
-3
lines changed Original file line number Diff line number Diff line change 4545import processing .app .debug .TargetPackage ;
4646import processing .app .debug .TargetPlatform ;
4747import processing .app .helpers .*;
48+ import processing .app .helpers .OSUtils ;
4849import processing .app .helpers .filefilters .OnlyDirs ;
4950import processing .app .helpers .filefilters .OnlyFilesWithExtension ;
5051import processing .app .javax .swing .filechooser .FileNameExtensionFilter ;
@@ -921,7 +922,10 @@ public boolean handleClose(Editor editor) {
921922 storeSketches ();
922923
923924 // This will store the sketch count as zero
925+ editor .setVisible (false );
926+ //editor.dispose();
924927 editors .remove (editor );
928+
925929 try {
926930 Editor .serialMonitor .close ();
927931 } catch (Exception e ) {
@@ -932,9 +936,10 @@ public boolean handleClose(Editor editor) {
932936 // Save out the current prefs state
933937 PreferencesData .save ();
934938
935- // Since this wasn't an actual Quit event, call System.exit()
936- System .exit (0 );
937-
939+ // Since this wasn't an actual Quit event, call System.exit() (not on OSX)
940+ if (!OSUtils .isMacOS ()) {
941+ System .exit (0 );
942+ }
938943 } else {
939944 // More than one editor window open,
940945 // proceed with closing the current window.
Original file line number Diff line number Diff line change 2323package processing .app .macosx ;
2424
2525import com .apple .eawt .*;
26+ import com .apple .eawt .AppEvent .AppReOpenedEvent ;
27+
2628import processing .app .Base ;
2729import processing .app .Editor ;
2830
@@ -45,6 +47,20 @@ public class ThinkDifferent {
4547
4648 static public void init () {
4749 Application application = Application .getApplication ();
50+
51+ application .addAppEventListener (new AppReOpenedListener () {
52+ @ Override
53+ public void appReOpened (AppReOpenedEvent aroe ) {
54+ try {
55+ if (Base .INSTANCE .getEditors ().size () == 0 ) {
56+ Base .INSTANCE .handleNew ();
57+ }
58+ } catch (Exception e ) {
59+ // TODO Auto-generated catch block
60+ e .printStackTrace ();
61+ }
62+ }
63+ });
4864 application .setAboutHandler (new AboutHandler () {
4965 @ Override
5066 public void handleAbout (AppEvent .AboutEvent aboutEvent ) {
You can’t perform that action at this time.
0 commit comments