Skip to content

Commit 85bca04

Browse files
committed
alright this is better ong
1 parent 0861917 commit 85bca04

4 files changed

Lines changed: 39 additions & 32 deletions

File tree

Sora.xcodeproj/project.pbxproj

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
139935662D468C450065CEFF /* ModuleManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 139935652D468C450065CEFF /* ModuleManager.swift */; };
3636
1399FAD42D3AB38C00E97C31 /* SettingsViewLogger.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1399FAD32D3AB38C00E97C31 /* SettingsViewLogger.swift */; };
3737
1399FAD62D3AB3DB00E97C31 /* Logger.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1399FAD52D3AB3DB00E97C31 /* Logger.swift */; };
38+
13B7F4C12D58FFDD0045714A /* Shimmer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13B7F4C02D58FFDD0045714A /* Shimmer.swift */; };
3839
13D842522D4523B800EBBFA6 /* Drops in Frameworks */ = {isa = PBXBuildFile; productRef = 13D842512D4523B800EBBFA6 /* Drops */; };
3940
13D842552D45267500EBBFA6 /* DropManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13D842542D45267500EBBFA6 /* DropManager.swift */; };
4041
13D99CF72D4E73C300250A86 /* ModuleAdditionSettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13D99CF62D4E73C300250A86 /* ModuleAdditionSettingsView.swift */; };
@@ -77,6 +78,7 @@
7778
139935652D468C450065CEFF /* ModuleManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ModuleManager.swift; sourceTree = "<group>"; };
7879
1399FAD32D3AB38C00E97C31 /* SettingsViewLogger.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SettingsViewLogger.swift; sourceTree = "<group>"; };
7980
1399FAD52D3AB3DB00E97C31 /* Logger.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Logger.swift; sourceTree = "<group>"; };
81+
13B7F4C02D58FFDD0045714A /* Shimmer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Shimmer.swift; sourceTree = "<group>"; };
8082
13D842542D45267500EBBFA6 /* DropManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DropManager.swift; sourceTree = "<group>"; };
8183
13D99CF62D4E73C300250A86 /* ModuleAdditionSettingsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ModuleAdditionSettingsView.swift; sourceTree = "<group>"; };
8284
13DC0C412D2EC9BA00D0F966 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
@@ -140,6 +142,7 @@
140142
isa = PBXGroup;
141143
children = (
142144
13103E8D2D58E04A000F0673 /* SkeletonCell.swift */,
145+
13B7F4C02D58FFDD0045714A /* Shimmer.swift */,
143146
);
144147
path = SkeletonCells;
145148
sourceTree = "<group>";
@@ -419,6 +422,7 @@
419422
135CCBE22D4D1138008B9C0E /* SettingsViewPlayer.swift in Sources */,
420423
13DC0C462D302C7500D0F966 /* VideoPlayer.swift in Sources */,
421424
1399FAD62D3AB3DB00E97C31 /* Logger.swift in Sources */,
425+
13B7F4C12D58FFDD0045714A /* Shimmer.swift in Sources */,
422426
139935662D468C450065CEFF /* ModuleManager.swift in Sources */,
423427
133D7C902D2BE2640075467E /* SettingsView.swift in Sources */,
424428
130C6BFA2D53AB1F00DC1432 /* SettingsViewData.swift in Sources */,
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
//
2+
// Shimmer.swift
3+
// Sora
4+
//
5+
// Created by Francesco on 09/02/25.
6+
//
7+
8+
import SwiftUI
9+
10+
struct Shimmer: ViewModifier {
11+
@State private var phase: CGFloat = 0
12+
13+
func body(content: Content) -> some View {
14+
content
15+
.overlay(
16+
Rectangle()
17+
.fill(
18+
LinearGradient(
19+
gradient: Gradient(colors: [Color.clear, Color.white.opacity(0.4), Color.clear]),
20+
startPoint: .top,
21+
endPoint: .bottom
22+
)
23+
)
24+
.rotationEffect(.degrees(30))
25+
.offset(x: self.phase * 350)
26+
)
27+
.mask(content)
28+
.onAppear {
29+
withAnimation(.linear(duration: 1.5).repeatForever(autoreverses: false)) {
30+
self.phase = 1
31+
}
32+
}
33+
}
34+
}

Sora/Views/HomeView.swift

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -8,37 +8,6 @@
88
import SwiftUI
99
import Kingfisher
1010

11-
struct Shimmer: ViewModifier {
12-
@State private var phase: CGFloat = -1
13-
14-
func body(content: Content) -> some View {
15-
content
16-
.overlay(
17-
Rectangle()
18-
.fill(
19-
LinearGradient(
20-
gradient: Gradient(stops: [
21-
.init(color: Color.white.opacity(0.0), location: 0.3),
22-
.init(color: Color.white.opacity(0.6), location: 0.5),
23-
.init(color: Color.white.opacity(0.0), location: 0.7)
24-
]),
25-
startPoint: .leading,
26-
endPoint: .trailing
27-
)
28-
)
29-
.rotationEffect(.degrees(20))
30-
.offset(x: self.phase * 300)
31-
.blendMode(.plusLighter)
32-
)
33-
.mask(content)
34-
.onAppear {
35-
withAnimation(Animation.linear(duration: 1.5).repeatForever(autoreverses: false)) {
36-
self.phase = 1
37-
}
38-
}
39-
}
40-
}
41-
4211
struct HomeView: View {
4312
@State private var aniListItems: [AniListItem] = []
4413
@State private var trendingItems: [AniListItem] = []

Sora/Views/SearchView.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ struct SearchView: View {
104104
LazyVGrid(columns: [GridItem(.adaptive(minimum: 150))], spacing: 16) {
105105
ForEach(searchItems) { item in
106106
NavigationLink(destination: MediaInfoView(title: item.title, imageUrl: item.imageUrl, href: item.href, module: selectedModule!)) {
107-
VStack(alignment: .leading, spacing: 8) {
107+
VStack {
108108
KFImage(URL(string: item.imageUrl))
109109
.resizable()
110110
.aspectRatio(2/3, contentMode: .fill)

0 commit comments

Comments
 (0)