From 12de1aa90c85c6fd3e9b498d8d2cf9e82ed06953 Mon Sep 17 00:00:00 2001 From: Matthew Chen Date: Fri, 27 Oct 2017 17:23:22 -0400 Subject: [PATCH] Split up GIF requests. // FREEBIE --- .../ConversationView/ConversationViewController.m | 4 ---- .../GifPicker/GifPickerViewController.swift | 5 ----- Signal/src/ViewControllers/HomeViewController.m | 5 ----- Signal/src/network/GiphyAPI.swift | 7 ++----- Signal/src/network/GiphyDownloader.swift | 15 --------------- 5 files changed, 2 insertions(+), 34 deletions(-) diff --git a/Signal/src/ViewControllers/ConversationView/ConversationViewController.m b/Signal/src/ViewControllers/ConversationView/ConversationViewController.m index 6959d612b..91c45177b 100644 --- a/Signal/src/ViewControllers/ConversationView/ConversationViewController.m +++ b/Signal/src/ViewControllers/ConversationView/ConversationViewController.m @@ -663,10 +663,6 @@ typedef NS_ENUM(NSInteger, MessagesRangeSizeMode) { [self createScrollDownButton]; [self createHeaderViews]; [self addNotificationListeners]; - - dispatch_async(dispatch_get_main_queue(), ^{ - [self showGifPicker]; - }); } - (void)registerCustomMessageNibs diff --git a/Signal/src/ViewControllers/GifPicker/GifPickerViewController.swift b/Signal/src/ViewControllers/GifPicker/GifPickerViewController.swift index 5a48a97ad..658f3437c 100644 --- a/Signal/src/ViewControllers/GifPicker/GifPickerViewController.swift +++ b/Signal/src/ViewControllers/GifPicker/GifPickerViewController.swift @@ -127,11 +127,6 @@ class GifPickerViewController: OWSViewController, UISearchBarDelegate, UICollect selector: #selector(didBecomeActive), name: NSNotification.Name.UIApplicationDidBecomeActive, object: nil) - - DispatchQueue.main.async { - self.searchBar.text = "hi" - self.searchBar(self.searchBar, textDidChange: self.searchBar.text!) - } } override func viewDidAppear(_ animated: Bool) { diff --git a/Signal/src/ViewControllers/HomeViewController.m b/Signal/src/ViewControllers/HomeViewController.m index 3cd30a69a..d4c33e35c 100644 --- a/Signal/src/ViewControllers/HomeViewController.m +++ b/Signal/src/ViewControllers/HomeViewController.m @@ -277,11 +277,6 @@ typedef NS_ENUM(NSInteger, CellState) { kArchiveState, kInboxState }; } [self updateBarButtonItems]; - - dispatch_async(dispatch_get_main_queue(), ^{ - TSThread *thread = [self threadForIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]]; - [self presentThread:thread keyboardOnViewAppearing:NO callOnViewAppearing:NO]; - }); } - (void)updateBarButtonItems diff --git a/Signal/src/network/GiphyAPI.swift b/Signal/src/network/GiphyAPI.swift index 8608dbe7d..09f295a3f 100644 --- a/Signal/src/network/GiphyAPI.swift +++ b/Signal/src/network/GiphyAPI.swift @@ -428,11 +428,8 @@ extension GiphyError: LocalizedError { guard let height = parsePositiveUInt(dict:renditionDict, key:"height", typeName:"rendition") else { return nil } - guard let fileSize = parsePositiveUInt(dict:renditionDict, key:"size", typeName:"rendition") else { - return nil - } -// // Be lenient when parsing file sizes - we don't require them for stills. -// let fileSize = parseLenientUInt(dict:renditionDict, key:"size") + // Be lenient when parsing file sizes - we don't require them for stills. + let fileSize = parseLenientUInt(dict:renditionDict, key:"size") guard let urlString = renditionDict["url"] as? String else { return nil } diff --git a/Signal/src/network/GiphyDownloader.swift b/Signal/src/network/GiphyDownloader.swift index 5d7adcaeb..fb39d1e67 100644 --- a/Signal/src/network/GiphyDownloader.swift +++ b/Signal/src/network/GiphyDownloader.swift @@ -59,9 +59,7 @@ class GiphyAssetSegment { bytesToIgnore -= data.count } else if bytesToIgnore > 0 { let range = NSMakeRange(bytesToIgnore, data.count - bytesToIgnore) - Logger.verbose("\(TAG) bytesToIgnore: \(bytesToIgnore), data.count: \(data.count), range: \(range.location), \(range.length).") let subdata = (data as NSData).subdata(with: range) - Logger.verbose("\(TAG) subdata: \(subdata.count).") assetData.append(subdata) bytesToIgnore = 0 } else { @@ -202,10 +200,7 @@ enum GiphyAssetRequestState: UInt { owsFail("\(TAG) could not merge incomplete segment.") return } - Logger.verbose("\(TAG) merging segment: \(segment.index) \(segment.segmentStart) \(segment.segmentLength) \(segment.redundantLength) \(rendition.url).") - Logger.verbose("\(TAG) before merge: \(assetData.length) \(rendition.url).") segment.mergeData(assetData: assetData) - Logger.verbose("\(TAG) after merge: \(assetData.length) \(rendition.url).") } public func writeAssetToFile(gifFolderPath: String) -> GiphyAsset? { @@ -451,7 +446,6 @@ extension URLSessionTask { } private func segmentRequestDidSucceed(assetRequest: GiphyAssetRequest, assetSegment: GiphyAssetSegment) { - Logger.verbose("\(self.TAG) segment request succeeded \(assetRequest.rendition.url), \(assetSegment.index), \(assetSegment.segmentStart), \(assetSegment.segmentLength)") DispatchQueue.main.async { assetSegment.state = .complete @@ -478,7 +472,6 @@ extension URLSessionTask { } private func assetRequestDidSucceed(assetRequest: GiphyAssetRequest, asset: GiphyAsset) { - Logger.verbose("\(self.TAG) asset request succeeded \(assetRequest.rendition.url)") DispatchQueue.main.async { self.assetMap.set(key:assetRequest.rendition.url, value:asset) @@ -491,7 +484,6 @@ extension URLSessionTask { // TODO: If we wanted to implement segment retry, we'll need to add // a segmentRequestDidFail() method. private func segmentRequestDidFail(assetRequest: GiphyAssetRequest, assetSegment: GiphyAssetSegment) { - Logger.verbose("\(self.TAG) segment request failed \(assetRequest.rendition.url), \(assetSegment.index), \(assetSegment.segmentStart), \(assetSegment.segmentLength)") DispatchQueue.main.async { assetSegment.state = .failed @@ -501,7 +493,6 @@ extension URLSessionTask { } private func assetRequestDidFail(assetRequest: GiphyAssetRequest) { - Logger.verbose("\(self.TAG) asset request failed \(assetRequest.rendition.url)") DispatchQueue.main.async { self.removeAssetRequestFromQueue(assetRequest:assetRequest) @@ -583,11 +574,8 @@ extension URLSessionTask { assetSegment.state = .active assetRequest.state = .active - Logger.verbose("\(self.TAG) new segment request \(assetRequest.rendition.url), \(assetSegment.index), \(assetSegment.segmentStart), \(assetSegment.segmentLength)") - var request = URLRequest(url: assetRequest.rendition.url as URL) let rangeHeaderValue = "bytes=\(assetSegment.segmentStart)-\(assetSegment.segmentStart + assetSegment.segmentLength - 1)" - Logger.verbose("\(self.TAG) rangeHeaderValue: \(rangeHeaderValue)") request.addValue(rangeHeaderValue, forHTTPHeaderField: "Range") let task = downloadSession.dataTask(with:request) task.assetRequest = assetRequest @@ -678,7 +666,6 @@ extension URLSessionTask { public func urlSession(_ session: URLSession, dataTask: URLSessionDataTask, didReceive data: Data) { let assetRequest = dataTask.assetRequest let assetSegment = dataTask.assetSegment - Logger.verbose("\(TAG) session dataTask didReceive: \(data.count) \(assetRequest.rendition.url)") guard !assetRequest.wasCancelled else { dataTask.cancel() segmentRequestDidFail(assetRequest:assetRequest, assetSegment:assetSegment) @@ -694,8 +681,6 @@ extension URLSessionTask { // MARK: URLSessionTaskDelegate public func urlSession(_ session: URLSession, task: URLSessionTask, didCompleteWithError error: Error?) { -// owsFail("\(TAG) session task didCompleteWithError \(error)") - Logger.verbose("\(TAG) session task didCompleteWithError \(error)") let assetRequest = task.assetRequest let assetSegment = task.assetSegment