normalWidget method

Widget normalWidget()

Implementation

Widget normalWidget() {
  List<Widget> children = [];
  if (widget.leading != null) {
    children.add(Padding(
      padding: const EdgeInsets.only(left: 8),
      child: constrained(widget.leading!),
    ));
  }

  CornerRadius radius = ChatRoomSettings.inputBarRadius;

  double height = 38;
  double circle = height /
      () {
        if (radius == CornerRadius.extraSmall) {
          return 16;
        } else if (radius == CornerRadius.small) {
          return 8;
        } else if (radius == CornerRadius.medium) {
          return 4;
        } else {
          return 2;
        }
      }();

  Widget content = Container(
    height: height,
    padding: const EdgeInsets.only(left: 4, right: 4),
    decoration: BoxDecoration(
      color: ChatUIKitTheme.of(context).color.isDark
          ? ChatUIKitTheme.of(context).color.barrageColor2
          : ChatUIKitTheme.of(context).color.barrageColor1,
      borderRadius: BorderRadius.circular(circle),
    ),
    child: interiorWidget(),
  );

  content = Expanded(
      child: Padding(
    padding: const EdgeInsets.only(left: 8, right: 8),
    child: content,
  ));

  children.add(content);

  if (widget.actions != null) {
    children.addAll(
      widget.actions!.map(
        (e) => Padding(
          padding: const EdgeInsets.only(left: 8),
          child: constrained(e),
        ),
      ),
    );
  }

  content = Row(
    textDirection: widget.textDirection,
    children: children,
  );

  content = Container(
    padding: const EdgeInsets.only(left: 8, right: 16),
    height: 54,
    child: content,
  );

  return content;
}