X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit-internal%2Futc-Dali-Text-Controller.cpp;h=e87c900096c8548e8d9d0cac00a47826e84043b6;hp=b32e3287428eafe4c5ea16367f43aaf3056ccb3e;hb=4593cc619ab0739fc8586c0c752209c555b0c8e3;hpb=fc7f0b361ec4c41e38ce5197dc5685c44fde80a6 diff --git a/automated-tests/src/dali-toolkit-internal/utc-Dali-Text-Controller.cpp b/automated-tests/src/dali-toolkit-internal/utc-Dali-Text-Controller.cpp index b32e328..e87c900 100755 --- a/automated-tests/src/dali-toolkit-internal/utc-Dali-Text-Controller.cpp +++ b/automated-tests/src/dali-toolkit-internal/utc-Dali-Text-Controller.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 Samsung Electronics Co., Ltd. + * Copyright (c) 2020 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. @@ -425,7 +425,7 @@ int UtcDaliTextControllerTextPopupButtonTouched(void) TextSelectionPopup::CLIPBOARD ); textPopup.EnableButtons( buttonsToEnable ); - Stage::GetCurrent().Add( textPopup ); + application.GetScene().Add( textPopup ); textPopup.ShowPopup(); // Render and notify @@ -663,7 +663,7 @@ int UtcDaliTextControllerSetGetLineSpacingProperty(void) tet_infoline(" UtcDaliTextControllerSetGetLineSpacingProperty"); ToolkitTestApplication application; - const Size size( Dali::Stage::GetCurrent().GetSize() ); + const Size size( application.GetScene().GetSize() ); // single line text const std::string textSingle("A Quick Brown Fox Jumps Over The Lazy Dog"); @@ -804,7 +804,7 @@ int UtcDaliTextControllerCheckBufferIndices(void) mImpl.mOperationsPending = Controller::ALL_OPERATIONS; // Perform a relayout - const Size size( Dali::Stage::GetCurrent().GetSize() ); + const Size size( application.GetScene().GetSize() ); controller->Relayout(size); tet_result(TET_PASS); @@ -855,7 +855,7 @@ int UtcDaliTextControllerCheckInputColorChanged(void) DALI_TEST_EQUALS( Controller::COLOR, static_cast( mImpl.mOperationsPending & Controller::COLOR ), TEST_LOCATION ); // Perform a relayout - const Size size( Dali::Stage::GetCurrent().GetSize() ); + const Size size( application.GetScene().GetSize() ); controller->Relayout(size); tet_result(TET_PASS); @@ -904,7 +904,7 @@ int UtcDaliTextControllerCheckInputFontFamilyChanged(void) TEST_LOCATION ); // Perform a relayout - const Size size( Dali::Stage::GetCurrent().GetSize() ); + const Size size( application.GetScene().GetSize() ); controller->Relayout(size); tet_result(TET_PASS); @@ -953,7 +953,7 @@ int UtcDaliTextControllerCheckInputFontWeightChanged(void) TEST_LOCATION ); // Perform a relayout - const Size size( Dali::Stage::GetCurrent().GetSize() ); + const Size size( application.GetScene().GetSize() ); controller->Relayout(size); tet_result(TET_PASS); @@ -1002,7 +1002,7 @@ int UtcDaliTextControllerCheckInputFontWidthChanged(void) TEST_LOCATION ); // Perform a relayout - const Size size( Dali::Stage::GetCurrent().GetSize() ); + const Size size( application.GetScene().GetSize() ); controller->Relayout(size); tet_result(TET_PASS); @@ -1051,7 +1051,7 @@ int UtcDaliTextControllerCheckInputFontSlantChanged(void) TEST_LOCATION ); // Perform a relayout - const Size size( Dali::Stage::GetCurrent().GetSize() ); + const Size size( application.GetScene().GetSize() ); controller->Relayout(size); tet_result(TET_PASS); @@ -1100,7 +1100,7 @@ int UtcDaliTextControllerCheckInputFontPointSizeChanged(void) TEST_LOCATION ); // Perform a relayout - const Size size( Dali::Stage::GetCurrent().GetSize() ); + const Size size( application.GetScene().GetSize() ); controller->Relayout(size); tet_result(TET_PASS); @@ -1127,7 +1127,7 @@ int UtcDaliTextControllerSelectEvent(void) controller->SelectEvent( 0.f, 0.f, SelectionType::INTERACTIVE ); // Perform a relayout - const Size size( Dali::Stage::GetCurrent().GetSize() ); + const Size size( application.GetScene().GetSize() ); controller->Relayout(size); // Get the implementation of the text controller @@ -1185,7 +1185,7 @@ int UtcDaliTextControllerRemoveTextChangeEventData(void) DALI_TEST_EQUALS( EventData::EDITING, mImpl.mEventData->mState, TEST_LOCATION ); // Perform a relayout - const Size size( Dali::Stage::GetCurrent().GetSize() ); + const Size size( application.GetScene().GetSize() ); controller->Relayout( size ); tet_result(TET_PASS); @@ -1213,7 +1213,7 @@ int UtcDaliTextControllerCheckInputFontPointSizeUpdated(void) application.Render(); // Perform a relayout - const Size size( Dali::Stage::GetCurrent().GetSize() ); + const Size size( application.GetScene().GetSize() ); controller->Relayout(size); // simulate a key event. @@ -1232,3 +1232,62 @@ int UtcDaliTextControllerCheckInputFontPointSizeUpdated(void) END_TEST; } + +int UtcDaliTextControllerDeleteSurroundings(void) +{ + tet_infoline(" UtcDaliTextControllerDeleteSurroundings"); + ToolkitTestApplication application; + + // Creates a text controller. + ControllerPtr controller = Controller::New(); + + ConfigureTextField( controller ); + + // Get the implementation of the text controller + Controller::Impl& mImpl = Controller::Impl::GetImplementation( *controller.Get() ); + + DALI_TEST_EQUALS( EventData::INACTIVE, mImpl.mEventData->mState, TEST_LOCATION ); + + InputMethodContext inputMethodContext = InputMethodContext::New(); + // Add some pre-edit text, such as Korean + InputMethodContext::EventData imfEvent = InputMethodContext::EventData( InputMethodContext::PRE_EDIT, "ㅂㅂㅂ", 0, 3 ); + controller->OnInputMethodContextEvent( inputMethodContext, imfEvent ); + + // Perform a relayout + const Size size( application.GetScene().GetSize() ); + + application.SendNotification(); + application.Render(); + + controller->Relayout( size ); + + // Simulate a key event to delete one text + controller->KeyEvent( GenerateKey( "", "", DALI_KEY_BACKSPACE, 0, 0, Dali::KeyEvent::Down ) ); + + // Send DELETE_SURROUNDING event (Delete All text) + imfEvent = InputMethodContext::EventData( InputMethodContext::DELETE_SURROUNDING, "", -2, 2 ); + controller->OnInputMethodContextEvent( inputMethodContext, imfEvent ); + + application.SendNotification(); + application.Render(); + + controller->Relayout( size ); + + // simulate a key event to add text + controller->KeyEvent( GenerateKey( "ㅇ", "ㅇ", 238, 0, 0, Dali::KeyEvent::Down ) ); + controller->KeyEvent( GenerateKey( "ㅇ", "ㅇ", 238, 0, 0, Dali::KeyEvent::Down ) ); + + DALI_TEST_EQUALS( EventData::EDITING, mImpl.mEventData->mState, TEST_LOCATION ); + + // Force to update the model. + controller->GetNaturalSize(); + + application.SendNotification(); + application.Render(); + + controller->Relayout( size ); + + tet_result(TET_PASS); + + END_TEST; +}