Currently, the floating button is not shown when the SDK is attempting to reconnect to a previous session (immediately after app launch) until the re-connection is successful. This behavior in 3.x may cause a confusion when there is a prolonged time taken during reconnection - example:
SDK connects to a session -> Floating button is shown
App is closed
Device gets disconnected from network
App is launched again when disconnected from network -> Floating button is not shown (despite active)
a significant amount of time passes
Device gets is connected to network
SDK connects to a session -> Floating button is shown
The bug occurs because reconnection flow attempts to update the graphic for a button that has never been active/shown.
This is a regression from 2.x where the floating button shows up (with a disconnected icon) indicating that reconnection is in progress.
This PR fixes the behavior to always show the floating button during reconnecting state before updating to show disconnected graphic and always remove the floating button on any disconnection.
How Has This Been Tested?
Unit tests
Manual test with test app
Screenshots (if appropriate):
Types of changes
[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
Description
Currently, the floating button is not shown when the SDK is attempting to reconnect to a previous session (immediately after app launch) until the re-connection is successful. This behavior in 3.x may cause a confusion when there is a prolonged time taken during reconnection - example:
The bug occurs because reconnection flow attempts to update the graphic for a button that has never been active/shown. This is a regression from 2.x where the floating button shows up (with a disconnected icon) indicating that reconnection is in progress. This PR fixes the behavior to always show the floating button during reconnecting state before updating to show disconnected graphic and always remove the floating button on any disconnection.
How Has This Been Tested?
Screenshots (if appropriate):
Types of changes
Checklist: