Further Setter/Getter public API removal from Dali::Actor
[platform/core/uifw/dali-toolkit.git] / automated-tests / src / dali-toolkit / utc-Dali-KeyInputFocusManager.cpp
index 4d191a8..0e006ec 100755 (executable)
@@ -139,6 +139,7 @@ int UtcDaliKeyInputFocusManagerGet(void)
 
   // Check that focus manager is a singleton
   DALI_TEST_CHECK(manager == newManager);
+
   END_TEST;
 }
 
@@ -157,7 +158,7 @@ int UtcDaliKeyInputFocusManagerSetFocus01(void)
 
   DummyControl dummy = DummyControl::New(true);
   Impl::DummyControl& dummyImpl = static_cast<Impl::DummyControl&>(dummy.GetImplementation());
-  dummy.SetSize(100.0f, 100.0f);
+  dummy.SetProperty( Actor::Property::SIZE, Vector2(100.0f, 100.0f) );
   stage.Add( dummy );
   DALI_TEST_CHECK( ! dummyImpl.keyInputFocusGained );
 
@@ -184,7 +185,7 @@ int UtcDaliKeyInputFocusManagerSetFocus02(void)
 
   DummyControl dummy1 = DummyControl::New(true);
   Impl::DummyControl& dummy1Impl = static_cast<Impl::DummyControl&>(dummy1.GetImplementation());
-  dummy1.SetSize(100.0f, 100.0f);
+  dummy1.SetProperty( Actor::Property::SIZE, Vector2(100.0f, 100.0f) );
   stage.Add( dummy1 );
   DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusGained );
   DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusLost );
@@ -196,7 +197,7 @@ int UtcDaliKeyInputFocusManagerSetFocus02(void)
 
   DummyControl dummy2 = DummyControl::New(true);
   Impl::DummyControl& dummy2Impl = static_cast<Impl::DummyControl&>(dummy2.GetImplementation());
-  dummy2.SetSize(100.0f, 100.0f);
+  dummy2.SetProperty( Actor::Property::SIZE, Vector2(100.0f, 100.0f) );
   stage.Add( dummy2 );
   DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusGained );
   DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusLost );
@@ -227,20 +228,20 @@ int UtcDaliKeyInputFocusManagerKeyEventPropagation01(void)
   stage.KeyEventSignal().Connect( &stageCallback, &KeyEventCallback::Callback );
 
   DummyControl dummy1 = DummyControl::New(true);
-  dummy1.SetSize(100.0f, 100.0f);
+  dummy1.SetProperty( Actor::Property::SIZE, Vector2(100.0f, 100.0f) );
   KeyEventCallback callback1( false );
   dummy1.KeyEventSignal().Connect( &callback1, &KeyEventCallback::Callback );
   stage.Add( dummy1 );
 
   DummyControl dummy2 = DummyControl::New(true);
-  dummy2.SetSize(100.0f, 100.0f);
+  dummy2.SetProperty( Actor::Property::SIZE, Vector2(100.0f, 100.0f) );
   KeyEventCallback callback2( false );
   dummy2.KeyEventSignal().Connect( &callback2, &KeyEventCallback::Callback );
   dummy1.Add( dummy2 );
 
   DummyControl dummy3 = DummyControl::New(true);
   Impl::DummyControl& dummy3Impl = static_cast<Impl::DummyControl&>(dummy3.GetImplementation());
-  dummy3.SetSize(100.0f, 100.0f);
+  dummy3.SetProperty( Actor::Property::SIZE, Vector2(100.0f, 100.0f) );
   KeyEventCallback callback3( false );
   dummy3.KeyEventSignal().Connect( &callback3, &KeyEventCallback::Callback );
   dummy2.Add( dummy3 );
@@ -273,20 +274,20 @@ int UtcDaliKeyInputFocusManagerKeyEventPropagation02(void)
   DALI_TEST_CHECK(manager);
 
   DummyControl dummy1 = DummyControl::New(true);
-  dummy1.SetSize(100.0f, 100.0f);
+  dummy1.SetProperty( Actor::Property::SIZE, Vector2(100.0f, 100.0f) );
   KeyEventCallback callback1( false );
   dummy1.KeyEventSignal().Connect( &callback1, &KeyEventCallback::Callback );
   stage.Add( dummy1 );
 
   DummyControl dummy2 = DummyControl::New(true);
-  dummy2.SetSize(100.0f, 100.0f);
+  dummy2.SetProperty( Actor::Property::SIZE, Vector2(100.0f, 100.0f) );
   KeyEventCallback callback2( true );
   dummy2.KeyEventSignal().Connect( &callback2, &KeyEventCallback::Callback );
   dummy1.Add( dummy2 );
 
   DummyControl dummy3 = DummyControl::New(true);
   Impl::DummyControl& dummy3Impl = static_cast<Impl::DummyControl&>(dummy3.GetImplementation());
-  dummy3.SetSize(100.0f, 100.0f);
+  dummy3.SetProperty( Actor::Property::SIZE, Vector2(100.0f, 100.0f) );
   KeyEventCallback callback3( false );
   dummy3.KeyEventSignal().Connect( &callback3, &KeyEventCallback::Callback );
   dummy2.Add( dummy3 );
@@ -318,14 +319,14 @@ int UtcDaliKeyInputFocusManagerGetCurrentFocusControl(void)
 
   DummyControl dummy1 = DummyControl::New(true);
   Impl::DummyControl& dummy1Impl = static_cast<Impl::DummyControl&>(dummy1.GetImplementation());
-  dummy1.SetSize(100.0f, 100.0f);
+  dummy1.SetProperty( Actor::Property::SIZE, Vector2(100.0f, 100.0f) );
   stage.Add( dummy1 );
   DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusGained );
   DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusLost );
 
   DummyControl dummy2 = DummyControl::New(true);
   Impl::DummyControl& dummy2Impl = static_cast<Impl::DummyControl&>(dummy2.GetImplementation());
-  dummy2.SetSize(100.0f, 100.0f);
+  dummy2.SetProperty( Actor::Property::SIZE, Vector2(100.0f, 100.0f) );
   stage.Add( dummy2 );
   DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusGained );
   DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusLost );
@@ -370,7 +371,7 @@ int UtcDaliKeyInputFocusManagerRemoveFocus(void)
 
   DummyControl dummy1 = DummyControl::New(true);
   Impl::DummyControl& dummy1Impl = static_cast<Impl::DummyControl&>(dummy1.GetImplementation());
-  dummy1.SetSize(100.0f, 100.0f);
+  dummy1.SetProperty( Actor::Property::SIZE, Vector2(100.0f, 100.0f) );
   stage.Add( dummy1 );
   DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusGained );
   DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusLost );
@@ -430,3 +431,49 @@ int UtcDaliKeyInputFocusManagerSignalKeyInputFocusChanged(void)
   DALI_TEST_CHECK( lostActor == Control() );
   END_TEST;
 }
+
+int UtcDaliKeyInputFocusManagerSignalKeyInputFocusChangedforNewWindow(void)
+{
+  ToolkitTestApplication application;
+  KeyInputFocusManager manager = KeyInputFocusManager::Get();
+
+  tet_infoline(" UtcDaliKeyInputFocusManagerSignalKeyInputFocusChanged");
+
+  PushButton pushButton1 = PushButton::New();
+  PushButton pushButton2 = PushButton::New();
+
+  Window window = Window::New(PositionSize(0,0,0,0) ,"", false);
+  DALI_TEST_CHECK( window );
+
+  window.Add( pushButton1 );
+  window.Add( pushButton2 );
+
+  PushButton gainActor, lostActor;
+  KeyInputFocusChangedCallback callback( gainActor, lostActor );
+  manager.KeyInputFocusChangedSignal().Connect( &callback, &KeyInputFocusChangedCallback::Callback );
+
+  manager.SetFocus(pushButton1);
+
+  DALI_TEST_CHECK( gainActor == pushButton1 );
+  DALI_TEST_CHECK( lostActor == Control() );
+
+  gainActor.Reset();
+  lostActor.Reset();
+
+  manager.SetFocus(pushButton2);
+
+  DALI_TEST_CHECK( gainActor == pushButton2 );
+  DALI_TEST_CHECK( lostActor == pushButton1 );
+
+  gainActor.Reset();
+  lostActor.Reset();
+
+  // Removing the focus actor from the window would also result in signal emission.
+  window.Remove( pushButton1 );
+  window.Remove( pushButton2 );
+  DALI_TEST_CHECK( gainActor == Control() );
+  DALI_TEST_CHECK( lostActor == Control() );
+
+  window.Reset();
+  END_TEST;
+}