import 'package:flutter/material.dart'; import 'package:solian/shells/root_shell.dart'; class AppBarLeadingButton extends StatelessWidget { const AppBarLeadingButton({super.key}); static Widget? adaptive(BuildContext context) { final hasContent = Navigator.canPop(context) || rootScaffoldKey.currentState!.hasDrawer; return hasContent ? const AppBarLeadingButton() : null; } @override Widget build(BuildContext context) { if (Navigator.canPop(context)) { return BackButton( onPressed: () => Navigator.pop(context), ); } if (rootScaffoldKey.currentState!.hasDrawer) { return DrawerButton( onPressed: () => rootScaffoldKey.currentState!.openDrawer(), ); } else { return const SizedBox(); } } }