Commit Graph

1053 Commits

Author SHA1 Message Date
Bogdan Poplauschi 6de3e4c3bf Added logos and included in the readme 2016-08-26 12:45:33 +03:00
Bogdan Poplauschi 546a579c62 Added short description about how to use GIFs 2016-06-10 07:04:34 +03:00
Bogdan Poplauschi 4e2a4f091a Merge pull request #1575 from rs/gif
GIF support using FLAnimatedImage
2016-06-07 12:57:51 +03:00
Bogdan Poplauschi 17d8690127 Merge branch '4.x' into gif
# Conflicts:
#	SDWebImage/MKAnnotationView+WebCache.h
#	SDWebImage/MKAnnotationView+WebCache.m
#	SDWebImage/SDImageCache.h
#	SDWebImage/SDImageCache.m
#	SDWebImage/SDWebImageManager.h
#	SDWebImage/SDWebImageManager.m
#	SDWebImage/UIButton+WebCache.h
#	SDWebImage/UIButton+WebCache.m
#	SDWebImage/UIImageView+HighlightedWebCache.h
#	SDWebImage/UIImageView+HighlightedWebCache.m
#	SDWebImage/UIImageView+WebCache.h
#	SDWebImage/UIImageView+WebCache.m
2016-06-07 12:42:26 +03:00
Bogdan Poplauschi 42abd08935 Merge pull request #1581 from rs/Xcode_7_ObjC_updates
Xcode 7 ObjC updates
2016-06-07 12:20:14 +03:00
Bogdan Poplauschi bb0b84342f Merge branch 'master' into 4.x
# Conflicts:
#	SDWebImage/SDWebImageManager.m
2016-06-07 12:19:48 +03:00
Bogdan Poplauschi c012fc9bb2 Updated the changelog 2016-06-07 12:00:00 +03:00
Bogdan Poplauschi 67329ac512 Bumped the version 2016-06-07 11:57:03 +03:00
Bogdan Poplauschi de149aedaa Reverted all the changes for "Removed the URL query params from the filename (key)" fb0cdb6d 1bf62d4 #1584 - fixes #1433 #1553 #1583 #1585
This is a deal breaker for people. The solution for those issues (i.e. very long urls) is to set the SDWebImageManager cacheKeyFilter block and do their own calculations there.
2016-06-07 11:56:31 +03:00
Bogdan Poplauschi 0df12218b7 Enabled CLANG_ANALYZER_NONNULL per http://indiestack.com/2016/06/nullable-edge-cases/. Small fix for a case where trying to get from a set using a nil key 2016-06-07 08:48:45 +03:00
Bogdan Poplauschi 2064f28d2f Implemented Nullability according to https://developer.apple.com/swift/blog/?id=25. Decided to make explicit nullable and nonnull and not use NS_ASSUME_NONNULL_BEGIN so everything is clearer when read. Done so in the implementation files as well 2016-06-07 08:48:45 +03:00
Bogdan Poplauschi 67f943b0fa Implemented Lightweight Generics - both for Swift interoperability and for easier to read code 2016-06-07 08:42:52 +03:00
Bogdan Poplauschi c4dd0eee49 Opening bracket styling 2016-06-07 08:41:07 +03:00
Bogdan Poplauschi 7684fbd9a7 Merge branch '4.x' into gif
# Conflicts:
#	SDWebImage.xcodeproj/project.pbxproj
2016-06-07 08:39:17 +03:00
Bogdan Poplauschi 3364a981d5 Merge branch 'master' into 4.x
+ SDWebImageDownloader downloadImageWithURL:... properly use the weakself-strongself pattern

# Conflicts:
#	.travis.yml
#	Examples/SDWebImage Demo.xcodeproj/project.pbxproj
#	README.md
#	SDWebImage.xcodeproj/project.pbxproj
#	SDWebImage/SDWebImageDownloader.m
#	SDWebImage/SDWebImageDownloaderOperation.h
#	SDWebImage/SDWebImageDownloaderOperation.m
#	SDWebImage/SDWebImageManager.m
#	Tests/Podfile
#	Tests/SDWebImage Tests.xcodeproj/project.pbxproj
2016-06-07 08:36:45 +03:00
Bogdan Poplauschi fc0de57066 Readded `shouldUseCredentialStorage` to preserve backwards compatibility 2016-06-06 21:24:11 +03:00
Bogdan Poplauschi 473054879c Updated the changelog 2016-06-06 21:08:17 +03:00
Bogdan Poplauschi 5d42a2ac5e Merge pull request #1586 from oanapopescu/nsurlsession
Updated image downloader with a single session that manages all tasks
2016-06-06 21:00:34 +03:00
Oana Popescu 1e412927cc Keeping both owned and unowned sessions around as part of the operation.
We need different ownership for both because we need to invalidate the owned session upon completion.
The unowned session is wet to avoid cyclical references.
2016-06-06 20:09:43 +03:00
Oana Popescu eab4279140 Updated image downloader with a single session that manages all tasks
- the URL session is created and maintained y the image downloader
- the session will be injected to each operation and it will use it to create the data task
- when delegate callbacks are called, the downloader will call the same delegate methods on the appropriate operation
- if no session is injected upon creating a operation, it will create its own session for backwards compatibility.
2016-06-06 19:12:56 +03:00
Bogdan Poplauschi 1bf62d475a Fixed #1583 crash in `SDWebImageManager cacheKeyForURL:` when url is nil - replaced #1585 2016-06-06 07:32:34 +03:00
Bogdan Poplauschi d8dc6a25aa Merge pull request #1584 from minsOne/master
fixed crash on ios7 user device
2016-06-06 07:25:00 +03:00
Ahn Jung Min 335a437b2e fixed crash on ios7 user device
fixed that string property of NSURLComponents can`t use on iOS7
2016-06-06 04:42:02 +09:00
Bogdan Poplauschi cb7a3db23c Updated the changelog 2016-06-02 19:19:42 +03:00
Bogdan Poplauschi 6545a3aba1 Bumped the deployment target to iOS 7 (due to NSURLSession) and also incremented the library version to 3.8.0 2016-06-02 19:10:31 +03:00
Bogdan Poplauschi 9137b65d3b Merge pull request #1578 from oanapopescu/nsurlsession
Replace deprecated NSURLConnection with NSURLSession
2016-06-02 18:59:05 +03:00
Oana Popescu 09a9e74eae Removed dealloc method and added comment regarding sending nil for delegateQueue 2016-06-02 18:23:49 +03:00
Oana Popescu 5580c78282 Replace deprecated NSURLConnection with NSURLSession. See #1291 #1318 #823 #1566
- one session per operation to preserve the ordering and priority functionalities
- removed all the runloop code that was only used to keep the operation running. I am relying on non-setting the isFinished property to keep the operation running
- todo: check deallocation, test background tasks
2016-06-02 09:02:03 +03:00
Bogdan Poplauschi 94c1ec3ed0 Revisited all copyright comments and decided for just one format 2016-06-01 15:53:08 +03:00
Bogdan Poplauschi 7761afca92 Trying to fix the random build failures (probably timeout due to this image url) 2016-06-01 11:58:39 +03:00
Bogdan Poplauschi b059b04fd2 Updated the tests 2016-06-01 10:32:40 +03:00
Bogdan Poplauschi d1f7694004 Trying to fix the build, seems like Travis cannot work with ssh urls 2016-06-01 10:17:59 +03:00
Bogdan Poplauschi 44cb993ee9 Successfull attempt to override the UIImageView(WebCache) methods in the FLAnimatedImageView(WebCache) category. This should make the integration easier. Not sure if it will always work 2016-06-01 10:11:46 +03:00
Bogdan Poplauschi d75bc2765d Updated the podspec so the GIF+FLAnimatedImage is a separate subspec 2016-06-01 10:10:46 +03:00
Bogdan Poplauschi 8a488d377b Updated the example project so it supports the animated images as well. 2016-06-01 10:06:37 +03:00
Bogdan Poplauschi 4df3934954 Added the FLAnimatedImageView category to the project and made the FLAnimatedImage headers public 2016-06-01 10:06:19 +03:00
Bogdan Poplauschi f6cd50bb65 Converted our example xibs to the new Xcode format 2016-06-01 10:05:40 +03:00
Bogdan Poplauschi c1451f28af Built a FLAnimatedImageView category that hooks this class to the SDWebImage system. It's very similar to UIImageView (WebCache). There are explicit methods for loading an animated image. 2016-06-01 10:05:16 +03:00
Bogdan Poplauschi 881da8fbe0 Corrected comment (was changed unintentionally). 2016-06-01 10:02:41 +03:00
Bogdan Poplauschi 32f4e4d234 Updated the doc with the new completion type (SDWebImageManager loadImageWithURL) 2016-06-01 10:02:20 +03:00
Bogdan Poplauschi ada86ab939 Based on the previous change, we now can avoid the memory cache for GIFs, as the memory cache only holds UIImage instances and we need the NSData. Forced to load from disk if the image is a GIF 2016-06-01 09:45:13 +03:00
Bogdan Poplauschi 9ea1602157 Changed the current internal GIF implementation. We will only return an UIImage with a single animated frame (basically a static image). We do set it in the images array so we can distinguish between those and real static images. Dropped all other GIF code. 2016-06-01 09:43:53 +03:00
Bogdan Poplauschi debc0d4827 Exposed the activity indicator methods from UIImageView+WebView so we can use them in a future category 2016-06-01 09:42:39 +03:00
Bogdan Poplauschi 8f4a9dae2d For consistency with the previous change, also renamed `SDWebImageCompletionBlock` to `SDExternalCompletionBlock` 2016-06-01 09:41:44 +03:00
Bogdan Poplauschi aecb13d421 Extended the SDWebImageManager `loadImageWithURL:options:progress:completed:` so it also returns the NSData (we will need it later for the GIF images).
- had to add an NSData param to `SDWebImageCompletionWithFinishedBlock `, so to make it simpler see this change for users, renamed the block type to `SDInternalCompletionBlock`
- pass the NSData from the ImageCache or the Downloader
- updated all classes using this method with the new signature
2016-06-01 09:40:36 +03:00
Bogdan Poplauschi e775b444ef Extended the SDImageCache `queryDiskCacheForKey:done:` so it also returns the NSData (we will need it later for the GIF images).
- had to add an NSData param to `SDWebImageQueryCompletedBlock`, so to make it simpler see this change for users, renamed the block type to `SDCacheQueryCompletedBlock`
- pass the NSData when getting the image from disk cache
2016-06-01 09:35:36 +03:00
Bogdan Poplauschi b4659f7648 Added FLAnimatedImage to the project. Had to bump the deployment target to 6.0 since FLAnimatedImage only supports iOS 6 and later. 2016-06-01 07:01:16 +03:00
Bogdan Poplauschi 81df4611a1 Added FLAnimatedImage as submodule 2016-06-01 06:54:38 +03:00
Bogdan Poplauschi 22fded56cf Fixed #1573 - Update to cc510a6 - Cached file name with path extension UIWebView issue - for iOS 7 and above, remove the query from the url (prior to iOS 7 the behavior remains the same). 2016-06-01 06:43:42 +03:00
Bogdan Poplauschi 9112170ea3 Replaces #1398 Allow to customise cache and image downloader instances used with SDWebImageManager - added a new initializer (`initWithCache:downloader:`) 2016-06-01 06:43:39 +03:00