Commit graph

80 commits

Author SHA1 Message Date
isaac
86d1456552 Postbox -> TelegramEngine waves 107-137 (squashed)
31 waves of consumer-side migration from `import Postbox` to TelegramEngine
typealiases. Net: 173 import drops + 39 BUILD-dep drops + 1 new typealias
(`EngineStoryId = StoryId`, wave 113).

Wave shapes used:
- Orphan-import sweeps (107, 108, 128): drop `import Postbox` from files
  whose only Postbox-symbol reference was the import line itself, then
  resolve build failures. Methodology requires token-level (`grep -oE`)
  filtering, not line-level, to avoid masking real Postbox usage on lines
  that also contain `Namespaces.X` references.
- Identifier-swap mini-waves (109-127, 129-134, 136-137): rename
  Postbox-typealiased identifiers to engine equivalents
  (PeerId -> EnginePeer.Id, MessageId -> EngineMessage.Id,
  MediaId -> EngineMedia.Id, MessageIndex -> EngineMessage.Index,
  StoryId -> EngineStoryId, ItemCollectionId -> EngineItemCollectionId,
  PreferencesEntry -> EnginePreferencesEntry,
  FetchResourceSourceType/Error -> EngineFetchResourceSourceType/Error,
  MemoryBuffer -> EngineMemoryBuffer, MessageTags -> EngineMessage.Tags,
  MessageAttribute -> EngineMessage.Attribute,
  TempBox -> EngineTempBox).
- Asset-string FP-only orphans (124).
- Typealias addition + drain (113): added `EngineStoryId` typealias to
  TelegramCore, then drained 3+11 consumer sites.

Hard blockers identified during these waves (must restore `import Postbox`
when present): MediaResource[A-Za-z]* (any suffix -- the literal
`MediaResource` matches don't catch MediaResourceData/MediaResourceId/etc.),
Postbox/MediaBox/MediaResource raw types, PostboxCoding/PostboxEncoder/
PostboxDecoder, TempBoxFile, ValueBoxKey, PostboxView, combinedView,
HashFunctions, postboxLog, openPostbox, declareEncodable, PeerView,
MessageHistoryView, MessageHistoryThreadData, CachedPeerData, RenderedPeer,
SelectivePrivacyPeer, SimpleDictionary, ItemCollectionInfosView,
ItemCollectionItem, ItemCollectionItemIndex, ItemCollectionViewEntryIndex,
ChatListIndex, ChatListEntrySummaryComponents, CodableEntry,
MessageHistoryThread, MessageHistoryAnchorIndex,
MessageHistoryEntryLocation, PeerStoryStats, PeerNameIndex,
PeerSummaryCounterTags, ChatListTotalUnreadStateCategory/Stats,
arePeersEqual. Protocol-shape blockers: bare `Peer`/`Message`/`Media`
in function signatures, generic args, enum-case payloads, or dict value
types (e.g., `[PeerId: Peer]`, `case messages([Message])`,
`Signal<(Peer?, ...), NoError>`).

`replace_all PeerId -> EnginePeer.Id` is dangerous: mangles compound
names like `failedPeerId`, `ContactListPeerId`, `nextRemoteMediaId`,
`replyToMessageId`. Pre-flight grep `\b[a-z][a-zA-Z]*PeerId\b` and only
replace_all if 0 matches.

Also removes unneeded design/plan docs from a separate (link-highlighting)
feature branch:
- docs/superpowers/plans/2026-05-02-link-highlighting-modern-path-fixes.md
- docs/superpowers/specs/2026-05-02-link-highlighting-modern-path-fixes-design.md

Squashed commits: 6d82c2980d..e6de5d53a3 (59 commits, including
per-wave content commits and per-wave CLAUDE.md bumps).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 10:28:50 +02:00
isaac
a386e79f59 Fix emoji status selection search 2026-04-28 19:19:33 +04:00
isaac
027ac77ad7 Various improvements 2026-04-28 16:58:04 +04:00
isaac
8408e0ae19 Postbox -> TelegramEngine waves 27-36
Consumer-sweep, facade-addition, and Peer→EnginePeer migrations:

- Wave 27: preferencesView consumer sweep
- Wave 28: resourceData consumer sweep
- Wave 29: resourceStatus consumer sweep
- Wave 30: _asStatus() bridge cleanup
- Wave 31: unused-import sweep re-run
- Wave 32: resourceStatus residue sweep
- Wave 33: loadedPeerWithId consumer sweep
- Wave 34: FoundPeer.peer Peer -> EnginePeer
- Wave 35: SendAsPeer.peer Peer -> EnginePeer
- Wave 36: ContactListPeer.peer Peer -> EnginePeer

Also includes per-wave specs, implementation plans, outcome logs, and
a CLAUDE.md wave-counter update.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 11:24:13 +04:00
Isaac
684796144c TextProcessing: style create/edit/delete, AI previews, and integration
Wires up TextProcessingScreen to the edit/delete AI text style facades,
renders AI text style webpage previews in chat bubbles, and exposes a
shared makeEmojiStatusSelectionController on SharedAccountContext so
the screen can present the emoji picker when assigning a style emoji.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-19 23:45:18 +02:00
Ilya Laktyushin
5046aab8ff Update API 2025-12-02 12:36:05 +04:00
Isaac
5a8bd1d98d Temp 2025-09-16 10:11:54 +04:00
Isaac
faa765b601 Various optimizations 2025-03-04 14:13:07 +01:00
Isaac
6c4070eb52 Serialization update 2025-02-14 19:11:58 +04:00
Ilya Laktyushin
10ac25e1cb Various improvements 2025-01-27 23:44:07 +04:00
Ilya Laktyushin
24533df255 Various improvements 2025-01-21 03:41:22 +04:00
Ilya Laktyushin
b6f8cce7ea Update API [skip ci] 2025-01-10 15:22:27 +04:00
Isaac
9a075fa39e Refactoring 2024-06-12 23:04:04 +04:00
Isaac
8e043a3a7d Various improvements 2024-04-23 12:57:38 +04:00
Ilya Laktyushin
f81856351a Various improvements 2024-03-28 13:23:23 +04:00
Ilya Laktyushin
3bdcb7f223 [WIP] Sticker editor 2024-03-09 03:19:31 +04:00
Ilya Laktyushin
b4b90b090c Group boosts 2024-02-05 16:18:02 +04:00
Isaac
09e025e985 [WIP] Channel appearance 2023-12-15 22:59:33 +04:00
Isaac
b66f748969 [WIP] Channel appearance 2023-12-15 15:13:40 +04:00
Isaac
acd18b62e5 Various improvements 2023-11-27 23:34:14 +04:00
Ilya Laktyushin
7fbac7ddc0 Various improvements 2023-10-18 23:59:56 +04:00
Ilya Laktyushin
74faad7a03 Various improvements 2023-08-05 15:32:12 +02:00
Ilya Laktyushin
b70586eb28 Story location picking 2023-07-30 15:01:25 +02:00
Ilya Laktyushin
a4297cf1c5 Various fixes 2023-07-06 21:28:29 +02:00
Ilya Laktyushin
5b51f35b36 Various improvements 2023-07-03 11:52:02 +02:00
Ali
1640a8c76f Refactoring [skip ci] 2023-04-20 19:22:25 +04:00
Ali
cfe7f43e0d Various improvements 2023-04-14 18:59:33 +04:00
Ali
7be540c30b Add emoji tab loading indicator 2023-01-31 20:05:20 +01:00
Ali
4b2902ac71 UI improvements 2023-01-31 12:42:37 +01:00
Ali
b65d4c2243 UI improvements 2023-01-27 17:16:26 +01:00
Ali
b3140ffed9 Add emoji search result cache 2023-01-27 14:06:44 +01:00
Ali
2a0ab901ae UI improvements 2023-01-27 02:32:01 +01:00
Ali
686339aa56 UI improvements 2023-01-25 16:28:01 +01:00
Ali
b92d21f9d7 Emoji UI improvements 2023-01-24 14:25:26 +01:00
Ali
5f01e0f3cc Merge commit '443d0293f6'
# Conflicts:
#	submodules/TelegramUI/Components/EntityKeyboard/Sources/EmojiPagerContentComponent.swift
2023-01-23 14:38:12 +04:00
Ali
3b42f14613 UI improvements 2023-01-23 14:36:47 +04:00
Ilya Laktyushin
11d2a68cd1 Avatar editor fixes 2023-01-22 16:14:46 +04:00
Ali
40f948d9b9 UI improvements 2023-01-20 21:01:06 +04:00
Ali
8e3cc09e56 UI improvements 2023-01-19 18:30:59 +04:00
Ali
dac58e50b3 UI fixes 2023-01-19 17:50:17 +04:00
Ali
6d8c7243e5 Permission and search UI improvements 2023-01-17 23:02:57 +04:00
Ilya Laktyushin
89481bdef2 Initial avatar editor implementation 2023-01-11 01:05:10 +04:00
Ali
a526ba7843 Add fallback for the emoji template pack 2023-01-02 16:52:15 +04:00
Ilya Laktyushin
a0f3cfef58 Various improvements 2022-12-25 10:33:53 +04:00
Ilya Laktyushin
84bbf58e88 Various fixes 2022-12-19 17:04:37 +04:00
Ilya Laktyushin
1d0f77fc3e Various fixes 2022-12-18 23:39:03 +04:00
Ilya Laktyushin
d6436fd14c Merge branch 'master' of gitlab.com:peter-iakovlev/telegram-ios 2022-12-17 16:09:34 +04:00
Ilya Laktyushin
77df1cf45a Various improvements 2022-12-17 15:35:00 +04:00
Ali
614c74b0b0 [WIP] Modern cache 2022-12-17 00:17:31 +04:00
Ali
2cb2717ce7 Support colored emoji 2022-12-10 00:22:38 +04:00