Skip to content

Commit

Permalink
Fix back button tap for older iOS APIs (#13204)
Browse files Browse the repository at this point in the history
* Fix back button tap for older iOS APIs

* - fix ios14
  • Loading branch information
PureWeen authored Feb 9, 2023
1 parent 8f5fc97 commit 47802aa
Showing 1 changed file with 10 additions and 4 deletions.
14 changes: 10 additions & 4 deletions src/TestUtils/src/DeviceTests/AssertionExtensions.iOS.cs
Original file line number Diff line number Diff line change
Expand Up @@ -575,10 +575,16 @@ public static void TapBackButton(this UINavigationBar uINavigationBar)
{
var item = uINavigationBar.GetBackButton();

var recognizer = item!.GestureRecognizers!.OfType<UITapGestureRecognizer>().FirstOrDefault();
_ = recognizer ?? throw new Exception("Unable to Back Button TapGestureRecognizer");

recognizer.State = UIGestureRecognizerState.Ended;
var recognizer = item?.GestureRecognizers?.OfType<UITapGestureRecognizer>()?.FirstOrDefault();
if (recognizer is null && item is UIControl control)
{
control.SendActionForControlEvents(UIControlEvent.TouchUpInside);
}
else
{
_ = recognizer ?? throw new Exception("Unable to figure out how to tap back button");
recognizer.State = UIGestureRecognizerState.Ended;
}
}

public static string? GetToolbarTitle(this UINavigationBar uINavigationBar)
Expand Down

0 comments on commit 47802aa

Please sign in to comment.