Matthew Chen
6caa5b87b6
Add more asserts around thread in SAE.
2018-04-13 14:59:38 -04:00
Matthew Chen
8cc33b3de1
Refine loading view of share extension.
2017-12-01 10:48:18 -05:00
Michael Kirk
a11d83187b
WIP: Framework-friendly - compiles but crashes on launch
...
// FREEBIE
2017-11-29 13:58:27 -08:00
Michael Kirk
64c7c40b81
CR: add shadow to activity indicator
...
// FREEBIE
2017-10-20 12:34:55 -07:00
Michael Kirk
891cc6ee0d
CR: better method names
...
// FREEBIE
2017-10-20 12:34:55 -07:00
Michael Kirk
591cba6468
fix comment typos
...
// FREEBIE
2017-10-20 12:34:55 -07:00
Michael Kirk
37177de7cb
Make sure user knows what they're picking
...
Abort selection until *some* kind of asset has been downloaded.
// FREEBIE
2017-10-20 12:34:55 -07:00
Michael Kirk
e4ad169d71
Show retryable error alert when fetching GIF fails
...
// FREEBIE
2017-10-20 12:34:55 -07:00
Michael Kirk
3939e8a6ac
Download picked GIF faster: cancel pending request
...
// FREEBIE
2017-10-20 12:34:55 -07:00
Michael Kirk
ddf2fe21a1
Download smaller GIF for previews.
...
Previously we were downloading a full sized GIF for each cell, which can
take dozens of seconds on a slower connection. Now we download a smaller
GIF for the picker view, and only download the full sized GIF for the
selected cell.
Some stats:
Before:
Scenario: search "Cat" and no scrolling, no picking
~10 MB
Scenario: search "Cat" and no scrolling, then pick
~10 MB
Scenario: search "Cat" and scroll 3 screens, no picking
~30 MB
Scenario: search "Cat" and scroll 3 screens, then pick
~30 MB
After:
Scenarios: search "Cat" and no scrolling, no picking
~1.0 MB (savings 90%)
Scenarios: search "Cat" and no scrolling, then pick
~3.5 MB (savings 65%)
Scenarios: search "Cat" and scroll 3 screens, no picking
~3.0 MB (savings 90%)
Scenarios: search "Cat" and scroll 3 screens, then pick
~5.5 MB (savings 81%)
// FREEBIE
2017-10-20 12:34:55 -07:00
Matthew Chen
52a8fb4b88
Add loading background to gif cells, refactor gif cells.
...
// FREEBIE
2017-10-06 16:25:40 -04:00
Matthew Chen
8b7d34e51c
Respond to CR.
...
// FREEBIE
2017-10-02 15:24:57 -04:00
Matthew Chen
fd9188415f
Respond to CR.
...
// FREEBIE
2017-10-02 14:26:03 -04:00
Matthew Chen
a0c9a84390
Clean up ahead of PR.
...
// FREEBIE
2017-10-02 13:37:32 -04:00
Matthew Chen
d73a1a02a8
Tweak GIF cells.
...
// FREEBIE
2017-10-02 13:37:32 -04:00
Matthew Chen
e4556967b6
Ensure gif cells reload when app becomes active or network becomes available.
...
// FREEBIE
2017-10-02 13:37:32 -04:00
Matthew Chen
3bfb91d0c2
Ignore obsolete GIF requests.
...
// FREEBIE
2017-10-02 13:37:32 -04:00
Matthew Chen
56e30d954e
Clean up ahead of PR.
...
// FREEBIE
2017-10-02 13:37:32 -04:00
Matthew Chen
e0194fd605
Allow multiple simultaneous GIF downloads.
...
// FREEBIE
2017-10-02 13:37:32 -04:00
Matthew Chen
a65a4b133c
Clean up ahead of PR.
...
// FREEBIE
2017-10-02 13:37:32 -04:00
Matthew Chen
4f77a2a504
Load GIFs progressively using stills.
...
// FREEBIE
2017-10-02 13:37:32 -04:00
Matthew Chen
2dfd7aa0e9
Actually send GIFs.
...
// FREEBIE
SQUASH ME.
SQUASH ME.
2017-10-02 13:37:32 -04:00
Matthew Chen
789cea118d
Pull out GifDownloader class.
...
// FREEBIE
2017-10-02 13:37:32 -04:00
Matthew Chen
e9885af973
Sketch out the GIF picker.
...
// FREEBIE
2017-10-02 13:37:32 -04:00
Matthew Chen
4242001828
Sketch out the GIF picker.
...
// FREEBIE
2017-10-02 13:37:32 -04:00
Matthew Chen
ee9101eb16
Sketch out the GIF picker.
...
// FREEBIE
2017-10-02 13:37:32 -04:00
Matthew Chen
3b9726a4fa
Sketch out the GIF picker.
...
// FREEBIE
2017-10-02 13:37:32 -04:00