mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-11-06 17:00:13 +00:00
Various fixes
This commit is contained in:
parent
e60cd2d4d4
commit
3f9820f2ef
@ -976,7 +976,7 @@ func _internal_keepCachedStarGiftsUpdated(postbox: Postbox, network: Network, ac
|
||||
let updateSignal = _internal_cachedStarGifts(postbox: postbox)
|
||||
|> take(1)
|
||||
|> mapToSignal { list -> Signal<Never, NoError> in
|
||||
return network.request(Api.functions.payments.getStarGifts(hash: 0))
|
||||
return network.request(Api.functions.payments.getStarGifts(hash: list?.hashValue ?? 0))
|
||||
|> map(Optional.init)
|
||||
|> `catch` { _ -> Signal<Api.payments.StarGifts?, NoError> in
|
||||
return .single(nil)
|
||||
|
||||
@ -124,7 +124,6 @@ final class GiftSetupScreenComponent: Component {
|
||||
|
||||
private var inProgress = false
|
||||
|
||||
|
||||
private var previousHadInputHeight: Bool = false
|
||||
private var previousInputHeight: CGFloat?
|
||||
private var recenterOnTag: NSObject?
|
||||
@ -134,6 +133,8 @@ final class GiftSetupScreenComponent: Component {
|
||||
|
||||
private var starImage: (UIImage, PresentationTheme)?
|
||||
|
||||
private var updateDisposable: Disposable?
|
||||
|
||||
private var optionsDisposable: Disposable?
|
||||
private(set) var options: [StarsTopUpOption] = [] {
|
||||
didSet {
|
||||
@ -173,6 +174,9 @@ final class GiftSetupScreenComponent: Component {
|
||||
}
|
||||
|
||||
deinit {
|
||||
self.inputMediaNodeDataDisposable?.dispose()
|
||||
self.updateDisposable?.dispose()
|
||||
self.optionsDisposable?.dispose()
|
||||
}
|
||||
|
||||
func scrollToTop() {
|
||||
|
||||
@ -931,7 +931,7 @@ private final class GiftViewSheetContent: CombinedComponent {
|
||||
})
|
||||
|
||||
if let tranfserGiftImpl {
|
||||
return tranfserGiftImpl(transferStars == 0, peerId)
|
||||
return tranfserGiftImpl(transferStars == 0, reference, peerId)
|
||||
} else {
|
||||
return (context.engine.payments.transferStarGift(prepaid: transferStars == 0, reference: reference, peerId: peerId)
|
||||
|> deliverOnMainQueue)
|
||||
@ -4554,7 +4554,7 @@ public class GiftViewScreen: ViewControllerComponentContainer {
|
||||
|
||||
fileprivate let updateSavedToProfile: ((StarGiftReference, Bool) -> Void)?
|
||||
fileprivate let convertToStars: ((StarGiftReference) -> Void)?
|
||||
fileprivate let transferGift: ((Bool, EnginePeer.Id) -> Signal<Never, TransferStarGiftError>)?
|
||||
fileprivate let transferGift: ((Bool, StarGiftReference, EnginePeer.Id) -> Signal<Never, TransferStarGiftError>)?
|
||||
fileprivate let upgradeGift: ((Int64?, StarGiftReference, Bool) -> Signal<ProfileGiftsContext.State.StarGift, UpgradeStarGiftError>)?
|
||||
fileprivate let buyGift: ((String, EnginePeer.Id, CurrencyAmount?) -> Signal<Never, BuyStarGiftError>)?
|
||||
fileprivate let updateResellStars: ((StarGiftReference, CurrencyAmount?) -> Signal<Never, UpdateStarGiftPriceError>)?
|
||||
@ -4572,7 +4572,7 @@ public class GiftViewScreen: ViewControllerComponentContainer {
|
||||
forceDark: Bool = false,
|
||||
updateSavedToProfile: ((StarGiftReference, Bool) -> Void)? = nil,
|
||||
convertToStars: ((StarGiftReference) -> Void)? = nil,
|
||||
transferGift: ((Bool, EnginePeer.Id) -> Signal<Never, TransferStarGiftError>)? = nil,
|
||||
transferGift: ((Bool, StarGiftReference, EnginePeer.Id) -> Signal<Never, TransferStarGiftError>)? = nil,
|
||||
upgradeGift: ((Int64?, StarGiftReference, Bool) -> Signal<ProfileGiftsContext.State.StarGift, UpgradeStarGiftError>)? = nil,
|
||||
buyGift: ((String, EnginePeer.Id, CurrencyAmount?) -> Signal<Never, BuyStarGiftError>)? = nil,
|
||||
updateResellStars: ((StarGiftReference, CurrencyAmount?) -> Signal<Never, UpdateStarGiftPriceError>)? = nil,
|
||||
|
||||
@ -1905,7 +1905,7 @@ final class PeerInfoHeaderNode: ASDisplayNode {
|
||||
transition.updateFrameAdditive(node: self.avatarListNode, frame: CGRect(origin: apparentAvatarFrame.center, size: CGSize()))
|
||||
transition.updateFrameAdditive(node: self.avatarOverlayNode, frame: CGRect(origin: apparentAvatarFrame.center, size: CGSize()))
|
||||
|
||||
let avatarListContainerFrame: CGRect
|
||||
var avatarListContainerFrame: CGRect
|
||||
let avatarListContainerScale: CGFloat
|
||||
if self.isAvatarExpanded {
|
||||
if let transitionSourceAvatarFrame = transitionSourceAvatarFrame {
|
||||
@ -1922,6 +1922,8 @@ final class PeerInfoHeaderNode: ASDisplayNode {
|
||||
avatarListContainerFrame = CGRect(origin: CGPoint(x: -expandedAvatarListSize.width / 2.0, y: -expandedAvatarListSize.width / 2.0), size: expandedAvatarListSize)
|
||||
}
|
||||
avatarListContainerScale = 1.0 + max(0.0, -contentOffset / avatarListContainerFrame.width)
|
||||
let heightDelta = avatarListContainerFrame.height * avatarListContainerScale - avatarListContainerFrame.height
|
||||
avatarListContainerFrame.origin.y -= heightDelta / 4.0
|
||||
} else {
|
||||
let expandHeightFraction = expandedAvatarListSize.height / expandedAvatarListSize.width
|
||||
avatarListContainerFrame = CGRect(origin: CGPoint(x: -apparentAvatarFrame.width / 2.0, y: -apparentAvatarFrame.width / 2.0 + expandHeightFraction * 0.0 * apparentAvatarFrame.width), size: apparentAvatarFrame.size)
|
||||
|
||||
@ -5018,8 +5018,8 @@ final class PeerInfoScreenNode: ViewControllerTracingNode, PeerInfoScreenNodePro
|
||||
}
|
||||
profileGifts.convertStarGift(reference: reference)
|
||||
},
|
||||
transferGift: { [weak profileGifts] prepaid, peerId in
|
||||
guard let profileGifts, let reference = gift.reference else {
|
||||
transferGift: { [weak profileGifts] prepaid, reference, peerId in
|
||||
guard let profileGifts else {
|
||||
return .complete()
|
||||
}
|
||||
return profileGifts.transferStarGift(prepaid: prepaid, reference: reference, peerId: peerId)
|
||||
|
||||
@ -617,8 +617,8 @@ final class GiftsListView: UIView {
|
||||
}
|
||||
self.profileGifts.convertStarGift(reference: reference)
|
||||
},
|
||||
transferGift: { [weak self] prepaid, peerId in
|
||||
guard let self, let reference = product.reference else {
|
||||
transferGift: { [weak self] prepaid, reference, peerId in
|
||||
guard let self else {
|
||||
return .complete()
|
||||
}
|
||||
return self.profileGifts.transferStarGift(prepaid: prepaid, reference: reference, peerId: peerId)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user