From bae44ca17674f4505e6fbe139469ca9ce13ff9bf Mon Sep 17 00:00:00 2001 From: Ali <> Date: Sun, 27 Aug 2023 17:56:29 +0400 Subject: [PATCH 1/2] Update dsym path --- build-system/Make/Make.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build-system/Make/Make.py b/build-system/Make/Make.py index 708145fd2c..efe4ac0209 100644 --- a/build-system/Make/Make.py +++ b/build-system/Make/Make.py @@ -622,7 +622,7 @@ def build(bazel, arguments): sys.exit(1) shutil.copyfile(ipa_paths[0], artifacts_path + '/Telegram.ipa') - dsym_paths = glob.glob('bazel-out/applebin_ios-ios_arm*-opt-ST-*/bin/Telegram/*.dSYM') + dsym_paths = glob.glob('bazel-bin/Telegram/**/.dSYM') for dsym_path in dsym_paths: file_name = os.path.basename(dsym_path) shutil.copytree(dsym_path, artifacts_path + '/DSYMs/{}'.format(file_name)) From 8968444839221751dc5e5def89b386b077744587 Mon Sep 17 00:00:00 2001 From: Ilya Laktyushin Date: Sun, 27 Aug 2023 18:33:30 +0400 Subject: [PATCH 2/2] Story inline reactions --- .../Sources/DrawingEntitiesView.swift | 4 + .../Sources/DrawingLocationEntity.swift | 26 +- .../Sources/DrawingStickerEntity.swift | 379 +++++++++++------- .../Drawing/CodableDrawingEntity.swift | 2 +- .../Drawing/DrawingStickerEntity.swift | 18 +- .../Sources/MediaEditorScreen.swift | 11 +- .../Sources/StoryItemOverlaysView.swift | 8 + .../Reaction Sticker.pdf | Bin 37840 -> 0 bytes .../ReactionOutline.imageset/Contents.json | 5 +- .../ReactionBackground.pdf | 81 ++++ .../ReactionOutline.pdf | Bin 37840 -> 0 bytes .../ReactionShadow.imageset}/Contents.json | 2 +- .../ReactionShadow.pdf | Bin 0 -> 37910 bytes 13 files changed, 339 insertions(+), 197 deletions(-) delete mode 100644 submodules/TelegramUI/Images.xcassets/Media Editor/ReactionBackground.imageset/Reaction Sticker.pdf create mode 100644 submodules/TelegramUI/Images.xcassets/Stories/ReactionOutline.imageset/ReactionBackground.pdf delete mode 100644 submodules/TelegramUI/Images.xcassets/Stories/ReactionOutline.imageset/ReactionOutline.pdf rename submodules/TelegramUI/Images.xcassets/{Media Editor/ReactionBackground.imageset => Stories/ReactionShadow.imageset}/Contents.json (74%) create mode 100644 submodules/TelegramUI/Images.xcassets/Stories/ReactionShadow.imageset/ReactionShadow.pdf diff --git a/submodules/DrawingUI/Sources/DrawingEntitiesView.swift b/submodules/DrawingUI/Sources/DrawingEntitiesView.swift index bf291f7888..505d0748bb 100644 --- a/submodules/DrawingUI/Sources/DrawingEntitiesView.swift +++ b/submodules/DrawingUI/Sources/DrawingEntitiesView.swift @@ -631,6 +631,7 @@ public final class DrawingEntitiesView: UIView, TGPhotoDrawingEntitiesView { let location = gestureRecognzier.location(in: self) if let entityView = self.entity(at: location) { self.selectEntity(entityView.entity) + entityView.onSelection() } } @@ -949,6 +950,9 @@ public class DrawingEntityView: UIView { self.layer.animateKeyframes(values: values as [NSNumber], keyTimes: keyTimes as [NSNumber], duration: 0.3, keyPath: "transform.scale") } + func onSelection() { + } + func selectedTapAction() -> Bool { return false } diff --git a/submodules/DrawingUI/Sources/DrawingLocationEntity.swift b/submodules/DrawingUI/Sources/DrawingLocationEntity.swift index ca237ba4f3..832f8b53b2 100644 --- a/submodules/DrawingUI/Sources/DrawingLocationEntity.swift +++ b/submodules/DrawingUI/Sources/DrawingLocationEntity.swift @@ -383,31 +383,7 @@ public final class DrawingLocationEntityView: DrawingEntityView, UITextViewDeleg } func getRenderSubEntities() -> [DrawingEntity] { -// let textSize = self.textView.bounds.size -// let textPosition = self.locationEntity.position -// let scale = self.locationEntity.scale -// let rotation = self.locationEntity.rotation -// -// let itemSize: CGFloat = floor(24.0 * self.displayFontSize * 0.78 / 17.0) - - let entities: [DrawingEntity] = [] -// for (emojiRect, emojiAttribute) in self.emojiRects { -// guard let file = emojiAttribute.file else { -// continue -// } -// let emojiTextPosition = emojiRect.center.offsetBy(dx: -textSize.width / 2.0, dy: -textSize.height / 2.0) -// -// let entity = DrawingStickerEntity(content: .file(file)) -// entity.referenceDrawingSize = CGSize(width: itemSize * 4.0, height: itemSize * 4.0) -// entity.scale = scale -// entity.position = textPosition.offsetBy( -// dx: (emojiTextPosition.x * cos(rotation) - emojiTextPosition.y * sin(rotation)) * scale, -// dy: (emojiTextPosition.y * cos(rotation) + emojiTextPosition.x * sin(rotation)) * scale -// ) -// entity.rotation = rotation -// entities.append(entity) -// } - return entities + return [] } } diff --git a/submodules/DrawingUI/Sources/DrawingStickerEntity.swift b/submodules/DrawingUI/Sources/DrawingStickerEntity.swift index 2841e1ddeb..7cf2e21e96 100644 --- a/submodules/DrawingUI/Sources/DrawingStickerEntity.swift +++ b/submodules/DrawingUI/Sources/DrawingStickerEntity.swift @@ -29,7 +29,9 @@ public final class DrawingStickerEntityView: DrawingEntityView { private var currentSize: CGSize? - private var backgroundNode: ASImageNode? + private var backgroundView: UIImageView? + private var outlineView: UIImageView? + private let imageNode: TransformImageNode private var animationNode: AnimatedStickerNode? private var videoNode: UniversalVideoNode? @@ -47,12 +49,16 @@ public final class DrawingStickerEntityView: DrawingEntityView { super.init(context: context, entity: entity) if case .file(_, .reaction) = entity.content { - let backgroundNode = ASImageNode() - backgroundNode.layer.zPosition = -1000.0 - backgroundNode.image = UIImage(bundleImageName: "Media Editor/ReactionBackground") - backgroundNode.displaysAsynchronously = false - self.addSubnode(backgroundNode) - self.backgroundNode = backgroundNode + let backgroundView = UIImageView(image: UIImage(bundleImageName: "Stories/ReactionShadow")) + backgroundView.layer.zPosition = -1000.0 + + let outlineView = UIImageView(image: UIImage(bundleImageName: "Stories/ReactionOutline")) + outlineView.tintColor = .white + backgroundView.addSubview(outlineView) + + self.addSubview(backgroundView) + self.backgroundView = backgroundView + self.outlineView = outlineView } self.addSubview(self.imageNode.view) @@ -296,7 +302,7 @@ public final class DrawingStickerEntityView: DrawingEntityView { let fittedDimensions = dimensions.cgSize.aspectFitted(CGSize(width: 384.0, height: 384.0)) let source = AnimatedStickerResourceSource(account: self.context.account, resource: file.resource, isVideo: file.isVideoSticker || file.mimeType == "video/webm") let pathPrefix = self.context.account.postbox.mediaBox.shortLivedResourceCachePathPrefix(file.resource.id) - let playbackMode: AnimatedStickerPlaybackMode = self.stickerEntity.isAnimated ? .loop : .still(.start) + let playbackMode: AnimatedStickerPlaybackMode = .loop self.animationNode?.setup(source: source, width: Int(fittedDimensions.width), height: Int(fittedDimensions.height), playbackMode: playbackMode, mode: .direct(cachePathPrefix: pathPrefix)) self.cachedDisposable.set((source.cachedDataPath(width: 384, height: 384) @@ -319,8 +325,9 @@ public final class DrawingStickerEntityView: DrawingEntityView { let sideSize: CGFloat = max(size.width, size.height) var boundingSize = CGSize(width: sideSize, height: sideSize) - if let backgroundNode = self.backgroundNode { - backgroundNode.frame = CGRect(origin: .zero, size: boundingSize).insetBy(dx: -5.0, dy: -5.0) + if let backgroundView = self.backgroundView, let outlineView = self.outlineView { + backgroundView.frame = CGRect(origin: .zero, size: boundingSize).insetBy(dx: -5.0, dy: -5.0) + outlineView.frame = backgroundView.bounds boundingSize = CGSize(width: floor(sideSize * 0.63), height: floor(sideSize * 0.63)) } @@ -368,150 +375,140 @@ public final class DrawingStickerEntityView: DrawingEntityView { } } + override func onSelection() { + self.presentReactionSelection() + } + func onDeselection() { let _ = self.dismissReactionSelection() } private weak var reactionContextNode: ReactionContextNode? - fileprivate func dismissReactionSelection() -> Bool { - if let reactionContextNode = self.reactionContextNode { - reactionContextNode.animateOut(to: nil, animatingOutToReaction: false) - self.reactionContextNode = nil - - Queue.mainQueue().after(0.35) { - reactionContextNode.view.removeFromSuperview() - } - - return false - } else { - return true + fileprivate func presentReactionSelection() { + guard let containerView = self.containerView, let superview = containerView.superview?.superview?.superview?.superview, self.reactionContextNode == nil else { + return } - } - - override func selectedTapAction() -> Bool { - if case let .file(_, type) = self.stickerEntity.content, case .reaction = type { - guard let containerView = self.containerView, let superview = containerView.superview?.superview?.superview?.superview, self.reactionContextNode == nil else { - return self.dismissReactionSelection() + + let availableSize = superview.frame.size + let reactionItems = containerView.getAvailableReactions() + + let insets = UIEdgeInsets(top: 64.0, left: 0.0, bottom: 64.0, right: 0.0) + + let layout: (ContainedViewLayoutTransition) -> Void = { [weak self, weak superview] transition in + guard let self, let superview, let reactionContextNode = self.reactionContextNode else { + return } - - let availableSize = superview.frame.size - let reactionItems = containerView.getAvailableReactions() - - let insets = UIEdgeInsets(top: 64.0, left: 0.0, bottom: 64.0, right: 0.0) - - let layout: (ContainedViewLayoutTransition) -> Void = { [weak self, weak superview] transition in - guard let self, let superview, let reactionContextNode = self.reactionContextNode else { - return - } - let anchorRect = self.convert(self.bounds, to: superview).offsetBy(dx: 0.0, dy: -20.0) - reactionContextNode.updateLayout(size: availableSize, insets: insets, anchorRect: anchorRect, centerAligned: true, isCoveredByInput: false, isAnimatingOut: false, transition: transition) - } - - let reactionContextNodeTransition: Transition = .immediate - let reactionContextNode: ReactionContextNode - reactionContextNode = ReactionContextNode( - context: self.context, - animationCache: self.context.animationCache, - presentationData: self.context.sharedContext.currentPresentationData.with({ $0 }).withUpdated(theme: defaultDarkPresentationTheme), - items: reactionItems.map(ReactionContextItem.reaction), - selectedItems: Set(), - title: nil, - getEmojiContent: { [weak self] animationCache, animationRenderer in - guard let self else { - preconditionFailure() - } - - let mappedReactionItems: [EmojiComponentReactionItem] = reactionItems.map { reaction -> EmojiComponentReactionItem in - return EmojiComponentReactionItem(reaction: reaction.reaction.rawValue, file: reaction.stillAnimation) - } - - return EmojiPagerContentComponent.emojiInputData( - context: self.context, - animationCache: animationCache, - animationRenderer: animationRenderer, - isStandalone: false, - isStatusSelection: false, - isReactionSelection: true, - isEmojiSelection: false, - hasTrending: false, - topReactionItems: mappedReactionItems, - areUnicodeEmojiEnabled: false, - areCustomEmojiEnabled: true, - chatPeerId: self.context.account.peerId, - selectedItems: Set(), - premiumIfSavedMessages: false - ) - }, - isExpandedUpdated: { transition in - layout(transition) - }, - requestLayout: { transition in - layout(transition) - }, - requestUpdateOverlayWantsToBeBelowKeyboard: { transition in - layout(transition) - } - ) - reactionContextNode.displayTail = true - reactionContextNode.forceTailToRight = true - reactionContextNode.forceDark = true - self.reactionContextNode = reactionContextNode - - reactionContextNode.reactionSelected = { [weak self] updateReaction, _ in + let anchorRect = self.convert(self.bounds, to: superview).offsetBy(dx: 0.0, dy: -20.0) + reactionContextNode.updateLayout(size: availableSize, insets: insets, anchorRect: anchorRect, centerAligned: true, isCoveredByInput: false, isAnimatingOut: false, transition: transition) + } + + let reactionContextNodeTransition: Transition = .immediate + let reactionContextNode: ReactionContextNode + reactionContextNode = ReactionContextNode( + context: self.context, + animationCache: self.context.animationCache, + presentationData: self.context.sharedContext.currentPresentationData.with({ $0 }).withUpdated(theme: defaultDarkPresentationTheme), + items: reactionItems.map(ReactionContextItem.reaction), + selectedItems: Set(), + title: nil, + getEmojiContent: { [weak self] animationCache, animationRenderer in guard let self else { + preconditionFailure() + } + + let mappedReactionItems: [EmojiComponentReactionItem] = reactionItems.map { reaction -> EmojiComponentReactionItem in + return EmojiComponentReactionItem(reaction: reaction.reaction.rawValue, file: reaction.stillAnimation) + } + + return EmojiPagerContentComponent.emojiInputData( + context: self.context, + animationCache: animationCache, + animationRenderer: animationRenderer, + isStandalone: false, + isStatusSelection: false, + isReactionSelection: true, + isEmojiSelection: false, + hasTrending: false, + topReactionItems: mappedReactionItems, + areUnicodeEmojiEnabled: false, + areCustomEmojiEnabled: true, + chatPeerId: self.context.account.peerId, + selectedItems: Set(), + premiumIfSavedMessages: false + ) + }, + isExpandedUpdated: { transition in + layout(transition) + }, + requestLayout: { transition in + layout(transition) + }, + requestUpdateOverlayWantsToBeBelowKeyboard: { transition in + layout(transition) + } + ) + reactionContextNode.displayTail = true + reactionContextNode.forceTailToRight = true + reactionContextNode.forceDark = true + self.reactionContextNode = reactionContextNode + + reactionContextNode.reactionSelected = { [weak self] updateReaction, _ in + guard let self else { + return + } + + let _ = (self.context.engine.stickers.availableReactions() + |> take(1) + |> deliverOnMainQueue).start(next: { [weak self] availableReactions in + guard let self, let availableReactions else { return } - let _ = (self.context.engine.stickers.availableReactions() - |> take(1) - |> deliverOnMainQueue).start(next: { [weak self] availableReactions in - guard let self, let availableReactions else { - return + var animation: TelegramMediaFile? + for reaction in availableReactions.reactions { + if reaction.value == updateReaction.reaction { + animation = reaction.selectAnimation + break } - - var animation: TelegramMediaFile? - for reaction in availableReactions.reactions { - if reaction.value == updateReaction.reaction { - animation = reaction.selectAnimation - break - } - } - - guard let animation else { - return - } - - self.stickerEntity.content = .file(animation, .reaction(updateReaction.reaction)) - - if let animationNode = self.animationNode, let snapshot = animationNode.view.snapshotView(afterScreenUpdates: false) { - snapshot.frame = animationNode.frame - snapshot.layer.transform = animationNode.transform - snapshot.layer.animateAlpha(from: 1.0, to: 0.0, duration: 0.2, removeOnCompletion: false, completion: { _ in - snapshot.removeFromSuperview() - }) - snapshot.layer.animateScale(from: 1.0, to: 0.1, duration: 0.2) - self.addSubview(snapshot) - } - self.animationNode?.removeFromSupernode() - self.animationNode = nil - self.didSetUpAnimationNode = false - self.isPlaying = false - self.currentSize = nil - - self.setup() - self.applyVisibility() - self.setNeedsLayout() - - self.animationNode?.layer.animateAlpha(from: 0.0, to: 1.0, duration: 0.2) - self.animationNode?.layer.animateScale(from: 0.1, to: 1.0, duration: 0.2) - - let _ = self.dismissReactionSelection() - }) - } - - reactionContextNode.premiumReactionsSelected = { [weak self] file in - let _ = self - let _ = file + } + + guard let animation else { + return + } + + if case let .file(_, type) = self.stickerEntity.content, case let .reaction(_, style) = type { + self.stickerEntity.content = .file(animation, .reaction(updateReaction.reaction, style)) + } + + if let animationNode = self.animationNode, let snapshot = animationNode.view.snapshotView(afterScreenUpdates: false) { + snapshot.frame = animationNode.frame + snapshot.layer.transform = animationNode.transform + snapshot.layer.animateAlpha(from: 1.0, to: 0.0, duration: 0.2, removeOnCompletion: false, completion: { _ in + snapshot.removeFromSuperview() + }) + snapshot.layer.animateScale(from: 1.0, to: 0.1, duration: 0.2) + self.addSubview(snapshot) + } + self.animationNode?.removeFromSupernode() + self.animationNode = nil + self.didSetUpAnimationNode = false + self.isPlaying = false + self.currentSize = nil + + self.setup() + self.applyVisibility() + self.setNeedsLayout() + + self.animationNode?.layer.animateAlpha(from: 0.0, to: 1.0, duration: 0.2) + self.animationNode?.layer.animateScale(from: 0.1, to: 1.0, duration: 0.2) + + let _ = self.dismissReactionSelection() + }) + } + + reactionContextNode.premiumReactionsSelected = { [weak self] file in + let _ = self + let _ = file // guard let self, let component = self.component else { // return // } @@ -554,14 +551,53 @@ public final class DrawingStickerEntityView: DrawingEntityView { // component.controller()?.push(controller) // }), elevatedLayout: false, animateInAsReplacement: false, blurred: true, action: { _ in true }) // component.controller()?.present(undoController, in: .current) + } + + let anchorRect = self.convert(self.bounds, to: superview).offsetBy(dx: 0.0, dy: -20.0) + reactionContextNodeTransition.setFrame(view: reactionContextNode.view, frame: CGRect(origin: CGPoint(), size: availableSize)) + reactionContextNode.updateLayout(size: availableSize, insets: insets, anchorRect: anchorRect, centerAligned: true, isCoveredByInput: false, isAnimatingOut: false, transition: reactionContextNodeTransition.containedViewLayoutTransition) + + superview.addSubnode(reactionContextNode) + reactionContextNode.animateIn(from: anchorRect) + } + + fileprivate func dismissReactionSelection() -> Bool { + if let reactionContextNode = self.reactionContextNode { + reactionContextNode.animateOut(to: nil, animatingOutToReaction: false) + self.reactionContextNode = nil + + Queue.mainQueue().after(0.35) { + reactionContextNode.view.removeFromSuperview() } - let anchorRect = self.convert(self.bounds, to: superview).offsetBy(dx: 0.0, dy: -20.0) - reactionContextNodeTransition.setFrame(view: reactionContextNode.view, frame: CGRect(origin: CGPoint(), size: availableSize)) - reactionContextNode.updateLayout(size: availableSize, insets: insets, anchorRect: anchorRect, centerAligned: true, isCoveredByInput: false, isAnimatingOut: false, transition: reactionContextNodeTransition.containedViewLayoutTransition) + return false + } else { + return true + } + } + + override func selectedTapAction() -> Bool { + if case let .file(file, type) = self.stickerEntity.content, case let .reaction(reaction, style) = type { + guard self.reactionContextNode == nil else { + let values = [self.entity.scale, self.entity.scale * 0.93, self.entity.scale] + let keyTimes = [0.0, 0.33, 1.0] + self.layer.animateKeyframes(values: values as [NSNumber], keyTimes: keyTimes as [NSNumber], duration: 0.3, keyPath: "transform.scale") - superview.addSubnode(reactionContextNode) - reactionContextNode.animateIn(from: anchorRect) + let updatedStyle: DrawingStickerEntity.Content.FileType.ReactionStyle + switch style { + case .white: + updatedStyle = .black + case .black: + updatedStyle = .white + } + self.stickerEntity.content = .file(file, .reaction(reaction, updatedStyle)) + + self.update(animated: false) + + return true + } + + self.presentReactionSelection() return true } else { @@ -577,13 +613,22 @@ public final class DrawingStickerEntityView: DrawingEntityView { self.bounds = CGRect(origin: .zero, size: self.dimensions.aspectFitted(size)) self.transform = CGAffineTransformScale(CGAffineTransformMakeRotation(self.stickerEntity.rotation), self.stickerEntity.scale, self.stickerEntity.scale) + if case let .file(_, type) = self.stickerEntity.content, case let .reaction(_, style) = type { + switch style { + case .white: + self.outlineView?.tintColor = .white + case .black: + self.outlineView?.tintColor = UIColor(rgb: 0x000000, alpha: 0.5) + } + } + let isReaction = self.isReaction let staticTransform = CATransform3DMakeScale(self.stickerEntity.mirrored ? -1.0 : 1.0, 1.0, 1.0) if animated { var isCurrentlyMirrored = ((self.imageNode.layer.value(forKeyPath: "transform.scale.y") as? NSNumber)?.floatValue ?? 1.0) < 0.0 if isReaction { - isCurrentlyMirrored = ((self.backgroundNode?.layer.value(forKeyPath: "transform.scale.y") as? NSNumber)?.floatValue ?? 1.0) < 0.0 + isCurrentlyMirrored = ((self.backgroundView?.layer.value(forKeyPath: "transform.scale.y") as? NSNumber)?.floatValue ?? 1.0) < 0.0 } var animationSourceTransform = CATransform3DIdentity var animationTargetTransform = CATransform3DIdentity @@ -596,7 +641,7 @@ public final class DrawingStickerEntityView: DrawingEntityView { animationTargetTransform.m34 = -1.0 / self.imageNode.frame.width } if isReaction { - self.backgroundNode?.transform = animationSourceTransform + self.backgroundView?.layer.transform = animationSourceTransform let values = [1.0, 0.01, 1.0] let keyTimes = [0.0, 0.5, 1.0] @@ -608,7 +653,7 @@ public final class DrawingStickerEntityView: DrawingEntityView { } UIView.animate(withDuration: 0.25, animations: { if isReaction { - self.backgroundNode?.transform = animationTargetTransform + self.backgroundView?.layer.transform = animationTargetTransform } else { self.imageNode.transform = animationTargetTransform self.animationNode?.transform = animationTargetTransform @@ -616,7 +661,7 @@ public final class DrawingStickerEntityView: DrawingEntityView { } }, completion: { finished in if isReaction { - self.backgroundNode?.transform = staticTransform + self.backgroundView?.layer.transform = staticTransform } else { self.imageNode.transform = staticTransform self.animationNode?.transform = staticTransform @@ -627,7 +672,7 @@ public final class DrawingStickerEntityView: DrawingEntityView { CATransaction.begin() CATransaction.setDisableActions(true) if isReaction { - self.backgroundNode?.transform = staticTransform + self.backgroundView?.layer.transform = staticTransform } else { self.imageNode.transform = staticTransform self.animationNode?.transform = staticTransform @@ -676,6 +721,8 @@ final class DrawingStickerEntititySelectionView: DrawingEntitySelectionView { private let leftHandle = SimpleShapeLayer() private let rightHandle = SimpleShapeLayer() + private var longPressGestureRecognizer: UILongPressGestureRecognizer? + override init(frame: CGRect) { let handleBounds = CGRect(origin: .zero, size: entitySelectionViewHandleSize) let handles = [ @@ -712,6 +759,10 @@ final class DrawingStickerEntititySelectionView: DrawingEntitySelectionView { entityView.onSnapUpdated(type, snapped) } } + + let longPressGestureRecognizer = UILongPressGestureRecognizer(target: self, action: #selector(self.handleLongPress(_:))) + self.addGestureRecognizer(longPressGestureRecognizer) + self.longPressGestureRecognizer = longPressGestureRecognizer } required init?(coder: NSCoder) { @@ -730,6 +781,12 @@ final class DrawingStickerEntititySelectionView: DrawingEntitySelectionView { private let snapTool = DrawingEntitySnapTool() + @objc private func handleLongPress(_ gestureRecognizer: UILongPressGestureRecognizer) { + if case .began = gestureRecognizer.state { + self.longPressed() + } + } + private var currentHandle: CALayer? override func handlePan(_ gestureRecognizer: UIPanGestureRecognizer) { guard let entityView = self.entityView as? DrawingStickerEntityView, let entity = entityView.entity as? DrawingStickerEntity else { @@ -810,6 +867,8 @@ final class DrawingStickerEntititySelectionView: DrawingEntitySelectionView { self.snapTool.rotationReset() } entityView.onInteractionUpdated(false) + + entityView.onSelection() default: break } @@ -818,7 +877,7 @@ final class DrawingStickerEntititySelectionView: DrawingEntitySelectionView { } override func handlePinch(_ gestureRecognizer: UIPinchGestureRecognizer) { - guard let entityView = self.entityView, let entity = entityView.entity as? DrawingStickerEntity else { + guard let entityView = self.entityView as? DrawingStickerEntityView, let entity = entityView.entity as? DrawingStickerEntity else { return } @@ -828,23 +887,27 @@ final class DrawingStickerEntititySelectionView: DrawingEntitySelectionView { switch gestureRecognizer.state { case .began, .changed: + let _ = entityView.dismissReactionSelection() + if case .began = gestureRecognizer.state { entityView.onInteractionUpdated(true) } let scale = gestureRecognizer.scale entity.scale = entity.scale * scale - entityView.update() + entityView.update(animated: false) gestureRecognizer.scale = 1.0 case .cancelled, .ended: entityView.onInteractionUpdated(false) + + entityView.onSelection() default: break } } override func handleRotate(_ gestureRecognizer: UIRotationGestureRecognizer) { - guard let entityView = self.entityView, let entity = entityView.entity as? DrawingStickerEntity else { + guard let entityView = self.entityView as? DrawingStickerEntityView, let entity = entityView.entity as? DrawingStickerEntity else { return } @@ -858,6 +921,8 @@ final class DrawingStickerEntititySelectionView: DrawingEntitySelectionView { switch gestureRecognizer.state { case .began: + let _ = entityView.dismissReactionSelection() + self.snapTool.maybeSkipFromStart(entityView: entityView, rotation: entity.rotation) entityView.onInteractionUpdated(true) case .changed: @@ -866,12 +931,14 @@ final class DrawingStickerEntititySelectionView: DrawingEntitySelectionView { updatedRotation = self.snapTool.update(entityView: entityView, velocity: velocity, delta: rotation, updatedRotation: updatedRotation) entity.rotation = updatedRotation - entityView.update() + entityView.update(animated: false) gestureRecognizer.rotation = 0.0 case .ended, .cancelled: self.snapTool.rotationReset() entityView.onInteractionUpdated(false) + + entityView.onSelection() default: break } diff --git a/submodules/TelegramUI/Components/MediaEditor/Sources/Drawing/CodableDrawingEntity.swift b/submodules/TelegramUI/Components/MediaEditor/Sources/Drawing/CodableDrawingEntity.swift index 0a76b21afd..dd13df6953 100644 --- a/submodules/TelegramUI/Components/MediaEditor/Sources/Drawing/CodableDrawingEntity.swift +++ b/submodules/TelegramUI/Components/MediaEditor/Sources/Drawing/CodableDrawingEntity.swift @@ -99,7 +99,7 @@ public enum CodableDrawingEntity: Equatable { ) ) case let .sticker(entity): - if case let .file(_, type) = entity.content, case let .reaction(reaction) = type { + if case let .file(_, type) = entity.content, case let .reaction(reaction, _) = type { return .reaction( coordinates: coordinates, reaction: reaction diff --git a/submodules/TelegramUI/Components/MediaEditor/Sources/Drawing/DrawingStickerEntity.swift b/submodules/TelegramUI/Components/MediaEditor/Sources/Drawing/DrawingStickerEntity.swift index 206d176115..f36e0c4256 100644 --- a/submodules/TelegramUI/Components/MediaEditor/Sources/Drawing/DrawingStickerEntity.swift +++ b/submodules/TelegramUI/Components/MediaEditor/Sources/Drawing/DrawingStickerEntity.swift @@ -20,8 +20,12 @@ public final class DrawingStickerEntity: DrawingEntity, Codable { case dualPhoto } public enum FileType: Equatable { + public enum ReactionStyle: Int32 { + case white + case black + } case sticker - case reaction(MessageReaction.Reaction) + case reaction(MessageReaction.Reaction, ReactionStyle) } case file(TelegramMediaFile, FileType) case image(UIImage, ImageType) @@ -61,6 +65,7 @@ public final class DrawingStickerEntity: DrawingEntity, Codable { case uuid case file case reaction + case reactionStyle case imagePath case videoFile case isRectangle @@ -83,7 +88,7 @@ public final class DrawingStickerEntity: DrawingEntity, Codable { public var scale: CGFloat { didSet { if case let .file(_, type) = self.content, case .reaction = type { - self.scale = max(0.75, min(2.0, self.scale)) + self.scale = max(0.59, min(1.77, self.scale)) } } } @@ -179,7 +184,11 @@ public final class DrawingStickerEntity: DrawingEntity, Codable { } else if let file = try container.decodeIfPresent(TelegramMediaFile.self, forKey: .file) { let fileType: Content.FileType if let reaction = try container.decodeIfPresent(MessageReaction.Reaction.self, forKey: .reaction) { - fileType = .reaction(reaction) + var reactionStyle: Content.FileType.ReactionStyle = .white + if let style = try container.decodeIfPresent(Int32.self, forKey: .reactionStyle) { + reactionStyle = DrawingStickerEntity.Content.FileType.ReactionStyle(rawValue: style) ?? .white + } + fileType = .reaction(reaction, reactionStyle) } else { fileType = .sticker } @@ -220,8 +229,9 @@ public final class DrawingStickerEntity: DrawingEntity, Codable { case let .file(file, fileType): try container.encode(file, forKey: .file) switch fileType { - case let .reaction(reaction): + case let .reaction(reaction, reactionStyle): try container.encode(reaction, forKey: .reaction) + try container.encode(reactionStyle.rawValue, forKey: .reactionStyle) default: break } diff --git a/submodules/TelegramUI/Components/MediaEditorScreen/Sources/MediaEditorScreen.swift b/submodules/TelegramUI/Components/MediaEditorScreen/Sources/MediaEditorScreen.swift index 40833120f8..f76b917495 100644 --- a/submodules/TelegramUI/Components/MediaEditorScreen/Sources/MediaEditorScreen.swift +++ b/submodules/TelegramUI/Components/MediaEditorScreen/Sources/MediaEditorScreen.swift @@ -3092,12 +3092,7 @@ public final class MediaEditorScreen: ViewController, UIDropInteractionDelegate let isFirstTime = self.validLayout == nil self.validLayout = layout - let isTablet: Bool - if case .regular = layout.metrics.widthClass { - isTablet = true - } else { - isTablet = false - } + let isTablet = layout.metrics.isTablet var topInset: CGFloat = (layout.statusBarHeight ?? 0.0) + 5.0 let previewSize: CGSize @@ -3239,8 +3234,8 @@ public final class MediaEditorScreen: ViewController, UIDropInteractionDelegate if let reaction = self.availableReactions.first(where: { reaction in return reaction.reaction.rawValue == .builtin(heart) }) { - let stickerEntity = DrawingStickerEntity(content: .file(reaction.stillAnimation, .reaction(.builtin(heart)))) - self.interaction?.insertEntity(stickerEntity, scale: 1.33) + let stickerEntity = DrawingStickerEntity(content: .file(reaction.stillAnimation, .reaction(.builtin(heart), .white))) + self.interaction?.insertEntity(stickerEntity, scale: 1.175) } } } diff --git a/submodules/TelegramUI/Components/Stories/StoryContainerScreen/Sources/StoryItemOverlaysView.swift b/submodules/TelegramUI/Components/Stories/StoryContainerScreen/Sources/StoryItemOverlaysView.swift index 937896d51f..e3e401561f 100644 --- a/submodules/TelegramUI/Components/Stories/StoryContainerScreen/Sources/StoryItemOverlaysView.swift +++ b/submodules/TelegramUI/Components/Stories/StoryContainerScreen/Sources/StoryItemOverlaysView.swift @@ -17,11 +17,16 @@ import EmojiTextAttachmentView import TextFormat final class StoryItemOverlaysView: UIView { + private static let shadowImage: UIImage = { + return UIImage(bundleImageName: "Stories/ReactionShadow")! + }() + private static let coverImage: UIImage = { return UIImage(bundleImageName: "Stories/ReactionOutline")! }() private final class ItemView: HighlightTrackingButton { + private let shadowView: UIImageView private let coverView: UIImageView private var stickerView: EmojiTextAttachmentView? private var file: TelegramMediaFile? @@ -30,10 +35,12 @@ final class StoryItemOverlaysView: UIView { var activate: ((UIView, MessageReaction.Reaction) -> Void)? override init(frame: CGRect) { + self.shadowView = UIImageView(image: StoryItemOverlaysView.shadowImage) self.coverView = UIImageView(image: StoryItemOverlaysView.coverImage) super.init(frame: frame) + self.addSubview(self.shadowView) self.addSubview(self.coverView) self.highligthedChanged = { [weak self] highlighted in @@ -75,6 +82,7 @@ final class StoryItemOverlaysView: UIView { let insets = UIEdgeInsets(top: -0.08, left: -0.05, bottom: -0.01, right: -0.02) self.coverView.frame = CGRect(origin: CGPoint(x: size.width * insets.left, y: size.height * insets.top), size: CGSize(width: size.width - size.width * insets.left - size.width * insets.right, height: size.height - size.height * insets.top - size.height * insets.bottom)) + self.shadowView.frame = self.coverView.frame let minSide = floor(min(200.0, min(size.width, size.height)) * 0.65) let itemSize = CGSize(width: minSide, height: minSide) diff --git a/submodules/TelegramUI/Images.xcassets/Media Editor/ReactionBackground.imageset/Reaction Sticker.pdf b/submodules/TelegramUI/Images.xcassets/Media Editor/ReactionBackground.imageset/Reaction Sticker.pdf deleted file mode 100644 index 80a343fff4f8862b839a0040001283a8d837a716..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37840 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ⅇm+- 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 y;r<#4oww>!F4(-> +endobj + +2 0 obj + << /Length 3 0 R >> +stream +/DeviceRGB CS +/DeviceRGB cs +q +1.000000 -0.000000 0.000000 1.000000 10.000000 6.999893 cm +1.000000 1.000000 1.000000 scn +99.999992 53.000168 m +99.999992 80.614403 77.614227 103.000168 49.999989 103.000168 c +22.385752 103.000168 -0.000011 80.614403 -0.000011 53.000168 c +-0.000011 25.385933 22.385752 3.000168 49.999989 3.000168 c +59.513222 3.000168 68.405922 5.656982 75.976578 10.269112 c +77.951065 8.841515 80.377281 8.000114 83.000015 8.000114 c +89.627434 8.000114 95.000015 13.372696 95.000015 20.000114 c +95.000015 22.622849 94.158615 25.049057 92.731018 27.023544 c +97.343163 34.594208 99.999992 43.486919 99.999992 53.000168 c +h +103.000023 5.000061 m +103.000023 2.238640 100.761444 0.000061 98.000023 0.000061 c +95.238602 0.000061 93.000023 2.238640 93.000023 5.000061 c +93.000023 7.761482 95.238602 10.000061 98.000023 10.000061 c +100.761444 10.000061 103.000023 7.761482 103.000023 5.000061 c +h +f* +n +Q + +endstream +endobj + +3 0 obj + 910 +endobj + +4 0 obj + << /Annots [] + /Type /Page + /MediaBox [ 0.000000 0.000000 120.000000 120.000000 ] + /Resources 1 0 R + /Contents 2 0 R + /Parent 5 0 R + >> +endobj + +5 0 obj + << /Kids [ 4 0 R ] + /Count 1 + /Type /Pages + >> +endobj + +6 0 obj + << /Pages 5 0 R + /Type /Catalog + >> +endobj + +xref +0 7 +0000000000 65535 f +0000000010 00000 n +0000000034 00000 n +0000001000 00000 n +0000001022 00000 n +0000001197 00000 n +0000001271 00000 n +trailer +<< /ID [ (some) (id) ] + /Root 6 0 R + /Size 7 +>> +startxref +1330 +%%EOF \ No newline at end of file diff --git a/submodules/TelegramUI/Images.xcassets/Stories/ReactionOutline.imageset/ReactionOutline.pdf b/submodules/TelegramUI/Images.xcassets/Stories/ReactionOutline.imageset/ReactionOutline.pdf deleted file mode 100644 index 80a343fff4f8862b839a0040001283a8d837a716..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37840 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ⅇm+- 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 literal 0 HcmV?d00001