Commit Graph

2834 Commits

Author SHA1 Message Date
John Preston 402cb0e668 Fix crash when removing folders with pinned chats.
ChatFilters::applyRemove() emptied the filter in the list and only then
detached its chats. Unpinning a chat re-caches its siblings' pinned
indices, which runs Session::refreshChatListEntry(); seeing the filter
still listed but emptied, it re-entered removeFromChatList() ->
setChatPinned() -> PinnedList::setPinned() on the same pinned list while
its re-cache loop iterated with a cached size, reading past the end of
the vector. This aborted on closing the Folders editor after removing
two or more folders that had pinned chats.

Detach the filter from the list before applyChange() tears down its
chats, so the re-entrant refresh no longer touches it. Also harden the
setPinned() re-cache loop to re-check the container size each iteration
as defense in depth.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-02 17:49:07 +04:00
John Preston ec7e0566a7 Improve rich messages serialization. 2026-07-02 17:48:58 +04:00
John Preston 9dc4b8c8b8 Support rich messages drafts. 2026-07-02 17:48:57 +04:00
John Preston c8ef31ae7f Fix rich pages in scheduled / shorcuts sending. 2026-06-23 11:28:52 +04:00
23rd a74ee601c1 Added initial support of swipe-next-channel. 2026-06-22 11:51:49 +03:00
23rd 5d52a283d4 Added experimental option to keep unmuted unread dialogs on top. 2026-06-22 11:51:49 +03:00
John Preston 9cca0059b5 Fix order in auctions list hashing. 2026-06-15 21:54:54 +04:00
Ilya Fedin c486314f83 Avoid full Telegram target rebuild on version change 2026-06-15 17:05:51 +04:00
John Preston 8b8b3ebc09 Support server-provided limits for rich messages. 2026-06-09 14:28:11 +04:00
John Preston 4404d44da0 Support starting typing into IV editor, including IME. 2026-06-09 14:28:11 +04:00
John Preston ea438aeb85 Correctly host rich message in the item. 2026-06-09 14:28:11 +04:00
John Preston a9a21140c3 Unify MTP page parsing. 2026-06-09 14:28:10 +04:00
John Preston 8c987c28f8 Remove legacy web-based Instant View. 2026-06-09 14:28:10 +04:00
John Preston 91789fb50f Correctly replace IV when full is loaded. 2026-06-09 14:28:10 +04:00
John Preston d91bdfcd21 Remove unused PhotoData/DocumentData in Iv::Data. 2026-06-09 14:28:09 +04:00
23rd 94572a6dda Added initial API support of link to PollMedia. 2026-06-09 14:27:37 +04:00
John Preston a2b18e3400 Use MakeWrappedEmoji which forwards nullptr-s. 2026-06-09 14:27:37 +04:00
John Preston 5c825f352f Support basic display of IV in messages. 2026-06-09 14:27:37 +04:00
John Preston 2f6c10d260 Simple rich message view in separate window. 2026-06-09 14:27:37 +04:00
John Preston b1e012c466 Update API scheme to layer 227. 2026-06-09 14:27:37 +04:00
John Preston 5c5bacaf41 Update API scheme to layer 226. Guard-bots. 2026-06-09 14:27:37 +04:00
23rd 056ca1c727 Replaced poll emoji with correspond icon in dialogs message layout. 2026-06-09 07:49:26 +03:00
23rd f52da569f9 Improved jump anchors in shared media with media calendar periods usage. 2026-06-09 07:49:25 +03:00
John Preston e38fc74d1c Mark IV links in shared links section. 2026-06-08 23:24:46 +04:00
23rd e8d0a8da74 Allowed admin log original entries to carry preview photo or document. 2026-06-04 12:45:19 +04:00
John Preston 83f5e16593 Update hardcoded filters limit fallback to 30.
Fixes #30756.
2026-06-02 12:17:32 +04:00
23rd aa0ddf1b37 Added view removal reason to skip animations on rebuilt views. 2026-06-01 18:46:42 +03:00
23rd b89fd24339 Fixed empty chat list preview after deleting last message.
Regression was introduced in 6c88a90d28.
2026-06-01 14:16:52 +03:00
23rd 6c7900c0b0 Added day rollover detection to top promotion refresh. 2026-05-27 12:18:57 +03:00
John Preston 436f929e79 Suggest all send options in topics. 2026-05-26 13:05:26 +04:00
John Preston 3cb167b7e5 Fix possible crash in livestream story destruction. 2026-05-25 17:56:53 +04:00
23rd 6c88a90d28 [thanos] Broadcast item-about-to-destroy on TTL and clear paths too. 2026-05-22 14:02:40 +03:00
John Preston f6c5004b1b Fix crash in streaming-bot search. 2026-05-21 22:07:01 +04:00
John Preston e7bc456974 Improve design of IV parts. 2026-05-19 12:49:08 +04:00
John Preston c34d1104a4 Support photo/video display using messages. 2026-05-19 12:49:08 +04:00
John Preston bd5080d75d Normalize lists baselines, headers and includes. 2026-05-19 12:49:08 +04:00
John Preston 67764c803d Add markdown viewer header, sharing. 2026-05-19 12:49:08 +04:00
John Preston 7ba610fd33 Initial attempt to feed IV into the new viewer. 2026-05-19 12:49:08 +04:00
John Preston 5eed2bf42d Open markdown through Core::App().iv(). 2026-05-19 12:49:08 +04:00
John Preston f1e2f9d37f Remove option for conditional build. 2026-05-19 12:49:08 +04:00
John Preston eb51301cfb Initial attempt to open .md files. 2026-05-19 12:49:07 +04:00
John Preston e429c1edd5 Better tracking of original video quality. 2026-05-19 12:27:40 +04:00
John Preston 1aa7b725ee Always choose Original if it's downloaded. 2026-05-18 12:19:58 +04:00
23rd 1167523f4a [thanos] Pre-captured snapshots before batch destruction via event. 2026-05-18 10:36:52 +03:00
23rd e75dba5c80 [thanos] Added GPU-accelerated particle dissolution effect for messages. 2026-05-18 10:36:52 +03:00
23rd 763fce3326 Added support to document view display of sanitized SVG preview. 2026-05-18 10:36:52 +03:00
23rd 9964958210 Respected per-peer auto-download overrides at decision points. 2026-05-14 18:27:01 +03:00
23rd 508cea20da Persisted per-peer auto-download overrides via version 3 stream. 2026-05-14 18:27:01 +03:00
23rd 08525fb920 Added per-peer override storage to Data::AutoDownload::Full. 2026-05-14 18:27:01 +03:00
23rd f7d342285c Fixed mute state update for forum topics with unknown notify settings. 2026-05-14 18:27:00 +03:00