Android: the Notifications settings card is not rendered at all, so there is no way to learn that push doesn't exist
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 88/100
Research direction
Start in mobile/lib/features/settings/settings_page/notifications_section.dart and compare the Android path with the existing iOS unavailable-row behavior. Check its sole use in mobile/lib/features/settings/settings_page.dart:219. Done means Android settings renders a non-interactive Notifications card explaining that push is unavailable, instead of rendering nothing.
Written by the indexing model from the issue text.
Description
Describe the bug
On Android, Settings shows no Notifications section — not the toggle, not the "Unavailable in this build" row, nothing. Android has no push transport yet (#6092, #7482 both open), which is fine and expected; the bug is that the app is silent about it. An Android user's only way to find out that a locked phone will never alert is to wait a day and notice.
The iOS branch of the same widget already has the right behaviour for this case — it renders a disabled row reading "Push notifications — Unavailable in this build" when the gateway define is empty. Android never reaches that code.
Cause
mobile/lib/features/settings/settings_page/notifications_section.dart:7-10:
Widget build(BuildContext context, WidgetRef ref) {
if (defaultTargetPlatform != TargetPlatform.iOS) {
return const SizedBox.shrink();
}
_NotificationsSection is the only notifications UI in mobile settings (mobile/lib/features/settings/settings_page.dart:219 is its sole use site), so the early return removes the entire surface on Android rather than degrading it.
Steps to reproduce
- Build and run the Flutter app on Android.
- Join or create a community.
- Open Settings.
- There is no Notifications card between the sections above it and "Remove community".
Expected behavior
The card renders on every platform. On Android it shows a non-interactive row stating that push notifications are not yet supported on Android, ideally linking #6092 so a user can follow or thumbs-up the work rather than filing a duplicate.
Actual behavior
Nothing renders. The absence is indistinguishable from "notifications are on and working".
Suggested fix
Replace the platform early-return with a platform branch that reuses the existing unavailable-row pattern:
if (defaultTargetPlatform != TargetPlatform.iOS) {
return AppListCard(
label: 'Notifications',
verticalPadding: Grid.twelve,
children: [
AppListRow(
key: const ValueKey('push-notifications-unsupported-platform'),
icon: LucideIcons.bell,
title: 'Push notifications',
subtitle: 'Not yet supported on Android',
),
],
);
}
Happy to open a PR if the copy is agreed.
Version and platform
- Buzz version: 0.5.23
- OS: Android
- Relay: hosted
twelfth-ai.communities.buzz.xyz, relay software 0.2.1 - Verified at
block/buzz@312cf67
Related: #6092, #7482
- Dominant language
- Rust
- Stars
- 33.7k
- Forks
- 4.4k
- Avg merge
- 2d 6h
- Merged PRs (30d)
- 177
Getting set up
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from block/buzz
-
Difficulty 2/5 1-3 hours Newbie friendliness 92/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
block/buzz#7880 · 2 comments · 1 reaction ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
Maintainers usually reply within 1 day
Similar issues
-
area:casework bug criticality:p3 triage:needs-implementation
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
registrystack/registry-stack#1623 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
DioxusLabs/anyrender#98 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
leptos-rs/leptos#4885 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
longbridge/gpui-kit#3276 ·
Maintainers usually reply within 1 day