X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit-unmanaged%2Futc-Dali-KeyInputFocusManager.cpp;h=be76927cac03dac80bafc222d34ab6d7905510db;hb=c1c78b1b64e484e60c510afba57f05c2051f8e5d;hp=5dd331e1b61ea91059ff14c9fbaba95952bfd56d;hpb=fa6279fb2830427d5ab569ca14e6ade1557ef2fa;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/automated-tests/src/dali-toolkit-unmanaged/utc-Dali-KeyInputFocusManager.cpp b/automated-tests/src/dali-toolkit-unmanaged/utc-Dali-KeyInputFocusManager.cpp index 5dd331e..be76927 100644 --- a/automated-tests/src/dali-toolkit-unmanaged/utc-Dali-KeyInputFocusManager.cpp +++ b/automated-tests/src/dali-toolkit-unmanaged/utc-Dali-KeyInputFocusManager.cpp @@ -1,18 +1,19 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Flora License, Version 1.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://floralicense.org/license/ -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// +/* + * Copyright (c) 2014 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ #include #include @@ -20,6 +21,7 @@ #include #include +#include "dummy-control.h" using namespace Dali; using namespace Toolkit; @@ -124,21 +126,78 @@ int UtcDaliKeyInputFocusManagerGet(void) END_TEST; } -int UtcDaliKeyInputFocusManagerSetFocus(void) +int UtcDaliKeyInputFocusManagerSetFocus01(void) { ToolkitTestApplication application; Stage stage = Stage::GetCurrent(); - tet_infoline(" UtcDaliKeyInputFocusManagerSetFocus"); + tet_infoline(" Check that there is no focused control. Add a control to the stack. Check it is now the focused actor and receives KeyInputFocusGained signal"); KeyInputFocusManager manager = KeyInputFocusManager::Get(); DALI_TEST_CHECK(manager); - PushButton pushButton1 = PushButton::New(); - stage.Add( pushButton1 ); + Control focusedControl = manager.GetCurrentFocusControl(); + DALI_TEST_CHECK( ! focusedControl ); + + DummyControl dummy = DummyControl::New(true); + DummyControlImplOverride& dummyImpl = static_cast(dummy.GetImplementation()); + dummy.SetSize(100.0f, 100.0f); + stage.Add( dummy ); + DALI_TEST_CHECK( ! dummyImpl.keyInputFocusGained ); + + manager.SetFocus( dummy ); + DALI_TEST_CHECK( dummy.HasKeyInputFocus()); // Also tests IsKeyboardListener() API + DALI_TEST_CHECK( dummyImpl.keyInputFocusGained ); + + focusedControl = manager.GetCurrentFocusControl(); + DALI_TEST_CHECK( focusedControl ); + DALI_TEST_CHECK( focusedControl == dummy ); + + END_TEST; +} + +int UtcDaliKeyInputFocusManagerSetFocus02(void) +{ + ToolkitTestApplication application; + Stage stage = Stage::GetCurrent(); + + tet_infoline(" Add a control to the stack. Check it is now the focused actor and receives KeyInputFocusGained signal. Add another control - check that the first control receives KeyInputFocusLost"); + + KeyInputFocusManager manager = KeyInputFocusManager::Get(); + DALI_TEST_CHECK(manager); + + DummyControl dummy1 = DummyControl::New(true); + DummyControlImplOverride& dummy1Impl = static_cast(dummy1.GetImplementation()); + dummy1.SetSize(100.0f, 100.0f); + stage.Add( dummy1 ); + DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusGained ); + DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusLost ); + + stage.Add( dummy1 ); + + manager.SetFocus( dummy1 ); + DALI_TEST_CHECK( dummy1.HasKeyInputFocus()); // Also tests IsKeyboardListener() API + DALI_TEST_CHECK( dummy1Impl.keyInputFocusGained ); + dummy1Impl.keyInputFocusGained = false; + + DummyControl dummy2 = DummyControl::New(true); + DummyControlImplOverride& dummy2Impl = static_cast(dummy2.GetImplementation()); + dummy2.SetSize(100.0f, 100.0f); + stage.Add( dummy2 ); + DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusGained ); + DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusLost ); + + stage.Add( dummy2 ); + + manager.SetFocus( dummy2 ); + DALI_TEST_CHECK( dummy2.HasKeyInputFocus()); // Also tests IsKeyboardListener() API + DALI_TEST_CHECK( dummy2Impl.keyInputFocusGained ); + dummy1Impl.keyInputFocusGained = false; + + DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusGained ); + DALI_TEST_CHECK( dummy1Impl.keyInputFocusLost ); + - manager.SetFocus(pushButton1); - DALI_TEST_CHECK(pushButton1.HasKeyInputFocus()); END_TEST; } @@ -147,34 +206,244 @@ int UtcDaliKeyInputFocusManagerGetCurrentFocusControl(void) ToolkitTestApplication application; Stage stage = Stage::GetCurrent(); - tet_infoline(" UtcDaliKeyInputFocusManagerGetCurrentFocusControl"); + tet_infoline(" Add 2 controls, check they each get focused. Re-focus the first control - ensure it's now got focus (check signals)"); KeyInputFocusManager manager = KeyInputFocusManager::Get(); DALI_TEST_CHECK(manager); - PushButton pushButton1 = PushButton::New(); - PushButton pushButton2 = PushButton::New(); - stage.Add( pushButton1 ); - stage.Add( pushButton2 ); + DummyControl dummy1 = DummyControl::New(true); + DummyControlImplOverride& dummy1Impl = static_cast(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(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() ); + DALI_TEST_CHECK( dummy1Impl.keyInputFocusGained ); + DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusLost ); + dummy1Impl.keyInputFocusGained = false; + dummy1Impl.keyInputFocusLost = false; + + manager.SetFocus(dummy2); + DALI_TEST_CHECK( dummy2 == manager.GetCurrentFocusControl() ); + DALI_TEST_CHECK( dummy1Impl.keyInputFocusLost ); + DALI_TEST_CHECK( dummy2Impl.keyInputFocusGained ); + DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusGained ); + DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusLost ); + // Reset signal received + dummy1Impl.keyInputFocusGained = false; + dummy1Impl.keyInputFocusLost = false; + dummy2Impl.keyInputFocusGained = false; + dummy2Impl.keyInputFocusLost = false; + + manager.SetFocus(dummy1); + DALI_TEST_CHECK( dummy1 == manager.GetCurrentFocusControl()); + DALI_TEST_CHECK( dummy1Impl.keyInputFocusGained ); + DALI_TEST_CHECK( dummy2Impl.keyInputFocusLost ); + DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusLost ); + DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusGained ); + END_TEST; +} - manager.SetFocus(pushButton1); - DALI_TEST_CHECK(pushButton1 == manager.GetCurrentFocusControl()); +int UtcDaliKeyInputFocusManagerRemoveFocus01(void) +{ + ToolkitTestApplication application; + Stage stage = Stage::GetCurrent(); - manager.SetFocus(pushButton2); - DALI_TEST_CHECK(pushButton2 == manager.GetCurrentFocusControl()); + tet_infoline(" Add 3 focus controls. Test that removing the topmost informs the next control that it now has focus, Test that the bottommost control doesn't receive anything. "); + + KeyInputFocusManager manager = KeyInputFocusManager::Get(); + DALI_TEST_CHECK(manager); + + DummyControl dummy1 = DummyControl::New(true); + DummyControlImplOverride& dummy1Impl = static_cast(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(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; + + manager.RemoveFocus(dummy2); + DALI_TEST_CHECK(dummy1 == manager.GetCurrentFocusControl()); + DALI_TEST_CHECK( dummy1Impl.keyInputFocusGained ); + DALI_TEST_CHECK( dummy2Impl.keyInputFocusLost ); + DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusLost ); + DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusGained ); + dummy1Impl.keyInputFocusGained = false; + dummy1Impl.keyInputFocusLost = false; + dummy2Impl.keyInputFocusGained = false; + dummy2Impl.keyInputFocusLost = false; + + manager.RemoveFocus(dummy1); + DALI_TEST_CHECK(Control() == manager.GetCurrentFocusControl()); + DALI_TEST_CHECK( dummy1Impl.keyInputFocusLost ); + DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusLost ); + DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusGained ); + DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusGained ); + + END_TEST; +} + +int UtcDaliKeyInputFocusManagerRemoveFocus02(void) +{ + ToolkitTestApplication application; + Stage stage = Stage::GetCurrent(); + + tet_infoline(" Add 3 focus controls. Test that removing the bottommost doesn't change the focused control" ); + + KeyInputFocusManager manager = KeyInputFocusManager::Get(); + DALI_TEST_CHECK(manager); + + DummyControl dummy1 = DummyControl::New(true); + DummyControlImplOverride& dummy1Impl = static_cast(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(dummy2.GetImplementation()); + dummy2.SetSize(100.0f, 100.0f); + stage.Add( dummy2 ); + DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusGained ); + DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusLost ); + + DummyControl dummy3 = DummyControl::New(true); + DummyControlImplOverride& dummy3Impl = static_cast(dummy3.GetImplementation()); + dummy3.SetSize(100.0f, 100.0f); + stage.Add( dummy3 ); + DALI_TEST_CHECK( ! dummy3Impl.keyInputFocusGained ); + DALI_TEST_CHECK( ! dummy3Impl.keyInputFocusLost ); + + manager.SetFocus(dummy1); + DALI_TEST_CHECK(dummy1 == manager.GetCurrentFocusControl()); + + manager.SetFocus(dummy2); + DALI_TEST_CHECK(dummy2 == manager.GetCurrentFocusControl()); + + manager.SetFocus(dummy3); + DALI_TEST_CHECK(dummy3 == manager.GetCurrentFocusControl()); + dummy1Impl.keyInputFocusGained = false; + dummy1Impl.keyInputFocusLost = false; + dummy2Impl.keyInputFocusGained = false; + dummy2Impl.keyInputFocusLost = false; + dummy3Impl.keyInputFocusGained = false; + dummy3Impl.keyInputFocusLost = false; + + manager.RemoveFocus(dummy1); + DALI_TEST_CHECK(dummy3 == manager.GetCurrentFocusControl()); + DALI_TEST_CHECK( dummy1Impl.keyInputFocusLost ); + DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusGained ); + DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusLost ); + DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusGained ); + DALI_TEST_CHECK( ! dummy3Impl.keyInputFocusLost ); + DALI_TEST_CHECK( ! dummy3Impl.keyInputFocusGained ); + dummy1Impl.keyInputFocusGained = false; + dummy1Impl.keyInputFocusLost = false; + dummy2Impl.keyInputFocusGained = false; + dummy2Impl.keyInputFocusLost = false; + dummy3Impl.keyInputFocusGained = false; + dummy3Impl.keyInputFocusLost = false; - manager.SetFocus(pushButton1); - DALI_TEST_CHECK(pushButton1 == manager.GetCurrentFocusControl()); END_TEST; } -int UtcDaliKeyInputFocusManagerRemoveFocus(void) +int UtcDaliKeyInputFocusManagerRemoveFocus03(void) { ToolkitTestApplication application; Stage stage = Stage::GetCurrent(); - tet_infoline(" UtcDaliKeyInputFocusManagerRemoveFocus"); + tet_infoline(" Add 2 focus controls. Remove each of them from the bottom up. Test that the stack is now empty. Add a new control - check that it correctly has focus" ); + + KeyInputFocusManager manager = KeyInputFocusManager::Get(); + DALI_TEST_CHECK(manager); + + DummyControl dummy1 = DummyControl::New(true); + DummyControlImplOverride& dummy1Impl = static_cast(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(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; + + manager.RemoveFocus(dummy1); + DALI_TEST_CHECK(dummy2 == manager.GetCurrentFocusControl()); + DALI_TEST_CHECK( dummy1Impl.keyInputFocusLost ); + DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusGained ); + DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusLost ); + DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusGained ); + dummy1Impl.keyInputFocusGained = false; + dummy1Impl.keyInputFocusLost = false; + dummy2Impl.keyInputFocusGained = false; + dummy2Impl.keyInputFocusLost = false; + + manager.RemoveFocus(dummy2); + DALI_TEST_CHECK(Control() == manager.GetCurrentFocusControl()); + DALI_TEST_CHECK( dummy2Impl.keyInputFocusLost ); + DALI_TEST_CHECK( ! dummy2Impl.keyInputFocusGained ); + DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusLost ); + DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusGained ); + dummy1Impl.keyInputFocusGained = false; + dummy1Impl.keyInputFocusLost = false; + dummy2Impl.keyInputFocusGained = false; + dummy2Impl.keyInputFocusLost = false; + 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); @@ -182,18 +451,110 @@ int UtcDaliKeyInputFocusManagerRemoveFocus(void) PushButton pushButton2 = PushButton::New(); stage.Add( pushButton1 ); stage.Add( pushButton2 ); + manager.SetFocus( pushButton1 ); + manager.SetFocus( pushButton2 ); - manager.SetFocus(pushButton1); - DALI_TEST_CHECK(pushButton1 == manager.GetCurrentFocusControl()); + PushButton pushButton3 = PushButton::New(); + stage.Add( pushButton3 ); + manager.RemoveFocus( pushButton3 ); + DALI_TEST_CHECK( pushButton2 == manager.GetCurrentFocusControl()); + END_TEST; +} - manager.SetFocus(pushButton2); - DALI_TEST_CHECK(pushButton2 == manager.GetCurrentFocusControl()); +int UtcDaliKeyInputFocusManagerDestroyObject01(void) +{ + ToolkitTestApplication application; + Stage stage = Stage::GetCurrent(); - manager.RemoveFocus(pushButton2); - DALI_TEST_CHECK(pushButton1 == manager.GetCurrentFocusControl()); + 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" ); - manager.RemoveFocus(pushButton1); - DALI_TEST_CHECK(Control() == manager.GetCurrentFocusControl()); + KeyInputFocusManager manager = KeyInputFocusManager::Get(); + DALI_TEST_CHECK(manager); + + DummyControl dummy1 = DummyControl::New(true); + DummyControlImplOverride& dummy1Impl = static_cast(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(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()); + DALI_TEST_CHECK( dummy1Impl.keyInputFocusGained ); + DALI_TEST_CHECK( ! dummy1Impl.keyInputFocusLost ); + END_TEST; +} + +int UtcDaliKeyInputFocusManagerDestroyObject02(void) +{ + ToolkitTestApplication application; + Stage stage = Stage::GetCurrent(); + + tet_infoline(" Add 2 controls to the stack. Destroy a different actor entirely. Check that the stack is un-affected."); + + KeyInputFocusManager manager = KeyInputFocusManager::Get(); + DALI_TEST_CHECK(manager); + + DummyControl dummy1 = DummyControl::New(true); + DummyControlImplOverride& dummy1Impl = static_cast(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(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; + + { + BitmapImage image = CreateBitmapImage(); + ImageActor imageActor = ImageActor::New( image ); + stage.Add( imageActor ); + imageActor.SetSize(100, 100); + + application.SendNotification(); + application.Render(); + + stage.Remove( imageActor ); + } + + DALI_TEST_CHECK( dummy2 == manager.GetCurrentFocusControl()); END_TEST; } @@ -257,14 +618,16 @@ int UtcDaliKeyInputFocusManagerSignalKeyInputFocusChanged(void) DALI_TEST_CHECK( gainActor == pushButton1 ); DALI_TEST_CHECK( lostActor == Control() ); - gainActor = lostActor = NULL; + gainActor.Reset(); + lostActor.Reset(); manager.SetFocus(pushButton2); DALI_TEST_CHECK( gainActor == pushButton2 ); DALI_TEST_CHECK( lostActor == pushButton1 ); - gainActor = lostActor = NULL; + gainActor.Reset(); + lostActor.Reset(); // Removing the focus actor from the stage would also result in signal emission. stage.Remove( pushButton1 ); @@ -295,7 +658,7 @@ int UtcDaliKeyInputFocusManagerSignalUnhandledKeyEvent(void) DALI_TEST_CHECK(event.keyName == data.receivedKeyEvent.keyPressedName ); DALI_TEST_CHECK(event.keyCode == data.receivedKeyEvent.keyCode); DALI_TEST_CHECK(event.keyString == data.receivedKeyEvent.keyPressed ); - DALI_TEST_CHECK(event.state == data.receivedKeyEvent.state ); + DALI_TEST_CHECK(event.state == static_cast(data.receivedKeyEvent.state) ); data.Reset();