Revert "[Tizen] Temporarily modified so that window is no null"
[platform/core/uifw/dali-adaptor.git] / dali / public-api / adaptor-framework / window.cpp
index 9da92dd..08562d0 100644 (file)
@@ -34,27 +34,39 @@ class DALI_INTERNAL DragAndDropDetector : public BaseHandle {}; // Empty class o
 Window Window::New(PositionSize posSize, const std::string& name, bool isTransparent)
 {
   Internal::Adaptor::Window* window = Internal::Adaptor::Window::New(posSize, name, "", isTransparent);
+
   Dali::Adaptor& adaptor = Internal::Adaptor::Adaptor::Get();
-  Integration::SceneHolder sceneHolder = Integration::SceneHolder( window );
-  Internal::Adaptor::Adaptor::GetImplementation( adaptor ).AddWindow( sceneHolder, name, "", isTransparent );
-  if( !Internal::Adaptor::Adaptor::GetImplementation( adaptor ).IsMultipleWindowSupported() )
+  if( Internal::Adaptor::Adaptor::GetImplementation( adaptor ).IsMultipleWindowSupported() )
+  {
+    Integration::SceneHolder sceneHolder = Integration::SceneHolder( window );
+    Internal::Adaptor::Adaptor::GetImplementation( adaptor ).AddWindow( sceneHolder, name, "", isTransparent );
+
+    return Window(window);
+  }
+  else
   {
     DALI_LOG_ERROR("This device can't support multiple windows.\n");
+    return Window();
   }
-  return Window(window);
 }
 
 Window Window::New(PositionSize posSize, const std::string& name, const std::string& className, bool isTransparent)
 {
   Internal::Adaptor::Window* window = Internal::Adaptor::Window::New(posSize, name, className, isTransparent);
+
   Dali::Adaptor& adaptor = Internal::Adaptor::Adaptor::Get();
-  Integration::SceneHolder sceneHolder = Integration::SceneHolder( window );
-  Internal::Adaptor::Adaptor::GetImplementation( adaptor ).AddWindow( sceneHolder, name, className, isTransparent );
-  if( !Internal::Adaptor::Adaptor::GetImplementation( adaptor ).IsMultipleWindowSupported() )
+  if( Internal::Adaptor::Adaptor::GetImplementation( adaptor ).IsMultipleWindowSupported() )
+  {
+    Integration::SceneHolder sceneHolder = Integration::SceneHolder( window );
+    Internal::Adaptor::Adaptor::GetImplementation( adaptor ).AddWindow( sceneHolder, name, className, isTransparent );
+
+    return Window(window);
+  }
+  else
   {
     DALI_LOG_ERROR("This device can't support multiple windows.\n");
+    return Window();
   }
-  return Window(window);
 }
 
 Window::Window()