🐛 Fix post refresh
This commit is contained in:
@@ -27,6 +27,7 @@ import 'package:island/widgets/realm/realm_card.dart';
|
|||||||
import 'package:island/widgets/publisher/publisher_card.dart';
|
import 'package:island/widgets/publisher/publisher_card.dart';
|
||||||
import 'package:island/widgets/web_article_card.dart';
|
import 'package:island/widgets/web_article_card.dart';
|
||||||
import 'package:island/widgets/extended_refresh_indicator.dart';
|
import 'package:island/widgets/extended_refresh_indicator.dart';
|
||||||
|
import 'package:island/services/event_bus.dart';
|
||||||
import 'package:styled_widget/styled_widget.dart';
|
import 'package:styled_widget/styled_widget.dart';
|
||||||
|
|
||||||
part 'explore.g.dart';
|
part 'explore.g.dart';
|
||||||
@@ -90,6 +91,17 @@ class ExploreScreen extends HookConsumerWidget {
|
|||||||
return () => tabController.removeListener(listener);
|
return () => tabController.removeListener(listener);
|
||||||
}, [tabController]);
|
}, [tabController]);
|
||||||
|
|
||||||
|
// Listen for post creation events to refresh activities
|
||||||
|
useEffect(() {
|
||||||
|
final subscription = eventBus.on<PostCreatedEvent>().listen((event) {
|
||||||
|
// Refresh all activity lists when a new post is created
|
||||||
|
ref.invalidate(activityListNotifierProvider(null));
|
||||||
|
ref.invalidate(activityListNotifierProvider('subscriptions'));
|
||||||
|
ref.invalidate(activityListNotifierProvider('friends'));
|
||||||
|
});
|
||||||
|
return subscription.cancel;
|
||||||
|
}, []);
|
||||||
|
|
||||||
final now = DateTime.now();
|
final now = DateTime.now();
|
||||||
|
|
||||||
final query = useState(
|
final query = useState(
|
||||||
@@ -479,10 +491,11 @@ class ExploreScreen extends HookConsumerWidget {
|
|||||||
borderRadius: const BorderRadius.all(Radius.circular(8)),
|
borderRadius: const BorderRadius.all(Radius.circular(8)),
|
||||||
child: CustomScrollView(
|
child: CustomScrollView(
|
||||||
slivers: [
|
slivers: [
|
||||||
|
const SliverGap(8),
|
||||||
if (user.value != null)
|
if (user.value != null)
|
||||||
SliverToBoxAdapter(
|
SliverToBoxAdapter(
|
||||||
child: CheckInWidget(
|
child: CheckInWidget(
|
||||||
margin: const EdgeInsets.only(bottom: 8, top: 8),
|
margin: const EdgeInsets.only(bottom: 8),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
SliverToBoxAdapter(
|
SliverToBoxAdapter(
|
||||||
|
|||||||
Reference in New Issue
Block a user