2.6 KiB
2.6 KiB
Telegram Android DialogCell — chat-list row rendering
Metadata
| Field | Value |
|---|---|
| Institute | Molodetz Institute — Research & Retrieval Division |
| Subject | tui-framework-design |
| Document type | Source Dossier |
| Tier | 1 |
| Source title | DialogCell.java (Telegram Android chat-list row cell) |
| Source URL | https://raw.githubusercontent.com/DrKLO/Telegram/master/TMessagesProj/src/main/java/org/telegram/ui/Cells/DialogCell.java |
| Source publisher / author | Telegram (DrKLO/Telegram, official Android client) |
| Source type | repository |
| Source date (published) | Unknown — not stated |
| Date researched | 2026-10-11 |
| Researched by | tai (agent), model: Muse Spark, on behalf of retoor |
| Research method | direct page fetch |
| Confidence | High |
| Status | Active |
Summary
The actual Android implementation of a chat-list row: circular avatar, bold name with time at right, second-line snippet with sender/service prefixes and own-message checks or clock, unread pill with pin/mute overlays, red Draft: prefix, and typing status rendered in action blue over the snippet.
Key findings
- Circular avatar with radius 26dp; bold chat name on the left, time on the right.
- Second line is a snippet with group-sender or service-message prefixes; own latest message is preceded by its checks or clock icon.
- Unread count renders as a pill at the right; the pin icon replaces or overlaps the count area; a mute (bell-off) icon sits after the name.
- Typing or voice-recording status replaces the snippet in action blue (
key_chats_actionMessage). - Unsent draft text is prefixed with
Draft:in red (key_chats_draft).
Pros / strengths
- Real shipped implementation, not a design mock: every element's presence and relative placement is ground truth for Android.
- Theme-key references (
key_chats_actionMessage,key_chats_draft) tie each element to the theming system.
Cons / limitations / caveats
- Android only; Desktop and iOS row geometry was not verified against this class.
- Chat-list time/date formatting rules and snippet truncation logic were not captured from this source (open gap).
- One class of a large client: surrounding list behavior (grouping, archives, folders) was not mined.
Relevance to tai
The element inventory for tai's sidebar rows: avatar slot, name plus time, snippet with status prefixes, unread pill, pin/mute markers, draft-red and typing-blue overrides — the rich-row target tai's plain-name list must grow into.
Changelog
| Date | Change |
|---|---|
| 2026-10-11 | Initial dossier created. |