Better fediverse content

This commit is contained in:
2026-01-02 03:08:50 +08:00
parent d7858bab67
commit cb9eca0424
17 changed files with 580 additions and 82 deletions

View File

@@ -141,13 +141,13 @@ class ExploreScreen extends HookConsumerWidget {
PopupMenuItem(
child: Row(
children: [
const Icon(Symbols.linked_services),
const Icon(Symbols.search),
const Gap(12),
Text('searchFediverse').tr(),
Text('search').tr(),
],
),
onTap: () {
context.pushNamed('activitypubSearch');
context.pushNamed('universalSearch');
},
),
PopupMenuItem(
@@ -174,18 +174,6 @@ class ExploreScreen extends HookConsumerWidget {
context.pushNamed('postShuffle');
},
),
PopupMenuItem(
child: Row(
children: [
const Icon(Symbols.search),
const Gap(12),
Text('search').tr(),
],
),
onTap: () {
context.pushNamed('postSearch');
},
),
],
icon: Icon(Symbols.action_key),
tooltip: 'search'.tr(),
@@ -554,6 +542,18 @@ class ExploreScreen extends HookConsumerWidget {
),
PopupMenuButton(
itemBuilder: (context) => [
PopupMenuItem(
child: Row(
children: [
const Icon(Symbols.search),
const Gap(12),
Text('search').tr(),
],
),
onTap: () {
context.pushNamed('universalSearch');
},
),
PopupMenuItem(
child: Row(
children: [
@@ -578,18 +578,6 @@ class ExploreScreen extends HookConsumerWidget {
context.pushNamed('postShuffle');
},
),
PopupMenuItem(
child: Row(
children: [
const Icon(Symbols.search),
const Gap(12),
Text('search').tr(),
],
),
onTap: () {
context.pushNamed('postSearch');
},
),
],
icon: Icon(Symbols.action_key, color: foregroundColor),
tooltip: 'search'.tr(),
@@ -610,27 +598,14 @@ class ExploreScreen extends HookConsumerWidget {
final notifier = ref.watch(activityListProvider.notifier);
final activityState = ref.watch(activityListProvider);
return Expanded(
child: Stack(
children: [
ClipRRect(
borderRadius: const BorderRadius.all(Radius.circular(8)),
child: ExtendedRefreshIndicator(
onRefresh: notifier.refresh,
child: CustomScrollView(slivers: [SliverGap(8), bodyView]),
),
).padding(horizontal: 8),
if (activityState.isLoading)
Positioned.fill(
child: Container(
color: Colors.grey.withOpacity(0.3),
child: const Center(child: CircularProgressIndicator()),
),
),
],
),
child: ClipRRect(
borderRadius: const BorderRadius.all(Radius.circular(8)),
child: ExtendedRefreshIndicator(
onRefresh: notifier.refresh,
child: CustomScrollView(slivers: [SliverGap(8), bodyView]),
),
).padding(horizontal: 8),
);
}
}