getKeyboardType method

TextInputType? getKeyboardType()
inherited

Implementation

TextInputType? getKeyboardType() {
  if (this is FlutterTextAreaElement) {
    return TextInputType.multiline;
  }

  switch (type) {
    case 'text':
      if (inputMode != null) {
        switch (inputMode) {
          case 'numeric':
            return TextInputType.number;
          case 'tel':
            return TextInputType.phone;
          case 'decimal':
            return TextInputType.numberWithOptions(decimal: true, signed: true);
          case 'email':
            return TextInputType.emailAddress;
          case 'url':
            return TextInputType.url;
          case 'text':
          case 'search':
            return TextInputType.text;
          case 'none':
            return TextInputType.none;
        }
      }
      return TextInputType.text;
    case 'number':
      String? step = getAttribute('step');
      if (step == 'any' || step != null && step.contains('.')) {
        return TextInputType.numberWithOptions(decimal: true);
      }
      return TextInputType.number;
    case 'tel':
      return TextInputType.phone;
    case 'url':
      return TextInputType.url;
    case 'email':
      return TextInputType.emailAddress;
    case 'search':
      return TextInputType.text;
  }
  return TextInputType.text;
}