import 'package:flutter/material.dart'; extension SolianCallExt on BuildContext { Future showPlayAudioManuallyDialog() => showDialog( context: this, builder: (ctx) => AlertDialog( title: const Text('Play Audio'), content: const Text( 'You need to manually activate audio PlayBack for iOS Safari!', ), actions: [ TextButton( onPressed: () => Navigator.pop(ctx, false), child: const Text('Ignore'), ), TextButton( onPressed: () => Navigator.pop(ctx, true), child: const Text('Play Audio'), ), ], ), ); Future showDisconnectDialog() => showDialog( context: this, builder: (ctx) => AlertDialog( title: const Text('Disconnect'), content: const Text('Are you sure to disconnect?'), actions: [ TextButton( onPressed: () => Navigator.pop(ctx, false), child: const Text('Cancel'), ), TextButton( onPressed: () => Navigator.pop(ctx, true), child: const Text('Disconnect'), ), ], ), ); Future showReconnectDialog() => showDialog( context: this, builder: (ctx) => AlertDialog( title: const Text('Reconnect'), content: const Text('This will force a reconnection'), actions: [ TextButton( onPressed: () => Navigator.pop(ctx, false), child: const Text('Cancel'), ), TextButton( onPressed: () => Navigator.pop(ctx, true), child: const Text('Reconnect'), ), ], ), ); Future showReconnectSuccessDialog() => showDialog( context: this, builder: (ctx) => AlertDialog( title: const Text('Reconnect'), content: const Text('Reconnection was successful.'), actions: [ TextButton( onPressed: () => Navigator.pop(ctx), child: const Text('OK'), ), ], ), ); }