← All repositories

listless

A simple list app for Apple platforms

git clone https://code.inqk.net/listless.git


ListlessWatch/ListlessWatchApp.swift (1283B)

1import SwiftUI
2
3@main
4struct ListlessWatchApp: App {
5    private let persistenceController: PersistenceController
6    private let keyValueSyncBridge = KeyValueSyncBridge(keys: ["listName", "colorTheme"])
7
8    init() {
9        let args = ProcessInfo.processInfo.arguments
10        let isUITesting = args.contains("UI_TESTING")
11        persistenceController = isUITesting ? PersistenceController(inMemory: true) : .shared
12        keyValueSyncBridge.start()
13
14        if isUITesting, args.contains("SCREENSHOT_SEED") {
15            let store = ItemStore(persistenceController: persistenceController)
16            try? store.createItem(title: "Make smartband", sortOrder: 1000)
17            try? store.createItem(title: "Add custom faces", sortOrder: 2000)
18            let item = try? store.createItem(title: "Focus on fitness", sortOrder: 3000)
19            if let item { try? store.complete(itemID: item.id) }
20            try? store.save()
21        }
22    }
23
24    var body: some Scene {
25        WindowGroup {
26            ItemListView(
27                store: ItemStore(persistenceController: persistenceController),
28                syncMonitor: persistenceController.syncMonitor
29            )
30            .environment(\.managedObjectContext, persistenceController.viewContext)
31        }
32    }
33}