GLEGram 12.5 — Initial public release

Based on Swiftgram 12.5 (Telegram iOS 12.5).
All GLEGram features ported and organized in GLEGram/ folder.

Features: Ghost Mode, Saved Deleted Messages, Content Protection Bypass,
Font Replacement, Fake Profile, Chat Export, Plugin System, and more.

See CHANGELOG_12.5.md for full details.
This commit is contained in:
Leeksov
2026-04-06 09:48:12 +03:00
commit 4647310322
39685 changed files with 11052678 additions and 0 deletions
@@ -0,0 +1,89 @@
import UIKit
import DeviceModel
let DEVICE_MODELS_WITH_APP_BADGE_SUPPORT: [DeviceModel] = [
.iPhoneX,
.iPhoneXS,
.iPhoneXSMax,
.iPhoneXR,
.iPhone11,
.iPhone11Pro,
.iPhone11ProMax,
.iPhone12,
.iPhone12Mini,
.iPhone12Pro,
.iPhone12ProMax,
.iPhone13,
.iPhone13Mini,
.iPhone13Pro,
.iPhone13ProMax,
.iPhone14,
.iPhone14Plus,
.iPhone14Pro,
.iPhone14ProMax,
.iPhone15,
.iPhone15Plus,
.iPhone15Pro,
.iPhone15ProMax,
.iPhone16,
.iPhone16Plus,
.iPhone16Pro,
.iPhone16ProMax,
.iPhone16e,
.iPhone17,
.iPhone17Pro,
.iPhone17ProMax,
.iPhoneAir/*,
.iPhone17e*/
]
extension DeviceMetrics {
func sgAppBadgeOffset() -> CGFloat {
let currentDevice = DeviceModel.current
var defaultOffset: CGFloat = 0.0
// https://www.ios-resolution.com/
// Similar height + Scale
switch currentDevice {
case .iPhoneX, .iPhoneXS, .iPhone11Pro, .iPhone12Mini, .iPhone13Mini:
defaultOffset = 2.0
case .iPhone11, .iPhoneXR:
defaultOffset = 6.0
case .iPhone11ProMax, .iPhoneXSMax:
defaultOffset = 4.0
case .iPhone12, .iPhone12Pro, .iPhone13, .iPhone13Pro, .iPhone14, .iPhone16e/*, .iPhone17e*/:
defaultOffset = 4.0
case .iPhone12ProMax, .iPhone13ProMax, .iPhone14Plus:
defaultOffset = 6.0
case .iPhone14Pro, .iPhone15, .iPhone15Pro, .iPhone16:
defaultOffset = 18.0
case .iPhone14ProMax, .iPhone15Plus, .iPhone15ProMax, .iPhone16Plus:
defaultOffset = 19.0
case .iPhone16Pro, .iPhone17, .iPhone17Pro:
defaultOffset = 21.0
case .iPhone16ProMax, .iPhone17ProMax, .iPhoneAir:
defaultOffset = 22.0
default:
defaultOffset = 0.0 // Any device in 2025+ should be like iPhone 14 Pro or better
}
let offset: CGFloat = floorToScreenPixels(defaultOffset * self.sgScaleFactor)
#if DEBUG
print("deviceMetrics \(self). deviceModel: \(currentDevice). sgIsDisplayZoomed: \(self.sgIsDisplayZoomed). sgScaleFactor: \(self.sgScaleFactor) defaultOffset: \(defaultOffset), offset: \(offset)")
#endif
return offset
}
var sgIsDisplayZoomed: Bool {
UIScreen.main.scale < UIScreen.main.nativeScale
}
var sgScaleFactor: CGFloat {
UIScreen.main.scale / UIScreen.main.nativeScale
}
var sgShowAppBadge: Bool {
return DEVICE_MODELS_WITH_APP_BADGE_SUPPORT.contains(DeviceModel.current) // MARK: Swiftgram
}
}