X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Futc-Dali-KeyInputFocusManager.cpp;h=18345a3bdfb0ecb79f0b1ef059cf652b1085df16;hp=982da9c3a186279451fb5d5931a2d8a2f3198580;hb=e0c063be9e7ecde0e5665079289489d456828abf;hpb=6d4347e7eff8ab62127a60984af2f1cdf156716c diff --git a/automated-tests/src/dali-toolkit/utc-Dali-KeyInputFocusManager.cpp b/automated-tests/src/dali-toolkit/utc-Dali-KeyInputFocusManager.cpp index 982da9c..18345a3 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-KeyInputFocusManager.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-KeyInputFocusManager.cpp @@ -20,6 +20,7 @@ #include #include #include +#include #include #include @@ -69,9 +70,7 @@ struct SignalData { functorCalled = false; - receivedKeyEvent.keyModifier = 0; - receivedKeyEvent.keyPressedName.clear(); - receivedKeyEvent.keyPressed.clear(); + receivedKeyEvent.Reset(); } @@ -251,7 +250,7 @@ int UtcDaliKeyInputFocusManagerKeyEventPropagation01(void) manager.SetFocus( dummy3 ); DALI_TEST_CHECK( dummy3Impl.keyInputFocusGained ); - Integration::KeyEvent event( "a", "", "a", 0, 0, 0, Integration::KeyEvent::Up, "", "", Device::Class::TOUCH, Device::Subclass::NONE ); + Integration::KeyEvent event( "a", "", "a", 0, 0, 0, Integration::KeyEvent::UP, "", "", Device::Class::TOUCH, Device::Subclass::NONE ); application.ProcessEvent(event); DALI_TEST_CHECK( callback1.mIsCalled ); @@ -297,7 +296,7 @@ int UtcDaliKeyInputFocusManagerKeyEventPropagation02(void) manager.SetFocus( dummy3 ); DALI_TEST_CHECK( dummy3Impl.keyInputFocusGained ); - Integration::KeyEvent event( "a", "", "a", 0, 0, 0, Integration::KeyEvent::Up, "", "", Device::Class::TOUCH, Device::Subclass::NONE ); + Integration::KeyEvent event( "a", "", "a", 0, 0, 0, Integration::KeyEvent::UP, "", "", Device::Class::TOUCH, Device::Subclass::NONE ); application.ProcessEvent(event); DALI_TEST_CHECK( !callback1.mIsCalled ); @@ -307,6 +306,53 @@ int UtcDaliKeyInputFocusManagerKeyEventPropagation02(void) END_TEST; } +int UtcDaliKeyInputFocusManagerDispatchKeyEvents(void) +{ + + ToolkitTestApplication application; + Integration::Scene stage = application.GetScene(); + + tet_infoline("Test KeyEvents propagation. If DISPATCH_KEY_EVENTS property is false, the KeyEvent is also not received."); + + KeyInputFocusManager manager = KeyInputFocusManager::Get(); + DALI_TEST_CHECK(manager); + + DummyControl dummy1 = DummyControl::New(true); + 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.SetProperty( Actor::Property::SIZE, Vector2(100.0f, 100.0f) ); + KeyEventCallback callback2( false ); + dummy2.KeyEventSignal().Connect( &callback2, &KeyEventCallback::Callback ); + // dummy2 set DISPATCH_KEY_EVENTS property to false. + dummy2.SetProperty( Toolkit::DevelControl::Property::DISPATCH_KEY_EVENTS, false); + dummy1.Add( dummy2 ); + + DummyControl dummy3 = DummyControl::New(true); + Impl::DummyControl& dummy3Impl = static_cast(dummy3.GetImplementation()); + dummy3.SetProperty( Actor::Property::SIZE, Vector2(100.0f, 100.0f) ); + KeyEventCallback callback3( false ); + dummy3.KeyEventSignal().Connect( &callback3, &KeyEventCallback::Callback ); + dummy2.Add( dummy3 ); + DALI_TEST_CHECK( ! dummy3Impl.keyInputFocusGained ); + DALI_TEST_CHECK( ! dummy3Impl.keyInputFocusLost ); + + manager.SetFocus( dummy3 ); + DALI_TEST_CHECK( dummy3Impl.keyInputFocusGained ); + + Integration::KeyEvent event( "a", "", "a", 0, 0, 0, Integration::KeyEvent::UP, "", "", Device::Class::TOUCH, Device::Subclass::NONE ); + application.ProcessEvent(event); + + DALI_TEST_CHECK( !callback1.mIsCalled ); + DALI_TEST_CHECK( !callback2.mIsCalled ); + DALI_TEST_CHECK( !callback3.mIsCalled ); + + END_TEST; +} + int UtcDaliKeyInputFocusManagerGetCurrentFocusControl(void) { ToolkitTestApplication application;