[5.0.0] Fix IAM display & dismiss bugs #1799
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
One Line Summary
This PR addresses two In App Message bugs:
InAppMessagesManager.attemptToShowInAppMessage: There is an IAM currently showing!
messageWasDismissed
returning early if!_lifecycleCallback.hasSubscribers
Details
Motivation
Issue 1
Issue is reproducible following these steps:
addTrigger
methodInAppMessagesManager.attemptToShowInAppMessage: There is an IAM currently showing!
setting
inAppMessageIdShowing
back tonull
inattemptToShowInAppMessage
allows IAM_2 to successfully display.Issue 2
This issue was caught during a pair programming session where the early return would interfere with
_lifecycleCallback.fireOnMain
being called.Scope
Changes affect displaying and dismissing IAMs, specifically
attemptToShowInAppMessage
&messageWasDismissed
in InAppMessagesManager.OPTIONAL - Other
OPTIONAL - Feel free to add any other sections or sub-sections that can explain your PR better.
Testing
Manual testing
Tested Issue 1 to ensure that second IAM successfully displays.
Affected code checklist
Checklist
Overview
Testing
Final pass
This change is