From b2dcdc02c77089d867d08667e3fb39ce60b9ce45 Mon Sep 17 00:00:00 2001 From: Riley Testut Date: Tue, 4 Apr 2023 17:06:58 -0500 Subject: [PATCH] Dynamically disables interactive back gesture when viewing source header image Only disables gesture if touches are within headerContainerView to ensure back gesture works as expected majority of the time. --- .../HeaderContentViewController.swift | 24 ++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/AltStore/Components/HeaderContentViewController.swift b/AltStore/Components/HeaderContentViewController.swift index 3b8de9d5..c4da27c6 100644 --- a/AltStore/Components/HeaderContentViewController.swift +++ b/AltStore/Components/HeaderContentViewController.swift @@ -20,7 +20,8 @@ protocol ScrollableContentViewController: UIViewController class HeaderContentViewController : UIViewController, UIAdaptivePresentationControllerDelegate, - UIScrollViewDelegate + UIScrollViewDelegate, + UIGestureRecognizerDelegate { var tintColor: UIColor? { didSet { @@ -48,6 +49,8 @@ class HeaderContentViewController Bool + { + // Ignore interactive back gesture when viewing header, which means returning `true` to enable ignoreBackGestureRecognizer. + let disableBackGesture = self.isViewingHeader + return disableBackGesture + } + + func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool + { + return true + } } private extension HeaderContentViewController