DreamPiggy
1b086711ae
Fix the issue because of main queue label hack
2023-01-09 22:08:48 +08:00
DreamPiggy
43d74211c3
Added test case `testSDCallbackQueue`
2023-01-09 22:08:48 +08:00
DreamPiggy
90eeb4d830
Deprecate SDWebImagePrefetcher.delegateQueue, translate to use context[SDWebImageContextCallbackQueue] instead
2023-01-09 18:06:14 +08:00
DreamPiggy
5a4b4cf16d
Change the asyncSafe to the queue level configuration, introduce SDCallbackPolicy
2023-01-09 18:06:14 +08:00
DreamPiggy
67520b9f55
Fix the new added storeCache API which passing callbackQueue
2023-01-06 19:49:35 +08:00
DreamPiggy
fdd9a98210
Do not check nil block, useless in our use case
2023-01-06 19:36:03 +08:00
DreamPiggy
57403c9d3f
Rename to use `dispatch_block_t` alias
2023-01-06 19:09:39 +08:00
DreamPiggy
b5d712a378
Implements the Callback queue dispatch
...
Fix some missing components
2023-01-06 18:52:31 +08:00
DreamPiggy
43ec4726e1
Added context option `callbackQueue` for advanced user to control which queue to callback
...
This is used for user who call SDWebImage outside from main queue and need precise queue control, such as avoid chain queue blocking (like AVKit lazy load)
2023-01-04 18:47:50 +08:00
DreamPiggy
8be9f2c3f9
Merge pull request #3461 from dreampiggy/bugfix/yuv420_jpeg_hevc
...
Fix the iOS 15+ force-decode hack break Apple's HEIF and JPEG YUV420 optimization
2022-12-27 19:57:48 +08:00
DreamPiggy
d2221403e1
Removed the unused options for CGImageSourceCopyPropertiesAtIndex
2022-12-27 19:55:12 +08:00
DreamPiggy
a99c0de68d
Fix the iOS 15+ force-decode hack break Apple's HEIF and JPEG YUV420 optimization
...
The lazyDecode logic effect the static image as well. Should roll back and only check for animated image
2022-12-27 18:58:21 +08:00
DreamPiggy
c60e6714dd
Added `ioQueueAttributes` to use concurrent or control QoS for image cache internal IO Queue
2022-12-27 17:24:07 +08:00
DreamPiggy
0274aa85fe
Merge pull request #3452 from kinarobin/fetch-frame-early-for-animated-image-render
...
[Performance]when frame timestamp not reached, we should prefetch frame in advance for image render.
2022-12-27 16:51:54 +08:00
DreamPiggy
717461459f
Hack the first frame to ensure it always displayed in first screen refresh
2022-12-26 19:05:39 +08:00
DreamPiggy
b5db7fac68
The poster image should not trigger a frameChange callback
2022-12-26 18:53:55 +08:00
kinarobin
a15f594869
prefetch image in advance
2022-12-02 21:24:36 +08:00
DreamPiggy
9c0c715d6a
Move the SD_CHECK_CGIMAGE_RETAIN_SOURCE assertion to SDWebImage Demo and Tests only
...
This does not effects user who use this framework, only useful for ourselves to ensure Apple does not break our code
2022-11-14 17:07:29 +08:00
DreamPiggy
736f3f41f7
Move block before sending to the main queue
...
This can avoid some life cycle issue and increase performance
2022-11-11 14:29:20 +08:00
DreamPiggy
384b2d7c8b
Fix the missing lock for callbackTokens which may cause thread-safe issue
2022-11-11 14:22:49 +08:00
DreamPiggy
30f165abd5
Change from instance method to class method
2022-11-11 00:07:32 +08:00
DreamPiggy
f4706453d6
Use CoreGraphics to decode PDF instead of ImageIO to solve iOS 16's issue
...
We no longer use ImageIO to decode PDF, seems they don't maintain that kSDCGImageSourceRasterizationDPI
Copy the code from SDWebImagePDFCoder, need to update
2022-11-10 23:54:14 +08:00
DreamPiggy
d96ea392d1
Fix the iOS 12 crash because the underlyingQueue is nil
...
Use NSOperation dependency to solve this issue
2022-11-10 22:03:12 +08:00
DreamPiggy
bfa91a291b
Added the helper convenient API `sd_isThumbnail`
...
Fix the metadata does not saved
2022-11-08 22:40:36 +08:00
DreamPiggy
03b46475eb
Revert #2792 , the autoreleasepool does not solve the issue
2022-11-08 21:49:26 +08:00
DreamPiggy
6ce59aa8c1
Merge pull request #3429 from dreampiggy/perf/remove_conforms_to_protocol
...
Replace conformsToProtocol call with appropriate respondsToSelector check to improve performance
2022-11-08 21:44:07 +08:00
DreamPiggy
7ddf3214e6
Fix the test case again on below iOS 15
2022-11-08 21:18:20 +08:00
DreamPiggy
9aa27b61e8
Replace conformsToProtocol call with appropriate respondsToSelector check
...
This effect API called with multiple times, for some one-time setup and important check, the conformsToProtocol is remained
2022-11-08 20:04:15 +08:00
DreamPiggy
359036eae9
Merge pull request #3428 from dreampiggy/opt/avoid_store_again_when_origin_disk_exits
...
Avoid store again when origin disk cache hit during Thumbnail or Transformer with smaller pixel size
2022-11-08 19:16:05 +08:00
riv1r
9599a78ff9
Fix del redundant autoreleasepool ( #3388 )
...
* fix:del redundant autoreleasepool, because frameProperties is not a __autoreleasing reference object, for-Loop does not cause untimely release
* fix:del redundant autoreleasepool, because frame is strongly referenced by frames, for-Loop does not cause untimely release
* fix:del redundant autoreleasepool, because sourceTileImageRef is released by CGImageRelease, for-Loop does not cause untimely release
Co-authored-by: chendongran06039 <chendongran06039@hellobike.com>
Co-authored-by: DreamPiggy <lizhuoli1126@126.com>
2022-11-08 17:29:49 +08:00
DreamPiggy
f93cf96832
Avoid store original disk cache again when using thumbnail or transformer from the full size data
...
This solve #3395
2022-11-08 16:44:40 +08:00
DreamPiggy
0d1c603d50
Add the possible nullable logic check when the force-decode/copy failed
2022-11-08 16:19:49 +08:00
DreamPiggy
c81aec4ccd
Ignore the dynamic UTI type hint to avoid extra log
2022-11-08 16:15:25 +08:00
DreamPiggy
136d05fce8
Add extra check when user provide SDImageCoderDecodeUseLazyDecoding
2022-11-07 12:44:46 +08:00
DreamPiggy
3000dd5098
Fix the `sd_isDecoded` did not set after we use SDCGImageCreateCopy
2022-11-07 12:20:04 +08:00
DreamPiggy
db25af9506
Recovery the assert check on only iPhone/TV simulator in debug mode
2022-11-07 12:10:22 +08:00
DreamPiggy
abc06f020a
Added `SDImageCoderDecodeUseLazyDecoding` to control whether to use lazy-decoding for ImageIO or not
...
Defaults to NO for animated image coder but YES for static image coder to match current behavior
This also use another way to solve iOS 15+'s CGImageGetImageSource issue
2022-11-07 12:10:22 +08:00
DreamPiggy
279f636ac5
Minor check the logic that UTI has high priority than path extension
2022-10-31 23:52:32 +08:00
DreamPiggy
e3c6cfa066
Update test case to make clear that transformed image and thumbnailed image will callback without data
2022-10-31 23:52:32 +08:00
DreamPiggy
2fd75638fe
Refactor the hack for multiple thumbnail image request at the same time
...
1. Put the hack logic into SDWebImageDownloadOperation, each different thumbnail image request will have its callback with desired size of image using different decoding call.
2. Progressive Thumbnail decoding (use together) does not have this behavior, because I think progressive thumbnail is really rare and tolerant, people just use the first thumbnail size image for preview and OK.
3. The manager logic refactor with separate steps, focus on clear to understand the complicated logic and maintainess
4. The thumbnail decode/transformed will callback valid image, but with nil data, this matches the behavior as wiki pages.
2022-10-31 23:52:32 +08:00
DreamPiggy
2f3652dc2e
Feature: Introduce SDWebImageContextImageDecodeOptions, deprecate SDImageCoderWebImageContext
...
This can solve the retain cycle from the scratch, instead of hacking
2022-10-29 20:51:11 +08:00
DreamPiggy
b014808ddd
Merge branch '5.13.x' of github.com:SDWebImage/SDWebImage
...
# Conflicts:
# SDWebImage/Core/SDImageCacheDefine.m
2022-10-29 20:40:00 +08:00
DreamPiggy
318cca556b
Fix the issue that progressive decode logic does not get updated
2022-10-29 20:34:04 +08:00
DreamPiggy
b46fe38c72
Quick fix the issue that UIImage.sd_decodeOptions cause retain cycle when pass custom cache in context option
...
Now the SDImageCoderWebImageContext does not pass the built-in options, only custom options will be passed, and deprecated in 5.14.0
2022-10-29 19:50:45 +08:00
DreamPiggy
8dd6e25cd8
Added NEF test case, as well as BMP type enum
...
The file extension hint works on iOS/macOS for current
2022-10-29 18:13:36 +08:00
DreamPiggy
b1b16a17b3
Support use url.path or custom UTI hint passed to ImageIO, solve the TIFF/NEF/SRW raw image decoding with wrong size
...
This is because file extension will cause ImageIO use different codec, which does not support all of them without context
2022-10-27 11:11:28 +08:00
DreamPiggy
9b2ddc9ea8
[NFC] A little optimization for MutableArray creation
2022-09-26 17:38:37 +08:00
DreamPiggy
347cf1d1cc
Fix the potential out of bounds crash for ImageIO incremental animation decoding (like GIF)
...
This patch from the SDWebImageWebPCoder/pull/68
2022-09-26 17:32:25 +08:00
DreamPiggy
ea9f573744
Remove the temp assert code (for debugging usage)
2022-09-19 18:30:13 +08:00
DreamPiggy
89178a7d89
Update to force decode CGImage before any UIImage initialization on iOS 15+
2022-09-19 18:30:13 +08:00
DreamPiggy
3994006cb4
Try to workaround iOS 15+ crash that CGImage retain the CGImageSource during animation image playing
...
This used to work on iOS 14
2022-09-19 18:30:13 +08:00
DreamPiggy
6b8075a2e1
Using the same synchornized to guard _cancelled status, which need recursive lock
...
DO NOT USE SD_LOCK (os_unfair_lock), which not support recursive
2022-09-19 17:33:04 +08:00
DreamPiggy
ad592765cb
Revert "Synchronise getter and setter of the cancelled property of the SDWebImageCombinedOperation in order to eliminate data race."
...
This reverts commit 5a18c84529
.
2022-09-19 17:28:38 +08:00
DreamPiggy
61c3c5ba2d
Fix the switching from animated image rendering to static image does not works on macOS 11+
...
We should always provide a fallback solution to handle built-in NSImageView logic
2022-09-19 16:27:21 +08:00
DreamPiggy
6eb74a177f
Fix the unbalanced lock which cause crash
2022-09-19 12:05:41 +08:00
Alexander Gaidukov
5a18c84529
Synchronise getter and setter of the cancelled property of the SDWebImageCombinedOperation in order to eliminate data race.
2022-09-06 21:08:25 +07:00
DreamPiggy
7d7debbd26
Merge pull request #3380 from dreampiggy/bugfix_edge_case_cancel_cache_callback_twice
...
Fix the rare case when cancel an async disk cache query may cause twice callback
2022-07-23 23:04:55 +08:00
DreamPiggy
3d1197b820
When download start, mark the query cache operation finished to avoid bug behavior
2022-07-23 21:59:14 +08:00
DreamPiggy
0643cb81c3
Fix the rare case when cancel an async disk cache query may cause twice callback
...
One is sync and another is async
2022-07-23 21:15:00 +08:00
Andrew Monshizadeh
2bad528bfb
Fix pragma mark typo
...
Built and noticed this warning
```
external/SDWebImage/SDWebImage/Core/NSButton+WebCache.m:152:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma mar - Private
^
```
2022-07-22 21:49:09 -06:00
DreamPiggy
0757241822
Fix the clang analyze issue
2022-07-16 19:43:48 +08:00
DreamPiggy
a88e669422
Added SDImageCoderDecodeSolutionAutomatic, which check image format as well
...
This avoid the unwanted CMPhoto log
2022-07-16 18:03:11 +08:00
DreamPiggy
213a8b8def
Added `SDImageCoder.defaultDecodeSolution` to control the force decode solution, defaults to CoreGraphics (the same as 5.12)
...
For user who want new UIKit solution, you can opt-in to change the `defaultDecodeSolution` case
2022-07-16 18:03:11 +08:00
DreamPiggy
ff6b3b9bb5
Change only ImageIO decoded CGImage should enter the `Force Decode` logic
...
Others coder, like WebP, should not use this approach
2022-07-16 18:03:11 +08:00
DreamPiggy
1ed76f4f47
Fix the bitmapInfo support for greyscale color, update test case
2022-07-16 17:43:48 +08:00
DreamPiggy
34236ac522
Fix sd_colorAtPoint and sd_colorsWithRect support for grayscale image (white and alpha)
...
This fix the test cases for #3368
2022-07-16 17:27:04 +08:00
DreamPiggy
2fe3879b15
Fix the case that provided DPI cause `kCGImagePropertyPixelWidth` return non-zero value
...
This will cause re-check thumbnail, and may result the wrong pixel size
2022-07-14 14:52:26 +08:00
DreamPiggy
f1fe4ca8b8
Calculate the DPI based on PDF mediaBox, support thumbnailPixelSize
...
Move the vector code from ImageIOAnimatedCoder to ImageIOCoder, since it's not animatable :)
2022-07-13 18:18:21 +08:00
DreamPiggy
f91d35ef8d
Fix the PDF image without thumbnailPixelSize will result huge bitmap size, now fixed into 72 DPI matching PDFKit
2022-07-13 16:04:29 +08:00
DreamPiggy
3358859b46
Fix the issue when thumbnail first and full size loading at the same time, the thumbnail image will write to memory with wrong key
...
The disk cache key is correct and does not get effected by this issue
2022-06-27 02:17:48 +08:00
DreamPiggy
ad953cdcc5
Fix the case when user cancel the image loading for same URL in sequence cause placeholder mass
...
This PR introduce 2 API changes:
1. Cache query now return cache token and callback sync when called from main queue, unlike NSOperation always callback async
2. Expose the set image operation, and update the documentation behavior about that `SDWebImageDelayPlaceholder`
2022-06-26 20:04:51 +08:00
DreamPiggy
d58a1006c2
Merge pull request #3362 from dreampiggy/behavior_thumbnail_store_cache
...
Feature: Change thumbnail cache behavior as expected, share cache through different loading pipeline without extra download
2022-06-26 15:29:55 +08:00
DreamPiggy
071a8934e3
Fix the assert case when loader callback nil image data
2022-06-26 00:29:24 +08:00
DreamPiggy
31c4a09430
Fix one bug that callback the wrong cache type
2022-06-26 00:29:24 +08:00
DreamPiggy
c47158362d
Limit the re-deocde case only when image was downloaded, avoid when thumbnail hit cache
2022-06-26 00:29:24 +08:00
DreamPiggy
ecac56b726
Use the new solution, store the original decode options, when multiple loading pipeline share the same URL callback, check it and re-decode if needed
2022-06-26 00:29:24 +08:00
DreamPiggy
911328c1b4
Fix the case when previous pipeline use thumbnail transformer use together, second pipeline use the full size loading
2022-06-23 19:37:47 +08:00
DreamPiggy
2c9290f109
Added sd_isThumbnail to mark metadata, avoid the case when full size image request re-use the image from thumbnail decoding for the same URL
...
I think this is a temp workaround
2022-06-23 19:19:23 +08:00
DreamPiggy
e7e9268a7e
Fix the case that query full size key with thumbnail, cause the write back of thumnail to memory cache with wrong key
2022-06-23 17:54:27 +08:00
DreamPiggy
613a2bf988
Opt the thumbnail cache behavior, now it prefers to store/query original data from disk, thumbnail image from memory
...
Separate the thumbnail from transformer, they are for different use case
2022-06-23 17:12:56 +08:00
DreamPiggy
1f3ee8e9d5
Added new API for custom coder better handling the thumbnail size
...
The current WebP/HEIF/AVIF coder both copy paste the same code multiple times and have to fix one by one
2022-06-22 16:53:40 +08:00
DreamPiggy
fcb53cb5ff
Fix the encodeMaxPixelSize logic
...
Allows user to provide size which one dimension is larger than image size size
Example - maxPixelSize: (200, 200), imageSize: (100, 400), result: (50, 200)
2022-06-20 18:12:09 +08:00
DreamPiggy
9362505aeb
Merge pull request #3336 from Insofan/feat/store_data
...
feat: store image data
2022-06-20 17:18:42 +08:00
DreamPiggy
8743cdd633
Merge pull request #3355 from dreampiggy/feature_support_uiimage_preparefordisplay
...
Support using iOS 15 UIImage new API imageByPreparingForDisplay for faster force decoding
2022-06-20 17:17:10 +08:00
DreamPiggy
9b9fc6fc9b
Support using iOS 15 UIImage new API imageByPreparingForDisplay for faster force decoding
...
This API seems support both async/sync version, SD use sync version here because we already call them on global queue
The API mark available on watchOS, but header does not pass that __has_include, a little strange
2022-06-12 18:16:04 +08:00
DreamPiggy
a66972bdc8
Update SDImageCache.m
...
Little logic check for nil value
2022-06-12 17:10:23 +08:00
DreamPiggy
754de4d7c8
Update SDImageCache.m
...
Remove extra toDisk param
2022-06-12 17:04:52 +08:00
DreamPiggy
2fc131c44b
Update SDImageCache.h
...
Remove extra toDisk param
2022-06-12 17:03:04 +08:00
DreamPiggy
f90373ce14
Fix the thumbnail pixel size calculation when preserveAspectRatio is true
2022-06-12 16:32:33 +08:00
Andrew Monshizadeh
c231320913
Include necessary CoreImage import
2022-06-07 14:33:18 -04:00
Tim Johnsen
484de40e3b
Small performance improvement to generating file URLs in SDDiskCache -setData:forKey:.
2022-05-12 15:42:17 -07:00
Ethan Wong
30c9563511
Fix crash of accessing mainScreen from background thread on 10.11.
2022-04-02 15:12:57 +08:00
Inso
7c66265ee8
refactor: refactor store data to memory cache logic
2022-03-30 15:24:32 +08:00
Inso
6a2eaf707e
feat: store image data
2022-03-28 12:41:22 +08:00
DreamPiggy
874b674cb6
Unify the colorspace on macOS/watchOS choosen for draw to use sRGB firstly
...
Remove the unused OS version check
2022-03-16 15:06:55 +08:00
DreamPiggy
c0cc245632
Update AppKit SDGraphics convenient API to use main screen colorspace
...
Update macOS demo URL as well
2022-03-15 22:38:48 +08:00
DreamPiggy
fce270631f
Use RGBX8888 for non-alpha image force decoding, which workaround iOS 15+ issue
2022-03-15 22:22:08 +08:00
DreamPiggy
51d1b50ef4
Fix the false decode implementation using the ImageRenderer instead of directly create CGContext
2022-03-15 17:54:44 +08:00
DreamPiggy
ba66c41fd6
Merge pull request #3332 from dreampiggy/workaround_prefer_input_cgimage_bitmap_info
...
Workaround the iOS 15+ Force Decode may return black image because of CoreGraphics
2022-03-08 15:17:04 +08:00
lizhuoli
6dcbec2b87
Update the test case and use Xcode 13.2.1 with iOS 15.3+ simulator
2022-03-04 11:37:44 +08:00
lizhuoli
1b0fdd8cb6
Fix the iOS 15+ draw image blank because that CoreGraphics may not transcode on BGRX8888 pixel format context
2022-03-03 20:49:57 +08:00
soondl
8445f2b1a7
Fix imageView blinks with option 'SDImageCacheQueryDiskDataSync'
2022-02-20 16:08:40 +09:00
ty0x2333
8ce13403bc
Fix the bug that `decodedAndScaledDownImageWithImage` does not render the image completely due to the loss of precision.
2022-01-26 07:12:35 +08:00
zhuoyan
cecc984e3f
fix: Eliminates accumulated floating point errors.
2021-12-30 11:31:54 +08:00
Morgan Dock
b02f6f9e45
Don't copy image data
2021-11-25 00:17:08 -06:00
lizhuoli
4274158949
Fix the support for `SDImageLoadersManager` for canRequest API check, should be compatible with both old and new API
2021-10-18 21:30:34 +08:00
kinarobin
7c62b2d9b3
remove useless import
2021-10-12 20:52:18 +08:00
Kinarobin
e10c33bdd0
Merge pull request #3282 from kinarobin/fix-warning-in-uttype
...
Since `UTI` is an standard, we can use it directly to avoid warning on iOS 15
2021-10-12 20:48:36 +08:00
kinarobin
9148de2c07
add tvos check in targetTimestamp
2021-10-09 17:31:11 +08:00
Kinarobin
7425221108
Merge pull request #3281 from SDWebImage/revert-3276-fix-get-image-source-crash
...
Revert "Fix image source release in iOS 15"
2021-10-09 15:16:22 +08:00
kinarobin
25f9d15b57
fix warning in uttype for ios15
2021-10-07 18:15:59 +08:00
Kinarobin
a3f5647517
Revert "Fix image source release in iOS 15"
2021-10-07 10:20:00 +08:00
Michael Thomas
0076d8c447
Add negative duration check for unit tests
...
- The new`targetTimestamp` property causes the duration to be a negative value during the unit tests. Added an additional check to handle this case.
2021-10-05 16:18:00 -04:00
Michael Thomas
19540b3596
Use targetTimestamp in SDDisplayLink
2021-10-05 15:51:36 -04:00
DreamPiggy
e0b8bf97d0
Merge pull request #3277 from dreampiggy/fix_pixel_ratio_thumbnail_calculation
...
Fix pixel ratio thumbnail calculation
2021-09-30 17:41:18 +08:00
lizhuoli
8a13cbb68c
Fix the pixel ratio calculation for thumbnail decoding
2021-09-30 17:39:13 +08:00
lizhuoli
894f061acc
Fix compile issue
2021-09-30 17:37:17 +08:00
DreamPiggy
923e175326
Merge pull request #3258 from GetToSet/sdanimatedimagerep-copy-semantic
...
Make SDAnimatedImageRep confirms to correct copy semantic
2021-09-30 17:29:09 +08:00
DreamPiggy
922c126bbf
Merge pull request #3239 from dreampiggy/behavior_weak_cache_default
...
Do a extra memory cache sync when weak cache feature enabled && Change the default value for `shouldUseWeakMemoryCache` to NO
2021-09-30 17:16:32 +08:00
kinarobin
615e181257
fix image source release in advance
2021-09-29 11:17:12 +08:00
Ethan Wong
2b95a12541
Make SDAnimatedImageRep confirms to correct copy semantic
2021-08-11 23:42:27 +08:00
DreamPiggy
73cd294129
Merge pull request #3241 from dreampiggy/fix_cert_verity_optional
...
Change the default delegate method to allows optional cert in SSL verify, matches URLSession's behavior
2021-05-25 18:01:36 +08:00
DreamPiggy
a77e5f561e
Avoid extra calculation for sd_imageFrameCount
2021-05-25 16:08:53 +08:00
DreamPiggy
7f078d21ba
Adopt SDAnimatedImage for `sd_imageFrameCount`
2021-05-25 16:05:42 +08:00
DreamPiggy
4ae33983e0
Added `sd_imageFrameCount` convenient API for UIAinmatedImage/NSBitmapImageRep
...
Fix one issue when input UIAnimatedImage contains only 1 image
2021-05-25 15:43:46 +08:00
DreamPiggy
18eda252d2
Change the default delegate method to allows optional cert in SSL verify, matches URLSession's behavior
2021-05-23 11:36:39 +08:00
DreamPiggy
b1ee90dca6
Change the default value for `shouldUseWeakMemoryCache` to NO. This feature may effect a little query performance, so it's not suitable to enable by default.
2021-05-21 17:04:06 +08:00
DreamPiggy
e58a872daa
Do a extra memory cache sync when weak cache feature enabled. This can avoid the deallocation from imageView during `sd_setImageWithURL:`
...
This actually fix current weak cache feature's main use case. Before the weak cache may not works as function
2021-05-21 16:59:37 +08:00
DreamPiggy
fd326e3d51
Merge pull request #3238 from dreampiggy/fix_image_from_cache_api_behavior
...
Fix imageFromCacheForKey with options and context behavior, matching the async version one.
2021-05-21 15:43:14 +08:00
DreamPiggy
63a3d0b996
Merge pull request #3237 from kinarobin/fix-wrong-memory-cost
...
Fix wrong memory cost in `_UIAnimatedImage`
2021-05-21 15:37:27 +08:00
kinarobin
426830d55f
change to AWebP
2021-05-21 14:57:14 +08:00
DreamPiggy
04c07f983f
Fix imageFromCacheForKey with options and context behavior, matching the async version one.
...
Support `SDImageCacheDecodeFirstFrameOnly` and `SDImageCacheMatchAnimatedImageClass`
2021-05-21 14:28:16 +08:00
kinarobin
22cd94d08a
fix wrong memory cast in _UIAnimatedImage
2021-05-21 14:06:26 +08:00
DreamPiggy
2e07701e50
Merge pull request #3236 from dreampiggy/fix_warning
...
Fix the warning, enable `APPLICATION_EXTENSION_API_ONLY` for all framework target
2021-05-21 11:50:32 +08:00
DreamPiggy
46912090f9
Fix the warning, enable `APPLICATION_EXTENSION_API_ONLY` for all framework target
2021-05-21 11:50:12 +08:00
DreamPiggy
0b304a867d
Merge pull request #3227 from dreampiggy/feature_acceptable_status_code_content_type
...
Feature: allow user to custom acceptable status code and content type
2021-05-11 16:17:43 +08:00
DreamPiggy
f3d68c9cc2
Added `SDWebImageErrorDownloadResponseKey` userInfo for better error report
2021-05-07 16:40:10 +08:00
DreamPiggy
df7d56373d
Added the feature to config the status code and content type checking logic, do not hard-coded 200-400
2021-05-07 16:26:38 +08:00
Huang-Libo
e1d928a10d
Correct document in SDWebImageDownloader
2021-04-25 23:25:35 +08:00
DreamPiggy
896c5f62f7
Fix the bug that when querying original cache miss, the download process will be skipped. This is not designed behavior.
2021-04-23 12:43:27 +08:00
DreamPiggy
e88df1f819
Merge pull request #3219 from dreampiggy/behavior_transformer_store_query_default_disk
...
Change the .originalStoreCaheType and .originalQueryCacheType into .disk, Now we will store the full image data into disk and re-query the full image data by default
2021-04-23 12:43:02 +08:00
Huang-Libo
f9a8de5684
Fix spelling error in SDWebImageDownloaderOperation
...
tokent -> token
2021-04-23 11:34:34 +08:00
DreamPiggy
a9ef21bd80
Change the .originalStoreCaheType and .originalQueryCacheType into [.disk]. Now we will store the full image data into disk and re-query the full image data by default, which makes it easy for transformer to avoid re-downloading the full size image data.
2021-04-22 17:34:53 +08:00
DreamPiggy
51176c7b74
Added new disk cache config `shouldRemoveExpiredDataWhenTerminate`
2021-04-11 12:53:54 +08:00
DreamPiggy
8f34f98c61
Change the willTerminate auto clean cache logic into sync version
2021-04-11 11:30:51 +08:00
DreamPiggy
d452afdb54
Ensure the invalid URLSeesion will receive the cancel callback and does not trigger the any exception from framework
2021-04-07 11:03:56 +08:00
DreamPiggy
bed1638b42
Revert the "Don't encode/decode image when app will terminate"
2021-04-06 18:21:16 +08:00
DreamPiggy
d1c75d8397
Hotfix for the wrong naming selector during gardening
2021-04-06 11:40:32 +08:00
DreamPiggy
7c7f279b36
Code garden for terminate check
2021-04-01 21:10:26 +08:00
DreamPiggy
aa2e264ffb
Merge pull request #3149 from kinarobin/fix-ImageIO-encode/decode-crash
...
Don't encode/decode image when app will terminated
2021-04-01 20:36:59 +08:00