forge icon indicating copy to clipboard operation
forge copied to clipboard

🐛 Mobile: Bottom navigation doesn't hide when chat input is focused

Open namastex888 opened this issue 1 month ago • 2 comments

Bug Description

On mobile devices, when the user taps into the chat input box, the bottom navigation menu remains visible instead of hiding to make room for the keyboard. This blocks content and creates a poor UX.

Expected behavior: Bottom navigation should hide when input is focused, and reappear when focus is lost.

Actual behavior: Navigation stays visible at all times.

Root Causes

  1. No keyboard visibility detection in mobile layout
  2. isTextareaFocused state in TaskFollowUpSection isn't used to control navigation visibility
  3. BottomNavigation component always renders when showBottomNav prop is true
  4. No event listeners to detect input focus/blur at the layout level

Affected Components

  • frontend/src/components/mobile/MobileLayout.tsx
  • frontend/src/components/mobile/BottomNavigation.tsx
  • frontend/src/components/tasks/TaskFollowUpSection.tsx
  • frontend/src/pages/project-tasks.tsx

Proposed Solution

  1. Add keyboard visibility state to MobileLayout
  2. Hide BottomNavigation when input is focused
  3. Use CSS transitions for smooth hide/show animations
  4. Consider using visualViewport API for accurate keyboard detection

Screenshot

Mobile menu staying visible when input is focused

Priority

Medium-High - Affects mobile UX significantly

Labels

mobile, bug, UX

namastex888 avatar Nov 18 '25 04:11 namastex888

@codex cn you confirm this bug is fixed?

namastex888 avatar Nov 21 '25 14:11 namastex888

Summary

Testing

  • npm run frontend:lint (fails because existing ESLint warnings exceed the configured limit).

View task →