Support pinned chats in folders

This commit is contained in:
Ali
2020-03-16 19:19:03 +05:30
parent 385ab9e420
commit e1f68c27f6
21 changed files with 501 additions and 207 deletions

View File

@@ -188,9 +188,23 @@ func preparedChatListNodeViewTransition(from fromView: ChatListNodeView?, to toV
}
}
} else if fromView.filteredEntries.isEmpty || fromView.filter != toView.filter {
options.remove(.AnimateInsertion)
options.remove(.AnimateAlpha)
fromEmptyView = true
var updateEmpty = true
if !fromView.filteredEntries.isEmpty, let fromFilter = fromView.filter, let toFilter = toView.filter, fromFilter.data.pinnedPeers != toFilter.data.pinnedPeers {
var fromData = fromFilter.data
var toData = toFilter.data
fromData.pinnedPeers = []
toData.pinnedPeers = []
if fromData == toData {
options.insert(.AnimateInsertion)
updateEmpty = false
}
}
if updateEmpty {
options.remove(.AnimateInsertion)
options.remove(.AnimateAlpha)
fromEmptyView = true
}
}
} else {
fromEmptyView = true