[escher] Fixed TextField.

A TextField delegate should process events before the TextField itself.
EditableCellTableViewController now verifies the position of the cursor to
determine if a Left or Right event should finish the TextField edition.

Change-Id: I6c8e78d6d02c7ab87e7d81770b4242a16fecde32
This commit is contained in:
Léa Saviot
2017-10-30 16:07:10 +01:00
committed by Romain Goyet
parent b7baec4a40
commit 95c6d9532b
2 changed files with 5 additions and 5 deletions

View File

@@ -17,8 +17,8 @@ bool EditableCellTableViewController::textFieldShouldFinishEditing(TextField * t
return TextFieldDelegate::textFieldShouldFinishEditing(textField, event)
|| (event == Ion::Events::Down && selectedRow() < numberOfRows()-1)
|| (event == Ion::Events::Up && selectedRow() > 0)
|| (event == Ion::Events::Right && selectedColumn() < numberOfColumns()-1)
|| (event == Ion::Events::Left && selectedColumn() > 0); }
|| (event == Ion::Events::Right && textField->cursorLocation() == textField->textLength() && selectedColumn() < numberOfColumns()-1)
|| (event == Ion::Events::Left && textField->cursorLocation() == 0 && selectedColumn() > 0); }
bool EditableCellTableViewController::textFieldDidFinishEditing(TextField * textField, const char * text, Ion::Events::Event event) {
AppsContainer * appsContainer = ((TextFieldDelegateApp *)app())->container();