[iOS] Establish GLIC Flow For FRE/PageActionMenu GLIC Button GLICCoordinator starts from one of two entry points: 1) The promo manager triggers the GLIC Promo 2) The PageActionMenu GLIC Button entry point This CL creates the following behavior, if we enter from: - entry point 1, the promo view is shown. - entry point 2, the consent view is shown if a user hasn't granted consent - entry point 2 and consent has been granted, `GLICOverlay` will be displayed Additionally, this CL: - Enables the feature engagement flag so GLIC components can properly use the Feature Engagement Tracker(FET) - Doesn't show the GLIC promo if the promo was shown already - Notifies FET to update the GLIC promo pref value For the first entry point, the old logic in GLICNavigationController would open GLICPromo. With this CL, GLICCoordinator and GLICNavigationController will have an added property to check if we should skip over the GLIC Promo and only show GLIC Consent. This use case is important for the second entry point since the promo isn't shown but the consent view is. Also side note, the GLIC promo currently doesn't have any other triggers besides showing as a promo which makes logic simpler as we only need to check Bug: 419064727 Change-Id: Ia0a9c2dce196e28aa48c18caaf18e4bd325f9415 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6580382 Commit-Queue: Joemer Ramos <joemerramos@google.com> Reviewed-by: Robbie Gibson <rkgibson@google.com> Cr-Commit-Position: refs/heads/main@{#1466707}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
To check out the source code locally, don't use git clone! Instead, follow the instructions on how to get the code.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure.
For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.
If you found a bug, please file it at https://crbug.com/new.