- PushButton pushButton1 = PushButton::New();
- stage.Add( pushButton1 );
- manager.SetFocus( pushButton1 );
- DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusLost );
- DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusLost );
- DALI_TEST_CHECK( pushButton1 == manager.GetCurrentFocusControl());
- END_TEST;
-}
-
-int UtcDaliKeyInputFocusManagerRemoveFocus04(void)
-{
- ToolkitTestApplication application;
- Stage stage = Stage::GetCurrent();
-
- tet_infoline(" Test what happens if the removed control is not on the focus stack");
- KeyInputFocusManager manager = KeyInputFocusManager::Get();
- DALI_TEST_CHECK(manager);
-
- PushButton pushButton1 = PushButton::New();
- PushButton pushButton2 = PushButton::New();
- stage.Add( pushButton1 );
- stage.Add( pushButton2 );
- manager.SetFocus( pushButton1 );
- manager.SetFocus( pushButton2 );
-
- PushButton pushButton3 = PushButton::New();
- stage.Add( pushButton3 );
- manager.RemoveFocus( pushButton3 );
- DALI_TEST_CHECK( pushButton2 == manager.GetCurrentFocusControl());
- END_TEST;
-}
-
-int UtcDaliKeyInputFocusManagerDestroyObject01(void)
-{
- ToolkitTestApplication application;
- Stage stage = Stage::GetCurrent();
-
- tet_infoline(" Add 2 controls to the stack. Unparent and destroy the topmost. Check that it is removed from the stack, and that the bottommost is correctly focused" );
-
- KeyInputFocusManager manager = KeyInputFocusManager::Get();
- DALI_TEST_CHECK(manager);
-
- DummyControl dummy1 = DummyControl::New(true);
- DummyControlImplOverride& dummy1Impl = static_cast<DummyControlImplOverride&>(dummy1.GetImplementation());
- dummy1.SetSize(100.0f, 100.0f);
- stage.Add( dummy1 );
- DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusGained );
- DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusLost );
-
- {
- DummyControl dummy2 = DummyControl::New(true);
- DummyControlImplOverride& dummy2Impl = static_cast<DummyControlImplOverride&>(dummy2.GetImplementation());
- dummy2.SetSize(100.0f, 100.0f);
- stage.Add( dummy2 );
- DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusGained );
- DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusLost );
-
- manager.SetFocus(dummy1);
- DALI_TEST_CHECK(dummy1 == manager.GetCurrentFocusControl());
-
- manager.SetFocus(dummy2);
- DALI_TEST_CHECK(dummy2 == manager.GetCurrentFocusControl());
-
- dummy1Impl.keyInputFocusGained = false;
- dummy1Impl.keyInputFocusLost = false;
- dummy2Impl.keyInputFocusGained = false;
- dummy2Impl.keyInputFocusLost = false;
-
- stage.Remove(dummy2);
- }
-
- DALI_TEST_CHECK(dummy1 == manager.GetCurrentFocusControl());