浏览代码

Update device folder page on event

Vishnu Mohandas 5 年之前
父节点
当前提交
e5c698b7b4
共有 1 个文件被更改,包括 20 次插入0 次删除
  1. 20 0
      lib/ui/device_folders_gallery_widget.dart

+ 20 - 0
lib/ui/device_folders_gallery_widget.dart

@@ -1,6 +1,10 @@
+import 'dart:async';
+
 import 'package:flutter/material.dart';
 import 'package:flutter/widgets.dart';
+import 'package:photos/core/event_bus.dart';
 import 'package:photos/db/photo_db.dart';
+import 'package:photos/events/local_photos_updated_event.dart';
 import 'package:photos/favorite_photos_repository.dart';
 import 'package:photos/models/device_folder.dart';
 import 'package:photos/models/filters/favorite_items_filter.dart';
@@ -19,6 +23,16 @@ class DeviceFolderGalleryWidget extends StatefulWidget {
 }
 
 class _DeviceFolderGalleryWidgetState extends State<DeviceFolderGalleryWidget> {
+  StreamSubscription<LocalPhotosUpdatedEvent> _subscription;
+
+  @override
+  void initState() {
+    _subscription = Bus.instance.on<LocalPhotosUpdatedEvent>().listen((event) {
+      setState(() {});
+    });
+    super.initState();
+  }
+
   @override
   Widget build(BuildContext context) {
     return FutureBuilder(
@@ -107,4 +121,10 @@ class _DeviceFolderGalleryWidgetState extends State<DeviceFolderGalleryWidget> {
       },
     );
   }
+
+  @override
+  void dispose() {
+    _subscription.cancel();
+    super.dispose();
+  }
 }