Main project builds

This commit is contained in:
Ali 2020-02-19 16:59:06 +04:00
parent 4140b000e1
commit cce22d7f0b
33 changed files with 109 additions and 42 deletions

View File

@ -1,10 +1,12 @@
import Foundation
import UIKit
import Postbox
import TelegramCore
import SyncCore
import TelegramPresentationData
import TelegramUIPreferences
import SwiftSignalKit
import AsyncDisplayKit
import Display
import DeviceLocationManager
import TemporaryCachedPeerDataManager

View File

@ -1,8 +1,10 @@
import Foundation
import UIKit
import Postbox
import TelegramCore
import SyncCore
import TextFormat
import AsyncDisplayKit
import Display
import SwiftSignalKit
import TelegramPresentationData

View File

@ -1,4 +1,5 @@
import Foundation
import UIKit
import Postbox
import Display

View File

@ -5,6 +5,7 @@ import TelegramCore
import SyncCore
import SwiftSignalKit
import Display
import AsyncDisplayKit
public enum ChatControllerInteractionOpenMessageMode {
case `default`

View File

@ -7,8 +7,8 @@ swift_library(
"Sources/**/*.swift",
]),
deps = [
"//submodules/Display:Display",
"//submodules/AsyncDisplayKit:AsyncDisplayKit",
"//submodules/Display:Display#shared",
"//submodules/AsyncDisplayKit:AsyncDisplayKit#shared",
],
visibility = [
"//visibility:public",

View File

@ -1,4 +1,5 @@
import Foundation
import UIKit
import TelegramCore
import SyncCore
import Display

View File

@ -2,6 +2,7 @@ import Foundation
import UIKit
import Postbox
import SwiftSignalKit
import AsyncDisplayKit
import Display
import TelegramCore
import SyncCore

View File

@ -16,6 +16,30 @@ public class ImmediateTextNode: TextNode {
public var textShadowColor: UIColor?
public var textStroke: (UIColor, CGFloat)?
public var cutout: TextNodeCutout?
public var truncationMode: NSLineBreakMode {
get {
switch self.truncationType {
case .start:
return .byTruncatingHead
case .middle:
return .byTruncatingMiddle
case .end:
return .byTruncatingTail
}
} set(value) {
switch value {
case .byTruncatingHead:
self.truncationType = .start
case .byTruncatingMiddle:
self.truncationType = .middle
case .byTruncatingTail:
self.truncationType = .end
default:
self.truncationType = .end
}
}
}
private var tapRecognizer: TapLongTapOrDoubleTapGestureRecognizer?
private var linkHighlightingNode: LinkHighlightingNode?
@ -157,3 +181,9 @@ public class ImmediateTextNode: TextNode {
}
}
}
public class ASTextNode: ImmediateTextNode {
override public func calculateSizeThatFits(_ constrainedSize: CGSize) -> CGSize {
return self.updateLayout(constrainedSize)
}
}

View File

@ -788,6 +788,8 @@ open class NavigationBar: ASDisplayNode {
self.stripeNode.backgroundColor = self.presentationData.theme.separatorColor
self.badgeNode.updateTheme(fillColor: self.presentationData.theme.badgeBackgroundColor, strokeColor: self.presentationData.theme.badgeStrokeColor, textColor: self.presentationData.theme.badgeTextColor)
self.requestLayout()
}
}

View File

@ -273,15 +273,7 @@ private final class NavigationButtonItemNode: ImmediateTextNode {
}
if shouldChangeHighlight {
if let imageNode = self.imageNode {
let previousAlpha = self.imageRippleNode.alpha
self.imageRippleNode.alpha = highlighted ? 1.0 : 0.0
if !highlighted {
self.imageRippleNode.layer.animateAlpha(from: previousAlpha, to: self.imageRippleNode.alpha, duration: 0.25)
}
} else {
self.alpha = !self.isEnabled ? 1.0 : (highlighted ? 0.4 : 1.0)
}
self.alpha = !self.isEnabled ? 1.0 : (highlighted ? 0.4 : 1.0)
self.highlightChanged(highlighted)
}
}

View File

@ -1,4 +1,31 @@
import UIKit
import UIKitRuntimeUtils
public extension UIView {
static func animationDurationFactor() -> Double {
return animationDurationFactorImpl()
}
}
public func makeSpringAnimation(_ keyPath: String) -> CABasicAnimation {
return makeSpringAnimationImpl(keyPath)
}
public func makeSpringBounceAnimation(_ keyPath: String, _ initialVelocity: CGFloat, _ damping: CGFloat) -> CABasicAnimation {
return makeSpringBounceAnimationImpl(keyPath, initialVelocity, damping)
}
public func springAnimationValueAt(_ animation: CABasicAnimation, _ t: CGFloat) -> CGFloat {
return springAnimationValueAtImpl(animation, t)
}
public func makeCustomZoomBlurEffect() -> UIBlurEffect? {
return makeCustomZoomBlurEffectImpl()
}
public func applySmoothRoundedCorners(_ layer: CALayer) {
applySmoothRoundedCornersImpl(layer)
}
public func dumpViews(_ view: UIView) {
dumpViews(view, indent: "")

View File

@ -1,6 +1,7 @@
import Foundation
import UIKit
import Display
import AsyncDisplayKit
final class ItemListMaskAccessoryItem: ListViewAccessoryItem {
private let sectionId: Int32

View File

@ -1,4 +1,6 @@
import Foundation
import UIKit
import AsyncDisplayKit
import Display
import TelegramPresentationData
import AppBundle

View File

@ -1,4 +1,6 @@
import Foundation
import UIKit
import AsyncDisplayKit
import Display
import SwiftSignalKit
import MapKit

View File

@ -1,5 +1,6 @@
import Foundation
import UIKit
import AsyncDisplayKit
import Display
import LegacyComponents
import TelegramCore

View File

@ -1,4 +1,6 @@
import Foundation
import UIKit
import AsyncDisplayKit
import Display
import AccountContext
import TelegramPresentationData

View File

@ -1,5 +1,6 @@
import Foundation
import UIKit
import AsyncDisplayKit
import Display
import SwiftSignalKit
import Postbox

View File

@ -1,5 +1,6 @@
import Foundation
import UIKit
import AsyncDisplayKit
import Display
import SwiftSignalKit
import Postbox

View File

@ -1,6 +1,7 @@
import Foundation
import UIKit
import Display
import AsyncDisplayKit
public final class ReactionSwipeGestureRecognizer: UIPanGestureRecognizer {
private var validatedGesture = false

View File

@ -155,7 +155,7 @@ public final class SelectablePeerNode: ASDisplayNode {
overrideImage = .deletedIcon
}
}
self.textNode.maximumNumberOfLines = UInt(numberOfLines)
self.textNode.maximumNumberOfLines = numberOfLines
self.textNode.attributedText = NSAttributedString(string: text, font: textFont, textColor: self.currentSelected ? self.theme.selectedTextColor : defaultColor, paragraphAlignment: .center)
self.avatarNode.setPeer(context: context, theme: theme, peer: mainPeer, overrideImage: overrideImage, emptyColor: self.theme.avatarPlaceholderColor, synchronousLoad: synchronousLoad)

View File

@ -1,5 +1,6 @@
import Foundation
import UIKit
import AsyncDisplayKit
import Display
import SwiftSignalKit
import Postbox

View File

@ -1,4 +1,5 @@
import Foundation
import UIKit
import Postbox
import TelegramCore
import SyncCore

View File

@ -455,7 +455,7 @@ final class SharedApplicationContext {
}
}
ASDisableLogging()
//ASDisableLogging()
initializeLegacyComponents(application: application, currentSizeClassGetter: {
return UIUserInterfaceSizeClass.compact

View File

@ -1,5 +1,6 @@
import Foundation
import UIKit
import AsyncDisplayKit
import Postbox
import SwiftSignalKit
import TelegramCore

View File

@ -1,4 +1,6 @@
import Foundation
import UIKit
import AsyncDisplayKit
import Display
import SwiftSignalKit
import TelegramPresentationData

View File

@ -1,5 +1,6 @@
import Foundation
import UIKit
import AsyncDisplayKit
import Display
import TelegramCore
import SyncCore

View File

@ -1,5 +1,6 @@
import Foundation
import UIKit
import AsyncDisplayKit
import TelegramCore
import SyncCore
import Postbox

View File

@ -1,4 +1,6 @@
import Foundation
import UIKit
import AsyncDisplayKit
import Postbox
import TelegramCore
import SyncCore

View File

@ -1,4 +1,5 @@
import Foundation
import UIKit
import SwiftSignalKit
import Postbox
import SyncCore

View File

@ -1,4 +1,5 @@
import Foundation
import UIKit
import Postbox
import TelegramCore
import SyncCore

View File

@ -9,7 +9,7 @@ static_library(
"Source/UIKitRuntimeUtils/*.h",
]),
deps = [
"//submodules/AsyncDisplayKit:AsyncDisplayKit",
"//submodules/AsyncDisplayKit:AsyncDisplayKit#shared",
"//submodules/ObjCRuntimeUtils:ObjCRuntimeUtils",
],
frameworks = [

View File

@ -1,16 +1,11 @@
#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
@interface UIView (AnimationUtils)
double animationDurationFactorImpl();
+ (double)animationDurationFactor;
CABasicAnimation * _Nonnull makeSpringAnimationImpl(NSString * _Nonnull keyPath);
CABasicAnimation * _Nonnull makeSpringBounceAnimationImpl(NSString * _Nonnull keyPath, CGFloat initialVelocity, CGFloat damping);
CGFloat springAnimationValueAtImpl(CABasicAnimation * _Nonnull animation, CGFloat t);
@end
CABasicAnimation * _Nonnull makeSpringAnimation(NSString * _Nonnull keyPath);
CABasicAnimation * _Nonnull makeSpringBounceAnimation(NSString * _Nonnull keyPath, CGFloat initialVelocity, CGFloat damping);
CGFloat springAnimationValueAt(CABasicAnimation * _Nonnull animation, CGFloat t);
void testZoomBlurEffect(UIVisualEffect *effect);
UIBlurEffect *makeCustomZoomBlurEffect();
void applySmoothRoundedCorners(CALayer * _Nonnull layer);
UIBlurEffect *makeCustomZoomBlurEffectImpl();
void applySmoothRoundedCornersImpl(CALayer * _Nonnull layer);

View File

@ -3,22 +3,16 @@
#import <objc/runtime.h>
#if TARGET_IPHONE_SIMULATOR
UIKIT_EXTERN float UIAnimationDragCoefficient(); // UIKit private drag coeffient, use judiciously
UIKIT_EXTERN float UIAnimationDragCoefficient();
#endif
@implementation UIView (AnimationUtils)
+ (double)animationDurationFactor
{
double animationDurationFactorImpl() {
#if TARGET_IPHONE_SIMULATOR
return (double)UIAnimationDragCoefficient();
#endif
#endif
return 1.0f;
}
@end
@interface CASpringAnimation ()
@end
@ -54,7 +48,7 @@ UIKIT_EXTERN float UIAnimationDragCoefficient(); // UIKit private drag coeffient
@end
CABasicAnimation * _Nonnull makeSpringAnimation(NSString * _Nonnull keyPath) {
CABasicAnimation * _Nonnull makeSpringAnimationImpl(NSString * _Nonnull keyPath) {
CASpringAnimation *springAnimation = [CASpringAnimation animationWithKeyPath:keyPath];
springAnimation.mass = 3.0f;
springAnimation.stiffness = 1000.0f;
@ -64,7 +58,7 @@ CABasicAnimation * _Nonnull makeSpringAnimation(NSString * _Nonnull keyPath) {
return springAnimation;
}
CABasicAnimation * _Nonnull makeSpringBounceAnimation(NSString * _Nonnull keyPath, CGFloat initialVelocity, CGFloat damping) {
CABasicAnimation * _Nonnull makeSpringBounceAnimationImpl(NSString * _Nonnull keyPath, CGFloat initialVelocity, CGFloat damping) {
CASpringAnimation *springAnimation = [CASpringAnimation animationWithKeyPath:keyPath];
springAnimation.mass = 5.0f;
springAnimation.stiffness = 900.0f;
@ -84,7 +78,7 @@ CABasicAnimation * _Nonnull makeSpringBounceAnimation(NSString * _Nonnull keyPat
return springAnimation;
}
CGFloat springAnimationValueAt(CABasicAnimation * _Nonnull animation, CGFloat t) {
CGFloat springAnimationValueAtImpl(CABasicAnimation * _Nonnull animation, CGFloat t) {
return [(CASpringAnimation *)animation valueAt:t];
}
@ -110,9 +104,6 @@ CGFloat springAnimationValueAt(CABasicAnimation * _Nonnull animation, CGFloat t)
@end
void testZoomBlurEffect(UIVisualEffect *effect) {
}
static NSString *encodeText(NSString *string, int key) {
NSMutableString *result = [[NSMutableString alloc] init];
@ -168,7 +159,7 @@ static void setBoolField(CustomBlurEffect *object, NSString *name, BOOL value) {
[inv invoke];
}
UIBlurEffect *makeCustomZoomBlurEffect() {
UIBlurEffect *makeCustomZoomBlurEffectImpl() {
if (@available(iOS 11.0, *)) {
NSString *string = [@[@"_", @"UI", @"Custom", @"BlurEffect"] componentsJoinedByString:@""];
CustomBlurEffect *result = (CustomBlurEffect *)[NSClassFromString(string) effectWithStyle:0];
@ -193,7 +184,7 @@ UIBlurEffect *makeCustomZoomBlurEffect() {
}
}
void applySmoothRoundedCorners(CALayer * _Nonnull layer) {
void applySmoothRoundedCornersImpl(CALayer * _Nonnull layer) {
if (@available(iOS 11.0, *)) {
setBoolField(layer, encodeText(@"tfuDpoujovpvtDpsofst;", -1), true);
}