Widget: Renaming

This commit is contained in:
Thomas Ricouard 2024-05-05 19:37:06 +02:00
parent ea31cda3c2
commit a6fd8d1137
4 changed files with 18 additions and 18 deletions

View file

@ -122,7 +122,7 @@
9FE6A42E2BD043A90055D388 /* RevenueCat in Frameworks */ = {isa = PBXBuildFile; productRef = 9FE6A42D2BD043A90055D388 /* RevenueCat */; }; 9FE6A42E2BD043A90055D388 /* RevenueCat in Frameworks */ = {isa = PBXBuildFile; productRef = 9FE6A42D2BD043A90055D388 /* RevenueCat */; };
9FF2FB622BE7F5D5001560CE /* HashtagPostsWidget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FF2FB602BE7F5A7001560CE /* HashtagPostsWidget.swift */; }; 9FF2FB622BE7F5D5001560CE /* HashtagPostsWidget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FF2FB602BE7F5A7001560CE /* HashtagPostsWidget.swift */; };
9FF2FB632BE7F5D9001560CE /* HashtagPostsWidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FF2FB5E2BE7F56F001560CE /* HashtagPostsWidgetConfiguration.swift */; }; 9FF2FB632BE7F5D9001560CE /* HashtagPostsWidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FF2FB5E2BE7F56F001560CE /* HashtagPostsWidgetConfiguration.swift */; };
9FF2FB672BE7F816001560CE /* LastestPostsUI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FF2FB652BE7F805001560CE /* LastestPostsUI.swift */; }; 9FF2FB672BE7F816001560CE /* PostsWidgetView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FF2FB652BE7F805001560CE /* PostsWidgetView.swift */; };
9FF2FB6A2BE7F84E001560CE /* SharedUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FF2FB682BE7F842001560CE /* SharedUtils.swift */; }; 9FF2FB6A2BE7F84E001560CE /* SharedUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FF2FB682BE7F842001560CE /* SharedUtils.swift */; };
9FFF677C299B7B2C00FE700A /* Notifications in Frameworks */ = {isa = PBXBuildFile; productRef = 9FFF677B299B7B2C00FE700A /* Notifications */; }; 9FFF677C299B7B2C00FE700A /* Notifications in Frameworks */ = {isa = PBXBuildFile; productRef = 9FFF677B299B7B2C00FE700A /* Notifications */; };
9FFF6780299B7D2B00FE700A /* DesignSystem in Frameworks */ = {isa = PBXBuildFile; productRef = 9FFF677F299B7D2B00FE700A /* DesignSystem */; }; 9FFF6780299B7D2B00FE700A /* DesignSystem in Frameworks */ = {isa = PBXBuildFile; productRef = 9FFF677F299B7D2B00FE700A /* DesignSystem */; };
@ -296,7 +296,7 @@
9FE3DB55296FEF5800628CB0 /* AppAccount */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = AppAccount; path = Packages/AppAccount; sourceTree = "<group>"; }; 9FE3DB55296FEF5800628CB0 /* AppAccount */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = AppAccount; path = Packages/AppAccount; sourceTree = "<group>"; };
9FF2FB5E2BE7F56F001560CE /* HashtagPostsWidgetConfiguration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HashtagPostsWidgetConfiguration.swift; sourceTree = "<group>"; }; 9FF2FB5E2BE7F56F001560CE /* HashtagPostsWidgetConfiguration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HashtagPostsWidgetConfiguration.swift; sourceTree = "<group>"; };
9FF2FB602BE7F5A7001560CE /* HashtagPostsWidget.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HashtagPostsWidget.swift; sourceTree = "<group>"; }; 9FF2FB602BE7F5A7001560CE /* HashtagPostsWidget.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HashtagPostsWidget.swift; sourceTree = "<group>"; };
9FF2FB652BE7F805001560CE /* LastestPostsUI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LastestPostsUI.swift; sourceTree = "<group>"; }; 9FF2FB652BE7F805001560CE /* PostsWidgetView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostsWidgetView.swift; sourceTree = "<group>"; };
9FF2FB682BE7F842001560CE /* SharedUtils.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SharedUtils.swift; sourceTree = "<group>"; }; 9FF2FB682BE7F842001560CE /* SharedUtils.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SharedUtils.swift; sourceTree = "<group>"; };
B0BAB49E29B3D7A9008F54D7 /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "zh-Hant.lproj/InfoPlist.strings"; sourceTree = "<group>"; }; B0BAB49E29B3D7A9008F54D7 /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "zh-Hant.lproj/InfoPlist.strings"; sourceTree = "<group>"; };
C4CBB90B298A0DA3007E1707 /* en-GB */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "en-GB"; path = "en-GB.lproj/InfoPlist.strings"; sourceTree = "<group>"; }; C4CBB90B298A0DA3007E1707 /* en-GB */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "en-GB"; path = "en-GB.lproj/InfoPlist.strings"; sourceTree = "<group>"; };
@ -662,7 +662,7 @@
9FF2FB642BE7F7FA001560CE /* Shared */ = { 9FF2FB642BE7F7FA001560CE /* Shared */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
9FF2FB652BE7F805001560CE /* LastestPostsUI.swift */, 9FF2FB652BE7F805001560CE /* PostsWidgetView.swift */,
9FF2FB682BE7F842001560CE /* SharedUtils.swift */, 9FF2FB682BE7F842001560CE /* SharedUtils.swift */,
); );
path = Shared; path = Shared;
@ -988,7 +988,7 @@
9F7788EE2BE78D7B004E6BEF /* TimelineFilterEntity.swift in Sources */, 9F7788EE2BE78D7B004E6BEF /* TimelineFilterEntity.swift in Sources */,
9F7788CC2BE652B1004E6BEF /* IceCubesAppWidgetsExtensionBundle.swift in Sources */, 9F7788CC2BE652B1004E6BEF /* IceCubesAppWidgetsExtensionBundle.swift in Sources */,
9F7788D02BE652B1004E6BEF /* LatestPostsWidgetConfiguration.swift in Sources */, 9F7788D02BE652B1004E6BEF /* LatestPostsWidgetConfiguration.swift in Sources */,
9FF2FB672BE7F816001560CE /* LastestPostsUI.swift in Sources */, 9FF2FB672BE7F816001560CE /* PostsWidgetView.swift in Sources */,
9FF2FB632BE7F5D9001560CE /* HashtagPostsWidgetConfiguration.swift in Sources */, 9FF2FB632BE7F5D9001560CE /* HashtagPostsWidgetConfiguration.swift in Sources */,
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;

View file

@ -6,14 +6,14 @@ import Models
import Timeline import Timeline
struct HashtagPostsWidgetProvider: AppIntentTimelineProvider { struct HashtagPostsWidgetProvider: AppIntentTimelineProvider {
func placeholder(in context: Context) -> LatestPostWidgetEntry { func placeholder(in context: Context) -> PostsWidgetEntry {
.init(date: Date(), .init(date: Date(),
timeline: .hashtag(tag: "Mastodon", accountId: nil), timeline: .hashtag(tag: "Mastodon", accountId: nil),
statuses: [.placeholder()], statuses: [.placeholder()],
images: [:]) images: [:])
} }
func snapshot(for configuration: HashtagPostsWidgetConfiguration, in context: Context) async -> LatestPostWidgetEntry { func snapshot(for configuration: HashtagPostsWidgetConfiguration, in context: Context) async -> PostsWidgetEntry {
if let entry = await timeline(for: configuration, context: context).entries.first { if let entry = await timeline(for: configuration, context: context).entries.first {
return entry return entry
} }
@ -23,11 +23,11 @@ struct HashtagPostsWidgetProvider: AppIntentTimelineProvider {
images: [:]) images: [:])
} }
func timeline(for configuration: HashtagPostsWidgetConfiguration, in context: Context) async -> Timeline<LatestPostWidgetEntry> { func timeline(for configuration: HashtagPostsWidgetConfiguration, in context: Context) async -> Timeline<PostsWidgetEntry> {
await timeline(for: configuration, context: context) await timeline(for: configuration, context: context)
} }
private func timeline(for configuration: HashtagPostsWidgetConfiguration, context: Context) async -> Timeline<LatestPostWidgetEntry> { private func timeline(for configuration: HashtagPostsWidgetConfiguration, context: Context) async -> Timeline<PostsWidgetEntry> {
guard let account = configuration.account, let hashgtag = configuration.hashgtag else { guard let account = configuration.account, let hashgtag = configuration.hashgtag else {
return Timeline(entries: [.init(date: Date(), return Timeline(entries: [.init(date: Date(),
timeline: .hashtag(tag: "Mastodon", accountId: nil), timeline: .hashtag(tag: "Mastodon", accountId: nil),
@ -61,7 +61,7 @@ struct HashtagPostsWidget: Widget {
AppIntentConfiguration(kind: kind, AppIntentConfiguration(kind: kind,
intent: HashtagPostsWidgetConfiguration.self, intent: HashtagPostsWidgetConfiguration.self,
provider: HashtagPostsWidgetProvider()) { entry in provider: HashtagPostsWidgetProvider()) { entry in
LatestPostsWidgetView(entry: entry) PostsWidgetView(entry: entry)
.containerBackground(Color("WidgetBackground").gradient, for: .widget) .containerBackground(Color("WidgetBackground").gradient, for: .widget)
} }
.configurationDisplayName("Hashtag timeline") .configurationDisplayName("Hashtag timeline")
@ -74,7 +74,7 @@ struct HashtagPostsWidget: Widget {
#Preview(as: .systemMedium) { #Preview(as: .systemMedium) {
HashtagPostsWidget() HashtagPostsWidget()
} timeline: { } timeline: {
LatestPostWidgetEntry(date: .now, PostsWidgetEntry(date: .now,
timeline: .hashtag(tag: "Matodon", accountId: nil), timeline: .hashtag(tag: "Matodon", accountId: nil),
statuses: [.placeholder(), .placeholder(), .placeholder(), .placeholder()], statuses: [.placeholder(), .placeholder(), .placeholder(), .placeholder()],
images: [:]) images: [:])

View file

@ -6,14 +6,14 @@ import Models
import Timeline import Timeline
struct LatestPostsWidgetProvider: AppIntentTimelineProvider { struct LatestPostsWidgetProvider: AppIntentTimelineProvider {
func placeholder(in context: Context) -> LatestPostWidgetEntry { func placeholder(in context: Context) -> PostsWidgetEntry {
.init(date: Date(), .init(date: Date(),
timeline: .home, timeline: .home,
statuses: [.placeholder()], statuses: [.placeholder()],
images: [:]) images: [:])
} }
func snapshot(for configuration: LatestPostsWidgetConfiguration, in context: Context) async -> LatestPostWidgetEntry { func snapshot(for configuration: LatestPostsWidgetConfiguration, in context: Context) async -> PostsWidgetEntry {
if let entry = await timeline(for: configuration, context: context).entries.first { if let entry = await timeline(for: configuration, context: context).entries.first {
return entry return entry
} }
@ -22,11 +22,11 @@ struct LatestPostsWidgetProvider: AppIntentTimelineProvider {
images: [:]) images: [:])
} }
func timeline(for configuration: LatestPostsWidgetConfiguration, in context: Context) async -> Timeline<LatestPostWidgetEntry> { func timeline(for configuration: LatestPostsWidgetConfiguration, in context: Context) async -> Timeline<PostsWidgetEntry> {
await timeline(for: configuration, context: context) await timeline(for: configuration, context: context)
} }
private func timeline(for configuration: LatestPostsWidgetConfiguration, context: Context) async -> Timeline<LatestPostWidgetEntry> { private func timeline(for configuration: LatestPostsWidgetConfiguration, context: Context) async -> Timeline<PostsWidgetEntry> {
guard let account = configuration.account, let timeline = configuration.timeline else { guard let account = configuration.account, let timeline = configuration.timeline else {
return Timeline(entries: [.init(date: Date(), return Timeline(entries: [.init(date: Date(),
timeline: .home, timeline: .home,
@ -80,7 +80,7 @@ struct LatestPostsWidget: Widget {
AppIntentConfiguration(kind: kind, AppIntentConfiguration(kind: kind,
intent: LatestPostsWidgetConfiguration.self, intent: LatestPostsWidgetConfiguration.self,
provider: LatestPostsWidgetProvider()) { entry in provider: LatestPostsWidgetProvider()) { entry in
LatestPostsWidgetView(entry: entry) PostsWidgetView(entry: entry)
.containerBackground(Color("WidgetBackground").gradient, for: .widget) .containerBackground(Color("WidgetBackground").gradient, for: .widget)
} }
.configurationDisplayName("Latest posts") .configurationDisplayName("Latest posts")
@ -93,7 +93,7 @@ struct LatestPostsWidget: Widget {
#Preview(as: .systemMedium) { #Preview(as: .systemMedium) {
LatestPostsWidget() LatestPostsWidget()
} timeline: { } timeline: {
LatestPostWidgetEntry(date: .now, PostsWidgetEntry(date: .now,
timeline: .home, timeline: .home,
statuses: [.placeholder(), .placeholder(), .placeholder(), .placeholder()], statuses: [.placeholder(), .placeholder(), .placeholder(), .placeholder()],
images: [:]) images: [:])

View file

@ -5,14 +5,14 @@ import DesignSystem
import Models import Models
import Timeline import Timeline
struct LatestPostWidgetEntry: TimelineEntry { struct PostsWidgetEntry: TimelineEntry {
let date: Date let date: Date
let timeline: TimelineFilter let timeline: TimelineFilter
let statuses: [Status] let statuses: [Status]
let images: [URL: UIImage] let images: [URL: UIImage]
} }
struct LatestPostsWidgetView : View { struct PostsWidgetView : View {
var entry: LatestPostsWidgetProvider.Entry var entry: LatestPostsWidgetProvider.Entry
@Environment(\.widgetFamily) var family @Environment(\.widgetFamily) var family