[morethanwords/tweb/master](https://github.com/morethanwords/tweb/tree/master) • [9aaf3e0](https://github.com/morethanwords/tweb/commit/9aaf3e00f663aa25bec0fd06215a3f70b9f9c88b) • _1 files, +13/-14_
Open the sender's profile from the gift popup

The "From" row rendered a TablePeer without a click handler, so the only peer
you could reach from a gift was the "Owner" row — yourself, on your own gifts.
tdesktop builds that row with MakePeerTableValue, whose peer part is clickable
and whose "send a gift" button is separate, and .peer already carries
cursor: pointer here.

Route every peer click in the popup through one openPeer helper so the sender,
the owner, the releaser and the original-details peers all navigate and close
the parent popup the same way.

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

[morethanwords/tweb/master](https://github.com/morethanwords/tweb/tree/master) • [effb731](https://github.com/morethanwords/tweb/commit/effb731fc9fa534527488b325ec0c579bba815f5) • _3 files, +15/-2_
Don't stack the Community chevron on the avatar's unread badge

A narrow chat list — collapsed sidebar, or an open forum tab — hides .row-row
and moves the unread badge onto the avatar, landing right on the Community child
badge and covering the count. tdesktop drops the whole corner badge there:
Row::updateCornerBadgeShown returns kNoneLayer as soon as hasUnreadBadgesAbove,
which PaintRow sets when the row is narrow and paints badges over the userpic.

Extend the rule that already clears the auto-delete timer for the same reason,
so the group call icon — the other occupant of that corner, and the one that
wins over the chevron in tdesktop too — pushes it out as well.

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

[morethanwords/tweb/master](https://github.com/morethanwords/tweb/tree/master) • [b86253e](https://github.com/morethanwords/tweb/commit/b86253ef5fa48f9e7dea5233e6bfe890b6237cff) • _1 files, +9/-0_
Duplicate the bot's Report button in the Mini App menu

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

[morethanwords/tweb/master](https://github.com/morethanwords/tweb/tree/master) • [469b191](https://github.com/morethanwords/tweb/commit/469b191f0fd50d417edb8f09b8c1bec461532a64) • _2 files, +14/-0_
Wrap unbreakable text in contenteditable fields on Firefox

A long digit run in the phone number field spilled out of its box in Firefox
([bugs.telegram.org/c/63932](http://bugs.telegram.org/c/63932)). Blink and WebKit set overflow-wrap: break-word on
editables in their UA stylesheet, Gecko doesn't, so the rule that already
mirrors that stylesheet's white-space: pre-wrap has to carry it too — for every
contenteditable field, not just the phone one.

Cap the phone field itself at 36 digits while here, the same limit tdesktop
uses (kMaxPhoneCodeLength + kMaxPhoneTailLength); E.164 tops out at 15, and
without a cap junk input just grows the field line by line everywhere.

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

[#webk](?q=%23webk)