From 5747fe26d64609d276b9b00b16bf908c1f0accf7 Mon Sep 17 00:00:00 2001 From: "minho.sun" Date: Mon, 20 Feb 2017 11:20:43 +0900 Subject: [PATCH] [3.0] Clear input focus when Return/Escape key Up Make TextField and TextEditor cleare it's input focus when getting Return/Escape KeyUp event. Change-Id: Idc9318ab2a7a25aeaf92e750377c97edfd27e929 Signed-off-by: minho.sun --- .../internal/controls/text-controls/text-editor-impl.cpp | 7 ++++++- dali-toolkit/internal/controls/text-controls/text-field-impl.cpp | 9 ++++++--- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/dali-toolkit/internal/controls/text-controls/text-editor-impl.cpp b/dali-toolkit/internal/controls/text-controls/text-editor-impl.cpp index af42883..4b5dcfa 100644 --- a/dali-toolkit/internal/controls/text-controls/text-editor-impl.cpp +++ b/dali-toolkit/internal/controls/text-controls/text-editor-impl.cpp @@ -1228,7 +1228,12 @@ bool TextEditor::OnKeyEvent( const KeyEvent& event ) if( Dali::DALI_KEY_ESCAPE == event.keyCode ) // Make a Dali key code for this { - ClearKeyInputFocus(); + // Make sure ClearKeyInputFocus when only key is up + if( event.state == KeyEvent::Up ) + { + ClearKeyInputFocus(); + } + return true; } 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 c8e2ed2..482032c 100644 --- a/dali-toolkit/internal/controls/text-controls/text-field-impl.cpp +++ b/dali-toolkit/internal/controls/text-controls/text-field-impl.cpp @@ -1403,10 +1403,13 @@ bool TextField::OnKeyEvent( const KeyEvent& event ) { DALI_LOG_INFO( gLogFilter, Debug::Verbose, "TextField::OnKeyEvent %p keyCode %d\n", mController.Get(), event.keyCode ); - if( Dali::DALI_KEY_ESCAPE == event.keyCode || - "Return" == event.keyPressedName ) // Make a Dali key code for this + if( Dali::DALI_KEY_ESCAPE == event.keyCode || "Return" == event.keyPressedName ) // Make a Dali key code for this { - ClearKeyInputFocus(); + // Make sure ClearKeyInputFocus when only key is up + if( event.state == KeyEvent::Up ) + { + ClearKeyInputFocus(); + } return true; } -- 2.7.4