TGViewer
Telegram github commits and releases Telegram github commits and releases @tgappsupdates · 4.54K subscribers
Post #20683 97
morethanwords/tweb/master • 50da390 • 2 files, +30/-6
Stop naming a typing peer the tab has not loaded

getPeerTitle answers from the tab's peer mirror, and with onlyFirstName a peer
that is not in it falls back to I18n 'Deleted' — so a typing update that reaches
the tab ahead of the peer itself reads "Deleted is typing" in the chat list and
the topbar. A sender that is a chat rather than a user is worse still: no title
at all, leaving " is typing".

Typings the mirror cannot name are now dropped before anything renders, out of
the count as well, so every remaining string stays grammatical: three typers
with one unknown read as a pair, two with one unknown fall back to the single
name, and nothing at all is shown once no one is left. A private chat names
nobody — its string is a bare "typing" — so the check is skipped there and its
indicator is untouched.

The topbar already handled an empty answer, since setPeerStatus falls through to
getPeerStatus. The chat list did not: setDialogTyping only writes into a row
that has no indicator yet, and the peer_typings handler unsets only when the
array is empty, so a row already naming someone kept that name once
getPeerTyping started declining. setDialogTyping now reports the case and
setTyping restores the last message; a row that never had an indicator reports
false, so the plain build path never re-renders.

Verified in a preview against a real group, with typings stubbed onto the
mirror's blind spot: an unknown peer alone shows nothing, unknown + known shows
"Mira is typing", unknown + two known shows the pair, and a row already reading
"Mira is typing" goes back to its last message when only the unknown peer keeps
typing — while a row with no indicator takes no unsetTyping call at all.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

morethanwords/tweb/master • be66114 • 300 files, +755/-755
Build

#webk
  • 🫡 3
More from @tgappsupdates
  1. Oct 12, 2026TGX-Android/Telegram-X/main • 012c76b • 2 files, +3/-3 Always use `c++_shared` now TGX-And…
  2. Oct 11, 2026morethanwords/tweb/master • 94bbdf4 • 2 files, +98/-2 Folder tags: leave the rows without…
  3. Oct 11, 2026UnigramDev/Unigram/accessibility-keyboard • 7db678f • 3 files, +76/-1 Wire the call microp…
  4. Oct 11, 2026UnigramDev/Unigram/accessibility-keyboard • 202b2ad • 3 files, +76/-1 Wire the call microp…
  5. Oct 11, 2026UnigramDev/Unigram/accessibility-keyboard • a995f8e • 1 files, +80/-0 Add keyboard actions…
  6. Oct 11, 2026UnigramDev/Unigram/develop • 04a9e11 • 1 files, +23/-5 Try to preserve managed exception U…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →