neoBrutalDisplayFaceFor function

NeoBrutalDisplayFace neoBrutalDisplayFaceFor(
  1. ThemeSpec spec
)

Neo-brutalism's outlined display card for spec: panel = surface, ink = the hard shadow colour, the heavy wide display cut from the type.

Implementation

NeoBrutalDisplayFace neoBrutalDisplayFaceFor(ThemeSpec spec) {
  final style = spec.keyStyle;
  return NeoBrutalDisplayFace(
    panel: Color(spec.palette.surface | 0xFF000000),
    ink: Color(spec.palette.shadow),
    outlineWidth: style.outlineWidthCdp / 100,
    shadowOffset:
        (spec.motion.depthCdp > 0
            ? spec.motion.depthCdp
            : style.shadowOffsetCdp) /
        100,
    cornerFraction: spec.keyShape.cornerFraction.clamp(0.0, 0.5),
    weight: spec.type.displayWeight,
    widthPermille: spec.type.widthPermille,
  );
}