zulip-flutter
zulip-flutter copied to clipboard
[UI/UX] Bottom Navigation Bar Disappears Permanently After Entering a Channel Message Feed
App Version:
Reproduced on version 30.0.264.
Steps to Reproduce:
- Launch the Zulip app. Confirm the main bottom navigation bar (containing "Inbox", "DMs", "Channels", etc.) is visible on the initial screen.
- Tap the "Channels" icon in the bottom navigation bar to navigate to the list of channels.
- Tap on any channel to open its message feed.
Actual Behavior:
The moment the channel's message feed is displayed, the main bottom navigation bar at the bottom of the screen disappears completely. It does not reappear even when navigating deeper (e.g., to channel details). To restore the navigation bar, the user is forced to press the top-left back arrow repeatedly to return to the app's initial launch screen. This creates a navigational trap.
See the attached recording.
Expected Behavior:
The main bottom navigation bar should remain persistent and visible across all major screens of the app, including the channel list and message feeds. This would allow the user to easily switch between contexts (e.g., jump from a channel message feed directly to their Inbox) without getting trapped in a deep navigation stack.
Additional Context & Impact:
The severity of this bug is compounded as the user continues to navigate after the bottom bar has already disappeared. A common workflow is to enter a message feed (bar disappears), then view channel details (now 2 levels deep), and then view the subscriber list (now 3 levels deep). To escape this navigational trap, the user is forced to press the back button multiple times, which is unintuitive and completely breaks their workflow. This highlights that the issue is not just a minor glitch but a critical usability failure that fundamentally breaks the app's navigation model. A simple "press the back button" workaround is not an acceptable solution.
Historical Context (Crucial):
This appears to be a usability regression. A very similar navigation problem was documented in the legacy React Native application in the legacy React Native application in zulip/zulip-mobile Issue #3455: https://github.com/zulip/zulip-mobile/issues/3455. That issue highlighted the same user frustration of being trapped in a narrow view without an easy escape path. We recommend reviewing this historical context when designing a solution for the current Flutter-based application.
Technical Suggestion (Optional but helpful):
This behavior is characteristic of a Flutter application using the root Navigator for a screen transition that should be handled by a nested Navigator in order to preserve the main UI shell (Scaffold with BottomNavigationBar).