From bc5c8f60d4f9a0dbd66243008563a86fa1a7c652 Mon Sep 17 00:00:00 2001 From: Peter <> Date: Mon, 10 Jun 2019 20:34:02 +0100 Subject: [PATCH] Expect ready on main queue --- Display/NavigationController.swift | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/Display/NavigationController.swift b/Display/NavigationController.swift index 139f6e08cf..5477849529 100644 --- a/Display/NavigationController.swift +++ b/Display/NavigationController.swift @@ -803,7 +803,9 @@ open class NavigationController: UINavigationController, ContainableController, let appliedLayout = controllerLayout.withUpdatedInputHeight(controller.hasActiveInput ? controllerLayout.inputHeight : nil) controller.containerLayoutUpdated(appliedLayout, transition: .immediate) - strongSelf.currentPushDisposable.set((controller.ready.get() |> take(1)).start(next: { _ in + strongSelf.currentPushDisposable.set((controller.ready.get() + |> deliverOnMainQueue + |> take(1)).start(next: { _ in guard let strongSelf = self else { return } @@ -848,7 +850,9 @@ open class NavigationController: UINavigationController, ContainableController, controllerLayout.inputHeight = nil controller.containerLayoutUpdated(controllerLayout, transition: .immediate) } - self.currentPushDisposable.set((controller.ready.get() |> take(1)).start(next: { [weak self] _ in + self.currentPushDisposable.set((controller.ready.get() + |> deliverOnMainQueue + |> take(1)).start(next: { [weak self] _ in if let strongSelf = self { ready?.set(true) var controllers = strongSelf.viewControllers @@ -877,7 +881,9 @@ open class NavigationController: UINavigationController, ContainableController, controllerLayout.inputHeight = nil controller.containerLayoutUpdated(controllerLayout, transition: .immediate) } - strongSelf.currentPushDisposable.set((controller.ready.get() |> take(1)).start(next: { _ in + strongSelf.currentPushDisposable.set((controller.ready.get() + |> deliverOnMainQueue + |> take(1)).start(next: { _ in guard let strongSelf = self else { return } @@ -901,7 +907,9 @@ open class NavigationController: UINavigationController, ContainableController, controllerLayout.inputHeight = nil controller.containerLayoutUpdated(controllerLayout, transition: .immediate) } - strongSelf.currentPushDisposable.set((controller.ready.get() |> take(1)).start(next: { _ in + strongSelf.currentPushDisposable.set((controller.ready.get() + |> deliverOnMainQueue + |> take(1)).start(next: { _ in guard let strongSelf = self else { return }