Commit Graph

3525 Commits

Author SHA1 Message Date
DreamPiggy 64d44f355b Fix that C API should use FOUNDATION_EXPORT for C++ 2024-01-10 15:28:25 +08:00
DreamPiggy a6cce6677b Update unit test
The `test15CancelQueryShouldCallbackOnceInSync` should use a better way to check
2024-01-10 14:35:29 +08:00
DreamPiggy c60958ca1c
Merge pull request #3660 from dreampiggy/project/log_into_oslog
Using os_log for our all log to replace the NSLog
2024-01-10 14:27:20 +08:00
DreamPiggy 956e29ccb5
Merge pull request #3661 from dreampiggy/project/remove_assert_thumbnail_cache_key
Temp remove the assert when thumbnail cache key used with thumbnail context , this may be changed later
2024-01-10 14:25:34 +08:00
DreamPiggy 3782f772d6 Temp remove the assert when thumbnail cache key used with thumbnail context , this may be changed later 2024-01-10 14:20:04 +08:00
DreamPiggy 3eb8dd1439
Merge pull request #3657 from dreampiggy/bugfix/thumbnail_query_full_data_never_store_thumbnail_into_memory
Fix the behavior that query thumbnail from full size data does not sync back the thumbnail image into memory cache
2024-01-10 14:11:08 +08:00
DreamPiggy e2701e4b0a Using os_log for our all log to replace the NSLog
Using the subsystem for better filter
Need the runtime version check for now (will remove in 6.x)
2024-01-10 14:06:40 +08:00
DreamPiggy be2a1c4575
Merge pull request #3659 from dreampiggy/bugfix/indexed_png_debug_macro
Fix that PNG indexed color fix does not enable on Release Build configuration
2024-01-10 12:29:23 +08:00
DreamPiggy a041469643 Fix that PNG indexed color fix does not enable on Release Build configuration 2024-01-10 12:12:28 +08:00
DreamPiggy 9ae93e5456 Update the test case for new behavior 2024-01-09 17:04:55 +08:00
DreamPiggy 0092f74b7f Added the assert to check the current behavior that thumbnail key should not passed twice 2024-01-09 16:55:41 +08:00
DreamPiggy 64c5ff59a3 Fix the behavior that query thumbnail from full size data does not sync back the thumbnail image into memory cache
The caller should not passes the `thumbnail` related context when querying the actual thumbnail key (calculate twice)

Now we always do sync to match previous behavior before 5.13.0
2024-01-08 19:57:52 +08:00
DreamPiggy fd010e5423 Bumped version to 5.18.8
update CHANGELOG
2023-12-27 21:16:25 +08:00
DreamPiggy b10d4a245a
Fix the issue when using the `sd_cancelCurrentImageLoad` on non-stateful view (like UIImageView.image) (#3653) 2023-12-27 21:13:08 +08:00
DreamPiggy e278c13e46 Bumped version to 5.18.7
update CHANGELOG
2023-12-11 15:19:38 +08:00
DreamPiggy fbe79221b1
Added xcprivacy manifest to CocoaPods (#3649)
* Added xcprivacy manifest to CocoaPods

Using the resource bundle syntax

* Update the README

Added xcprivacy for CocoaPods
2023-12-08 20:06:55 +08:00
DreamPiggy 0383fd49fe Bumped version to 5.18.6
update CHANGELOG
2023-12-05 16:00:14 +08:00
DreamPiggy 9d3330dc52
Merge pull request #3644 from dreampiggy/bugfix/display_link_duration_promotion_vision
Use the new solution for CADisplayLink duration calculation and fix 90Hz/120Hz display (iPhone Pro or Vision Pro)
2023-11-29 18:55:49 +08:00
DreamPiggy e4243aa13b Ignore the availability warning 2023-11-29 17:52:23 +08:00
DreamPiggy 5dec4049c1 Update the new test case for `testSDDisplayLink` 2023-11-29 17:46:43 +08:00
DreamPiggy 40b3d7f438 Remove the unused legacy code for weak retain 2023-11-29 17:37:29 +08:00
DreamPiggy 112c74c1b9 Use the new solution for CADisplayLink duration calculation based on WWDC 10147
This visually fix visionOS (90Hz) animated image duration

We don't use Media Time because it's not correct when lag or VSync not callback in current runloop

Instead, we use the `next targetTimestamp - previous targetTimestamp` to get the actual time during callbacks
2023-11-29 17:16:39 +08:00
DreamPiggy 191b94cd54
Update the code comments 2023-11-17 00:14:34 +08:00
DreamPiggy 1b9a2e902c Bumped version to 5.18.5
update CHANGELOG
2023-11-16 18:59:03 +08:00
DreamPiggy 76a667ff0a
Merge pull request #3639 from dreampiggy/test/update_placeholder_url
[Unit test] Use placehold.co to replace the down site via.placeholder.com
2023-11-16 18:55:52 +08:00
DreamPiggy 404d992c8f Update one failed test case during the 5.18 version changes 2023-11-16 18:46:15 +08:00
DreamPiggy 106a8d1a15 Use placehold.co to replace the down site via.placeholder.com
This only effect test cases
2023-11-16 18:37:04 +08:00
DreamPiggy 3e31c3defe
Merge pull request #3637 from dreampiggy/bugfix/color_at_point
Fix the sd_colorAtPoint/sd_colorsWithRect return wrong value on pre-multiplied CGImage
2023-11-16 18:31:37 +08:00
DreamPiggy 471ee9da1d Update the test case because of history wrong value 2023-11-16 17:59:08 +08:00
DreamPiggy 2fa1e1785a Fix the previous wrong changes of iOS 17 indexed PNG color workaround
Added test cases `test30ThatImageIOPNGPluginBuggyWorkaround`
2023-11-16 16:37:19 +08:00
DreamPiggy 9efacfed97 Fix the sd_colorAtPoint return wrong value on pre-multiplied CGImage
Should always un-multiplied the color to match CGColor/UIColor documentation
2023-11-16 16:37:19 +08:00
DreamPiggy 213be11357
Merge pull request #3634 from dreampiggy/bugfix/workaround_hacky_imageio_png_indexed_color
Introduce the hacky workaround for iOS 17 ImageIO indexed color png decode (Apple's bug)
2023-11-15 16:11:20 +08:00
DreamPiggy 526ec84183
Merge pull request #3636 from dreampiggy/bugfix/ios17_animatedimageview_render_issue_background_foreground
Fix the iOS 17 UIKit issue that UIImageView entering the background will reset CALayer's contents, which cause SDAnimatedImageView render issue (out-of-sync)
2023-11-15 16:07:36 +08:00
DreamPiggy a95075b54d Fix the iOS 17 UIKit behavior issue that UIImageView entering the background will reset CALayer's contents, which cause animated image render issue
Should use traitCollectionDidChange to refresh the CALayer's contents status to match current frame index
2023-11-14 16:12:50 +08:00
DreamPiggy d5dccaeeef Introduce the hacky workaround for iOS 17 ImageIO indexed color png code bug
This use the runtime detection instead of available check, more stable

When we detect the ImageIO is buggy, we will change the correct alpha info with non-premultiplied
2023-11-10 18:41:09 +08:00
DreamPiggy fd1950de05 Bumped version to 5.18.4
update CHANGELOG
2023-10-27 17:38:18 +08:00
DreamPiggy 7550aa759c
Merge pull request #3626 from dreampiggy/behavior/sdanimatedimage_jpeg_nonnil
SDAnimatedImage now supports static image like JPEG data
2023-10-21 18:52:25 +08:00
DreamPiggy 0a0f7e10f6 Update the behavior that SDAnimatedImage should pass the path and scale to coder as well
This metadata information is important for some edge cases decoding
2023-10-21 18:14:38 +08:00
DreamPiggy 42f35ca3f6 SDAnimatedImage now supports static image like JPEG data
This previously will only return nil for static image, so this may be a behavior changes
For example, SDAnimatedImageView loading url will cache the `SDAnimatedImage` instead of `UIImage`
2023-10-21 17:58:24 +08:00
DreamPiggy 1f06ef5007 Bumped version to 5.18.3
update CHANGELOG
2023-10-10 15:58:59 +08:00
DreamPiggy 9a24bfd425
Merge pull request #3620 from dreampiggy/feature/visionOS_15_1
Update the TargetConditionals check for visionOS on Xcode 15.1
2023-10-10 15:55:21 +08:00
DreamPiggy 970472e91c Update the TargetConditional check for visionOS for Xcode 15.1
VisionOS should be in the UIKit variant
2023-10-10 15:35:49 +08:00
DreamPiggy db07b09632
Merge pull request #3619 from dreampiggy/bugfix/try_remove_duplicate_filter_notification
Try to remove the unused NSNotification object filter, do filter by ourself
2023-10-10 15:03:22 +08:00
DreamPiggy cae43d7c88 Try to remove the unused NSNotification object filter, do filter by ourself 2023-10-10 14:46:23 +08:00
DreamPiggy 8b8e70f140
Merge pull request #3617 from dreampiggy/feat/convenient_encode_api_format_same
Update the convenient API for case when user encode the format the same as image format, provide better quick return
2023-10-10 14:31:05 +08:00
DreamPiggy 9078f316f7 Update the convenient API for UIImage (not SDAnimatedImage) to grab the current image format when no encode format provided
This match two classes behavior
2023-10-08 15:34:25 +08:00
DreamPiggy 4acf569171 Update the convenient API for case when user encode the format the same as image format, provide better quick return 2023-10-08 15:25:10 +08:00
DreamPiggy 936f1c7067 Bumped version to 5.18.2
update CHANGELOG
2023-09-21 23:22:35 +08:00
DreamPiggy 5b14f51ae1
Merge pull request #3607 from dreampiggy/bugfix/watchOS_displayLink
Fix the SDDisplayLink on watchOS does not behave like other platform
2023-09-21 23:04:12 +08:00
DreamPiggy 0b8e0f68d3 Fix the SDDisplayLink on watchOS does not behave like other platform
The first callback should be trigger in next runloop when calling `start`, not callback in sync
2023-09-21 22:57:22 +08:00