diff src/events/SDL_windowevents.c @ 5115:686d795b1b29

When the last window is closed and the SDL_WINDOWEVENT_CLOSE event is sent, send the SDL_QUIT event. Common.c now destroys the SDL_Window upon a SDL_WINDOWEVENT_CLOSE event to ensure that all windows get closed properly and the new code to handle the last window closes gets executed.
author krogoway
date Thu, 27 Jan 2011 15:58:30 -0600
parents 8c39b82dc7b0
children ad50b3db78bd
line wrap: on
line diff
--- a/src/events/SDL_windowevents.c	Thu Jan 27 14:54:20 2011 -0800
+++ b/src/events/SDL_windowevents.c	Thu Jan 27 15:58:30 2011 -0600
@@ -176,6 +176,14 @@
 
         posted = (SDL_PushEvent(&event) > 0);
     }
+	
+	if (windowevent == SDL_WINDOWEVENT_CLOSE) {
+		if ( !window->prev && !window->next ) {
+			// This is the last window in the list so send the SDL_QUIT event
+			SDL_SendQuit();
+		}
+	}
+
     return (posted);
 }