server switcher is broken
This commit is contained in:
@@ -60,7 +60,7 @@ final class Store {
|
||||
var todoBusy: [String: String] = [:]
|
||||
var pickedMembers: [String: String] = [:]
|
||||
private(set) var drafts: Drafts?
|
||||
let images = ImageDrafts()
|
||||
let images: ImageDrafts
|
||||
let imageCache = ImageCache()
|
||||
let events = Listeners<ByreEvent>()
|
||||
let paneFocus: PaneFocus
|
||||
@@ -74,8 +74,9 @@ final class Store {
|
||||
@ObservationIgnored private var stopped = false
|
||||
@ObservationIgnored var changesMemory = ChangesMemory()
|
||||
|
||||
init(api: API) {
|
||||
init(api: API, images: ImageDrafts) {
|
||||
self.api = api
|
||||
self.images = images
|
||||
leadFeed = Feed(shown: { true })
|
||||
paneFocus = PaneFocus(api: api)
|
||||
remote = Remote(api: api)
|
||||
@@ -90,8 +91,8 @@ final class Store {
|
||||
await paneFocus.leave()
|
||||
}
|
||||
|
||||
func loadDrafts() {
|
||||
drafts = Drafts(origin: api.origin, login: me!.login)
|
||||
func loadDrafts(from old: Store?) {
|
||||
drafts = old?.drafts ?? Drafts(origin: api.origin, login: me!.login)
|
||||
drafts!.prune(self)
|
||||
}
|
||||
|
||||
@@ -565,13 +566,14 @@ final class Store {
|
||||
})
|
||||
}
|
||||
|
||||
func startGlobalStream(after: Int64) {
|
||||
func startGlobalStream(after: Int64, reconnected: @escaping () -> Void) {
|
||||
globalStream = EventStream(api: api, after: after, lead: false, onEvent: { [weak self] ev in
|
||||
self?.handleEvent(ev)
|
||||
}, onState: { [weak self] up in
|
||||
self?.connected = up
|
||||
if up {
|
||||
self?.paneFocus.reconnected()
|
||||
reconnected()
|
||||
}
|
||||
}, onReady: {})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user