mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-16 05:55:20 +00:00
Various fixes
This commit is contained in:
parent
11d8158a62
commit
b91f49d1cf
@ -1258,6 +1258,7 @@ public class StickerPickerScreen: ViewController {
|
|||||||
guard let self, let controller = self.controller, let file = item.itemFile else {
|
guard let self, let controller = self.controller, let file = item.itemFile else {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
let presentationData = controller.context.sharedContext.currentPresentationData.with { $0 }
|
||||||
if groupId == AnyHashable("featuredTop") {
|
if groupId == AnyHashable("featuredTop") {
|
||||||
let viewKey = PostboxViewKey.orderedItemList(id: Namespaces.OrderedItemList.CloudFeaturedStickerPacks)
|
let viewKey = PostboxViewKey.orderedItemList(id: Namespaces.OrderedItemList.CloudFeaturedStickerPacks)
|
||||||
let _ = (controller.context.account.postbox.combinedView(keys: [viewKey])
|
let _ = (controller.context.account.postbox.combinedView(keys: [viewKey])
|
||||||
@ -1268,10 +1269,11 @@ public class StickerPickerScreen: ViewController {
|
|||||||
}
|
}
|
||||||
for featuredStickerPack in view.items.lazy.map({ $0.contents.get(FeaturedStickerPackItem.self)! }) {
|
for featuredStickerPack in view.items.lazy.map({ $0.contents.get(FeaturedStickerPackItem.self)! }) {
|
||||||
if featuredStickerPack.topItems.contains(where: { $0.file.fileId == file.fileId }) {
|
if featuredStickerPack.topItems.contains(where: { $0.file.fileId == file.fileId }) {
|
||||||
controller.push(FeaturedStickersScreen(
|
controller.pushController(FeaturedStickersScreen(
|
||||||
context: controller.context,
|
context: controller.context,
|
||||||
highlightedPackId: featuredStickerPack.info.id,
|
highlightedPackId: featuredStickerPack.info.id,
|
||||||
forceTheme: defaultDarkPresentationTheme,
|
forceTheme: defaultDarkColorPresentationTheme,
|
||||||
|
stickerActionTitle: presentationData.strings.StickerPack_AddSticker,
|
||||||
sendSticker: { [weak self] fileReference, _, _ in
|
sendSticker: { [weak self] fileReference, _, _ in
|
||||||
guard let self, let controller = self.controller else {
|
guard let self, let controller = self.controller else {
|
||||||
return false
|
return false
|
||||||
@ -2089,13 +2091,6 @@ private final class InteractiveStickerButtonContent: Component {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func update(component: InteractiveStickerButtonContent, availableSize: CGSize, state: EmptyComponentState, environment: Environment<Empty>, transition: Transition) -> CGSize {
|
func update(component: InteractiveStickerButtonContent, availableSize: CGSize, state: EmptyComponentState, environment: Environment<Empty>, transition: Transition) -> CGSize {
|
||||||
// if component.useOpaqueTheme {
|
|
||||||
// self.backgroundLayer.backgroundColor = component.theme.chat.inputMediaPanel.panelContentControlOpaqueSelectionColor.cgColor
|
|
||||||
// self.tintBackgroundLayer.backgroundColor = UIColor.white.cgColor
|
|
||||||
// } else {
|
|
||||||
// self.backgroundLayer.backgroundColor = component.theme.chat.inputMediaPanel.panelContentControlVibrantSelectionColor.cgColor
|
|
||||||
// self.tintBackgroundLayer.backgroundColor = UIColor(white: 1.0, alpha: 0.2).cgColor
|
|
||||||
// }
|
|
||||||
self.backgroundLayer.backgroundColor = UIColor(rgb: 0xffffff, alpha: 0.11).cgColor
|
self.backgroundLayer.backgroundColor = UIColor(rgb: 0xffffff, alpha: 0.11).cgColor
|
||||||
|
|
||||||
let iconSize = self.icon.update(
|
let iconSize = self.icon.update(
|
||||||
|
@ -319,7 +319,7 @@ private final class FeaturedStickersScreenNode: ViewControllerTracingNode {
|
|||||||
if let strongSelf = self, let info = info as? StickerPackCollectionInfo {
|
if let strongSelf = self, let info = info as? StickerPackCollectionInfo {
|
||||||
strongSelf.view.window?.endEditing(true)
|
strongSelf.view.window?.endEditing(true)
|
||||||
let packReference: StickerPackReference = .id(id: info.id.id, accessHash: info.accessHash)
|
let packReference: StickerPackReference = .id(id: info.id.id, accessHash: info.accessHash)
|
||||||
let controller = StickerPackScreen(context: strongSelf.context, mainStickerPack: packReference, stickerPacks: [packReference], parentNavigationController: strongSelf.controller?.navigationController as? NavigationController, sendSticker: { fileReference, sourceNode, sourceRect in
|
let controller = StickerPackScreen(context: strongSelf.context, updatedPresentationData: strongSelf.updatedPresentationData, mainStickerPack: packReference, stickerPacks: [packReference], actionTitle: strongSelf.controller?.stickerActionTitle, parentNavigationController: strongSelf.controller?.navigationController as? NavigationController, sendSticker: { fileReference, sourceNode, sourceRect in
|
||||||
if let strongSelf = self {
|
if let strongSelf = self {
|
||||||
return strongSelf.sendSticker?(fileReference, sourceNode, sourceRect) ?? false
|
return strongSelf.sendSticker?(fileReference, sourceNode, sourceRect) ?? false
|
||||||
} else {
|
} else {
|
||||||
@ -442,6 +442,15 @@ private final class FeaturedStickersScreenNode: ViewControllerTracingNode {
|
|||||||
self.loadMoreDisposable.dispose()
|
self.loadMoreDisposable.dispose()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var updatedPresentationData: (initial: PresentationData, signal: Signal<PresentationData, NoError>)? {
|
||||||
|
if let forceTheme = self.controller?.forceTheme {
|
||||||
|
let presentationData = self.presentationData.withUpdated(theme: forceTheme)
|
||||||
|
return (presentationData, .single(presentationData))
|
||||||
|
} else {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func updatePresentationData(presentationData: PresentationData) {
|
func updatePresentationData(presentationData: PresentationData) {
|
||||||
self.presentationData = presentationData
|
self.presentationData = presentationData
|
||||||
|
|
||||||
@ -543,7 +552,7 @@ private final class FeaturedStickersScreenNode: ViewControllerTracingNode {
|
|||||||
switch attribute {
|
switch attribute {
|
||||||
case let .Sticker(_, packReference, _):
|
case let .Sticker(_, packReference, _):
|
||||||
if let packReference = packReference {
|
if let packReference = packReference {
|
||||||
let controller = StickerPackScreen(context: strongSelf.context, mainStickerPack: packReference, stickerPacks: [packReference], parentNavigationController: strongSelf.controller?.navigationController as? NavigationController, sendSticker: { file, sourceNode, sourceRect in
|
let controller = StickerPackScreen(context: strongSelf.context, updatedPresentationData: strongSelf.updatedPresentationData, mainStickerPack: packReference, stickerPacks: [packReference], actionTitle: strongSelf.controller?.stickerActionTitle, parentNavigationController: strongSelf.controller?.navigationController as? NavigationController, sendSticker: { file, sourceNode, sourceRect in
|
||||||
if let strongSelf = self {
|
if let strongSelf = self {
|
||||||
return strongSelf.sendSticker?(file, sourceNode, sourceRect) ?? false
|
return strongSelf.sendSticker?(file, sourceNode, sourceRect) ?? false
|
||||||
} else {
|
} else {
|
||||||
@ -631,7 +640,7 @@ private final class FeaturedStickersScreenNode: ViewControllerTracingNode {
|
|||||||
switch attribute {
|
switch attribute {
|
||||||
case let .Sticker(_, packReference, _):
|
case let .Sticker(_, packReference, _):
|
||||||
if let packReference = packReference {
|
if let packReference = packReference {
|
||||||
let controller = StickerPackScreen(context: strongSelf.context, mainStickerPack: packReference, stickerPacks: [packReference], parentNavigationController: strongSelf.controller?.navigationController as? NavigationController, sendSticker: { file, sourceNode, sourceRect in
|
let controller = StickerPackScreen(context: strongSelf.context, updatedPresentationData: strongSelf.updatedPresentationData, mainStickerPack: packReference, stickerPacks: [packReference], actionTitle: strongSelf.controller?.stickerActionTitle, parentNavigationController: strongSelf.controller?.navigationController as? NavigationController, sendSticker: { file, sourceNode, sourceRect in
|
||||||
if let strongSelf = self {
|
if let strongSelf = self {
|
||||||
return strongSelf.sendSticker?(file, sourceNode, sourceRect) ?? false
|
return strongSelf.sendSticker?(file, sourceNode, sourceRect) ?? false
|
||||||
} else {
|
} else {
|
||||||
@ -804,6 +813,7 @@ public final class FeaturedStickersScreen: ViewController {
|
|||||||
private let context: AccountContext
|
private let context: AccountContext
|
||||||
fileprivate let highlightedPackId: ItemCollectionId?
|
fileprivate let highlightedPackId: ItemCollectionId?
|
||||||
private let sendSticker: ((FileMediaReference, UIView, CGRect) -> Bool)?
|
private let sendSticker: ((FileMediaReference, UIView, CGRect) -> Bool)?
|
||||||
|
fileprivate var stickerActionTitle: String?
|
||||||
|
|
||||||
private var controllerNode: FeaturedStickersScreenNode {
|
private var controllerNode: FeaturedStickersScreenNode {
|
||||||
return self.displayNode as! FeaturedStickersScreenNode
|
return self.displayNode as! FeaturedStickersScreenNode
|
||||||
@ -820,10 +830,11 @@ public final class FeaturedStickersScreen: ViewController {
|
|||||||
|
|
||||||
fileprivate var searchNavigationNode: SearchNavigationContentNode?
|
fileprivate var searchNavigationNode: SearchNavigationContentNode?
|
||||||
|
|
||||||
public init(context: AccountContext, highlightedPackId: ItemCollectionId?, forceTheme: PresentationTheme? = nil, sendSticker: ((FileMediaReference, UIView, CGRect) -> Bool)? = nil) {
|
public init(context: AccountContext, highlightedPackId: ItemCollectionId?, forceTheme: PresentationTheme? = nil, stickerActionTitle: String? = nil, sendSticker: ((FileMediaReference, UIView, CGRect) -> Bool)? = nil) {
|
||||||
self.context = context
|
self.context = context
|
||||||
self.highlightedPackId = highlightedPackId
|
self.highlightedPackId = highlightedPackId
|
||||||
self.sendSticker = sendSticker
|
self.sendSticker = sendSticker
|
||||||
|
self.stickerActionTitle = stickerActionTitle
|
||||||
|
|
||||||
var presentationData = context.sharedContext.currentPresentationData.with { $0 }
|
var presentationData = context.sharedContext.currentPresentationData.with { $0 }
|
||||||
if let forceTheme {
|
if let forceTheme {
|
||||||
@ -1181,7 +1192,7 @@ private final class FeaturedPaneSearchContentNode: ASDisplayNode {
|
|||||||
if let strongSelf = self {
|
if let strongSelf = self {
|
||||||
strongSelf.view.window?.endEditing(true)
|
strongSelf.view.window?.endEditing(true)
|
||||||
let packReference: StickerPackReference = .id(id: info.id.id, accessHash: info.accessHash)
|
let packReference: StickerPackReference = .id(id: info.id.id, accessHash: info.accessHash)
|
||||||
let controller = StickerPackScreen(context: strongSelf.context, mainStickerPack: packReference, stickerPacks: [packReference], parentNavigationController: strongSelf.controller?.navigationController as? NavigationController, sendSticker: { [weak self] fileReference, sourceNode, sourceRect in
|
let controller = StickerPackScreen(context: strongSelf.context, updatedPresentationData: strongSelf.updatedPresentationData, mainStickerPack: packReference, stickerPacks: [packReference], actionTitle: strongSelf.controller?.stickerActionTitle, parentNavigationController: strongSelf.controller?.navigationController as? NavigationController, sendSticker: { [weak self] fileReference, sourceNode, sourceRect in
|
||||||
if let strongSelf = self {
|
if let strongSelf = self {
|
||||||
return strongSelf.sendSticker?(fileReference, sourceNode, sourceRect) ?? false
|
return strongSelf.sendSticker?(fileReference, sourceNode, sourceRect) ?? false
|
||||||
} else {
|
} else {
|
||||||
@ -1219,6 +1230,11 @@ private final class FeaturedPaneSearchContentNode: ASDisplayNode {
|
|||||||
self.installDisposable.dispose()
|
self.installDisposable.dispose()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var updatedPresentationData: (initial: PresentationData, signal: Signal<PresentationData, NoError>)? {
|
||||||
|
let presentationData = self.context.sharedContext.currentPresentationData.with { $0 }.withUpdated(theme: self.theme)
|
||||||
|
return (presentationData, .single(presentationData))
|
||||||
|
}
|
||||||
|
|
||||||
func updateText(_ text: String, languageCode: String?) {
|
func updateText(_ text: String, languageCode: String?) {
|
||||||
let signal: Signal<([(String?, FoundStickerItem)], FoundStickerSets, Bool, FoundStickerSets?)?, NoError>
|
let signal: Signal<([(String?, FoundStickerItem)], FoundStickerSets, Bool, FoundStickerSets?)?, NoError>
|
||||||
if !text.isEmpty {
|
if !text.isEmpty {
|
||||||
|
@ -3545,9 +3545,11 @@ public final class MediaEditorScreen: ViewController, UIDropInteractionDelegate
|
|||||||
self.mediaEditor?.play()
|
self.mediaEditor?.play()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
controller.pushController = { [weak self] c in
|
||||||
|
self?.controller?.push(c)
|
||||||
|
}
|
||||||
self.stickerScreen = controller
|
self.stickerScreen = controller
|
||||||
self.controller?.present(controller, in: .window(.root))
|
self.controller?.present(controller, in: .current)
|
||||||
return
|
|
||||||
case .text:
|
case .text:
|
||||||
self.mediaEditor?.stop()
|
self.mediaEditor?.stop()
|
||||||
self.insertTextEntity()
|
self.insertTextEntity()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user