Reusing the same taskAffinity makes sure that we are launching into a potentially already
existing task from Fennec. Without that we may spawn a new task and will show up twice
in "Recent apps" - with one entry still having a fennec screenshot.
This new event will be sent when the user has successfully migrated from Fennec
to Fenix.
This event will only be sent to Leanplum and not to the other telemetry
services like Glean or Adjust.
Co-authored-by: ValentinTimisica <valentin.timisica@softvision.ro>
In order to ensure that the user's migration screen is not being bypassed by mistake, we handle the
migration's store COMPLETED state the same way we handle the MIGRATING state.
We can do this because we can treat the initial state (NONE) as being either a fresh start of the
app, either the user's intention of starting the home activity.
Before this change, if the app was being open from the shortcut after the migration was complete,
the user would have been encountered the home activity instead of the migration one.
* With this patch fenix build variants will launch HomeActivity directly from the launcher.
This will get rid of the performance regression outlined in #7818.
* Fennec build variants will launch into MigrationDecisionActivity which will show the
migration UI or launch normally into the app. This is faster than going through
IntentReceiverActivity (measured and perceived).