import 'package:flutter/material.dart'; typedef ResponsiveBuilder = Widget Function( BuildContext context, Size size, ); class ResponsiveSafeArea extends StatelessWidget { const ResponsiveSafeArea({ @required ResponsiveBuilder builder, Key key, }) : responsiveBuilder = builder, assert(builder != null), super(key: key); final ResponsiveBuilder responsiveBuilder; @override Widget build(BuildContext context) { return SafeArea( child: LayoutBuilder( builder: (BuildContext context, BoxConstraints constraints) { return responsiveBuilder( context, constraints.biggest, ); }, ), ); } }