UnigramDev/Unigram/develop • 03f39d7 • 1 files, +19/-4
Flatten an inline button's label as plain text
The label's own entities competed with the button entity over the same range,
and a run carrying both reports the inner type: a label of custom emoji
rendered as emoji, with no button around them.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
UnigramDev/Unigram/develop • 1ea35f4 • 1 files, +23/-2
Stop waiting for TDLib to transform a frame once the call is closing
Transform blocks a media thread until TDLib answers, and Dispose blocks TDLib's
update thread until tgcalls has stopped — and that is the thread the answer would
come from. A transform still waiting when Dispose runs holds the two against each
other, with the call window frozen behind the manager lock.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
UnigramDev/Unigram/develop • 1a017ae • 1 files, +45/-32
Stop the group call managers outside the manager lock
Stop waits for the tgcalls threads to wind down, and the UI thread sits on the
lock for as long as that takes, which is what freezes the call window while a
call is torn down. The lock only has to cover the fields: once they are null the
UI thread has nothing left to reach, and the instance the caller took out is its
own to stop.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
UnigramDev/Unigram/develop • fbb0e7f • 1 files, +51/-23
Tear the group call managers down off TDLib's update thread
Stopping a manager waits for the tgcalls threads behind it, and one of those can
be waiting on a request whose answer arrives on the very thread Dispose runs on.
EndScreenSharing has the mirror problem: called from the UI thread, it held the
window for the whole teardown.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
UnigramDev/Unigram/develop • 3f8a338 • 2 files, +9/-2
Fix the order and the icons of the group call participant list
A participant moving down the list was inserted one place too low, since the
index was measured before the removal shifted everything after it. Sorting only
looked right for participants moving up, and the list drifts as people speak.
The icon for someone sharing a screen but no camera was behind a condition that
repeated the one above it, so the row kept whatever the recycled container had.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
#unigram
UnigramDev/Unigram/develop • 03f39d7 • 1 files, +19/-4 Flatten an inline button's label as plain tex
Telegram github commits and releases
@tgappsupdatesBroadcast from the most important Telegram clients' repositories
4 538 підписників
Відкрити в Telegram