feat: export/import JSON des sessions, stats et armurerie via partage systeme

This commit is contained in:
qlionbleusam
2026-08-13 12:22:42 +02:00
parent 3812cd740b
commit 543f54dc4f
14 changed files with 464 additions and 4 deletions
+14 -1
View File
@@ -7,7 +7,12 @@ import '../../data/repositories/session_repository.dart';
import 'weapon_detail_screen.dart';
class WeaponListScreen extends StatefulWidget {
const WeaponListScreen({super.key});
/// Incrémenté par la navigation à chaque ouverture de l'onglet Armurerie
/// (l'écran est gardé vivant par l'IndexedStack et ne se rafraîchit pas
/// seul : sans ça, un import de sauvegarde resterait invisible).
final int refreshTick;
const WeaponListScreen({super.key, this.refreshTick = 0});
@override
State<WeaponListScreen> createState() => _WeaponListScreenState();
@@ -23,6 +28,14 @@ class _WeaponListScreenState extends State<WeaponListScreen> {
_loadWeapons();
}
@override
void didUpdateWidget(WeaponListScreen oldWidget) {
super.didUpdateWidget(oldWidget);
if (oldWidget.refreshTick != widget.refreshTick) {
_loadWeapons();
}
}
Future<void> _loadWeapons() async {
final repository = context.read<SessionRepository>();
final weapons = await repository.getWeapons();