Catalyst: Fix gallery presentation animation not working

This commit is contained in:
Shadowfacts 2024-03-31 12:35:10 -04:00
parent d96ec2a732
commit f3cf2dd8ec
2 changed files with 9 additions and 5 deletions

View File

@ -293,7 +293,7 @@ class GalleryItemViewController: UIViewController {
setNeedsUpdateOfHomeIndicatorAutoHidden()
}
private func updateZoomScale(resetZoom: Bool) {
func updateZoomScale(resetZoom: Bool) {
guard scrollAndZoomEnabled else {
scrollView.maximumZoomScale = 1
scrollView.minimumZoomScale = 1

View File

@ -38,7 +38,12 @@ class GalleryPresentationAnimationController: NSObject, UIViewControllerAnimated
}
let container = transitionContext.containerView
itemViewController.view.layoutIfNeeded()
to.view.frame = container.bounds
container.addSubview(to.view)
container.layoutIfNeeded()
// Make sure the zoom scale is updated before getting the content view frame, since it needs to take into account the correct transform.
itemViewController.updateZoomScale(resetZoom: true)
let sourceFrameInContainer = container.convert(sourceView.bounds, from: sourceView)
let destFrameInContainer = container.convert(itemViewController.content.view.bounds, from: itemViewController.content.view)
@ -67,9 +72,8 @@ class GalleryPresentationAnimationController: NSObject, UIViewControllerAnimated
dimmingView.frame = container.bounds
dimmingView.layer.opacity = 0
container.addSubview(dimmingView)
container.addSubview(content.view)
container.addSubview(to.view)
container.insertSubview(content.view, belowSubview: to.view)
container.insertSubview(dimmingView, belowSubview: content.view)
to.view.backgroundColor = nil
to.view.layer.opacity = 0