Onstart sync progressbar: changed default screen to channels

Because it's synchronization is faster and first in line
This commit is contained in:
HDDen
2026-05-24 15:33:54 +03:00
parent ed0e6b6554
commit 4dd472e3c3
3 changed files with 16 additions and 16 deletions
+2 -2
View File
@@ -11,7 +11,7 @@ import '../utils/app_logger.dart';
import '../widgets/adaptive_app_bar_title.dart'; import '../widgets/adaptive_app_bar_title.dart';
import '../widgets/device_tile.dart'; import '../widgets/device_tile.dart';
import '../helpers/snack_bar_builder.dart'; import '../helpers/snack_bar_builder.dart';
import 'contacts_screen.dart'; import 'channels_screen.dart';
import 'tcp_screen.dart'; import 'tcp_screen.dart';
import 'usb_screen.dart'; import 'usb_screen.dart';
@@ -46,7 +46,7 @@ class _ScannerScreenState extends State<ScannerScreen> {
_changedNavigation = true; _changedNavigation = true;
if (mounted) { if (mounted) {
Navigator.of(context).push( Navigator.of(context).push(
MaterialPageRoute(builder: (context) => const ContactsScreen()), MaterialPageRoute(builder: (context) => const ChannelsScreen()),
); );
} }
} }
+7 -7
View File
@@ -9,7 +9,7 @@ import '../services/app_settings_service.dart';
import '../utils/platform_info.dart'; import '../utils/platform_info.dart';
import '../widgets/adaptive_app_bar_title.dart'; import '../widgets/adaptive_app_bar_title.dart';
import '../helpers/snack_bar_builder.dart'; import '../helpers/snack_bar_builder.dart';
import 'contacts_screen.dart'; import 'channels_screen.dart';
import 'usb_screen.dart'; import 'usb_screen.dart';
class TcpScreen extends StatefulWidget { class TcpScreen extends StatefulWidget {
@@ -24,7 +24,7 @@ class _TcpScreenState extends State<TcpScreen> {
late final TextEditingController _portController; late final TextEditingController _portController;
late final MeshCoreConnector _connector; late final MeshCoreConnector _connector;
late final VoidCallback _connectionListener; late final VoidCallback _connectionListener;
bool _navigatedToContacts = false; bool _navigatedToChannels = false;
@override @override
void initState() { void initState() {
@@ -42,20 +42,20 @@ class _TcpScreenState extends State<TcpScreen> {
_connectionListener = () { _connectionListener = () {
if (!mounted) return; if (!mounted) return;
if (_connector.state == MeshCoreConnectionState.disconnected) { if (_connector.state == MeshCoreConnectionState.disconnected) {
_navigatedToContacts = false; _navigatedToChannels = false;
} }
if (_connector.state == MeshCoreConnectionState.connected && if (_connector.state == MeshCoreConnectionState.connected &&
_connector.isTcpTransportConnected && _connector.isTcpTransportConnected &&
!_navigatedToContacts) { !_navigatedToChannels) {
context.read<AppSettingsService>().setTcpServerAddress( context.read<AppSettingsService>().setTcpServerAddress(
_hostController.text, _hostController.text,
); );
context.read<AppSettingsService>().setTcpServerPort( context.read<AppSettingsService>().setTcpServerPort(
int.tryParse(_portController.text) ?? 0, int.tryParse(_portController.text) ?? 0,
); );
_navigatedToContacts = true; _navigatedToChannels = true;
Navigator.of(context).pushReplacement( Navigator.of(context).pushReplacement(
MaterialPageRoute(builder: (_) => const ContactsScreen()), MaterialPageRoute(builder: (_) => const ChannelsScreen()),
); );
} }
}; };
@@ -67,7 +67,7 @@ class _TcpScreenState extends State<TcpScreen> {
_hostController.dispose(); _hostController.dispose();
_portController.dispose(); _portController.dispose();
_connector.removeListener(_connectionListener); _connector.removeListener(_connectionListener);
if (!_navigatedToContacts && if (!_navigatedToChannels &&
_connector.activeTransport == MeshCoreTransportType.tcp && _connector.activeTransport == MeshCoreTransportType.tcp &&
_connector.state != MeshCoreConnectionState.disconnected) { _connector.state != MeshCoreConnectionState.disconnected) {
WidgetsBinding.instance.addPostFrameCallback((_) { WidgetsBinding.instance.addPostFrameCallback((_) {
+7 -7
View File
@@ -11,7 +11,7 @@ import '../utils/platform_info.dart';
import '../utils/usb_port_labels.dart'; import '../utils/usb_port_labels.dart';
import '../widgets/adaptive_app_bar_title.dart'; import '../widgets/adaptive_app_bar_title.dart';
import '../helpers/snack_bar_builder.dart'; import '../helpers/snack_bar_builder.dart';
import 'contacts_screen.dart'; import 'channels_screen.dart';
import 'scanner_screen.dart'; import 'scanner_screen.dart';
import 'tcp_screen.dart'; import 'tcp_screen.dart';
@@ -25,7 +25,7 @@ class UsbScreen extends StatefulWidget {
class _UsbScreenState extends State<UsbScreen> { class _UsbScreenState extends State<UsbScreen> {
final List<String> _ports = <String>[]; final List<String> _ports = <String>[];
bool _isLoadingPorts = true; bool _isLoadingPorts = true;
bool _navigatedToContacts = false; bool _navigatedToChannels = false;
bool _didScheduleInitialLoad = false; bool _didScheduleInitialLoad = false;
Timer? _hotPlugTimer; Timer? _hotPlugTimer;
late final MeshCoreConnector _connector; late final MeshCoreConnector _connector;
@@ -41,14 +41,14 @@ class _UsbScreenState extends State<UsbScreen> {
_connectionListener = () { _connectionListener = () {
if (!mounted) return; if (!mounted) return;
if (_connector.state == MeshCoreConnectionState.disconnected) { if (_connector.state == MeshCoreConnectionState.disconnected) {
_navigatedToContacts = false; _navigatedToChannels = false;
} }
if (_connector.state == MeshCoreConnectionState.connected && if (_connector.state == MeshCoreConnectionState.connected &&
_connector.isUsbTransportConnected && _connector.isUsbTransportConnected &&
!_navigatedToContacts) { !_navigatedToChannels) {
_navigatedToContacts = true; _navigatedToChannels = true;
Navigator.of(context).pushReplacement( Navigator.of(context).pushReplacement(
MaterialPageRoute(builder: (_) => const ContactsScreen()), MaterialPageRoute(builder: (_) => const ChannelsScreen()),
); );
} }
}; };
@@ -72,7 +72,7 @@ class _UsbScreenState extends State<UsbScreen> {
_hotPlugTimer?.cancel(); _hotPlugTimer?.cancel();
_hotPlugTimer = null; _hotPlugTimer = null;
_connector.removeListener(_connectionListener); _connector.removeListener(_connectionListener);
if (!_navigatedToContacts && if (!_navigatedToChannels &&
_connector.activeTransport == MeshCoreTransportType.usb && _connector.activeTransport == MeshCoreTransportType.usb &&
_connector.state != MeshCoreConnectionState.disconnected) { _connector.state != MeshCoreConnectionState.disconnected) {
WidgetsBinding.instance.addPostFrameCallback((_) { WidgetsBinding.instance.addPostFrameCallback((_) {