Sketch out sticker keyboard.
This commit is contained in:
parent
342b662d17
commit
fab8688ec6
@ -20,14 +20,28 @@ public class StickerKeyboard: UIStackView {
|
||||
@objc
|
||||
override public var frame: CGRect {
|
||||
didSet {
|
||||
Logger.verbose("----- frame: \(frame), bounds: \(bounds)")
|
||||
logLayout()
|
||||
}
|
||||
}
|
||||
|
||||
@objc
|
||||
override public var bounds: CGRect {
|
||||
didSet {
|
||||
Logger.verbose("----- frame: \(frame), bounds: \(bounds)")
|
||||
logLayout()
|
||||
}
|
||||
}
|
||||
|
||||
private func logLayout() {
|
||||
Logger.verbose("----- frame: \(frame), bounds: \(bounds)")
|
||||
Logger.verbose("----- \t: \(headerView.frame)")
|
||||
Logger.verbose("----- \t: \(stickerCollectionView.frame)")
|
||||
Logger.verbose("----- \t: \(footerView.frame)")
|
||||
|
||||
DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + 2.0) {
|
||||
Logger.verbose("----- frame: \(self.frame), bounds: \(self.bounds)")
|
||||
Logger.verbose("----- \t: \(self.headerView.frame)")
|
||||
Logger.verbose("----- \t: \(self.stickerCollectionView.frame)")
|
||||
Logger.verbose("----- \t: \(self.footerView.frame)")
|
||||
}
|
||||
}
|
||||
|
||||
@ -89,11 +103,11 @@ public class StickerKeyboard: UIStackView {
|
||||
stickerCollectionView.setCompressionResistanceVerticalLow()
|
||||
// stickerCollectionView.autoSetDimension(.height, toSize: 100)
|
||||
|
||||
footerView.axis = .horizontal
|
||||
footerView.alignment = .center
|
||||
addArrangedSubview(footerView)
|
||||
footerView.setContentHuggingVerticalHigh()
|
||||
footerView.setCompressionResistanceVerticalHigh()
|
||||
// footerView.axis = .horizontal
|
||||
// footerView.alignment = .center
|
||||
// addArrangedSubview(footerView)
|
||||
// footerView.setContentHuggingVerticalHigh()
|
||||
// footerView.setCompressionResistanceVerticalHigh()
|
||||
}
|
||||
|
||||
private func reloadStickers() {
|
||||
|
||||
@ -21,19 +21,7 @@ public class StickerPackCollectionView: UICollectionView {
|
||||
didSet {
|
||||
AssertIsOnMainThread()
|
||||
|
||||
if let stickerPack = stickerPack {
|
||||
// Only show installed stickers.
|
||||
stickerInfos = StickerManager.installedStickers(forStickerPack: stickerPack)
|
||||
|
||||
// Download any missing stickers.
|
||||
StickerManager.ensureDownloadsAsync(forStickerPack: stickerPack)
|
||||
} else {
|
||||
stickerInfos = []
|
||||
}
|
||||
|
||||
Logger.verbose("---- stickerInfos: \(stickerInfos.count)")
|
||||
|
||||
self.reloadData()
|
||||
reloadStickers()
|
||||
}
|
||||
}
|
||||
|
||||
@ -79,12 +67,30 @@ public class StickerPackCollectionView: UICollectionView {
|
||||
@objc func stickersOrPacksDidChange() {
|
||||
AssertIsOnMainThread()
|
||||
|
||||
self.reloadData()
|
||||
reloadStickers()
|
||||
}
|
||||
|
||||
required public init(coder: NSCoder) {
|
||||
notImplemented()
|
||||
}
|
||||
|
||||
private func reloadStickers() {
|
||||
AssertIsOnMainThread()
|
||||
|
||||
if let stickerPack = stickerPack {
|
||||
// Only show installed stickers.
|
||||
stickerInfos = StickerManager.installedStickers(forStickerPack: stickerPack)
|
||||
|
||||
// Download any missing stickers.
|
||||
StickerManager.ensureDownloadsAsync(forStickerPack: stickerPack)
|
||||
} else {
|
||||
stickerInfos = []
|
||||
}
|
||||
|
||||
Logger.verbose("---- stickerInfos: \(stickerInfos.count)")
|
||||
|
||||
reloadData()
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: - UICollectionViewDelegate
|
||||
@ -192,7 +198,6 @@ extension StickerPackCollectionView {
|
||||
if (itemSize != flowLayout.itemSize) {
|
||||
flowLayout.itemSize = itemSize
|
||||
flowLayout.invalidateLayout()
|
||||
reloadData()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user