Add QuitFromMainLoop function to idle event with force option. 70/160570/2
authorminho.sun <minho.sun@samsung.com>
Fri, 17 Nov 2017 02:26:00 +0000 (11:26 +0900)
committerminho.sun <minho.sun@samsung.com>
Wed, 22 Nov 2017 01:17:17 +0000 (10:17 +0900)
When user hide window, adaptor will be paused.
In this situation, user cannot add callback function to idle event.
But Application should be terminated when Quit() function is called evenif window is hide.

So add QuitFromMainLoop function to idle event with force option.

Change-Id: I4470ae7f2845c04772d791dabd1187359bad7a70

adaptors/common/application-impl.cpp

index d7bf4f1..bb4312d 100644 (file)
@@ -184,7 +184,8 @@ void Application::Lower()
 void Application::Quit()
 {
   // Actually quit the application.
-  AddIdle( MakeCallback( this, &Application::QuitFromMainLoop ) );
+  // Force a call to Quit even if adaptor is not running.
+  Internal::Adaptor::Adaptor::GetImplementation(*mAdaptor).AddIdle( MakeCallback( this, &Application::QuitFromMainLoop ), true );
 }
 
 void Application::QuitFromMainLoop()