diff src/window.c @ 1979:6a91a3c8f1dc

[xemacs-hg @ 2004-04-03 20:49:25 by adrian] [PATCH] dedicated window deletion patch <82ad1yyjvs.fsf@us.dmz.local>
author adrian
date Sat, 03 Apr 2004 20:49:26 +0000
parents 84acc03a7080
children 51a17f29fab3
line wrap: on
line diff
--- a/src/window.c	Sat Apr 03 20:00:26 2004 +0000
+++ b/src/window.c	Sat Apr 03 20:49:26 2004 +0000
@@ -61,6 +61,8 @@
 #endif
 #endif
 
+extern int allow_deletion_of_last_visible_frame;
+
 EXFUN (Fnext_window, 4);
 
 static int window_pixel_width_to_char_width (struct window *w,
@@ -2919,7 +2921,8 @@
 			 of its own, kill the frame.  */
 		      if (EQ (w, FRAME_ROOT_WINDOW (f))
 			  && !NILP (p->dedicated)
-			  && other_visible_frames (f))
+			  && (allow_deletion_of_last_visible_frame
+			      || other_visible_frames (f)))
 			{
 			  /* Skip the other windows on this frame.
 			     There might be one, the minibuffer!  */
@@ -3371,7 +3374,8 @@
 	  if (!NILP (XWINDOW (window)->dedicated)
 	      && EQ (window,
 		     FRAME_ROOT_WINDOW (XFRAME (frame)))
-	      && other_visible_frames (XFRAME (frame)))
+	      && (allow_deletion_of_last_visible_frame
+		  || other_visible_frames (XFRAME (frame))))
 	    {
 	      delete_frame_internal (XFRAME (frame), 0, 0, 0); /* GC */
 	    }