asGlass method
ClipRRect
asGlass({
- double blurX = 10.0,
- double blurY = 10.0,
- Color tintColor = Colors.white,
- bool frosted = true,
- BorderRadius clipBorderRadius = BorderRadius.zero,
- Clip clipBehaviour = Clip.antiAlias,
- TileMode tileMode = TileMode.clamp,
- CustomClipper<
RRect> ? clipper,
Implementation
ClipRRect asGlass({
double blurX = 10.0,
double blurY = 10.0,
Color tintColor = Colors.white,
bool frosted = true,
BorderRadius clipBorderRadius = BorderRadius.zero,
Clip clipBehaviour = Clip.antiAlias,
TileMode tileMode = TileMode.clamp,
CustomClipper<RRect>? clipper,
}) {
return ClipRRect(
clipper: clipper,
clipBehavior: clipBehaviour,
borderRadius: clipBorderRadius,
child: BackdropFilter(
filter: ImageFilter.blur(
sigmaX: blurX,
sigmaY: blurY,
tileMode: tileMode,
),
child: Container(
decoration: BoxDecoration(
gradient: (tintColor != Colors.transparent)
? LinearGradient(
begin: Alignment.topLeft,
end: Alignment.bottomRight,
colors: [
tintColor.withAlpha(25),
tintColor.withAlpha(20),
],
)
: null,
image: frosted
? const DecorationImage(
image: AssetImage('images/noise.png', package: 'nsg_controls'),
fit: BoxFit.cover,
)
: null,
),
child: this,
),
),
);
}