Commit Graph

84 Commits

Author SHA1 Message Date
DreamPiggy 7efdf228f6 Allows easy to use WebImage with `isAnimating` default to false and change to true later
Since SDAnimatedImage has fallback logic, we can apply this to WebImage by default without dynamic check
2024-08-28 17:37:53 +08:00
DreamPiggy c8320d4e20 Revert the wrong changes to fix the unit test 2024-06-27 23:08:56 +08:00
DreamPiggy 1edee7f019 Re-implements the aspectRatio support on AnimatedImage, fix issue like cornerRadius
Use the correct way to override invalidateIntrinsicContentSize to keep aspect ratio to UIKit/SwiftUI engine
2024-06-27 17:54:51 +08:00
DreamPiggy b550096763 Fix the assert then using Data/Name in AnimatedImage
Should match the logic as URL, allows to set
2024-03-27 16:27:06 +08:00
DreamPiggy 6ba07e3c18 Fix the issue for AnimatedImage when url is nil will not cause the reloading 2024-03-18 17:40:06 +08:00
DreamPiggy 4c4b868b79 Fix the issue for WebImage when url is nil will not cause the reloading 2024-03-18 17:36:10 +08:00
DreamPiggy 9c6349cf32 Update demo to add AVIF test images and AVIF animated images 2023-12-28 16:57:31 +08:00
DreamPiggy 69c6f008dc Update the watchOS demo without the force-touch 2023-09-21 22:38:58 +08:00
DreamPiggy a94221fba0 Update the API of AnimatedImage as well
1. Change the placeholder into Web URL init method (placeholder not works for data/bundle init method)
2. Add convenient .progress/.activity syntax for AnimatedImage indicator
2023-09-21 21:43:47 +08:00
DreamPiggy 9ec9e29e14 Update the WebImage API to match SwiftUI.AsyncImage (not SwiftUI.Image), make it more easy to replace
The old API is still kept, except the .placeholder one
2023-09-21 17:30:46 +08:00
DreamPiggy e29e0b9092 Merge branch 'master' of https://github.com/SDWebImage/SDWebImageSwiftUI into feature/visionOS 2023-09-02 21:42:51 +08:00
DreamPiggy 2d4839a195 Added visionOS support
Add visionOS Demo

The scale using traitCollection.displayScale
2023-09-02 21:24:41 +08:00
DreamPiggy f2a7b99084 Use the generic signature for ProgressiveStyle
This match Apple's API
2022-12-26 18:04:02 +08:00
DreamPiggy 63e1aebbf6 Remove the legacy ActivityIndicator/ProgressIndicator, use ProrgessView 2022-12-26 18:00:14 +08:00
DreamPiggy abd9102f6b Update the readme about when using in List/LazyStack/LazyGrid 2022-09-22 15:03:20 +08:00
DreamPiggy d18693909b Fix watchOS demo compile issue 2022-09-22 00:13:22 +08:00
DreamPiggy 1d7efeccc4 Fix the empty placeholder may cause onAppear does not called
Move the reset logic into helper function setupManager
2022-09-22 00:00:40 +08:00
DreamPiggy d281bde037 Fix the State change behavior again
Using the `StateObject` to check and refresh to the latest status, using `currentURL` and `currentAnimatedImage` to check lazily
2022-09-21 23:01:07 +08:00
DreamPiggy 2398f563a5 Refactor WebImage implementation
1. Use SwiftUIBackport to use StateObject/OnChange/Overlay
2. Change the Indicator API to match the transform for ImageManager
3. Remove the unused PlatformApear hack
2022-09-15 00:24:30 +08:00
DreamPiggy d0afa1ce35 Revert the help tooltip on Demo 2021-02-25 15:55:40 +08:00
DreamPiggy f4a03dcf23 Update the Demo for watchOS, added tooltip 2021-02-25 12:39:27 +08:00
DreamPiggy 75a1b2cf50 Update watchOS demo to watchOS 7, remove the custom indicator sample and use `ProgressView` instead 2021-02-23 15:29:03 +08:00
DreamPiggy b3530ac956 Update the Example to make WebImage animatable by default 2021-02-19 14:58:03 +08:00
DreamPiggy fbd5a53e1f Update the Example and Readme 2020-05-29 20:10:56 +08:00
DreamPiggy 1b23e14577 Only apply the patch for EXIF 5-8 images, not including 1-4 images, I think this should be fixed by SwiftUI team :) 2020-04-15 19:18:19 +08:00
DreamPiggy d564aa5ca1 Only use CGImage based when the EXIF orientation is not equal to Up. I think SwfitUI will fix this issue in the future and we'd better use UIImage as much as possible 2020-04-15 17:31:44 +08:00
DreamPiggy 0a41337ed0 Try to solve the SwiftUI bug of rendering EXIF UIImage in WebImage. Now we use the Image(decorative:) API to grab the CGImage and orientation instead. For vector image, draw vector image into bitmap for rescue 2020-04-15 12:40:25 +08:00
DreamPiggy 301cace37b Automatically import SDWebImage when user write import SDWebImageSwiftUI 2020-04-14 21:20:38 +08:00
DreamPiggy 8fe43a55a7 Update the watchOS example to remove the hack to bind presentationMode, this is SwiftUI's bug and no workaround after 6.2... 2020-04-14 01:36:42 +08:00
DreamPiggy 776e18f88d Update the watchOS Example with latest Espera 2020-04-14 01:21:25 +08:00
DreamPiggy d9fd4726ea Using a more trick but smart solution for cases when WebImage is used during transition state, like scaleEffect. In this time, we does not trigger a actualy image loading, only query the memory cache for quickly placeholder 2020-03-31 17:24:47 +08:00
DreamPiggy 80e3137e3d Supports the `delayPlaceholder` for WebImage, update the Example to show the usage 2020-03-29 20:49:37 +08:00
DreamPiggy 72c7c8d693 Change the API of completionHandler for ImageManager, without return value. Add test cases 2020-03-24 18:50:06 +08:00
DreamPiggy 04e7af0e5b Fix the watchOS Example compile issue 2020-03-03 19:01:24 +08:00
DreamPiggy 60f353180d The indicator's progress arg, now become Double instead of CGFloat, because its limited to [0, 1] 2020-03-03 19:00:33 +08:00
DreamPiggy 55a99b08aa Update the Example with the latest dependency 2020-03-03 18:35:54 +08:00
DreamPiggy fccd4d42a6 Update the Example with tvOS, now it supports zooming and edit mode to delete image cells 2020-02-25 18:19:45 +08:00
DreamPiggy 289e0bdcf5 Remove thte unused helper code in Example 2020-02-25 17:23:23 +08:00
DreamPiggy 0cde522360 Update the Example to showing the capability to load PDF/SVG on tvOS/macOS/watchOS as well 2020-01-30 12:25:32 +08:00
DreamPiggy ee786bea91 Update the Example with watchOS's native indicator (thanks @JagCesar), simplify the code 2020-01-28 21:11:18 +08:00
DreamPiggy fe54241aca Fix the example crash issue of ObjcClass, should check meta type but not instance type 2020-01-26 20:54:24 +08:00
DreamPiggy 8d74623282 Using the isAnimating arg, instead of protocol extention method to control the `WebImage`'s animation supports. This allows the binding control for animation as well 2020-01-26 20:54:24 +08:00
DreamPiggy f5e222dfc0 Add support to pass the `.customManager` context option to custom SDWebImageManager instance 2020-01-26 16:42:41 +08:00
DreamPiggy 1582e80e41 Update the demo to use tooltip on macOS, showing the native view coordinate 2019-12-02 20:13:23 +08:00
DreamPiggy 33c11b1cf0 Refactory the pure SwiftUI AnimatedImage implementation, right in the WebImage view.
Support watchOS as well :) Good SwiftUI
2019-11-30 01:37:28 +08:00
DreamPiggy ff7f74021e Implements the tvOS zoom using the play/pause button, update the readme 2019-11-17 01:48:22 +08:00
DreamPiggy d9ac91675b Support watchOS to use digital crown for the zooming image 2019-11-17 00:45:17 +08:00
DreamPiggy 5ca4965174 Example: add the pinch to zoom gesture on the detail page 2019-11-16 22:29:42 +08:00
DreamPiggy babb23ba11 Update the readme chapter of FAQ about NavigationLink as well, update the demo 2019-11-16 21:42:30 +08:00
DreamPiggy 28986d5477 Update the demo, use bitmap SVG/PDF form for WebImage compatible.
Update the readme with Customization Setup chapter
2019-11-15 21:16:32 +08:00