consumeKeyboardToken method
inherited
Removes the keyboard token from this focus node if it has one.
This mechanism helps distinguish between an input control gaining focus by default and gaining focus as a result of an explicit user action.
When a focus node requests the focus (either via
FocusScopeNode.requestFocus
or FocusScopeNode.autofocus
), the focus
node receives a keyboard token if it does not already have one. Later,
when the focus node becomes focused, the widget that manages the
TextInputConnection
should show the keyboard (i.e., call
TextInputConnection.show
) only if it successfully consumes the keyboard
token from the focus node.
Returns whether this function successfully consumes a keyboard token.
Implementation
bool consumeKeyboardToken() {
if (!_hasKeyboardToken)
return false;
_hasKeyboardToken = false;
return true;
}