🐛 Fix post refresh

This commit is contained in:
2025-10-31 19:18:34 +08:00
parent b52eb95b14
commit 7de98a1731

View File

@@ -27,6 +27,7 @@ import 'package:island/widgets/realm/realm_card.dart';
import 'package:island/widgets/publisher/publisher_card.dart';
import 'package:island/widgets/web_article_card.dart';
import 'package:island/widgets/extended_refresh_indicator.dart';
import 'package:island/services/event_bus.dart';
import 'package:styled_widget/styled_widget.dart';
part 'explore.g.dart';
@@ -90,6 +91,17 @@ class ExploreScreen extends HookConsumerWidget {
return () => tabController.removeListener(listener);
}, [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 query = useState(
@@ -479,10 +491,11 @@ class ExploreScreen extends HookConsumerWidget {
borderRadius: const BorderRadius.all(Radius.circular(8)),
child: CustomScrollView(
slivers: [
const SliverGap(8),
if (user.value != null)
SliverToBoxAdapter(
child: CheckInWidget(
margin: const EdgeInsets.only(bottom: 8, top: 8),
margin: const EdgeInsets.only(bottom: 8),
),
),
SliverToBoxAdapter(