File tree Expand file tree Collapse file tree 2 files changed +20
-4
lines changed Expand file tree Collapse file tree 2 files changed +20
-4
lines changed Original file line number Diff line number Diff line change 4949import processing .app .debug .TargetPackage ;
5050import processing .app .debug .TargetPlatform ;
5151import processing .app .helpers .*;
52+ import processing .app .helpers .OSUtils ;
5253import processing .app .helpers .filefilters .OnlyDirs ;
5354import processing .app .helpers .filefilters .OnlyFilesWithExtension ;
5455import processing .app .javax .swing .filechooser .FileNameExtensionFilter ;
@@ -931,15 +932,14 @@ public boolean handleClose(Editor editor) {
931932 }
932933
933934 if (editors .size () == 1 ) {
934-
935+ editor .setVisible (false );
936+ editors .remove (editor );
935937 handleQuit ();
936-
937938 } else {
938939 // More than one editor window open,
939940 // proceed with closing the current window.
940941 editor .setVisible (false );
941942 editor .dispose ();
942-
943943 editors .remove (editor );
944944 }
945945 return true ;
@@ -974,7 +974,7 @@ public boolean handleQuit() {
974974 // Save out the current prefs state
975975 PreferencesData .save ();
976976
977- if (!OSUtils .hasMacOSStyleMenus ()) {
977+ if (!OSUtils .isMacOS ()) {
978978 // If this was fired from the menu or an AppleEvent (the Finder),
979979 // then Mac OS X will send the terminate signal itself.
980980 System .exit (0 );
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