morethanwords/tweb/master • 229ee61 • 4 files, +24/-4
Support stars_purchase_blocked
Stars can be unavailable for purchase at all. Opening the topup for a
purchase — an insufficient balance or a gift — now shows an alert
instead, and the plain Stars screen keeps the balance and the history,
but drops the topup options and the gift button.
Also remove the duplicate stars_purchase_blocked from the app config.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
morethanwords/tweb/master • 31620b1 • 2 files, +1/-3
Fix sticker viewer not looping stickers
Passing `emoji` to wrapSticker to get the right skin tone also disabled
looping, since the loop was suppressed for any non-custom emoji. Move
that decision to the only call site that needs it — big emoji bubbles.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
morethanwords/tweb/master • d064fdb • 4 files, +122/-26
Fix a drag selection starting inside an album
Pressing next to an album and moving the cursor selected the whole album
before reaching another bubble, for two reasons.
The very first move ran getElementsBetween with first === last, and the
album override expanded its endpoints anyway, so an empty range came back
as every item of the album — enough elements to start the selection.
An album bubble also carries the group's main mid, so crossing from one of
its items to the bubble itself (the spacing between the photos, the
caption, the free space beside it) counted as a second element. A grouped
bubble is now one drag unit: only an item-to-item move inside it makes a
range, and that range stays granular as before.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
morethanwords/tweb/master • 4126377 • 2 files, +25/-1
Fix an ordinary forum opening as a navigation tab
getChat() returns any Chat, so isCommunity was true for every forum
channel and shouldOpenForumAsNavigationTab pushed it into the sidebar
slider instead of the floating forum drawer.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
morethanwords/tweb/master • 85f27ea • 1 files, +4/-8
Enable the object URL lifecycle in production
The kill switch was on in production builds while the revoke-on-evict
lifecycle waited to be dogfooded. Drop the `import.meta.env.PROD` gate so
shared blob URLs get evicted and revoked everywhere, leaving
?noObjectUrlRevoke=1 as the only way back to the leak-forever behaviour —
which also makes ?forceObjectUrlRevoke=1 pointless, so it goes.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
#webk
Post #20525
131
- 🫡 3