Screen views will no longer fire if the topmost view controller is the same. This prevents an issue where embedded view controllers would mistakenly fire multiple events, as each would receive a call to viewDidAppear despite the top view controller being the same.
This also cleans up and improves thread safety for the UIKitScreenViews class.
Checklist
[X] Does your PR title have the correct title format?
Summary
Screen views will no longer fire if the topmost view controller is the same. This prevents an issue where embedded view controllers would mistakenly fire multiple events, as each would receive a call to viewDidAppear despite the top view controller being the same.
This also cleans up and improves thread safety for the UIKitScreenViews class.
Checklist