make copy work, also some abstraction and new provider

This commit is contained in:
RafayAhmad7548 2025-08-16 10:12:51 +05:00
parent a66ed70532
commit 869f2c14c3
6 changed files with 145 additions and 107 deletions

View file

@ -3,12 +3,14 @@ import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
import 'package:fluxcloud/connection.dart';
import 'package:fluxcloud/providers/sftp_loading_provider.dart';
import 'package:fluxcloud/providers/sftp_provider.dart';
import 'package:fluxcloud/sftp_explorer.dart';
import 'package:fluxcloud/sftp_provider.dart';
import 'package:fluxcloud/sftp_worker.dart';
import 'package:fluxcloud/widgets/add_server_modal.dart';
import 'package:provider/provider.dart';
class SftpConnectionList extends StatefulWidget {
const SftpConnectionList({
super.key,
@ -82,10 +84,13 @@ class _SftpConnectionListState extends State<SftpConnectionList> {
onTap: () async {
final sftpWorker = await SftpWorker.spawn(_connections[index]);
if (context.mounted) {
Navigator.push(context, MaterialPageRoute(builder: (context) => ChangeNotifierProvider(
create: (_) => SftpProvider(sftpWorker),
child: SftpExplorer()
)));
Navigator.push(context, MaterialPageRoute(builder: (context) => MultiProvider(
providers: [
ChangeNotifierProvider<SftpProvider>(create: (_) => SftpProvider(sftpWorker)),
ChangeNotifierProvider<SftpLoadingProvider>(create: (_) => SftpLoadingProvider()),
],
child: SftpExplorer())
));
}
},
borderRadius: BorderRadius.circular(10),