X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Ftext-input%2Ftext-input-impl.cpp;h=34eabeea0fb6b8a008e56a161b16e27f304f9673;hp=c9d5b830e27e0974985dc0540ac6a926d7983aac;hb=ac2e82e276fadecf2b202dd4841d0d497aca1df7;hpb=49499a0b6e23d98f681f7aefe6b18c5dad55f8b3 diff --git a/dali-toolkit/internal/controls/text-input/text-input-impl.cpp b/dali-toolkit/internal/controls/text-input/text-input-impl.cpp index c9d5b83..34eabee 100644 --- a/dali-toolkit/internal/controls/text-input/text-input-impl.cpp +++ b/dali-toolkit/internal/controls/text-input/text-input-impl.cpp @@ -198,19 +198,28 @@ namespace Internal namespace { +// Signals + +const char* const SIGNAL_START_INPUT = "start-input"; +const char* const SIGNAL_END_INPUT = "end-input"; +const char* const SIGNAL_STYLE_CHANGED = "style-changed"; +const char* const SIGNAL_MAX_INPUT_CHARACTERS_REACHED = "max-input-characters-reached"; +const char* const SIGNAL_TOOLBAR_DISPLAYED = "toolbar-displayed"; +const char* const SIGNAL_TEXT_EXCEED_BOUNDARIES = "text-exceed-boundaries"; + BaseHandle Create() { return Toolkit::TextInput::New(); } -TypeRegistration typeRegistration( typeid(Toolkit::TextInput), typeid(Toolkit::Control), Create ); +TypeRegistration typeRegistration( typeid( Toolkit::TextInput ), typeid( Toolkit::Control ), Create ); -SignalConnectorType signalConnector1( typeRegistration, Toolkit::TextInput::SIGNAL_START_INPUT, &TextInput::DoConnectSignal ); -SignalConnectorType signalConnector2( typeRegistration, Toolkit::TextInput::SIGNAL_END_INPUT, &TextInput::DoConnectSignal ); -SignalConnectorType signalConnector3( typeRegistration, Toolkit::TextInput::SIGNAL_STYLE_CHANGED, &TextInput::DoConnectSignal ); -SignalConnectorType signalConnector4( typeRegistration, Toolkit::TextInput::SIGNAL_MAX_INPUT_CHARACTERS_REACHED, &TextInput::DoConnectSignal ); -SignalConnectorType signalConnector5( typeRegistration, Toolkit::TextInput::SIGNAL_TOOLBAR_DISPLAYED, &TextInput::DoConnectSignal ); -SignalConnectorType signalConnector6( typeRegistration, Toolkit::TextInput::SIGNAL_TEXT_EXCEED_BOUNDARIES, &TextInput::DoConnectSignal ); +SignalConnectorType signalConnector1( typeRegistration, SIGNAL_START_INPUT, &TextInput::DoConnectSignal ); +SignalConnectorType signalConnector2( typeRegistration, SIGNAL_END_INPUT, &TextInput::DoConnectSignal ); +SignalConnectorType signalConnector3( typeRegistration, SIGNAL_STYLE_CHANGED, &TextInput::DoConnectSignal ); +SignalConnectorType signalConnector4( typeRegistration, SIGNAL_MAX_INPUT_CHARACTERS_REACHED, &TextInput::DoConnectSignal ); +SignalConnectorType signalConnector5( typeRegistration, SIGNAL_TOOLBAR_DISPLAYED, &TextInput::DoConnectSignal ); +SignalConnectorType signalConnector6( typeRegistration, SIGNAL_TEXT_EXCEED_BOUNDARIES, &TextInput::DoConnectSignal ); } @@ -525,11 +534,6 @@ std::size_t TextInput::GetNumberOfCharacters() const void TextInput::SetMaterialDiffuseColor( const Vector4& color ) { mMaterialColor = color; - if ( mCustomMaterial ) - { - mCustomMaterial.SetDiffuseColor( mMaterialColor ); - mMeshData.SetMaterial( mCustomMaterial ); - } } const Vector4& TextInput::GetMaterialDiffuseColor() const @@ -579,25 +583,29 @@ bool TextInput::DoConnectSignal( BaseObject* object, ConnectionTrackerInterface* Dali::BaseHandle handle( object ); bool connected( true ); - Toolkit::TextInput textInput = Toolkit::TextInput::DownCast(handle); + Toolkit::TextInput textInput = Toolkit::TextInput::DownCast( handle ); - if( Toolkit::TextInput::SIGNAL_START_INPUT == signalName ) + if( 0 == strcmp( signalName.c_str(), SIGNAL_START_INPUT ) ) { textInput.InputStartedSignal().Connect( tracker, functor ); } - else if( Toolkit::TextInput::SIGNAL_END_INPUT == signalName ) + else if( 0 == strcmp( signalName.c_str(), SIGNAL_END_INPUT ) ) { textInput.InputFinishedSignal().Connect( tracker, functor ); } - else if( Toolkit::TextInput::SIGNAL_STYLE_CHANGED == signalName ) + else if( 0 == strcmp( signalName.c_str(), SIGNAL_STYLE_CHANGED ) ) { textInput.StyleChangedSignal().Connect( tracker, functor ); } - else if( Toolkit::TextInput::SIGNAL_MAX_INPUT_CHARACTERS_REACHED == signalName ) + else if( 0 == strcmp( signalName.c_str(), SIGNAL_MAX_INPUT_CHARACTERS_REACHED ) ) { textInput.MaxInputCharactersReachedSignal().Connect( tracker, functor ); } - else if( Toolkit::TextInput::SIGNAL_TEXT_EXCEED_BOUNDARIES == signalName ) + else if( 0 == strcmp( signalName.c_str(), SIGNAL_TOOLBAR_DISPLAYED ) ) + { + textInput.CutAndPasteToolBarDisplayedSignal().Connect( tracker, functor ); + } + else if( 0 == strcmp( signalName.c_str(), SIGNAL_TEXT_EXCEED_BOUNDARIES ) ) { textInput.InputTextExceedBoundariesSignal().Connect( tracker, functor ); } @@ -684,7 +692,7 @@ bool TextInput::IsTextSelectable() const bool TextInput::IsTextSelected() const { - return mHighlightMeshActor; + return false; } void TextInput::DeSelectText() @@ -1524,10 +1532,6 @@ void TextInput::OnLongPress(Dali::Actor actor, const Dali::LongPressGesture& lon DALI_LOG_INFO( gLogFilter, Debug::General, "OnLongPress\n" ); // Ignore longpress if in selection mode already - if( mHighlightMeshActor ) - { - return; - } if(longPress.state == Dali::Gesture::Started) { @@ -1695,10 +1699,6 @@ void TextInput::OnPopupHideFinished(TextInputPopup& popup) popup.HideFinishedSignal().Disconnect( this, &TextInput::OnPopupHideFinished ); // Change Popup menu to Cut/Copy/Paste if text has been selected. - if(mHighlightMeshActor && mState == StateEdit) - { - ShowPopupCutCopyPaste(); - } } //FIXME this routine needs to be re-written as it contains too many branches. @@ -1763,11 +1763,6 @@ bool TextInput::OnKeyDownEvent(const KeyEvent& event) } // Return else if ( keyName == "space" ) { - if ( mHighlightMeshActor ) - { - // Some text is selected so erase it before adding space. - DeleteHighlightedText( true ); - } mCursorPosition = mCursorPosition + InsertAt(Text(keyString), mCursorPosition, 0); @@ -1782,13 +1777,6 @@ bool TextInput::OnKeyDownEvent(const KeyEvent& event) } // space else if (keyName == "BackSpace") { - if ( mHighlightMeshActor ) - { - // Some text is selected so erase it - DeleteHighlightedText( true ); - update = true; - } - else { if ( mCursorPosition > 0 ) { @@ -1994,11 +1982,6 @@ void TextInput::OnTextViewScrolled( Toolkit::TextView textView, Vector2 scrollPo mSelectionHandleOne.SetPosition( mSelectionHandleOneActualPosition + UI_OFFSET + mSelectionHandleOneOffset ); mSelectionHandleTwo.SetPosition( mSelectionHandleTwoActualPosition + UI_OFFSET + mSelectionHandleTwoOffset ); - if( mHighlightMeshActor ) - { - mHighlightMeshActor.SetVisible( true ); - UpdateHighlight(); - } } } @@ -2119,8 +2102,7 @@ void TextInput::SetUpTouchEvents() if ( !mDoubleTapDetector ) { - mDoubleTapDetector = TapGestureDetector::New(); - mDoubleTapDetector.SetTapsRequired( 2 ); + mDoubleTapDetector = TapGestureDetector::New( 2 ); mDoubleTapDetector.DetectedSignal().Connect(this, &TextInput::OnDoubleTap); // Only attach and detach the actor to the double tap detector when we enter/leave edit mode @@ -2253,11 +2235,6 @@ ImfManager::ImfCallbackData TextInput::ImfEventReceived( Dali::ImfManager& imfMa mIgnoreFirstCommitFlag = false; // Some text may be selected, hiding keyboard causes an empty predictive string to be sent, we don't want to delete highlight in this case - if ( mHighlightMeshActor && (!imfEvent.predictiveString.empty()) ) - { - // replaces highlighted text with new character - DeleteHighlightedText( false ); - } preeditResetRequired = PreEditReceived( imfEvent.predictiveString, imfEvent.cursorOffset ); @@ -2284,11 +2261,6 @@ ImfManager::ImfCallbackData TextInput::ImfEventReceived( Dali::ImfManager& imfMa // A Commit message is a word that has been accepted, it may have been a pre-edit word previously but now commited. // Some text may be selected, hiding keyboard causes an empty predictive string to be sent, we don't want to delete highlight in this case - if ( mHighlightMeshActor && (!imfEvent.predictiveString.empty()) ) - { - // replaces highlighted text with new character - DeleteHighlightedText( false ); - } // A PreEditReset can cause a commit message to be sent, the Ignore Commit flag is used in scenarios where the word is // not needed, one such scenario is when the pre-edit word is too long to fit. @@ -2324,13 +2296,6 @@ ImfManager::ImfCallbackData TextInput::ImfEventReceived( Dali::ImfManager& imfMa std::size_t toDelete = 0; std::size_t numberOfCharacters = 0; - if( mHighlightMeshActor ) - { - // delete highlighted text. - toDelete = std::min( mSelectionHandleOnePosition, mSelectionHandleTwoPosition ); - numberOfCharacters = std::max( mSelectionHandleOnePosition, mSelectionHandleTwoPosition ) - toDelete; - } - else { if( static_cast(std::abs( imfEvent.cursorOffset )) < mCursorPosition ) { @@ -2360,7 +2325,7 @@ ImfManager::ImfCallbackData TextInput::ImfEventReceived( Dali::ImfManager& imfMa { // If text is selected/highlighted and surrounding text received we do not want the keyboard to store the word at cursor and return it as a predictive word along with // the next key pressed. Instead the Select function sets the cursor position and surrounding text. - if (! ( mHighlightMeshActor || mSelectingText ) ) + if (! ( false || mSelectingText ) ) { std::string text( GetText() ); DALI_LOG_INFO( gLogFilter, Debug::General, "OnKey - surrounding text - set text [%s] and cursor[%u] \n", text.c_str(), mCursorPosition ); @@ -2645,78 +2610,6 @@ void TextInput::DeleteHighlightedText( bool inheritStyle ) { DALI_LOG_INFO( gLogFilter, Debug::General, "DeleteHighlightedText handlePosOne[%u] handlePosTwo[%u]\n", mSelectionHandleOnePosition, mSelectionHandleTwoPosition); - if( mHighlightMeshActor ) - { - mCursorPosition = std::min( mSelectionHandleOnePosition, mSelectionHandleTwoPosition ); - - MarkupProcessor::StyledTextArray::iterator start = mStyledText.begin() + mCursorPosition; - MarkupProcessor::StyledTextArray::iterator end = mStyledText.begin() + std::max( mSelectionHandleOnePosition, mSelectionHandleTwoPosition ); - - // Get the styled text of the characters to be deleted as it may be needed if - // the "exceed the text-input's boundaries" option is disabled. - MarkupProcessor::StyledTextArray styledCharactersToDelete; - - styledCharactersToDelete.insert( styledCharactersToDelete.begin(), start, end ); - - mStyledText.erase( start, end ); // erase range of characters - - // Remove text from TextView and update place holder text if required - - // Set the placeholder text only if the styled text is empty. - if( mStyledText.empty() ) - { - ShowPlaceholderText( mStyledPlaceHolderText ); - } - else - { - const std::size_t numberOfCharacters = std::max( mSelectionHandleOnePosition, mSelectionHandleTwoPosition ) - mCursorPosition; - - mDisplayedTextView.RemoveTextFrom( mCursorPosition, numberOfCharacters ); - - // It may happen than after removing a white space or a new line character, - // two words merge, this new word could be big enough to not fit in its - // current line, so moved to the next one, and make some part of the text to - // exceed the text-input's boundary. - if( !mExceedEnabled ) - { - // Get the new text layout after removing some characters. - mDisplayedTextView.GetTextLayoutInfo( mTextLayoutInfo ); - - // Get text-input's size. - const Vector3& size = GetControlSize(); - - if( ( mTextLayoutInfo.mTextSize.width > size.width ) || - ( mTextLayoutInfo.mTextSize.height > size.height ) ) - { - mDisplayedTextView.InsertTextAt( mCursorPosition, styledCharactersToDelete ); - - mStyledText.insert( mStyledText.begin() + mCursorPosition, - styledCharactersToDelete.begin(), - styledCharactersToDelete.end() ); - } - } - } - GetTextLayoutInfo(); - - RemoveHighlight(); - - EmitTextModified(); - - if( inheritStyle ) - { - const TextStyle oldInputStyle( mInputStyle ); - - mInputStyle = GetStyleAtCursor(); // Inherit style from cursor position - - if( oldInputStyle != mInputStyle ) - { - // Updates the line height accordingly with the input style. - UpdateLineHeight(); - - EmitStyleChangedSignal(); - } - } - } } void TextInput::DeleteRange( const std::size_t start, const std::size_t ncharacters ) @@ -2735,29 +2628,6 @@ void TextInput::DeleteRange( const std::size_t start, const std::size_t ncharact mStyledText.erase(itStart, itEnd); // update the selection handles if they are visible. - if( mHighlightMeshActor ) - { - std::size_t& minHandle = ( mSelectionHandleOnePosition <= mSelectionHandleTwoPosition ? mSelectionHandleOnePosition : mSelectionHandleTwoPosition ); - std::size_t& maxHandle = ( mSelectionHandleTwoPosition > mSelectionHandleOnePosition ? mSelectionHandleTwoPosition : mSelectionHandleOnePosition ); - - if( minHandle >= start + ncharacters ) - { - minHandle -= ncharacters; - } - else if( ( minHandle > start ) && ( minHandle < start + ncharacters ) ) - { - minHandle = start; - } - - if( maxHandle >= start + ncharacters ) - { - maxHandle -= ncharacters; - } - else if( ( maxHandle > start ) && ( maxHandle < start + ncharacters ) ) - { - maxHandle = start; - } - } // Set text is not called here as currently it can not process the set text from deletion and then the set text from the in-coming pre-edit. } @@ -3228,37 +3098,37 @@ void TextInput::SetUpHandlePropertyNotifications() Vector3 handlesize = GetSelectionHandleSize(); // Exceeding horizontal boundary - PropertyNotification leftNotification = mSelectionHandleOne.AddPropertyNotification( Actor::WORLD_POSITION_X, LessThanCondition( mBoundingRectangleWorldCoordinates.x + handlesize.x) ); + PropertyNotification leftNotification = mSelectionHandleOne.AddPropertyNotification( Actor::Property::WorldPositionX, LessThanCondition( mBoundingRectangleWorldCoordinates.x + handlesize.x) ); leftNotification.NotifySignal().Connect( this, &TextInput::OnLeftBoundaryExceeded ); - PropertyNotification rightNotification = mSelectionHandleTwo.AddPropertyNotification( Actor::WORLD_POSITION_X, GreaterThanCondition( mBoundingRectangleWorldCoordinates.z - handlesize.x ) ); + PropertyNotification rightNotification = mSelectionHandleTwo.AddPropertyNotification( Actor::Property::WorldPositionX, GreaterThanCondition( mBoundingRectangleWorldCoordinates.z - handlesize.x ) ); rightNotification.NotifySignal().Connect( this, &TextInput::OnRightBoundaryExceeded ); // Within horizontal boundary - PropertyNotification leftLeaveNotification = mSelectionHandleOne.AddPropertyNotification( Actor::WORLD_POSITION_X, GreaterThanCondition( mBoundingRectangleWorldCoordinates.x + 2*handlesize.x ) ); + PropertyNotification leftLeaveNotification = mSelectionHandleOne.AddPropertyNotification( Actor::Property::WorldPositionX, GreaterThanCondition( mBoundingRectangleWorldCoordinates.x + 2*handlesize.x ) ); leftLeaveNotification.NotifySignal().Connect( this, &TextInput::OnReturnToLeftBoundary ); - PropertyNotification rightLeaveNotification = mSelectionHandleTwo.AddPropertyNotification( Actor::WORLD_POSITION_X, LessThanCondition( mBoundingRectangleWorldCoordinates.z - 2*handlesize.x ) ); + PropertyNotification rightLeaveNotification = mSelectionHandleTwo.AddPropertyNotification( Actor::Property::WorldPositionX, LessThanCondition( mBoundingRectangleWorldCoordinates.z - 2*handlesize.x ) ); rightLeaveNotification.NotifySignal().Connect( this, &TextInput::OnReturnToRightBoundary ); // Exceeding vertical boundary - PropertyNotification verticalExceedNotificationOne = mSelectionHandleOne.AddPropertyNotification( Actor::WORLD_POSITION_Y, + PropertyNotification verticalExceedNotificationOne = mSelectionHandleOne.AddPropertyNotification( Actor::Property::WorldPositionY, OutsideCondition( mBoundingRectangleWorldCoordinates.y + handlesize.y, mBoundingRectangleWorldCoordinates.w - handlesize.y ) ); verticalExceedNotificationOne.NotifySignal().Connect( this, &TextInput::OnHandleOneLeavesBoundary ); - PropertyNotification verticalExceedNotificationTwo = mSelectionHandleTwo.AddPropertyNotification( Actor::WORLD_POSITION_Y, + PropertyNotification verticalExceedNotificationTwo = mSelectionHandleTwo.AddPropertyNotification( Actor::Property::WorldPositionY, OutsideCondition( mBoundingRectangleWorldCoordinates.y + handlesize.y, mBoundingRectangleWorldCoordinates.w - handlesize.y ) ); verticalExceedNotificationTwo.NotifySignal().Connect( this, &TextInput::OnHandleTwoLeavesBoundary ); // Within vertical boundary - PropertyNotification verticalWithinNotificationOne = mSelectionHandleOne.AddPropertyNotification( Actor::WORLD_POSITION_Y, + PropertyNotification verticalWithinNotificationOne = mSelectionHandleOne.AddPropertyNotification( Actor::Property::WorldPositionY, InsideCondition( mBoundingRectangleWorldCoordinates.y + handlesize.y, mBoundingRectangleWorldCoordinates.w - handlesize.y ) ); verticalWithinNotificationOne.NotifySignal().Connect( this, &TextInput::OnHandleOneWithinBoundary ); - PropertyNotification verticalWithinNotificationTwo = mSelectionHandleTwo.AddPropertyNotification( Actor::WORLD_POSITION_Y, + PropertyNotification verticalWithinNotificationTwo = mSelectionHandleTwo.AddPropertyNotification( Actor::Property::WorldPositionY, InsideCondition( mBoundingRectangleWorldCoordinates.y + handlesize.y, mBoundingRectangleWorldCoordinates.w - handlesize.y ) ); verticalWithinNotificationTwo.NotifySignal().Connect( this, &TextInput::OnHandleTwoWithinBoundary ); @@ -3766,74 +3636,6 @@ void TextInput::UpdateHighlight() // 9* *7 // - if ( mHighlightMeshActor ) - { - // vertex and triangle buffers should always be present if MeshActor is alive. - HighlightInfo newHighlightInfo = CalculateHighlightInfoRtl(); - MeshData::VertexContainer vertices; - Dali::MeshData::FaceIndices faceIndices; - - if( !newHighlightInfo.mQuadList.empty() ) - { - std::vector::iterator iter = newHighlightInfo.mQuadList.begin(); - std::vector::iterator endIter = newHighlightInfo.mQuadList.end(); - - // vertex position defaults to (0 0 0) - MeshData::Vertex vertex; - // set normal for all vertices as (0 0 1) pointing outward from TextInput Actor. - vertex.nZ = 1.0f; - - for(std::size_t v = 0; iter != endIter; ++iter,v+=4 ) - { - // Add each quad geometry (a sub-selection) to the mesh data. - - // 0-----1 - // |\ | - // | \ A | - // | \ | - // | B \ | - // | \| - // 2-----3 - - QuadCoordinates& quad = *iter; - // top-left (v+0) - vertex.x = quad.min.x; - vertex.y = quad.min.y; - vertices.push_back( vertex ); - - // top-right (v+1) - vertex.x = quad.max.x; - vertex.y = quad.min.y; - vertices.push_back( vertex ); - - // bottom-left (v+2) - vertex.x = quad.min.x; - vertex.y = quad.max.y; - vertices.push_back( vertex ); - - // bottom-right (v+3) - vertex.x = quad.max.x; - vertex.y = quad.max.y; - vertices.push_back( vertex ); - - // triangle A (3, 1, 0) - faceIndices.push_back( v + 3 ); - faceIndices.push_back( v + 1 ); - faceIndices.push_back( v ); - - // triangle B (0, 2, 3) - faceIndices.push_back( v ); - faceIndices.push_back( v + 2 ); - faceIndices.push_back( v + 3 ); - - mMeshData.SetFaceIndices( faceIndices ); - } - - BoneContainer bones(0); // passed empty as bones not required - mMeshData.SetData( vertices, faceIndices, bones, mCustomMaterial ); - mHighlightMesh.UpdateMeshData(mMeshData); - } - } } void TextInput::ClearPopup() @@ -3905,7 +3707,7 @@ void TextInput::ShowPopup( bool animate ) Vector3 position; Vector2 alternativePopupPosition; - if(mHighlightMeshActor && mState == StateEdit) + if(false && mState == StateEdit) { Vector3 topHandle; Vector3 bottomHandle; // referring to the bottom most point of the handle or the bottom line of selection. @@ -4698,7 +4500,7 @@ void TextInput::OnStageTouched(const TouchEvent& event) bool textInputTouched = (touchedActor && WasTouchedCheck( touchedActor )); - if ( ( mHighlightMeshActor || popUpShown ) && !textInputTouched ) + if ( ( false || popUpShown ) && !textInputTouched ) { EndMonitoringStageForTouch(); HidePopup( true, false ); @@ -4826,7 +4628,7 @@ void TextInput::RemoveHighlight( bool hidePopup ) { DALI_LOG_INFO(gLogFilter, Debug::General, "RemoveHighlight\n"); - if ( mHighlightMeshActor ) + if ( false ) { if ( mSelectionHandleOne ) { @@ -4843,12 +4645,10 @@ void TextInput::RemoveHighlight( bool hidePopup ) mNewHighlightInfo.mQuadList.clear(); - Self().Remove( mHighlightMeshActor ); SetCursorVisibility( true ); StartCursorBlinkTimer(); - mHighlightMeshActor.Reset(); // NOTE: We cannot dereference mHighlightMesh, due // to a bug in how the scene-graph MeshRenderer uses the Mesh data incorrectly. @@ -4864,27 +4664,6 @@ void TextInput::RemoveHighlight( bool hidePopup ) void TextInput::CreateHighlight() { - if ( !mHighlightMeshActor ) - { - mMeshData = MeshData( ); - mMeshData.SetHasNormals( true ); - - mCustomMaterial = Material::New("CustomMaterial"); - mCustomMaterial.SetDiffuseColor( mMaterialColor ); - - mMeshData.SetMaterial( mCustomMaterial ); - - mHighlightMesh = Mesh::New( mMeshData ); - - mHighlightMeshActor = MeshActor::New( mHighlightMesh ); - mHighlightMeshActor.SetName( "HighlightMeshActor" ); - mHighlightMeshActor.SetParentOrigin( ParentOrigin::TOP_LEFT ); - mHighlightMeshActor.SetAnchorPoint( AnchorPoint::TOP_LEFT ); - mHighlightMeshActor.SetPosition( 0.0f, 0.0f, DISPLAYED_HIGHLIGHT_Z_OFFSET ); - mHighlightMeshActor.SetAffectedByLighting(false); - - Self().Add(mHighlightMeshActor); - } } @@ -4912,7 +4691,7 @@ void TextInput::PasteText( const Text& text ) // Any key stroke that results in a visual change of the text-input should // set this flag to true. bool update = false; - if( mHighlightMeshActor ) + if( false ) { /* if highlighted, delete entire text, and position cursor at start of deleted text. */ mCursorPosition = std::min(mSelectionHandleOnePosition, mSelectionHandleTwoPosition); @@ -5108,10 +4887,6 @@ void TextInput::SetScrollEnabled( bool enable ) mSelectionHandleOne.SetVisible( true ); mSelectionHandleTwo.SetVisible( true ); - if( mHighlightMeshActor ) - { - mHighlightMeshActor.SetVisible( true ); - } } } }