mirror of
https://github.com/zjs81/meshcore-open.git
synced 2026-04-20 22:13:48 +00:00
Improve SNR handling by adding validation for spreading factor range in snrUiFromSNR function Update contact handling in MeshCoreConnector to fix variable naming and improve readability Stop parsing unsupported LPP types in CayenneLpp to avoid misalignment
48 lines
1.4 KiB
Dart
48 lines
1.4 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:meshcore_open/connector/meshcore_connector.dart';
|
|
import 'package:meshcore_open/widgets/battery_indicator.dart';
|
|
import 'package:provider/provider.dart';
|
|
|
|
import 'snr_indicator.dart';
|
|
|
|
class AppBarTitle extends StatelessWidget {
|
|
final String title;
|
|
final Widget? leading;
|
|
final Widget? trailing;
|
|
const AppBarTitle(this.title, {this.leading, this.trailing, super.key});
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
final connector = context.watch<MeshCoreConnector>();
|
|
|
|
return Row(
|
|
mainAxisAlignment: MainAxisAlignment.start,
|
|
children: [
|
|
leading ?? const SizedBox.shrink(),
|
|
Column(
|
|
crossAxisAlignment: CrossAxisAlignment.start,
|
|
children: [
|
|
leading ?? const SizedBox.shrink(),
|
|
Text(title),
|
|
if (connector.isConnected && connector.selfName != null)
|
|
Center(
|
|
child: Text(
|
|
'(${connector.selfName})',
|
|
style: TextStyle(fontSize: 14, color: Colors.grey[600]),
|
|
),
|
|
),
|
|
],
|
|
),
|
|
const SizedBox(width: 8),
|
|
Row(
|
|
mainAxisSize: MainAxisSize.min,
|
|
children: [
|
|
BatteryIndicator(connector: connector),
|
|
SNRIndicator(connector: connector),
|
|
],
|
|
),
|
|
trailing ?? const SizedBox.shrink(),
|
|
],
|
|
);
|
|
}
|
|
}
|