CodeBlockStyle class

How a fenced code block is drawn.

Every field is optional. An unset field falls back to the theme, then to the value the package used before this style existed — so setting one field changes one thing and nothing else moves.

A style on the widget wins over the theme per field, not per object.

Annotations

Constructors

CodeBlockStyle({Color? backgroundColor, Color? borderColor, double? borderWidth, Radius? borderRadius, EdgeInsetsGeometry? padding, EdgeInsetsGeometry? headerPadding, String? fontFamily, String? fontFamilyPackage, double? fontSize, Color? textColor, bool? showLanguageLabel, TextStyle? languageStyle, bool? showCopyButton, String? copyLabel, String? copiedLabel, bool? highlightWhileStreaming})
Creates a CodeBlockStyle. Null fields defer to the theme, then to the default.
const

Properties

backgroundColor Color?
Panel fill. Defaults to ColorScheme.surfaceContainer.
final
borderColor Color?
Panel outline. Defaults to ColorScheme.outlineVariant.
final
borderRadius Radius?
Corner rounding. Defaults to 12.
final
borderWidth double?
Outline thickness. Defaults to 1 when a colour is set.
final
copiedLabel String?
Accessible copy-button tooltip after copying. Defaults to Copied!.
final
copyLabel String?
Accessible copy-button tooltip. Defaults to Copy code.
final
fontFamily String?
Code font. Defaults to the bundled JetBrains Mono.
final
fontFamilyPackage String?
Package the font ships in.
final
fontSize double?
Code size. Defaults to the surrounding size.
final
hashCode int
The hash code for this object.
no setteroverride
headerPadding EdgeInsetsGeometry?
Space around the header row.
final
highlightWhileStreaming bool?
Whether to highlight an unfinished fence on every source update. Defaults to true for compatibility. False renders plain code until the closing fence arrives, avoiding repeated highlighting of large blocks.
final
languageStyle TextStyle?
Style of that label.
final
padding EdgeInsetsGeometry?
Space around the code. Defaults to 16, with a tighter top inset.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
showCopyButton bool?
Whether the copy button is shown. Defaults to true.
final
showLanguageLabel bool?
Whether the language is shown. Defaults to true.
final
textColor Color?
Code colour. Defaults to the surrounding colour.
final

Methods

copyWith({Color? backgroundColor, Color? borderColor, double? borderWidth, Radius? borderRadius, EdgeInsetsGeometry? padding, EdgeInsetsGeometry? headerPadding, String? fontFamily, String? fontFamilyPackage, double? fontSize, Color? textColor, bool? showLanguageLabel, TextStyle? languageStyle, bool? showCopyButton, String? copyLabel, String? copiedLabel, bool? highlightWhileStreaming}) CodeBlockStyle
A copy with the given fields replaced.
merge(CodeBlockStyle? other) CodeBlockStyle
This style, with any unset field taken from other, field by field.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
resolve(ColorScheme scheme) CodeBlockStyle
This style with every remaining default filled in.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
override

Static Methods

lerp(CodeBlockStyle? a, CodeBlockStyle? b, double t) CodeBlockStyle?
Linearly interpolates between two styles.