handleGeneratorBluetoothPress function
- required BuildContext context,
- required WidgetRef ref,
- required String? hubSerialNumber,
Handles generator Bluetooth connect/disconnect actions.
Implementation
Future<void> handleGeneratorBluetoothPress({
required BuildContext context,
required WidgetRef ref,
required String? hubSerialNumber,
}) async {
if (hubSerialNumber == null || hubSerialNumber.isEmpty) {
return;
}
final isBluetoothConnected =
ref.read(hubBleManagerFamily(hubSerialNumber)) is BleConnected;
if (!isBluetoothConnected) {
await showModalBottomSheet<void>(
context: context,
isScrollControlled: true,
backgroundColor: Colors.transparent,
builder: (_) => PairGeneratorBottomSheet(
hubSerialNumber: hubSerialNumber,
),
);
return;
}
await showAppActionDialog(
context,
title: context.sharedL10n.disconnectBluetoothDevice,
content: Text(context.sharedL10n.disconnectGeneratorContent),
closeButtonText: context.sharedL10n.cancel,
actionButtonText: context.sharedL10n.disconnect,
onActionPressed: () async {
await ref
.read(hubBleManagerFamily(hubSerialNumber).notifier)
.disconnect();
},
);
}