I instrumented oxide, and this is what I’m observing when switching the focus from the To: field to the Cc: field:
OnTextInputStateChanged(): input type changes from EMAIL to NONE
OnFocusedNodeChanged(): focus changes to non-editable node (probably the parent of both fields), OSK is requested to hide
OnFocusedNodeChanged(): focus changes to an editable node (probably the Cc: field)
OnTextInputStateChanged(): input type changes from NONE to EMAIL
OnTextInputStateChanged(): OSK is requested to show
At this point the OSK has been requested to show, but it remains hidden, so it looks like it might be a bug in the OSK itself (if I tap again on the Cc: field, the OSK pops up, and I’m seeing no oxide state change).
Then if I give focus to the Bcc: field, the OSK reappears (contrary to the bug description), and here is the sequence of oxide events:
OnTextInputStateChanged(): input type changes from EMAIL to NONE
OnFocusedNodeChanged(): focus changes to another editable node (probably the Bcc: field)
OnTextInputStateChanged(): input type changes from NONE to EMAIL
OnTextInputStateChanged(): OSK is requested to show
The sequence of events in both cases looks correct.
Maybe we could try and make OnTextInputStateChanged() a bit more clever so as to not update the input method (and as a side effect the current layout) when the input type changes to NONE (as in this case either the OSK will be requested to hide, or the input type is going to change again).
I instrumented oxide, and this is what I’m observing when switching the focus from the To: field to the Cc: field:
OnTextInput StateChanged( ): input type changes from EMAIL to NONE deChanged( ): focus changes to non-editable node (probably the parent of both fields), OSK is requested to hide deChanged( ): focus changes to an editable node (probably the Cc: field) StateChanged( ): input type changes from NONE to EMAIL StateChanged( ): OSK is requested to show
OnFocusedNo
OnFocusedNo
OnTextInput
OnTextInput
At this point the OSK has been requested to show, but it remains hidden, so it looks like it might be a bug in the OSK itself (if I tap again on the Cc: field, the OSK pops up, and I’m seeing no oxide state change).
Then if I give focus to the Bcc: field, the OSK reappears (contrary to the bug description), and here is the sequence of oxide events:
OnTextInput StateChanged( ): input type changes from EMAIL to NONE deChanged( ): focus changes to another editable node (probably the Bcc: field) StateChanged( ): input type changes from NONE to EMAIL StateChanged( ): OSK is requested to show
OnFocusedNo
OnTextInput
OnTextInput
The sequence of events in both cases looks correct.
Maybe we could try and make OnTextInputStat eChanged( ) a bit more clever so as to not update the input method (and as a side effect the current layout) when the input type changes to NONE (as in this case either the OSK will be requested to hide, or the input type is going to change again).