#include <dali/public-api/object/type-registry.h>
#include <dali/public-api/object/type-registry-helper.h>
#include <dali/integration-api/debug.h>
+#include <dali/public-api/adaptor-framework/virtual-keyboard.h>
// INTERNAL INCLUDES
#include <dali-toolkit/public-api/text/rendering-backend.h>
{
if( impl.mController )
{
- //impl.mController->SetEnableCursorBlink( value.Get< bool >() ); TODO
+ impl.mController->SetEnableCursorBlink( value.Get< bool >() );
}
break;
}
}
case Toolkit::TextField::Property::ENABLE_CURSOR_BLINK:
{
- //value = impl.mController->GetEnableCursorBlink(); TODO
+ value = impl.mController->GetEnableCursorBlink();
break;
}
case Toolkit::TextField::Property::CURSOR_BLINK_INTERVAL:
}
}
+void TextField::OnKeyInputFocusGained()
+{
+ VirtualKeyboard::StatusChangedSignal().Connect( this, &TextField::KeyboardStatusChanged );
+
+ mController->KeyboardFocusGainEvent();
+}
+
+void TextField::OnKeyInputFocusLost()
+{
+ VirtualKeyboard::StatusChangedSignal().Disconnect( this, &TextField::KeyboardStatusChanged );
+
+ mController->KeyboardFocusLostEvent();
+}
+
void TextField::OnTap( const TapGesture& gesture )
{
+ // Show the keyboard if it was hidden.
+ if (!VirtualKeyboard::IsVisible())
+ {
+ VirtualKeyboard::Show();
+ }
+
SetKeyInputFocus();
mController->TapEvent( gesture.numberOfTaps, gesture.localPoint.x, gesture.localPoint.y );
}
}
+void TextField::KeyboardStatusChanged(bool keyboardShown)
+{
+ // Just hide the grab handle when keyboard is hidden.
+ if (!keyboardShown )
+ {
+ mController->KeyboardFocusLostEvent();
+ }
+}
+
TextField::TextField()
: Control( ControlBehaviour( REQUIRES_STYLE_CHANGE_SIGNALS ) ),
mRenderingBackend( DEFAULT_RENDERING_BACKEND ),