build method

  1. @override
Widget build (BuildContext context)

Implementation

@override
Widget build(BuildContext context) {
  var chipsChildren = _chips
      .map<Widget>((data) => widget.chipBuilder(context, this, data))
      .toList();

  final theme = Theme.of(context);

  chipsChildren.add(
    Container(
      height: 32.0,
      child: Row(
        mainAxisSize: MainAxisSize.min,
        crossAxisAlignment: CrossAxisAlignment.stretch,
        children: <Widget>[
          Text(
            text,
            style: theme.textTheme.subhead.copyWith(
              height: 1.5,
            ),
          ),
          _TextCaret(
            resumed: _focusNode.hasFocus,
          ),
        ],
      ),
    ),
  );

  return CompositedTransformTarget(
    link: this._layerLink,
    child: GestureDetector(
      behavior: HitTestBehavior.opaque,
      onTap: requestKeyboard,
      child: InputDecorator(
        decoration: widget.decoration,
        isFocused: _focusNode.hasFocus,
        isEmpty: _value.text.length == 0 && _chips.length == 0,
        child: Wrap(
          children: chipsChildren,
          spacing: 4.0,
          runSpacing: 4.0,
        ),
      ),
    ),
  );
}