149 Commits

Author SHA1 Message Date
isaac 2ac8a490b0 Postbox -> TelegramEngine waves 94-102 (squashed)
Adds AccountManagerResources facade in TelegramCore mirroring
TelegramEngine.Resources, drains the entire accountManager-side
mediaBox refactor across consumer modules, and validates the
Shape-C/D handle-migration pattern (account: Account ->
engine: TelegramEngine) on three classes.

Wave 94 (AccountManagerResources facade + 8 sites): new
AccountManagerResources class in TelegramCore with
storeResourceData, completedResourcePath (resource + id overloads),
status (with approximateSynchronousValue), moveResourceData,
fetch. Migrate EditThemeController (5 storeResourceData + 2
completedResourcePath) and WebBrowserSettingsController (1
storeResourceData).

Wave 95 (10 sites): WallpaperUtils.swift sweep, 5 distinct
storeResourceData patterns, replace_all on the two repeated ones.

Wave 96 (7 sites): theme controller triple — TPC (1 store + 2
moveResourceData), TPCN (1 status + 1 fetch + closure type
MediaResourceStatus -> EngineMediaResource.FetchStatus + rename
account local to engine), TAC (1 completedResourcePath + 1 store).

Wave 97 (9 sites): WallpaperGalleryController.swift, 4
completedResourcePath + 5 storeResourceData via replace_all.

Wave 98 (2 files): WallpaperGallery status-type cascade
Promise<MediaResourceStatus> -> Promise<EngineMediaResource.FetchStatus>
across WallpaperGalleryItem.swift + WallpaperGalleryController.swift.
Drops cosmetic `_asStatus()` unwrap.

Wave 99 (2 facade extensions + 7 sites): adds
AccountManagerResources.data() and approximateSynchronousValue
to engine.resources.status(). Migrates OpenResolvedUrl (data +
storeResourceData with .complete -> .isComplete cascade),
SettingsThemeWallpaperNode (paired engine + accountManager
status), WallpaperUploadManager, OpenChatMessage,
LiveChatReactionStreamView.

Wave 100 (Shape-C/D, free function): legacyWebSearchItem
account: Account -> engine: TelegramEngine. 4 files.

Wave 101 (Shape-C/D, small class): VerticalListContextResults
ChatInputPanelItem stored field migration. 2 files. Drops
`|> map(EngineMediaResource.FetchStatus.init)` redundancy.

Wave 102 (Shape-C/D, medium class with weak-context retention):
SharedMediaPlayer account: Account -> engine: TelegramEngine.
Engine field is intentionally a strong handle since the class
stores context as `weak var`. 2 files.

After this squash the accountManager-side mediaBox refactor is
essentially complete; only Postbox-protocol-blocked
cachedResourceRepresentation triple remains as the foundational
deferred item.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-26 02:46:44 +04:00
isaac f5cb1391aa Merge commit '96b1432434205e2d09d7615bde1402d762ac2b8c' 2026-04-24 11:24:47 +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
Ilya Laktyushin f41630083a Various improvements 2026-04-24 03:16:14 +02:00
Isaac 7b2b74e79b Postbox -> TelegramEngine wave 6: unused import Postbox batch sweep
First build-verified unused-import sweep: speculatively dropped
import Postbox from 782 consumer files (plain ^import Postbox$ lines,
excluding TelegramCore/Postbox/TelegramApi paths), iterated 18 full
project builds with --continueOnError, restored the import on every
file that failed to compile. 183 drops survived; 189 consumer modules
newly Postbox-free.

Bundled: spec + plan + C1 atomic batch drop + C2 CLAUDE.md outcome and
permanent methodology guidance under Wave-selection. The methodology
subsection captures the reusable playbook (--continueOnError is
essential, dependency graphs are deep so expect many iterations,
pattern-based preemptive restores accelerate convergence, and
CLAUDE.md's engine typealias cheat sheet arrows are migration targets
rather than typealiases in TelegramCore).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-19 23:46:13 +02:00
Isaac d575824ab4 Various improvements 2026-04-10 14:30:23 +02:00
Isaac 34477605b1 Various improvements 2026-03-31 20:24:24 +08:00
Isaac 9a4327116d Refactor 2026-03-10 00:38:36 +01:00
Isaac 9c4e390f0d Various improvements 2026-01-30 18:50:18 +08:00
Isaac 6ad2622b30 Various updates 2026-01-24 00:35:42 +08:00
Isaac 4a13c3830a Glass 2025-12-26 20:29:30 +08:00
Isaac 3486393f99 Glass 2025-12-20 03:02:08 +08:00
Isaac a63c90aa00 Glass 2025-12-12 23:58:00 +08:00
Isaac 0055396d4d Update 2025-11-26 23:05:30 +08:00
Ilya Laktyushin c0bfe87449 Various improvements 2025-01-22 13:24:13 +04:00
Isaac df9e27f4fb [Temp] video v2 2024-12-25 00:18:02 +08:00
Ilya Laktyushin 5451053195 Various improvements 2024-12-22 17:16:14 +04:00
Isaac 931e34e1bd Temp 2024-11-27 17:37:21 +04:00
Isaac 3797f3af4f Video improvements 2024-11-08 16:26:01 +01:00
Isaac af267cae64 Video player and calls 2024-09-20 22:33:36 +08:00
Isaac 923587b0da [WIP] Dynamic video streaming 2024-09-18 01:04:29 +08:00
Ilya Laktyushin 3e448e833e Story covers 2024-07-19 17:43:17 +04:00
Ilya Laktyushin f5092b8d8d Web app improvements 2024-07-02 21:03:22 +04:00
Isaac 378b7e8ed5 Message preview improvements 2024-05-17 17:10:19 +04:00
Isaac 8736981248 Message effects improvements 2024-05-13 20:14:15 +04:00
Ilya Laktyushin 914dbc46f6 Recent actions improvements 2024-04-23 12:01:28 +04:00
Ali c45607ffd6 Refactor url handling 2023-10-20 21:51:45 +04:00
Ilya Laktyushin 713336a13f Giveaway improvements 2023-10-08 14:12:39 +04:00
Ali 3453137463 Various improvements 2023-09-15 21:12:01 +02:00
Ilya Laktyushin 29707a7264 Various fixes 2023-08-08 15:20:07 +02:00
Ilya Laktyushin b71304a3d2 GIFs in media editor
Image search in media editor
2023-08-07 08:38:02 +02:00
Ali 969724de40 [WIP] Stories 2023-05-23 23:53:43 +04:00
Ali 8948340d83 Merge branch 'beta'
# Conflicts:
#	submodules/SettingsUI/Sources/Reactions/ItemListReactionItem.swift
#	submodules/TelegramUI/Components/ForumCreateTopicScreen/Sources/ForumCreateTopicScreen.swift
#	submodules/WebSearchUI/Sources/WebSearchController.swift
#	submodules/WebUI/Sources/WebAppController.swift
#	versions.json
2023-04-05 13:55:22 +04:00
Ilya Laktyushin 158f92cf4e Cherry-pick more fixes 2023-03-24 17:01:39 +04:00
Ilya Laktyushin c92a855083 Cherry-pick some fixes 2023-03-24 16:50:15 +04:00
Ilya Laktyushin 272f538060 Various improvements 2023-03-22 16:11:37 +04:00
Ilya Laktyushin 32ff62bcb5 Various improvements 2023-03-22 01:07:24 +04:00
Ilya Laktyushin 656a0247fc Add Send When Online shortcut 2023-03-09 20:03:26 +04:00
Ilya Laktyushin 53d1cb856a Bot apps implementation 2023-02-28 23:25:35 +04:00
Ilya Laktyushin 6de1267a1d Disable drawing in sign up screen 2023-02-21 01:55:59 +04:00
Ilya Laktyushin 927f7786a0 Various improvements 2023-02-02 17:17:46 +04:00
Ilya Laktyushin 3242bfc507 Various improvements 2023-02-02 07:02:48 +04:00
Ali 6d8c7243e5 Permission and search UI improvements 2023-01-17 23:02:57 +04:00
Ali 41060f0da0 Modernized save to gallery 2023-01-13 21:14:45 +04:00
Ilya Laktyushin 89481bdef2 Initial avatar editor implementation 2023-01-11 01:05:10 +04:00
Ilya Laktyushin 9937826307 Various fixes 2022-12-23 10:11:08 +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
Ilya Laktyushin 5788f4a1ac Custom contact photos [skip ci] 2022-12-06 16:03:53 +04:00