parseStyleDisplay method

void parseStyleDisplay(
  1. BuildMetadata meta,
  2. String? value
)
inherited

Parses display inline style.

Implementation

void parseStyleDisplay(BuildMetadata meta, String? value) {
  StyleSizing.registerChild(this, meta);

  switch (value) {
    case kCssDisplayBlock:
      StyleSizing.registerBlock(this, meta);
      break;
    case kCssDisplayInlineBlock:
      final displayInlineBlock = _styleDisplayInlineBlock ??= BuildOp(
        onTree: (meta, tree) {
          final built = buildColumnPlaceholder(meta, tree.build());
          if (built != null) {
            WidgetBit.inline(
              tree.parent!,
              built,
              alignment: PlaceholderAlignment.baseline,
            ).insertBefore(tree);
          }
          tree.detach();
        },
        priority: BuildOp.kPriorityMax,
      );
      meta.register(displayInlineBlock);
      break;
    case kCssDisplayNone:
      final displayNone = _styleDisplayNone ??= BuildOp(
        onTree: (_, tree) => tree.detach(),
        priority: BuildOp.kPriorityMax,
      );
      meta.register(displayNone);
      break;
    case kCssDisplayTable:
      meta.register(TagTable(this, meta).op);
      break;
  }
}