Files
buzz/mobile/lib
Tom Brow e86d0e23a3 feat(mobile): long-press a Solo chat to open its details sheet (#9163)
Long-pressing a team channel in the Messages list opens a bottom sheet
of channel actions. Long-pressing a Solo chat did nothing, so its
settings (star, mute, members, move, copy, leave/archive/delete) were
only reachable from inside the chat.

Now a long-press on a Solo chat row opens that chat's details screen as
a sheet, with the same presentation as the team channel sheet: drag
handle, close button, 640 pt max width, 70% max height. The content is
the existing channel details page rendered without its app bar
(`ChannelDetailsPage(inSheet: true)`), so it stays in sync with the full
page. Tapping a chat still opens it as before.

Solo chats are placed in Solo workspaces, not channel sections, so their
details (sheet and full page) no longer show "Move to section…". That
row wrote channel sections, which left the chat where it was. Moving a
Solo chat between workspaces stays on the chat header's workspace
control.

### Demo

Long-pressing a Solo chat in the Messages list (Solo filter) opens its
details sheet; Star toggles, the sheet scrolls to the lifecycle actions,
and the close button dismisses it. Synthetic chat named "QA demo".


https://github.com/user-attachments/assets/e8b8a799-be1f-4d4b-b47d-f2209e2b1920

### Validation

- Added test: long-pressing a Solo chat on the Me page opens the details
sheet with the chat's name, the sheet scrolls to its lifecycle actions,
and the channel-section move is absent.
- The full mobile test suite and `flutter analyze` pass.
- Full automated simulator run on the final code (iPhone 17 Pro, debug
build, signed-in Builderlab account, light and dark mode). In the Solo
long-press sheet: Star and Mute toggle and revert; Edit, a member's
profile and Add members open and close back to the sheet; Copy channel
name and Copy channel ID copy the right values and show a toast; the
sheet scrolls; the Leave, Archive and Delete confirmations appear and
were cancelled; the close button, scrim tap and drag down all dismiss
it; "Move to section…" is absent. Tapping the chat still opens it, and
its in-chat details page also omits the section move. Regression check:
the team channel long-press sheet and team details page are unchanged,
including a working "Move to section…". The recording is in Buzz rather
than here because it shows internal channel names. Limitation:
destructive actions were cancelled, not confirmed.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Signed-off-by: Tom Brow <tomb@squareup.com>
Co-authored-by: Tom Brow <tomb@squareup.com>
Co-authored-by: studio <dc2fc481343672df31a689840c09299972e704dac592e0da6f18486646a7ee3e@buzz.block.builderlab.xyz>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 15:40:11 -08:00
..