[WIP] Stories

This commit is contained in:
Ali
2023-05-19 18:10:12 +04:00
parent f72f2e3c60
commit 862cb0b366
42 changed files with 3617 additions and 925 deletions

View File

@@ -25,6 +25,7 @@ import LegacyCamera
import AvatarNode
import LocalMediaResources
import ShareWithPeersScreen
import ImageCompression
private class DetailsChatPlaceholderNode: ASDisplayNode, NavigationDetailsPlaceholderNode {
private var presentationData: PresentationData
@@ -359,11 +360,16 @@ public final class TelegramRootController: NavigationController, TelegramRootCon
if let chatListController = self.chatListController as? ChatListControllerImpl, let storyListContext = chatListController.storyListContext {
switch mediaResult {
case let .image(image, dimensions, caption):
if let data = image.jpegData(compressionQuality: 0.8) {
storyListContext.upload(media: .image(dimensions: dimensions, data: data), text: caption?.string ?? "", entities: [], privacy: privacy)
Queue.mainQueue().after(0.2, { [weak chatListController] in
chatListController?.animateStoryUploadRipple()
})
var randomId: Int64 = 0
arc4random_buf(&randomId, 8)
let scaledSize = image.size.aspectFittedOrSmaller(CGSize(width: 1280.0, height: 1280.0))
if let scaledImage = scaleImageToPixelSize(image: image, size: scaledSize) {
if let scaledImageData = compressImageToJPEG(scaledImage, quality: 0.6) {
storyListContext.upload(media: .image(dimensions: dimensions, data: scaledImageData), text: caption?.string ?? "", entities: [], privacy: privacy)
Queue.mainQueue().after(0.2, { [weak chatListController] in
chatListController?.animateStoryUploadRipple()
})
}
}
case let .video(content, _, values, duration, dimensions, caption):
let adjustments: VideoMediaResourceAdjustments