mirror of
https://github.com/GLEGram/GLEGram-iOS.git
synced 2026-07-14 06:37:24 +02:00
214 lines
6.7 KiB
Markdown
214 lines
6.7 KiB
Markdown
# GLEGram 12.5 — Changelog
|
|
|
|
**Base:** Swiftgram 12.5 (Telegram iOS 12.5)
|
|
**Build:** 100005
|
|
**Date:** 2026-04-05
|
|
|
|
---
|
|
|
|
## Migration from 12.3 to 12.5
|
|
|
|
Full port of all GLEGram features onto the Swiftgram 12.5 codebase.
|
|
166 files changed, 8211 insertions, 77 new files.
|
|
All GLEGram code organized in `GLEGram/` folder and marked with `// MARK: - GLEGram` in Telegram source files.
|
|
|
|
---
|
|
|
|
## New Features
|
|
|
|
### Double Bottom
|
|
- Secret passcode unlocks a single hidden account
|
|
- Keychain-based passcode storage
|
|
- Settings controller with enable/disable toggle
|
|
- Module: `GLEGram/DoubleBottom/`
|
|
|
|
### Chat Password Protection
|
|
- Lock individual chats/folders with device passcode or custom password
|
|
- Keychain-based per-peer password storage
|
|
- Settings controller with peer selection
|
|
- Module: `GLEGram/ChatPassword/`
|
|
|
|
### Voice Morpher
|
|
- 6 voice presets: Disabled, Anonymous, Female, Male, Child, Robot
|
|
- OGG processing engine (ready for OpusBinding integration)
|
|
- UserDefaults persistence with change notifications
|
|
- Module: `GLEGram/VoiceMorpher/`
|
|
|
|
### SGLocalPremium
|
|
- Full local Premium emulation without subscription
|
|
- Unlimited pinned chats, folders, chats per folder
|
|
- Saved Message Tags support
|
|
- Server sync disabling for pinned/folders/folder order
|
|
- Module: `GLEGram/SGLocalPremium/`
|
|
|
|
### Plugin System (Extended)
|
|
- Inline JS plugin code editor
|
|
- Plugin metadata parsing and file management
|
|
- GLEGramFeatures global feature flags
|
|
- Module: `GLEGram/GLESettingsUI/`, `Swiftgram/SGSimpleSettings/`
|
|
|
|
### Video Wallpapers
|
|
- Video file picker (Files app + Gallery)
|
|
- Looping video playback as chat background
|
|
- Power saving mode support
|
|
- Intensity/dimming controls
|
|
- Preview controller with Cancel/Done
|
|
- Module: integrated in `WallpaperBackgroundNode`, `ThemeGridController`
|
|
|
|
---
|
|
|
|
## Ported Features (from 12.3)
|
|
|
|
### Ghost Mode (20+ toggles)
|
|
- Message send delay (0/12/30/45 sec)
|
|
- Hide online status with periodic offline timer
|
|
- Hide typing, recording, uploading, choosing, playing, speaking statuses
|
|
- Disable read receipts (messages + stories) with peer whitelist
|
|
- Files: `ManagedAccountPresence.swift`, `ManagedLocalInputActivities.swift`, `PendingMessageManager.swift`
|
|
|
|
### Saved Deleted Messages (AyuGram-style)
|
|
- Auto-save deleted messages to SavedDeleted namespace (1338)
|
|
- Save media, reactions, bot messages
|
|
- Edit history tracking with inline display
|
|
- Search in saved deleted messages
|
|
- Storage management and clear action
|
|
- Files: `AccountStateManagementUtils.swift`, `DeleteMessages.swift`, `SearchMessages.swift`
|
|
|
|
### Fake Profile
|
|
- Custom first/last name, username, phone, ID
|
|
- Premium/verified/scam/fake/support/bot badges
|
|
- Per-user targeting
|
|
- Module: `Swiftgram/SGSettingsUI/`
|
|
|
|
### Font Replacement (A-Font style)
|
|
- Custom font from system or imported file
|
|
- Separate regular and bold font selection
|
|
- Size multiplier (50-150%)
|
|
- Font cache with clearCache() support
|
|
- Files: `Display/Source/Font.swift`
|
|
|
|
### Profile Cover
|
|
- Custom image/video cover on profile
|
|
- AVPlayer looping playback
|
|
- Module: `Swiftgram/SGSettingsUI/`
|
|
|
|
### Chat Export
|
|
- Export as JSON, TXT, HTML
|
|
- AyuGram-style HTML export with CSS/JS
|
|
- Context menu in profile "More" button
|
|
- Module: `GLEGram/SGChatExport/`
|
|
|
|
### Fake Location
|
|
- CLLocationManager swizzling
|
|
- Map picker controller
|
|
- Persistent coordinates
|
|
- Module: `GLEGram/SGFakeLocation/`
|
|
|
|
### Supporters/Badges System
|
|
- Encrypted API with AES-256 + HMAC-SHA256
|
|
- SSL certificate pinning
|
|
- Badge image cache
|
|
- Server badges with custom colors/images
|
|
- Subscription/trial tracking with expiry date display
|
|
- Module: `GLEGram/SGSupporters/`
|
|
|
|
### Demo Login (App Store Review)
|
|
- Backend-driven phone number interception
|
|
- Auto code polling and entry
|
|
- Auto 2FA password entry
|
|
- Files: `AuthorizationSequenceController.swift`, `GLEDemoLoginService.swift`
|
|
|
|
### Protected Content Override
|
|
- Save protected/copy-protected media
|
|
- Save self-destructing messages
|
|
- Disable screenshot detection
|
|
- Disable secret chat blur on screenshot
|
|
- Files: `SyncCore_AutoremoveTimeoutMessageAttribute.swift`, `ChatMessageInteractiveMediaNode.swift`
|
|
|
|
### Online Status Recording
|
|
- Track peer online/offline timestamps
|
|
- Emulate Premium "Last seen" for hidden users
|
|
- Module: `Swiftgram/SGSettingsUI/`
|
|
|
|
### Other Ported Features
|
|
- Hide proxy sponsor
|
|
- Disable all ads
|
|
- Local Premium toggle
|
|
- Scroll to top button
|
|
- Telescope (video circles/voice from gallery)
|
|
- Unlimited favorite stickers
|
|
- Compact numbers disable
|
|
- Zalgo text removal
|
|
- Gift ID display in gift info
|
|
- Local stars balance (feelRich)
|
|
- Per-account notification mute
|
|
- Gated features with deeplink unlock
|
|
- Plugin system with PythonKit bridge
|
|
|
|
---
|
|
|
|
## UI/Branding Changes
|
|
|
|
- App name: **GLEGram**
|
|
- Default icon: **GLEGramDarkPurple**
|
|
- 7 alternate icons: DarkPurple, Black, Green, Pink, Purple, Red, Duck
|
|
- App badges: GLEGram-branded (Sky, Night, Pro, Titanium, Day, Sparkling, Ducky)
|
|
- Settings icons: GLEGram-branded Swiftgram/SwiftgramPro icons
|
|
- Composer icon: GLEGram.icon with GLEGramDarkPurple.png
|
|
- Intro sphere: GLEGram-branded telegram_sphere@2x.png
|
|
- CFBundleDisplayName: GLEGram (all extensions)
|
|
- URL scheme: `glegram://` added
|
|
- Notification service: processDeletedMessages
|
|
- GLEGram tab in Settings with subscription expiry date label
|
|
|
|
---
|
|
|
|
## Build System Changes
|
|
|
|
- Bazel JDK fix: `--server_javabase` for JDK 21 (fixes SIGBUS on macOS 15.7.4)
|
|
- Prebuilt opus: instant build instead of 10min genrule
|
|
- GLEGram BUILD target with Swiftgram alias
|
|
- 15 build scripts ported (buildprod, buildsim, deploy, sign, etc.)
|
|
- Real codesigning profiles
|
|
- Provisioning profile fallback logic
|
|
- Extension disabling support
|
|
|
|
---
|
|
|
|
## TLS ClientHello Improvements (Desktop-like fingerprint)
|
|
|
|
| # | Change | Detail |
|
|
|---|--------|--------|
|
|
| 4 | Cipher suites | 15 suites, Desktop order, removed c00a/c009 |
|
|
| 5 | Session Ticket | Extension 0x0023 added |
|
|
| 6 | ALPS | Extension 0x44cd added (h2) |
|
|
| 7 | Supported groups | Removed P-521, kept x25519/P-256/P-384 |
|
|
| 8 | Signature algorithms | 8 algos, removed SHA-1 (0x0201) |
|
|
| 9 | Record size limit | 0x0002 instead of 0x0001 |
|
|
| 10 | GREASE padding | 2 bytes instead of 4 |
|
|
|
|
---
|
|
|
|
## Localization
|
|
|
|
- 110 language files with 386 strings each (107 GLEGram-specific strings added)
|
|
- Full Russian and English translations for all GLEGram features
|
|
- 5 new 12.5 strings preserved (ChatList.Lines, CompactMessagePreview)
|
|
|
|
---
|
|
|
|
## File Structure
|
|
|
|
```
|
|
GLEGram/
|
|
├── ChatPassword/ (chat lock)
|
|
├── DoubleBottom/ (hidden accounts)
|
|
├── GLESettingsUI/ (18 controllers + plugins)
|
|
├── SGChatExport/ (HTML/JSON/TXT export)
|
|
├── SGDeletedMessages/ (saved deleted messages)
|
|
├── SGFakeLocation/ (location spoofing)
|
|
├── SGLocalPremium/ (premium emulation)
|
|
├── SGSupporters/ (badges, subscriptions)
|
|
└── VoiceMorpher/ (voice effects)
|
|
```
|