-
Notifications
You must be signed in to change notification settings - Fork 36
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
IOS-7990: [Markets] Fix navigation issues on iOS 18 #3881
IOS-7990: [Markets] Fix navigation issues on iOS 18 #3881
Conversation
Signed-off-by: Andrey Fedorov <[email protected]>
Signed-off-by: Andrey Fedorov <[email protected]>
Signed-off-by: Andrey Fedorov <[email protected]>
mainBottomSheetUIManager | ||
.isShownPublisher | ||
.filter { $0 } | ||
.withWeakCaptureOf(self) | ||
.map { coordinator, isShown in | ||
return isShown ? coordinator.__marketsCoordinator : nil | ||
.sink { coordinator, _ in | ||
coordinator.setupMainBottomSheetCoordinatorIfNeeded() | ||
} | ||
.assign(to: \.marketsCoordinator, on: self, ownership: .weak) | ||
.store(in: &bag) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Надо лениво создавать координатор, чтобы шторка не была видима на экране логина
Этого можно было бы избежать, если бы AppCoordinatorView
дергала onChange(of: coordinator.isOverlayContentContainerShown)
для initial state, но это ios 17+
Проверил - при разлогине у меня на 17 все ок, но надо проверить разлогин и на 18
оранжевый цвет - для дебага
Untitled.mp4
…es_on_ios_18 Signed-off-by: Andrey Fedorov <[email protected]>
… ones are broken on iOS 18+ Signed-off-by: Andrey Fedorov <[email protected]>
.animation( | ||
.easeInOut(duration: viewModel.overlayContentHidingAnimationDuration), | ||
value: viewModel.overlayContentHidingProgress | ||
) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
implicit animations сломались на 18 оси
…es_on_ios_18 Signed-off-by: Andrey Fedorov <[email protected]>
e0d8780
to
3b66800
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
проверил на 18 - ок
Signed-off-by: Andrey Fedorov <[email protected]>
IOS-7990
Причина - при убирании из иерархии вьюх и последующем добавлении обратно nav view с уже открытым чилдом (деталкой маркетсов в данном случае) nav view восстанавливает весь навигационный стек с анимациями (на ios 17 и ниже было без анимаций, стек сразу восстанавливался).
Дело не в модельном слое, никакие координаторы/vm не умирают, то есть navigation links не меняют своего стейта - а в SUI
Поэтому нормальное и красивое убираение шита через published item пришлось заменить на флажок и скрытие вьюхи