Commit Graph

1427 Commits

Author SHA1 Message Date
DreamPiggy 8b3c4c2cde Fix Clang Static Analyzer warning for number nil check from Xcode 9.2 2017-12-29 12:52:29 +08:00
DreamPiggy 47c1248a1b
Merge pull request #2136 from dreampiggy/fix_storeImage_nil_data_format
When store image with no data for SDImageCache, check whether it contains alpha to use PNG or JPEG format
2017-12-20 00:03:22 +08:00
DreamPiggy 2872f94a3a When store image with no data for SDImageCache, check whether it contains alpha to use PNG or JPEG format 2017-12-19 23:15:28 +08:00
DreamPiggy bfe92374d0
Merge pull request #2132 from dreampiggy/fix_WebCacheOperation_use_maptable
Use a copy-weak maptable for operations stored in UIView(WebCacheOperation) category to avoid retain of operation, and also use lock to keep thread-safe
2017-12-19 18:29:12 +08:00
DreamPiggy ac5ec6997c Fix the way remove all elements from pointer array 2017-12-19 13:11:51 +08:00
DreamPiggy 91ff801611 Remove some unused code, fix typo, update the comments 2017-12-17 19:45:51 +08:00
DreamPiggy 37f84ce6a6 Use a weak pointerArray to store the operations for sd_setAnimationImagesWithURLs, avoid extra retain of operation instance 2017-12-17 03:04:59 +08:00
DreamPiggy 958a349c6c Use a copy-weak maptable for operations stored in UIView(WebCacheOperation) category to avoid retain of operation, and also use lock to keep thread-safe 2017-12-17 01:26:03 +08:00
DreamPiggy df7ed34c14
Merge pull request #2131 from dreampiggy/fix_progressive_webp_decoding
Fix progressive WebP decoding by creating data provider with actual data size
2017-12-16 00:42:54 +08:00
DreamPiggy 283d66c308 Fix progressive WebP decoding by creating data provider with actual data size 2017-12-16 00:29:48 +08:00
DreamPiggy d2443d9c56
Merge pull request #2115 from dreampiggy/feature_custom_manager_for_category
Add a SDWebImageExternalCustomManagerKey context arguments to allow user to custom image manager for UIView category
2017-12-15 23:33:33 +08:00
DreamPiggy 6969fef764 Add a SDWebImageExternalCustomManagerKey context arguments to allow user to custom image manager for UIView category to avoid build from scratch 2017-12-15 23:25:17 +08:00
DreamPiggy 5a257b5f69
Merge pull request #2106 from dreampiggy/fix_FLAnimatedImageView_blink_when_reload
Revert changes for FLAnimatedImage performance enhancement.
2017-12-15 23:14:05 +08:00
DreamPiggy e972c904b0 Check the group instance before calling group leave 2017-12-15 22:28:41 +08:00
DreamPiggy eda6d5d485 Remove the out-dated compatible code for non-ARC 2017-12-15 20:11:42 +08:00
DreamPiggy 3f0946335f Update the comments 2017-12-13 20:58:20 +08:00
DreamPiggy d854d60095
Merge pull request #2123 from realaboo/master
Allow custom SDWebImageDownloaderOperation to handle HTTP redirect
2017-12-13 20:49:37 +08:00
Yangfan Huang d7861d8f20 Allow custom SDWebImageDownloaderOperation to handle HTTP redirect 2017-12-10 03:27:08 +08:00
DreamPiggy efa030cb47 Update the comments for that SDWebImageInternalSetImageGroupKey key 2017-12-08 11:46:07 +08:00
DreamPiggy 97ec1e2d85
Merge pull request #2111 from dreampiggy/fix_startPrefetchingAtIndex_accident_crash
capture currentURL instead of using index to access to avoid race condition
2017-12-08 11:05:12 +08:00
DreamPiggy 4f65117c34 Fix potential thread-safe problem in SDWebImagePrefetcher by keeping all access through prefetcher queue and retain the local URLs firstly 2017-12-07 15:18:10 +08:00
DreamPiggy e9a75c8539 Update the comments and remove the unnecessary main queue check 2017-12-03 14:18:01 +08:00
DreamPiggy a2cbbfd900
Merge pull request #2119 from dreampiggy/fix_byte_alignment
Follow Apple doc and remove that manual calculation of byte alignment to make it more universal for different architecture device
2017-11-30 12:02:29 +08:00
DreamPiggy 935eb1dc14 Follow Apple doc and remove that manual calculation of byte alignment to make it more universal for different architecture device 2017-11-30 11:24:32 +08:00
DreamPiggy 8ac6e08476 Change prefetchURLs from nonatomic to atomic to avoid multi-thread access crash 2017-11-29 12:51:34 +08:00
DreamPiggy 11ffd5a3e7 capture currentURL instead of using index to access to avoid race condition 2017-11-29 12:51:34 +08:00
DreamPiggy dbc6b6995d
Merge pull request #2116 from dreampiggy/feature_invalidate_SDWebImageDownloader
Add a public API to allow user to invalidate URLSession used in SDWebImageDownloader to avoid memory leak on non-singleton instance
2017-11-28 20:17:57 +08:00
DreamPiggy d9aaf001ca Grab the poster image instead of image itself to avoid an UIAnimatedImage been set 2017-11-27 11:40:46 +08:00
DreamPiggy f8142a1b8f Update the documents 2017-11-27 00:50:29 +08:00
DreamPiggy a7c8ce5864 Update tests to invalidate session after usage 2017-11-27 00:37:20 +08:00
DreamPiggy ae96351439 Add a public API to allow user to invalidate URLSession used in SDWebImageDownloader to avoid memory leak on non-singleton instance 2017-11-27 00:36:31 +08:00
DreamPiggy 09750dcd2a For FLAnimatedImageView, Use dispatch_group to maintain setImageBlock and completionBlock order. Ensure that completionBlock is called after that animatedImage created 2017-11-17 15:58:43 +08:00
DreamPiggy a9551b8591 Provide another way to enhance FLAnimatedImageView performance fog GIF images 2017-11-16 19:43:36 +08:00
DreamPiggy 7b649a8bbf Revert changes for FLAnimatedImage performance enhancement.
Keep the refactored code for future maintain
2017-11-16 18:32:45 +08:00
Bogdan Poplauschi 5872bd660b
Merge pull request #2101 from dreampiggy/performance_byte_align
Byte Alignment to 64 bytes to reduce memory usage
2017-11-11 08:43:21 +02:00
DreamPiggy 81a7c3a160 Byte Alignment to 64 bytes to let Core Animation not to call extra aligned_malloc and reduce memory usage 2017-11-11 05:12:58 +08:00
Bogdan Poplauschi 0f73155d09 Bumped version to 4.2.2 + updated CHANGELOG 2017-11-07 09:21:55 +02:00
Bogdan Poplauschi 6972e600ec
Merge pull request #2096 from dreampiggy/demo_iOS_progress
Update our iOS demo to modern way, add a UIProgressView to show image download progress
2017-11-05 12:27:52 +02:00
Bogdan Poplauschi 8f04ef7394
Merge pull request #2095 from dreampiggy/fix_progressive_webp_decode_y_zero
Fix WebP progressive decoding may do extra calculate
2017-11-05 12:24:39 +02:00
DreamPiggy 17616c999b Embedded SDWebImage framework to all platforms in our demo project to allow real device run because it’s a dynamic framework 2017-11-05 17:23:35 +08:00
DreamPiggy dfe68a5db6 Update demo to use modern way of image assets, and view layout for rotation 2017-11-05 15:23:32 +08:00
DreamPiggy 2dd61393ed Fix “linking against dylib not safe for use in application extensions” warning for watch extension demo 2017-11-05 07:58:44 +08:00
DreamPiggy 8e46c13bcd Add empty launch storyboard to allow view on iPhone X 2017-11-05 07:58:05 +08:00
DreamPiggy efb7c4ebf9 Update our iOS demo to modern way, add a UIProgressView to show image download progress 2017-11-05 07:22:26 +08:00
DreamPiggy 98f020f610 Fix WebP progressive decoding may do extra calculate because that libwebp will output last_y to zero, which means current image data is not enough to decode first stride 2017-11-05 06:46:24 +08:00
Bogdan Poplauschi 821c2f3b8a
Merge pull request #2093 from dreampiggy/fix_completion_block_memory_called_next_runloop
Fix that completion block and set image block are called asynchronously for UIView+WebCache
2017-11-03 23:49:28 +02:00
DreamPiggy 0eff98e4e7 Fix that completion block and set image block are called asynchronously in UIView+WebCache. Add a more common macro to do current queue check 2017-11-04 04:16:33 +08:00
Bogdan Poplauschi b2e5317666 Bumped version to 4.2.1, updated CHANGELOG 2017-10-31 20:39:19 +02:00
DreamPiggy 19f45a3cf4 Feature refactor built-in coders and support animated webp on macOS (#2082)
* Refactor code. Move the C global function to a new SDWebImageCoderHelper class.

1. Create two method for animated image parse. Provide the way to allow animates on macOS
2. Create a new class called SDWebImageFrame to allow abstract usage for animated image
3. Fix EXIF orientation method will crash on iOS 7 because it’s a iOS 8 above API

* Change sd_imageLoopCount to retrieve GIF loop count for NSImage on macOS

* Adopt the refactor code, change our build-in coder with that coder helper method to reduce complexity

* Update the demo project on macOS to show animated WebP
2017-10-31 20:34:05 +02:00
Bogdan Poplauschi 3064ef6889 Merge pull request #2081 from dreampiggy/fix_heic_detector
Add all 4 standard HEIC brand file signature, ftypheic & ftypheix is for single image, ftyphevc & ftyphevx is for sequence image
2017-10-27 17:46:09 +03:00