X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Futc-Dali-TextEditor.cpp;h=a55d63790013bfe4dd706af2d7848079ea459c88;hb=00f2d3725933972d5da6cfa528944fdd7a7022ec;hp=c4247af57d821f2af349a50a3cb4f98667095ad0;hpb=c295a64b88c2cbbdd30543afe2464060de7816fd;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/automated-tests/src/dali-toolkit/utc-Dali-TextEditor.cpp b/automated-tests/src/dali-toolkit/utc-Dali-TextEditor.cpp index c4247af..a55d637 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-TextEditor.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-TextEditor.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Samsung Electronics Co., Ltd. + * Copyright (c) 2018 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. @@ -100,6 +100,7 @@ const char* const PROPERTY_NAME_PLACEHOLDER_TEXT_COLOR = "placehol const char* const PROPERTY_NAME_ENABLE_SELECTION = "enableSelection"; const char* const PROPERTY_NAME_PLACEHOLDER = "placeholder"; const char* const PROPERTY_NAME_ENABLE_SHIFT_SELECTION = "enableShiftSelection"; +const char* const PROPERTY_NAME_ENABLE_GRAB_HANDLE = "enableGrabHandle"; const int DEFAULT_RENDERING_BACKEND = Dali::Toolkit::Text::DEFAULT_RENDERING_BACKEND; @@ -538,6 +539,7 @@ int UtcDaliTextEditorGetPropertyP(void) DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_PLACEHOLDER_TEXT ) == DevelTextEditor::Property::PLACEHOLDER_TEXT ); DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_PLACEHOLDER_TEXT_COLOR ) == DevelTextEditor::Property::PLACEHOLDER_TEXT_COLOR ); DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_ENABLE_SHIFT_SELECTION ) == DevelTextEditor::Property::ENABLE_SHIFT_SELECTION ); + DALI_TEST_CHECK( editor.GetPropertyIndex( PROPERTY_NAME_ENABLE_GRAB_HANDLE ) == DevelTextEditor::Property::ENABLE_GRAB_HANDLE ); END_TEST; } @@ -2438,6 +2440,16 @@ int utcDaliTextEditorHandles(void) editor.SetProperty( TextEditor::Property::GRAB_HANDLE_IMAGE, HANDLE_IMAGE_FILE_NAME ); editor.SetProperty( TextEditor::Property::SMOOTH_SCROLL, true ); + Property::Map imagePropertyMap; + imagePropertyMap["type"] = "BufferImage"; + imagePropertyMap["width"] = 40; + imagePropertyMap["height"] = 40; + + editor.SetProperty( TextEditor::Property::SELECTION_HANDLE_IMAGE_LEFT, imagePropertyMap ); + editor.SetProperty( TextEditor::Property::SELECTION_HANDLE_IMAGE_RIGHT, imagePropertyMap ); + editor.SetProperty( TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_LEFT, imagePropertyMap ); + editor.SetProperty( TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_RIGHT, imagePropertyMap ); + editor.SetSize( 30.f, 500.f ); editor.SetParentOrigin( ParentOrigin::TOP_LEFT ); editor.SetAnchorPoint( AnchorPoint::TOP_LEFT ); @@ -2512,10 +2524,61 @@ int utcDaliTextEditorHandles(void) application.SendNotification(); application.Render(); + // Tap first to get the focus. + application.ProcessEvent( GenerateTap( Gesture::Possible, 1u, 1u, Vector2( 3.f, 25.0f ) ) ); + application.ProcessEvent( GenerateTap( Gesture::Started, 1u, 1u, Vector2( 3.f, 25.0f ) ) ); + + // Render and notify + application.SendNotification(); + application.Render(); + + // Double tap to select a word and create the selection handles. + application.ProcessEvent( GenerateTap( Gesture::Possible, 2u, 1u, Vector2( 3.f, 25.0f ) ) ); + application.ProcessEvent( GenerateTap( Gesture::Started, 2u, 1u, Vector2( 3.f, 25.0f ) ) ); + + // Render and notify + application.SendNotification(); + application.Render(); + + touchPos = Vector2( 10.0f, 50.0f ); + + // Touch the left selection handle to set it as pressed. + event = Dali::Integration::TouchEvent(); + event.AddPoint( GetPointDownInside( touchPos ) ); + application.ProcessEvent( event ); + + // Render and notify + application.SendNotification(); + application.Render(); + + // drag the left selection handle right + SendPan(application, Gesture::Possible, touchPos); + SendPan(application, Gesture::Started, touchPos); + touchPos.x += 5.0f; + Wait(application, 100); + + for(int i = 0;i<20;i++) + { + SendPan(application, Gesture::Continuing, touchPos); + touchPos.x += 5.0f; + Wait(application); + } + + SendPan(application, Gesture::Finished, touchPos); + Wait(application); + + // Release the left selection handle. + event = Dali::Integration::TouchEvent(); + event.AddPoint( GetPointUpInside( touchPos ) ); + application.ProcessEvent( event ); + + // Render and notify + application.SendNotification(); + application.Render(); + END_TEST; } - int utcDaliTextEditorUnderPropertyStringP(void) { ToolkitTestApplication application; @@ -2783,3 +2846,31 @@ int UtcDaliTextEditorEnableShiftSelectionProperty(void) END_TEST; } + +int UtcDaliTextEditorEnableGrabHandleProperty(void) +{ + ToolkitTestApplication application; + tet_infoline("UtcDaliTextEditorEnableGrabHandleProperty"); + + TextEditor editor = TextEditor::New(); + DALI_TEST_CHECK( editor ); + editor.SetSize( 300.f, 50.f ); + editor.SetParentOrigin( ParentOrigin::TOP_LEFT ); + editor.SetAnchorPoint( AnchorPoint::TOP_LEFT ); + Stage::GetCurrent().Add( editor ); + + application.SendNotification(); + application.Render(); + + // The default value of ENABLE_GRAB_HANDLE is 'true'. + DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::ENABLE_GRAB_HANDLE ), true, TEST_LOCATION ); + + // Check the enable grab handle property + editor.SetProperty( DevelTextEditor::Property::ENABLE_GRAB_HANDLE, false ); + DALI_TEST_EQUALS( editor.GetProperty( DevelTextEditor::Property::ENABLE_GRAB_HANDLE ), false, TEST_LOCATION ); + + application.SendNotification(); + application.Render(); + + END_TEST; +}