summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Sora.xcodeproj/project.pbxproj17
-rw-r--r--Sora.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved11
-rw-r--r--Sora/Views/Post/Details/PostDetailsImageView.swift6
-rw-r--r--Sora/Views/Post/Details/PostDetailsView.swift2
-rw-r--r--Sora/Views/Post/Grid/PostGridThumbnailView.swift3
5 files changed, 36 insertions, 3 deletions
diff --git a/Sora.xcodeproj/project.pbxproj b/Sora.xcodeproj/project.pbxproj
index 43cb40f..9f4a113 100644
--- a/Sora.xcodeproj/project.pbxproj
+++ b/Sora.xcodeproj/project.pbxproj
@@ -7,6 +7,7 @@
objects = {
/* Begin PBXBuildFile section */
+ 4C334B072D6CC280002F5D8D /* NetworkImage in Frameworks */ = {isa = PBXBuildFile; productRef = 4C334B062D6CC280002F5D8D /* NetworkImage */; };
4CA3DE752D65B5990033035D /* WaterfallGrid in Frameworks */ = {isa = PBXBuildFile; productRef = 4CA3DE742D65B5990033035D /* WaterfallGrid */; };
4CBAE9322D6C8CAE00C02D46 /* Settings.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 4CBAE9312D6C8CAE00C02D46 /* Settings.bundle */; };
/* End PBXBuildFile section */
@@ -43,6 +44,7 @@
buildActionMask = 2147483647;
files = (
4CA3DE752D65B5990033035D /* WaterfallGrid in Frameworks */,
+ 4C334B072D6CC280002F5D8D /* NetworkImage in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -87,6 +89,7 @@
name = Sora;
packageProductDependencies = (
4CA3DE742D65B5990033035D /* WaterfallGrid */,
+ 4C334B062D6CC280002F5D8D /* NetworkImage */,
);
productName = Sora;
productReference = 4CD342762D6341D900565E6F /* Sora.app */;
@@ -118,6 +121,7 @@
minimizedProjectReferenceProxies = 1;
packageReferences = (
4CA3DE732D65B5990033035D /* XCRemoteSwiftPackageReference "WaterfallGrid" */,
+ 4C334B052D6CC280002F5D8D /* XCRemoteSwiftPackageReference "NetworkImage" */,
);
preferredProjectObjectVersion = 77;
productRefGroup = 4CD342772D6341D900565E6F /* Products */;
@@ -371,6 +375,14 @@
/* End XCConfigurationList section */
/* Begin XCRemoteSwiftPackageReference section */
+ 4C334B052D6CC280002F5D8D /* XCRemoteSwiftPackageReference "NetworkImage" */ = {
+ isa = XCRemoteSwiftPackageReference;
+ repositoryURL = "https://github.com/gonzalezreal/NetworkImage";
+ requirement = {
+ kind = upToNextMajorVersion;
+ minimumVersion = 6.0.1;
+ };
+ };
4CA3DE732D65B5990033035D /* XCRemoteSwiftPackageReference "WaterfallGrid" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/paololeonardi/WaterfallGrid";
@@ -382,6 +394,11 @@
/* End XCRemoteSwiftPackageReference section */
/* Begin XCSwiftPackageProductDependency section */
+ 4C334B062D6CC280002F5D8D /* NetworkImage */ = {
+ isa = XCSwiftPackageProductDependency;
+ package = 4C334B052D6CC280002F5D8D /* XCRemoteSwiftPackageReference "NetworkImage" */;
+ productName = NetworkImage;
+ };
4CA3DE742D65B5990033035D /* WaterfallGrid */ = {
isa = XCSwiftPackageProductDependency;
package = 4CA3DE732D65B5990033035D /* XCRemoteSwiftPackageReference "WaterfallGrid" */;
diff --git a/Sora.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Sora.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
index 30341aa..397c815 100644
--- a/Sora.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
+++ b/Sora.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
@@ -1,7 +1,16 @@
{
- "originHash" : "8646e25e180920a065232acf8b4ca4c4fdf4a57ffbb51e24fcf155613761b82d",
+ "originHash" : "7b5b8123836b0bddd9d6a3cd5d1412cee34fcfdd0cfcc6af9e9b3c9db2b4c525",
"pins" : [
{
+ "identity" : "networkimage",
+ "kind" : "remoteSourceControl",
+ "location" : "https://github.com/gonzalezreal/NetworkImage",
+ "state" : {
+ "revision" : "2849f5323265386e200484b0d0f896e73c3411b9",
+ "version" : "6.0.1"
+ }
+ },
+ {
"identity" : "waterfallgrid",
"kind" : "remoteSourceControl",
"location" : "https://github.com/paololeonardi/WaterfallGrid",
diff --git a/Sora/Views/Post/Details/PostDetailsImageView.swift b/Sora/Views/Post/Details/PostDetailsImageView.swift
index d6307d5..b70aeb9 100644
--- a/Sora/Views/Post/Details/PostDetailsImageView.swift
+++ b/Sora/Views/Post/Details/PostDetailsImageView.swift
@@ -1,3 +1,4 @@
+import NetworkImage
import SwiftUI
struct PostDetailsImageView<Placeholder: View>: View {
@@ -28,7 +29,10 @@ struct PostDetailsImageView<Placeholder: View>: View {
#endif
var body: some View {
- AsyncImage(url: url) { image in
+ NetworkImage(
+ url: url,
+ transaction: Transaction(animation: .default)
+ ) { image in
InteractiveImageView(image: image)
.onAppear {
loadingState = finalLoadingState
diff --git a/Sora/Views/Post/Details/PostDetailsView.swift b/Sora/Views/Post/Details/PostDetailsView.swift
index 8fa8134..802abb6 100644
--- a/Sora/Views/Post/Details/PostDetailsView.swift
+++ b/Sora/Views/Post/Details/PostDetailsView.swift
@@ -31,6 +31,8 @@ struct PostDetailsView: View {
)
.frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .center)
.id(post.previewURL)
+ .padding(0)
+ .zIndex(0)
}
.frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .center)
.id(imageURL)
diff --git a/Sora/Views/Post/Grid/PostGridThumbnailView.swift b/Sora/Views/Post/Grid/PostGridThumbnailView.swift
index 0fe044a..7587002 100644
--- a/Sora/Views/Post/Grid/PostGridThumbnailView.swift
+++ b/Sora/Views/Post/Grid/PostGridThumbnailView.swift
@@ -1,3 +1,4 @@
+import NetworkImage
import SwiftUI
struct PostGridThumbnailView: View {
@@ -20,7 +21,7 @@ struct PostGridThumbnailView: View {
var body: some View {
VStack {
- AsyncImage(url: thumbnailURL) { image in
+ NetworkImage(url: thumbnailURL, transaction: Transaction(animation: .default)) { image in
image
.resizable()
.aspectRatio(contentMode: .fit)