diff --git a/src/nsfns.m b/src/nsfns.m index c40367703db..07bcab1816b 100644 --- a/src/nsfns.m +++ b/src/nsfns.m @@ -1343,6 +1343,11 @@ DEFUN ("x-create-frame", Fx_create_frame, Sx_create_frame, f->output_data.ns->in_animation = NO; +#ifdef NS_IMPL_COCOA + /* If the app has previously been disabled, start it up again. */ + [NSApp setActivationPolicy:NSApplicationActivationPolicyRegular]; +#endif + [[EmacsView alloc] initFrameFromEmacs: f]; ns_icon (f, parms); diff --git a/src/nsterm.m b/src/nsterm.m index 1c1f0c8f239..4bdc67c10b5 100644 --- a/src/nsterm.m +++ b/src/nsterm.m @@ -5014,6 +5014,12 @@ ns_delete_terminal (struct terminal *terminal) block_input (); +#ifdef NS_IMPL_COCOA + /* Rather than try to clean up the NS environment we can just + disable the app and leave it waiting for any new frames. */ + [NSApp setActivationPolicy:NSApplicationActivationPolicyProhibited]; +#endif + image_destroy_all_bitmaps (dpyinfo); ns_delete_display (dpyinfo); unblock_input ();