mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-12-22 22:25:57 +00:00
Various improvements
This commit is contained in:
@@ -157,7 +157,7 @@ private class CallStatusBarBackgroundNode: ASDisplayNode {
|
||||
}
|
||||
|
||||
public class CallStatusBarNodeImpl: CallStatusBarNode {
|
||||
public enum Content {
|
||||
public enum Content: Equatable {
|
||||
case call(SharedAccountContext, Account, PresentationCall)
|
||||
case groupCall(SharedAccountContext, Account, PresentationGroupCall)
|
||||
|
||||
@@ -167,6 +167,23 @@ public class CallStatusBarNodeImpl: CallStatusBarNode {
|
||||
return sharedContext
|
||||
}
|
||||
}
|
||||
|
||||
public static func ==(lhs: Content, rhs: Content) -> Bool {
|
||||
switch lhs {
|
||||
case let .call(sharedContext, account, call):
|
||||
if case let .call(rhsSharedContext, rhsAccount, rhsCall) = rhs, sharedContext === rhsSharedContext, account === rhsAccount, call === rhsCall {
|
||||
return true
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
case let .groupCall(sharedContext, account, groupCall):
|
||||
if case let .groupCall(rhsSharedContext, rhsAccount, rhsGroupCall) = rhs, sharedContext === rhsSharedContext, account === rhsAccount, groupCall === rhsGroupCall {
|
||||
return true
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private let backgroundNode: CallStatusBarBackgroundNode
|
||||
@@ -236,10 +253,12 @@ public class CallStatusBarNodeImpl: CallStatusBarNode {
|
||||
}
|
||||
|
||||
public func update(content: Content) {
|
||||
self.currentContent = content
|
||||
self.backgroundNode.animationsEnabled = content.sharedContext.energyUsageSettings.fullTranslucency
|
||||
if self.isCurrentlyInHierarchy {
|
||||
self.update()
|
||||
if self.currentContent != content {
|
||||
self.currentContent = content
|
||||
self.backgroundNode.animationsEnabled = content.sharedContext.energyUsageSettings.fullTranslucency
|
||||
if self.isCurrentlyInHierarchy {
|
||||
self.update()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user