Added focus-within support to the shared mobile VisualViewport controller so every capture field is revealed without duplicate viewport listeners.
Wired the complete New issue form into keyboard-safe panel geometry and cleanup.
Added 320px focused-control scroll margins and rolled the offline shell cache.
Verification
RED: 3 focused behavioral/integration tests failed before implementation.
GREEN: python3 -m pytest tests/ -q — 976 passed.
Rendered Chromium checks at 390×844 (420px visual viewport) and 320×568 (300px visual viewport): repository search, title, and description all remained inside the keyboard-reduced panel; sticky actions remained reachable; no horizontal overflow.
Closes #489
## What changed
- Added focus-within support to the shared mobile VisualViewport controller so every capture field is revealed without duplicate viewport listeners.
- Wired the complete New issue form into keyboard-safe panel geometry and cleanup.
- Added 320px focused-control scroll margins and rolled the offline shell cache.
## Verification
- RED: 3 focused behavioral/integration tests failed before implementation.
- GREEN: `python3 -m pytest tests/ -q` — 976 passed.
- Rendered Chromium checks at 390×844 (420px visual viewport) and 320×568 (300px visual viewport): repository search, title, and description all remained inside the keyboard-reduced panel; sticky actions remained reachable; no horizontal overflow.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Closes #489
What changed
Verification
python3 -m pytest tests/ -q— 976 passed.