feat(example): establishing connection improvements

This commit is contained in:
ksenia312
2024-02-08 13:09:27 +01:00
parent 35119a98f4
commit 7d49169dea
3 changed files with 53 additions and 24 deletions
+11 -2
View File
@@ -7,21 +7,30 @@ class PeerWidget extends StatelessWidget {
required this.device,
required this.isIosBrowser,
required this.onConnect,
required this.communicationChannelState,
});
final NearbyDevice device;
final bool isIosBrowser;
final ValueChanged<NearbyDevice> onConnect;
final CommunicationChannelState communicationChannelState;
@override
Widget build(BuildContext context) {
final connectedStateCaption = communicationChannelState.isLoading
? 'Wait for connection'
: 'Tap to chat';
final status =
device.status.isConnected ? 'Tap to chat' : device.status.name;
device.status.isConnected ? connectedStateCaption : device.status.name;
final canTap = !communicationChannelState.isLoading;
return ListTile(
title: Text(
'${isIosBrowser ? 'Found device' : 'Pending invitation'} | ${device.info.displayName} | $status',
),
onTap: () => onConnect(device),
onTap: canTap ? () => onConnect(device) : null,
tileColor: Colors.blueAccent,
textColor: Colors.white,
);