Name Description Size Coverage
ExternalAppLinkStatusBinding.kt Observes the current url from the [BrowserStore] and updates the [AppStore] to show a notification in the main menu when an external app can be opened for the current url. @param settings The settings to check if an external app was opened. @param appLinksUseCases The use cases for handling app links. @param appStore The application store for dispatching actions. @param browserStore The browser store to observe state changes. @param mainDispatcher The [CoroutineDispatcher] on which the state observation and updates will occur. Defaults to [Dispatchers.Main]. 2698 -
FindInPageBinding.kt A binding for observing the [AppState.showFindInPage] state in the [AppStore] and displaying the find in page feature. @param appStore The [AppStore] used to observe [AppState.showFindInPage]. @param onFindInPageLaunch Invoked when the find in page feature should be launched. @param mainDispatcher The [CoroutineDispatcher] on which the state observation and updates will occur. Defaults to [Dispatchers.Main]. 1741 -
HomepageTabBinding.kt A binding for adding a homepage ("about:home") tab whenever there are no tabs for the current browsing mode on cold boot and warm relaunch of the application, so that a tab is always available on startup. @param browserStore The [BrowserStore] to observe the tabs state from. @param browsingModeManager [BrowsingModeManager] used to determine the current browsing mode. @param fenixBrowserUseCases [FenixBrowserUseCases] used to add the homepage tab. @param repository [HomepageAsANewTabPreferencesRepository] used to access the homepage as a new tab preferences. @param mainDispatcher The [CoroutineDispatcher] used to observe the [browserStore]. 2547 -
SummarizeToolbarCFRBinding.kt A [BrowserStore] binding that observes the selected tab and shows a "Shake to Summarize" Contextual Feature Recommendation (CFR) in the toolbar when the page content is eligible for summarization for the first time. This Binding should be used in [org.mozilla.fenix.browser.BrowserFragment] to ensure that we don't show it in a custom tab. The CFR is shown only when all of the following conditions are met: - The selected tab is a normal (non-private) tab. - The feature discovery settings indicate the CFR should be shown. - The page is readerable and has finished loading. - The page content passes the summarization eligibility check (e.g. word count). - No other CFR is currently active in the toolbar. When the CFR is displayed, a [SummarizeDiscoveryEvent.CfrExposure] event is recorded. @param featureDiscovery Configuration controlling feature discovery state and events. @param browserToolbarStore The toolbar store used to dispatch CFR actions. @param eligibilityChecker Checks whether the current page content is eligible for summarization. @param browserStore The [BrowserStore] to observe for tab state changes. @param mainDispatcher The dispatcher used for main-thread work. @param ioDispatcher The dispatcher used for IO-bound work such as reading shared preferences. 5966 -
SummarizeToolbarHighlightBinding.kt Binding between [AppStore] and [BrowserStore] that determines if and when to add a toolbar notification for the "Summarize" feature 2478 -