From: Paul Wisbey Date: Fri, 26 Jun 2015 10:35:58 +0000 (-0700) Subject: Merge "Minor fixes for Text." into devel/master X-Git-Tag: dali_1.0.47~14 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=commitdiff_plain;h=1263805136b9938e348fd4e519e64fa9bad20f94;hp=927df4637ee383b08a2c0b89ce615690ef064f3d Merge "Minor fixes for Text." into devel/master --- diff --git a/dali-toolkit/internal/controls/text-controls/text-field-impl.cpp b/dali-toolkit/internal/controls/text-controls/text-field-impl.cpp index 126518d..871077f 100644 --- a/dali-toolkit/internal/controls/text-controls/text-field-impl.cpp +++ b/dali-toolkit/internal/controls/text-controls/text-field-impl.cpp @@ -1139,6 +1139,10 @@ void TextField::KeyboardStatusChanged(bool keyboardShown) { mController->KeyboardFocusLostEvent(); } + else + { + mController->KeyboardFocusGainEvent(); + } } bool TextField::OnTouched( Actor actor, const TouchEvent& event ) diff --git a/dali-toolkit/internal/text/text-controller.cpp b/dali-toolkit/internal/text/text-controller.cpp index 94890ae..32e3ed3 100644 --- a/dali-toolkit/internal/text/text-controller.cpp +++ b/dali-toolkit/internal/text/text-controller.cpp @@ -84,6 +84,17 @@ void Controller::SetText( const std::string& text ) CharacterIndex lastCursorIndex = 0u; + if( mImpl->mEventData ) + { + // If popup shown then hide it by switching to Editing state + if ( EventData::SELECTING == mImpl->mEventData->mState || + EventData::SELECTION_CHANGED == mImpl->mEventData->mState || + EventData::EDITING_WITH_POPUP == mImpl->mEventData->mState ) + { + mImpl->ChangeState( EventData::EDITING ); + } + } + if( !text.empty() ) { // Convert text into UTF-32 @@ -1220,6 +1231,8 @@ void Controller::InsertText( const std::string& text, Controller::InsertType typ ResetText(); } + mImpl->ChangeState( EventData::EDITING ); + // Handle the IMF (predicitive text) state changes if( mImpl->mEventData ) {