Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Firefox/mobile/android/android-components/docs/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 319 kB image not shown  

SSL changelog.md   Sprache: unbekannt

 
rahmenlose Ansicht.md DruckansichtUnknown {[0] [0] [0]}zum Wurzelverzeichnis wechseln

---
layout: page
title: Changelog
permalink: /changelog/
---

# 136.0 (In Development)
* **support-ktx**
    * �� New `ExpandablePrompt` interface implemented by `AddressSelectBar`, `CreditCardSelectBar` to inform when it is expanded or collapsed. [Bug 19010409](https://bugzilla.mozilla.org/show_bug.cgi?id=19010409).

# 135.0
* **support-ktx**
    * �� `Context.setApplicationNightMode()` will apply the provided night mode on all API levels and persist it on Android 31+ so that on new launches the splashscreen matches. [Bug 1919488](https://bugzilla.mozilla.org/show_bug.cgi?id=1919488)
* **feature-downloads**
    * `AbstractFetchDownloadService.createOpenFileIntent` will no longer create an intent to open PDF files from the caller application if it can open PDFs. The user will be prompted to choose an application. See [Bug 1941609](https://bugzilla.mozilla.org/show_bug.cgi?id=1941609).
* **feature-prompts**
    * �� New `ToggleablePrompt` interface implemented by `AddressSelectBar`, `CreditCardSelectBar` `LoginSelectBar` and `SuggestStrongPasswordBar` to inform when these are shown or hidden. [Bug 1909746](https://bugzilla.mozilla.org/show_bug.cgi?id=1909746).
    * �� New `ExpandablePrompt` interface implemented by `LoginSelectBar` to inform when it is expanded or collapsed. [Bug 1909746](https://bugzilla.mozilla.org/show_bug.cgi?id=1909746).

# 134.0
* **browser-state**
  * �� Added `DownloadState.isPdf` property to indicate whether the file associated with the download is a PDF. See [Bug 1920092](https://bugzilla.mozilla.org/show_bug.cgi?id=1920092).

* **concept-storage**
  * �� Exposed `lastModified` property for `BookmarkNode`s that includes timestamp data for the last time the node was modified. [Bug 1928444](https://bugzilla.mozilla.org/show_bug.cgi?id=1928444)

* **feature-downloads**
  * `AbstractFetchDownloadService.createOpenFileIntent` will create an intent to open PDF files from the caller application if it can open PDFs. See [Bug 1920092](https://bugzilla.mozilla.org/show_bug.cgi?id=1920092).
  * `AbstractFetchDownloadService.openFile` will open PDF files from the caller application if it can open PDFs. See [Bug 1920092](https://bugzilla.mozilla.org/show_bug.cgi?id=1920092).

* **browser-toolbar**
    * Added internal data class `DisplayMargins` in `DisplayToolbar` class that can be used to specify margins for `DisplayToolbar`'s views
    * Added `setUrlBackgroundMargins` method in `DisplayToolbar` class that client apps can use to specify custom `DisplayMargins` for the `background` view. [Bug 1927778](https://bugzilla.mozilla.org/show_bug.cgi?id=1927778)

* **lib-crash**
  * ⚠️ **Breaking change**: Crash database functions dealing with unsent crashes have been renamed and now require a timestamp parameter as the start of the range to search for unsent crashes.

# 133.0
* **browser-store**
    * Adds `desktopMode` property to the `BrowserStore` to know whether or not browsing is in desktop mode. The pre-existing Action to update a tab's desktop mode has been renamed to disambiguate its intended use case. [Bug 1910768](https://bugzilla.mozilla.org/show_bug.cgi?id=1910768)

* **browser-errorpages**
  * �� Vertically center content of all error pages. Update image and text of no internet connection error page. [Bug 1921460](https://bugzilla.mozilla.org/show_bug.cgi?id=1921460)

* **browser-engine-gecko**
  * Added `WebExtensionInstallException.SoftBlocked` to handle the `ERROR_SOFT_BLOCKED` error returned by Gecko.
  * Adds support for enabling desktop mode browsing at the time of the engine session's creation.  [Bug 1910768](https://bugzilla.mozilla.org/show_bug.cgi?id=1910768)

* **support-ktx**
  * �� `Window.setupPersistentInsets()` will setup handling persistent insets instead of the framework to allow for custom handling of dynamic insets [Bug 1911042](https://bugzilla.mozilla.org/show_bug.cgi?id=1911042)
  * �� `ImeInsetsSynchronizer` allows synchronizing the resize animation for any View which should be shown at the top of the keyboard while this is showing or hiding. [Bug 1911042](https://bugzilla.mozilla.org/show_bug.cgi?id=1911042)

* **ui-widgets**
  * �� New `mozac_material_ripple_minimum_interaction_size` drawable for a 48dp ripple to be used when `selectableItemBackgroundBorderless` is too big and `selectableItemBackground` is too small. [Bug 1920554](https://bugzilla.mozilla.org/show_bug.cgi?id=1920554).

# 132.0
* **feature-awesomebar**
  * The `onCancelEditing` now returns a result based on the `onStartEditing` and `onStopEditing` callback. [Bug 1917496](https://bugzilla.mozilla.org/show_bug.cgi?id=1917496)

* **support-ktx**:
    * ⚠️ `Int.dpToPx` will round the values to the nearest integer, instead of always rounding down. [Bug 1912988](https://bugzilla.mozilla.org/show_bug.cgi?id=1912988)

* **support-utils**
  * Added a `ColorUtils.calculateAlphaFromPercentage()` helper function to calculate the alpha value based on opacity. [Bug 1906795](https://bugzilla.mozilla.org/show_bug.cgi?id=1906795)

* **lib-crash**
  * Adds `CrashReporter.hasUnsentCrashReports()` method, allowing the caller to find out if there is unsent crashes. [Bug 1904974](https://bugzilla.mozilla.org/show_bug.cgi?id=1904974)
  * Adds `CrashReporter.unsentCrashReports()` method, allowing the caller to fetch all unsent crashes. [Bug 1904974](https://bugzilla.mozilla.org/show_bug.cgi?id=1904974)
  * Adds Store primitives (State, Action, Middleware) to be able to drive the crash reporter UI. [Bug 1905774](https://bugzilla.mozilla.org/show_bug.cgi?id=1905774)
  * Adds new parameter `useLegacyReporting` when initializing a `CrashReporter`. [Bug 1905774](https://bugzilla.mozilla.org/show_bug.cgi?id=1905774)

* **feature-session**:
  * �� `FullscreenFeature.isFullscreen` now reports the new value if evaluated in the `fullScreenChanged` callback. [Bug 1918757](https://bugzilla.mozilla.org/show_bug.cgi?id=1918757)

# 131.0
* **All components**
  * ⚠️Increased `compileSdkVersion` to 35 (Android 15)

* **browser-state**
  * �� New `isPdf` property for `ContentState` to inform whether the current page is a pdf or not. [Bug 1817810](https://bugzilla.mozilla.org/show_bug.cgi?id=1817810)

# 130.0

* **ui-widgets**
  * ⚠️ **Breaking change**: `SnackbarDelegate` now supports passing whether the snackbar should be shown/styled for an error. [Bug 1906657](https://bugzilla.mozilla.org/show_bug.cgi?id=1906657)
  * ⚠️ **Breaking change**: `SnackbarDelegate` has a new method that allows passing in Strings for the snackbar text and action, not just string resource ids. [Bug 1892762](https://bugzilla.mozilla.org/show_bug.cgi?id=1892762).
  * `DefaultSnackbarDelegate` will allow passing in Strings for the snackbar text and action beside string resource ids. [Bug 1892762](https://bugzilla.mozilla.org/show_bug.cgi?id=1892762).

* **feature-prompts**:
  * ⚠️ **Breaking change**: `FullScreenNotification` interface is now implemented using a `FullScreenNotificationToast`. `FullScreenNotificationDialog` has been removed, see [Bug 1902996](https://bugzilla.mozilla.org/show_bug.cgi?id=1902996).

* **feature-customtabs**
  * ⚠️ **Breaking change**: `CustomTabsToolbarFeature.updateTheme` was replaced with `CustomTabsToolbarFeature.customTabsColorsConfig` to allow more control over which UI elements should be themed or not. [Bug 1904325](https://bugzilla.mozilla.org/show_bug.cgi?id=1904325)
  * �� New `CustomTabConfig.getConfiguredColorSchemeParams` and `ColorSchemeParams?.getToolbarContrastColor` to help get the colors specified in custom tabs configurations. [Bug 1904325](https://bugzilla.mozilla.org/show_bug.cgi?id=1904325)
  * �� New `BrowserMenuBuilder?.addCustomMenuItems` method for populating the current menu builder with custom tabs items specified in the custom tabs configuration. [Bug 1904325](https://bugzilla.mozilla.org/show_bug.cgi?id=1904325)

* **browser-engine-gecko**
  * Added `fingerprintingProtection` and `fingerprintingProtectionPrivateBrowsing` to settings. This allows user to toggle `privacy.fingerprintingProtection` and `privacy.fingerprintingProtection.pbmode` pref. [bug #1878911](https://bugzilla.mozilla.org/show_bug.cgi?id=1878911)

* **concept-engine**
  * Added `fingerprintingProtection` and `fingerprintingProtectionPrivateBrowsing` to settings. This allows user to toggle `privacy.fingerprintingProtection` and `privacy.fingerprintingProtection.pbmode` pref. [bug #1878911](https://bugzilla.mozilla.org/show_bug.cgi?id=1878911)

* **feature-accounts**
  * Added support for logout and account deletion web channel messages that update the `FxaAccountManager` and also dismiss any UI affordance in applications.

* **support-test**
  * ⚠️ **Breaking change**: `expectException` now takes the expected exception class as a type parameter, instead of an argument, and returns the caught exception ([Bug 1908065](https://bugzilla.mozilla.org/show_bug.cgi?id=1908065)).

* **browser-storage-sync**
  * ⚠️ **Breaking change**: The type parameters of `RemoteTabsCommandQueue.CommandSender` are now `<T, U>`, where `T : DeviceCommandOutgoing`, and `U` is the result of sending the command ([Bug 1908065](https://bugzilla.mozilla.org/show_bug.cgi?id=1908065)).
  * ⚠️ **Breaking change**: `RemoteTabsCommandQueue.SendResult` has been renamed to `SendCloseTabsResult`, and has a new `RetryFor` variant ([Bug 1908065](https://bugzilla.mozilla.org/show_bug.cgi?id=1908065)).

* **service-firefox-accounts**
  * �� `SendCommandException` is now a sealed class, with `TabsNotClosed` and `Other` variants ([Bug 1908065](https://bugzilla.mozilla.org/show_bug.cgi?id=1908065)).
  * ⚠️ **Breaking change**: `FxaDeviceConstellation.sendCommandToDevice()` now throws an instance of `SendCommandException.TabsNotClosed` if some URLs in a `DeviceCommandOutgoing.CloseTab` couldn't be sent in the command ([Bug 1908065](https://bugzilla.mozilla.org/show_bug.cgi?id=1908065)).

# 129.0

* **browser-engine-gecko**
    * Added `WebExtensionInstallException.AdminInstallOnly` to handle the `ERROR_ADMIN_INSTALL_ONLY` error returned by Gecko when the add-on can only be installed via Enterprise Policies.

* **browser-icons**
  * Increased size of single-letter fallback-favicon, see [Bug 1905393](https://bugzilla.mozilla.org/show_bug.cgi?id=1905393).

* **feature-accounts-push**
  * `CloseTabsUseCases.close()` now returns an `UndoableOperation`.
  * �� New `CloseTabsCommandReceiver` class for processing "close synced tabs" commands received from other devices.
  * ⚠️ **Breaking change**: `CloseTabsFeature()` now takes a `CloseTabsCommandReceiver` instead of an `onTabsClosed` callback.

* **lib-state**
  * Introduce a `UiStore` that is similar to a regular `Store` but all the actions are dispatched and processed _immediately_ on the Main thread.
    * ⚠️ **Note:** Using a `UiStore` means that long running work will block the main thread like any other long running UI work would. Ensure you are dispatching async work to an appropriate background dispatcher.

# 128.0

* **browser-toolbar**
  * Added new data classes `CustomTabsToolbarButtonConfig` and `CustomTabsToolbarListeners` to `CustomTabsToolbarFeature`, see [Bug 1897811](https://bugzilla.mozilla.org/show_bug.cgi?id=1897811).
  * Added new parameters for `showRefreshButton` and `showMenu` to `CustomTabsToolbarButtonConfig`, see [Bug 1897811](https://bugzilla.mozilla.org/show_bug.cgi?id=1897811).
  * Added a new parameter for `refreshListener` and moved `shareListener` to `CustomTabsToolbarListeners`, see [Bug 1897811](https://bugzilla.mozilla.org/show_bug.cgi?id=1897811).

* **browser-state**, **browser-engine-gecko**
    * Added a new parameter `adjustPriority` to `onCheckForFormData`, `UpdateHasFormDataAction` and `checkForFormData` to specify whether or not to adjust session priority after checking from data. [Bug 1893846](https://bugzilla.mozilla.org/show_bug.cgi?id=1893846)

* **concept-sync**
  * �� New `DeviceCommandQueue` interface for implementing a queue that holds device commands until they're ready to be sent.

* **browser-storage-sync**
  * �� New `RemoteTabsCommandQueue` class for persisting outgoing remote tabs commands.

* **feature-syncedtabs**
  * �� New `SyncedTabsCommands` class that sends synced tabs commands to other devices when flushed.
  * �� New `SyncedTabsCommandsFlushScheduler` class for scheduling a `SyncedTabsCommandsFlushWorker` to flush the `SyncedTabsCommands` queue.
  * �� New `GlobalSyncedTabsCommandsProvider` object for providing the `SyncedTabsCommands` queue to the `SyncedTabsCommandsFlushWorker`.
  * ⚠️ **Breaking change**: `SyncedTabsFeature` now takes the `SyncedTabsCommands` queue as an argument, and registers an observer to refresh the synced tabs list when the queue changes.

* **feature-accounts-push**
  * ⚠️ **Breaking change**: `CloseTabsUseCases()` now takes a generic remote tabs command queue as its argument.
  * ⚠️ **Breaking change**: `CloseTabsUseCases.close()` no longer returns a value.

# 127.0

* **feature-prompts** **browser-storage-sync**
  * A new `isLoginAutofillEnabled` callback is available in `PromptFeature` and `GeckoLoginStorageDelegate` to allow clients controlling whether saved logins should be autofilled or not. Default is false

* **browser-state**
  * Added `TabSessionState.getUrl()` extension function that will return the URL that could be
    used for various features such as bookmarks or share regardless of the mode the browser is in (e.g. Reader mode). [Bug 1885628](https://bugzilla.mozilla.org/show_bug.cgi?id=1885628).

* **support-base**
  * Added `StartForegroundService` to safely start a foreground service, see [Bug 1839039](https://bugzilla.mozilla.org/show_bug.cgi?id=1839039) for crash reference.
  * Added `ProcessInfoProvider` and `BuildVersionProvider` to get information about the app process and the build version.

* **support-utils**
  * Added `DebouncedQueue`, a queue that manages function execution with a debounce mechanism.

* **browser-engine-gecko**
    * For screenshot capture, include exception in failure result rather than throwing.

* **feature-accounts-push**
    * �� New `CloseTabsFeature` for closing tabs on this device from other devices that are signed to the same Mozilla account.
    * �� New `CloseTabsUseCase` for closing tabs on other devices from this device.

* **concept-sync**
    * �� New `DeviceCapability.CLOSE_TABS` variant to indicate that a device supports closing synced tabs.
    * �� New `DeviceCommandIncoming.TabsClosed` variant to represent a "close synced tabs" command received from another device.
    * �� New `DeviceCommandOutgoing.CloseTab` variant to represent a "close synced tabs" sent to another device.

# 126.0

* **browser-menu**
  * Added enabled state to `BrowserMenuImageText`, see [Bug 1884769](https://bugzilla.mozilla.org/show_bug.cgi?id=1884769).

* **feature-downloads**
  * Content intent of completed `DownloadNotification` now uses a `PendingIntent` which launches an `Activity` directly, see [Bug 1885167](https://bugzilla.mozilla.org/show_bug.cgi?id=1885167).

* **concept-toolbar**
  * Added the `setDisplayHorizontalPadding` method, allowing the caller to dynamically adjust the horizontal padding for the display toolbar.

# 125.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/releases_v124..releases_v125)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/releases_v125/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/releases_v125/android-components/plugins/dependencies/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/releases_v125/android-components/.config.yml)

* **concept-toolbar**:
  * Added a new method for `ActionButton` to update the contentDescription and the iconTint, see [Bug 1875817](https://bugzilla.mozilla.org/show_bug.cgi?id=1875817).

* **concept-engine**
  * Added `onLocationChange#hasUserGesture` parameter. This indicates if a location change was requested while a user gesture was active. [bug #1804636](https://bugzilla.mozilla.org/show_bug.cgi?id=1804636)

* **lib-dataprotect**
  * Remove unused `KeyUtils.generateEncryptionKey` function.

# 124.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/releases_v123..releases_v124)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/releases_v124/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/releases_v124/android-components/plugins/dependencies/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/releases_v124/android-components/.config.yml)

* **feature-prompts**:
  * Added `FileUploadsDirCleaner` deletes temporary stale uploaded files, see [Bug 1860472](https://bugzilla.mozilla.org/show_bug.cgi?id=1860472).
  * ⚠️ **This is a breaking change**: `PromptFeature` now requires a `FileUploadsDirCleaner` to be constructed

* **browser-state**
  * `BrowserStore` and the `TabListReducer` will no longer automatically select a normal tab when all private tabs are removed. [Bug 1861459](https://bugzilla.mozilla.org/show_bug.cgi?id=1861459)

* **all components**
  * All new usages of the `concept-fetch` component to make fetch requests now have conservative-mode off by default. Current features will continue to use conservative mode until individually updated.

* **browser-toolbar**
  * Add `showMenuButton` and `hideMenuButton` API to `BrowserToolbar` and `DisplayToolbar` to allow hiding and showing of the menu button in
  the `BrowserToolbar` [Bug 1864760](https://bugzilla.mozilla.org/show_bug.cgi?id=1864760)

* **feature-customtabs**
  * Fallback behaviour when failing to open a new window in custom tab will now be loading the URL directly in the same custom tab. [Bug 1832357](https://bugzilla.mozilla.org/show_bug.cgi?id=1832357)

* **tooling-lint**
  * Added a lint rule to detect when `Response#close` may not have been called. Note: Currently, this rule only runs on Android Components.

# 123.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/releases_v122..releases_v123)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/releases_v123/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/releases_v123/android-components/plugins/dependencies/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/releases_v123/android-components/.config.yml)

* **feature-customtabs**
  * Sharing a URL from a custom tab always uses the current url of the session. [Bug 1831803](https://bugzilla.mozilla.org/show_bug.cgi?id=1831803)

# 122.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/releases_v121..releases_v122)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/releases_v122/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/releases_v122/android-components/plugins/dependencies/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/releases_v122/android-components/.config.yml)

* **concept-engine**
  * Add `reportBackInStock` API to `EngineSession` to allow reporting a shopping product is back in stock. [Bug 1858947](https://bugzilla.mozilla.org/show_bug.cgi?id=1858947)
  * Add `emailTrackerBlockingPrivateBrowsing` API to `Settings` to toggle Email Tracker Blocking in Private Browsing Mode [Bug 1866927](https://bugzilla.mozilla.org/show_bug.cgi?id=1866927)

* **feature-media**
  * Added `FOREGROUND_SERVICE_MEDIA_PLAYBACK` permission to the `AndroidManifest.xml`.

* **support-utils**
  * Recognize IPv6 literals in the address bar. [Bug 1803465](https://bugzilla.mozilla.org/show_bug.cgi?id=1803465)

* **browser-engine-gecko**
  * Enable nested scrolling on `GeckoEngineView` as required by `NestedGeckoView`. [Bug 1847305](https://bugzilla.mozilla.org/show_bug.cgi?id=1847305)
  * `NestedGeckoView` now disallows touch interception until we receive a response from `GeckoView#onTouchEventForDetailResult`. [Bug 1847305](https://bugzilla.mozilla.org/show_bug.cgi?id=1847305)
  * Add `globalPrivacyControlEnabled` setting to allow enabling Global Privacy Control in normal browsing. This is always enabled in private browsing. [Bug 1865357](https://bugzilla.mozilla.org/show_bug.cgi?id=1865357)
  * Adds support to toggle Email Tracker Blocking in Private Mode with new `emailTrackerBlockingPrivateBrowsing` API [Bug 1866927](https://bugzilla.mozilla.org/show_bug.cgi?id=1866927)

* **samples-browser**
  * Use `VerticalSwipeRefreshLayout` from AndroidComponents instead of AndroidX `SwipeRefreshLayout` to represent better Fenix behavior

* **places-bookmark-storage**:
  * Added `countBookmarksInTrees` to more efficiently determine how many bookmarks exist under part or parts of a bookmarks tree, which
    is taken advantage of by `DesktopFolders`.

* **support-base**
  * Make `message` param non optional for the Logging APIs. [Bug 1867606](https://bugzilla.mozilla.org/show_bug.cgi?id=1867606)

* **nimbus**
  * Add `nimbus-is-ready` feature and call Nimbus' `recordIsReady` when the Nimbus API is ready [Bug 1875515](https://bugzilla.mozilla.org/show_bug.cgi?id=1875515).

# 121.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/releases_v120..releases_v121)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/releases_v121/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/releases_v121/android-components/plugins/dependencies/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/releases_v121/android-components/.config.yml)

* **browser-state**:
  * Added `TranslationsState` to track translation and translation restoration status. [Bug 1844523](https://bugzilla.mozilla.org/show_bug.cgi?id=1844523)

* **browser-engine-gecko**:
  * Added support for translating and restoring a translated page on the engine. [Bug 1844523](https://bugzilla.mozilla.org/show_bug.cgi?id=1844523)

* **service-location**
  * Added a cache lifetime to `MozillaLocationService`. [Bug 1855562](https://bugzilla.mozilla.org/show_bug.cgi?id=1855562)

* **feature-search**
  * `RegionManager` now uses the cached result from it's `LocationService`. [Bug 1854988](https://bugzilla.mozilla.org/show_bug.cgi?id=1854988)

# 120.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/releases_v119..releases_v120)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/releases_v120/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/releases_v120/android-components/plugins/dependencies/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/releases_v120/android-components/.config.yml)

* **feature-tabs**
  * Adds parameter to `TabCounterToolbarButton` to show the mask while in private browsing mode.

* **feature-readerview**
  * Adds `UUIDCreator` to `ReaderViewFeature` to create UUIDs for cache keys.
  * Moves the implementation of presenting Reader Mode from the content scripts to `ReaderViewFeature`

* **browser-state**
  * `SessionState.isProductUrl` is not affected for private tabs as shopping mode is disabled in private tabs. [Bug 1847063](https://bugzilla.mozilla.org/show_bug.cgi?id=1847063)
  * `SessionState.isProductUrl` has been moved to `ContentState.isProductUrl`. [Bug 1857287](https://bugzilla.mozilla.org/show_bug.cgi?id=1857287)

# 119.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/releases_v118..releases_v119)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/releases_v119/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/releases_v119/android-components/plugins/dependencies/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/releases_v119/android-components/.config.yml)

* **feature-tabs**
  * Removed deprecated `TabsUseCases.AddNewPrivateTabUseCase`. [Bug 1853070](https://bugzilla.mozilla.org/show_bug.cgi?id=1853070)

* **lib-crash-sentry**
  * `SentryService.initIfNeeded` is now public. [Bug 1851676](https://bugzilla.mozilla.org/show_bug.cgi?id=1851676)

* **feature-downloads**
  * Added a custom permission `${applicationId}.permission.RECEIVE_DOWNLOAD_BROADCAST` that needs to be used by apps in order to receive download related broadcasts

* **ui-tabcounter**
  * Adds a mask overlay to the tabcounter that can be shown with `toggleCounterMask`.

* **feature-push**
  * We will no longer report `RecordNotFoundException` to the `CrashReporter` as it's largely a (web) application side reason why these messages are still trying to be delivered.

* **feature-awesomebar**
  * Search engine suggestions will only be displayed if the user inputs at least 2 characters and matches the starting characters of the search engine name. [Bug 1851012](https://bugzilla.mozilla.org/show_bug.cgi?id=1851012)

* **logins-storage**
  * Removed SQLCipher logins migration path for users from v95 and below
  * ⚠️ **This will cause a loss to existing logins if**:
    * User is using the logins feature and has a version of v95 or below
    * User is NOT syncing their logins with another device
    * User plans to upgrade from v95 to v119 or above

* **support-webextensions**
  * ⚠️ **This is a breaking change**: Renamed `WebExtensionPopupFeature` to `WebExtensionPopupObserver` [Bug 1852335](https://bugzilla.mozilla.org/show_bug.cgi?id=1852335)
  * Added `ExtensionProcessDisabledPopupObserver` to display to the user a dialog when the extensions process spawning has been disabled. [Bug 1846979](https://bugzilla.mozilla.org/show_bug.cgi?id=1846979)

* **concept-engine**
  * ��️️ Add `reanalyzeProduct` API to `EngineSession` to allow reanalyzing product from the engine. See more on [Bug 1853309](https://bugzilla.mozilla.org/show_bug.cgi?id=1853309).
  * ��️️ Add `requestAnalysisStatus` API to `EngineSession` to allow request product analysis status from the engine. See more on [Bug 1853309](https://bugzilla.mozilla.org/show_bug.cgi?id=1853309).
  * ��️️ Add `sendClickAttributionEvent` and `sendImpressionAttributionEvent` API to `EngineSession` to allow sending attribution events. See more on [Bug 1853309](https://bugzilla.mozilla.org/show_bug.cgi?id=1853309).
  * ��️️ Add `sendPlacementAttributionEvent` API to `EngineSession` to allow sending placement attribution events. See more on [Bug 1875106](https://bugzilla.mozilla.org/show_bug.cgi?id=1875106).

* **support-ktx**
  * ⚠️ **This is a breaking change**: the `enterToImmersiveMode()` in `Activity.kt` has been renamed to `enterImmersiveMode()`.
  * ⚠️ **This is a breaking change**: the `getWindowInsetsController()` in `Window.kt` has been renamed to `createWindowInsetsController()`.

# 118.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/releases_v117..releases_v118)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/releases_v118/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/releases_v118/android-components/plugins/dependencies/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/releases_v118/android-components/.config.yml)

* **browser-state**
  ��️️ Add `isProductUrl` to `SessionState` instance to indicate whether or not a product page of a given session state is being displayed. See more on [Bug 1842638](https://bugzilla.mozilla.org/show_bug.cgi?id=1842638).

* **concept-engine**
  * ��️️ Add `requestProductAnalysis` API to `EngineSession` to allow request product analysis result from the engine. See more on [Bug 1840692](https://bugzilla.mozilla.org/show_bug.cgi?id=1840692).
  * ��️️ Add `requestProductRecommendations` API to `EngineSession` to allow request product recommendations from the engine. See more on [Bug 1840693](https://bugzilla.mozilla.org/show_bug.cgi?id=1840693).

* **feature-addons**
  * ⚠️ **This is a breaking change**: the method `getAvailableAddons()` in `AddonsProvider` has been renamed to `getFeaturedAddons()`.
  * ⚠️ **This is a breaking change**: the `AddonCollectionProvider` has been renamed to `AMOAddonsProvider`.
  * ⚠️ **This is a breaking change**: add new method `getAddonIconBitmap()` to `AddonsProvider`.
  * ⚠️ **This is a breaking change**: added `getAddonsByGUIDs()` method to `AddonsProvider`.

* **support-ktx**
  * ��`Activity.enterToImmersiveMode()` now extends the full screen view into the notch area. See more on [Bug 1849009](https://bugzilla.mozilla.org/show_bug.cgi?id=1849009)

* **browser-engine-gecko**:
 * Implemented new `NimbusExperimentDelegate` to allow GeckoView to send and receive Nimbus experiment information. [Bug 1843592](https://bugzilla.mozilla.org/show_bug.cgi?id=1843592)
  * Removed deprecated `ContentDelegate.onGetNimbusFeature`. Please use `ExperimentDelegate.onGetExperimentFeature`. [Bug 1843592](https://bugzilla.mozilla.org/show_bug.cgi?id=1843592)

# 117.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/releases_v116..releases_v117)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/releases_v117/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/releases_v117/android-components/plugins/dependencies/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/releases_v117/android-components/.config.yml)

* **service-nimbus**
  * Add `allow-coenrollment` to the `messaging` feature, making it possible to enroll in multiple experiments involving messaging.
    * Modified the mechanism that ties a message back to experiment, to make sure we record exposure events correctly.

* **ui-icons**:
  * Renamed icons to align with the naming used in the Acorn design system for Firefox. [Bug 1840210](https://bugzilla.mozilla.org/show_bug.cgi?id=1840210)
    * Rename mozac_ic_storage to mozac_ic_storage_24.
    * Rename mozac_ic_shield_disabled to mozac_ic_shield_slash_24
    * Rename mozac_ic_settings to mozac_ic_settings_24
    * Rename mozac_ic_pin_filled_2 to mozac_ic_pin_fill_24
    * Rename mozac_ic_warning to mozac_ic_warning_fill_24
    * Rename mozac_ic_shield to mozac_ic_shield_24
    * Rename mozac_ic_video to mozac_ic_camera_24
    * Rename mozac_ic_share to mozac_ic_share_android_24
    * Rename mozac_ic_search to mozac_ic_search_24
    * Rename mozac_ic_refresh to mozac_ic_arrow_clockwise_24
    * Rename mozac_ic_reader_mode to mozac_ic_reader_view_24
    * Rename mozac_ic_quit to mozac_ic_cross_circle_24
    * Rename mozac_ic_private_browsing to mozac_ic_private_mode_24
    * Rename mozac_ic_pin_remove to mozac_ic_pin_slash_24
    * Rename mozac_ic_pin to mozac_ic_pin_24
    * Rename mozac_ic_password_reveal to mozac_ic_eye_24
    * Rename mozac_ic_password_hide to mozac_ic_eye_slash_24
    * Rename mozac_ic_notification to mozac_ic_notification_24
    * Rename mozac_ic_new to mozac_ic_plus_24
    * Rename mozac_ic_microphone to mozac_ic_microphone_24
    * Rename mozac_ic_menu to mozac_ic_ellipsis_vertical_24
    * Rename mozac_ic_login to mozac_ic_login_24
    * Rename mozac_ic_lock to mozac_ic_lock_24
    * Rename mozac_ic_location to mozac_ic_location_24
    * Rename mozac_ic_close_20 to mozac_ic_cross_20
    * Rename mozac_ic_link to mozac_ic_link_24
    * Rename mozac_ic_information to mozac_ic_information_24
    * Rename mozac_ic_info to mozac_ic_information_fill_24
    * Rename mozac_ic_home to mozac_ic_home_24
    * Rename mozac_ic_help to mozac_ic_help_circle_24
    * Rename mozac_ic_globe to mozac_ic_globe_24
    * Rename mozac_ic_forward to mozac_ic_forward_24
    * Rename mozac_ic_fingerprint to mozac_ic_fingerprinter_24
    * Rename mozac_ic_extensions to mozac_ic_extension_24
    * Rename mozac_ic_edit_suggestion to mozac_ic_append_up_24
    * Rename mozac_ic_download to mozac_ic_download_24
    * Rename mozac_ic_device_mobile to mozac_ic_device_mobile_24
    * Rename mozac_ic_device_desktop to mozac_ic_device_desktop_24
    * Rename mozac_ic_delete to mozac_ic_delete_24
    * Rename mozac_ic_clear to mozac_ic_cross_circle_fill_24
    * Rename mozac_ic_back to mozac_ic_back_24
    * Rename mozac_ic_autoplay_blocked to mozac_ic_autoplay_slash_24
    * Rename mozac_ic_check to mozac_ic_checkmark_24
    * Rename mozac_ic_arrowhead_up to mozac_ic_chevron_up_24
    * Rename mozac_ic_arrowhead_right to mozac_ic_chevron_right_24
    * Rename mozac_ic_arrowhead_down to mozac_ic_chevron_down_24
    * Rename mozac_ic_close to mozac_ic_cross_24
    * Rename mozac_ic_add_to_homescreen to mozac_ic_add_to_homescreen_24
    * Rename mozac_ic_cookies to mozac_ic_cookies_24
    * Rename mozac_ic_sync to mozac_ic_sync_24

# 116.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/releases_v115..releases_v116)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/releases_v116/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/releases_v116/android-components/plugins/dependencies/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/releases_v116/android-components/.config.yml)

* **support-base**
  * Adds `NotificationManangerCompat` extension functions `areNotificationsEnabledSafe()` and  `isNotificationChannelEnabled()`.
  * Removes deprecated `BackHandler`, use `UserInteractionHandler` instead.

* **feature-pwa**
  * Adds `WebAppContentFeature` to set the "display" mode from the web app manifest on the `EngineSession`.
* **browser-engine-gecko**:
  * Added support for Printing on the Engine.
  * Add support for `checkForPdfViewer` API for checking whether a PDF viewer is loaded on the current session or not.
* **concept-engine**:
  * Added new `requestPrintContent` API in `Engine`. This is currently only supported in the Gecko Engine.
* **share**:
  * Added 'Print' as an option on the share menu
* **browser-menu**:
  * Added 'Print' as an option on the toolbar menu

* **support-ktx**
  * Removes ifChanged Flow extension functions in favour of `distintUntilChanged` and `distintUntilChangedBy`in `kotlin.coroutines.flow`.

* **lib-crash**
  * [Bug 1839697](https://bugzilla.mozilla.org/show_bug.cgi?id=1839697). Report Java exceptions in
    the GleanCrashReporterService.

# 115.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/releases_v114..releases_v115)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/releases_v115/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/releases_v115/android-components/plugins/dependencies/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/releases_v115/android-components/.config.yml)

* **lib-crash**
  * Log exceptions that crash the `CrashReporter` to avoid silent failurs. See [Bug 1826591](https://bugzilla.mozilla.org/show_bug.cgi?id=1826591).

* **crash-sentry**
  * Sends exceptions with an attached `Mechanism` to signal to Sentry that it was an uncaught exception. See [Bug 1835107](https://bugzilla.mozilla.org/show_bug.cgi?id=1835107)

* **concept-sync**
  *  Bug Fixed [Bug 1804274]((https://bugzilla.mozilla.org/show_bug.cgi?id=1804274)) Passes an entrypoint url parameter to FxA when logging-in, that represents the context which the app launches the Firefox Accounts web channel.

* **feature-push**
  * Refactored [Bug 1829982]( https://bugzilla.mozilla.org/show_bug.cgi?id=1829982) Refactors push to remove the RustConnection layer, and instead use the underlying Rust layer directly.

# 114.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/releases_v113..releases_v114)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/releases_v114/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/releases_v114/android-components/plugins/dependencies/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/releases_v114/android-components/.config.yml)

* * **browser-state**
  * �� Added `DownloadState`.`openInApp` to indicate whether or not the file associated with the download should be opened in a third party app after downloaded successfully, for more information see [Bug 1829371](https://bugzilla.mozilla.org/show_bug.cgi?id=1829371) and [Bug 1829372](https://bugzilla.mozilla.org/show_bug.cgi?id=1829372).

# 113.0.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/releases_v112..releases_v113)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/releases_v113/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/releases_v113/android-components/plugins/dependencies/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/releases_v113/android-components/.config.yml)

* **compose-cfr**
  * �� Bug fixed [Bug 1819950](https://bugzilla.mozilla.org/show_bug.cgi?id=1819950). Ensure CFRs are automatically dismissed on screen rotation on all Android versions.

* **concept-sync**, **service-firefox-accounts**
  * Removed unused `AccountSharing` from sync and accounts.

* **support-license**
  * �� New component to display generated license information.

# 112.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/releases_v111...releases_v112)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/releases_v112/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/releases_v112/android-components/plugins/dependencies/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/releases_v112/android-components/.config.yml)

* **service-pocket**
  * �� ⚠️ **This is a breaking change**: Use `id` instead of `flight_id` to identify a Pocket sponsored story. [Bug 1820967](https://bugzilla.mozilla.org/show_bug.cgi?id=1820967).

* **feature-prompts**:
  * �� Bug fixed [Bug 1819254](https://bugzilla.mozilla.org/show_bug.cgi?id=1819254). Don't exit fullscreen for user input prompts.

* **service-contile**
  * ⚠️ **This is a breaking change**: Added support for sponsored tiles maximum age specified by the server when a Contile outage is detected. `maxCacheAgeInMinutes` changed to `maxCacheAgeInSeconds`. [Bug 1811175](https://bugzilla.mozilla.org/show_bug.cgi?id=1811175)

* **tooling-glean-gradle:**
  * ⚠️ **This is a breaking change**: This wrapper of the Glean plugin is no longer needed and has been removed. Consuming applications can directly depend on the [Glean Gradle plugin](https://github.com/mozilla/glean/tree/main/gradle-plugin/).

* **lib-crash-sentry-legacy**
  * ⚠️ **This is a breaking change**: This component has been removed. Consumers should use the newer `lib-crash-sentry` component instead.

* **lib-crash**
  * �� Bug fixed [Bug 1822148](https://bugzilla.mozilla.org/show_bug.cgi?id=1822148). Ensure proguard rules retain serialization classes.

* **browser-engine-gecko**:
  * Add support for `hasCookieBannerRuleForSession` API for checking whether a cookie banner from the current website in the session can be handled.

* **concept-engine**:
  * Add new `hasCookieBannerRuleForSession` API in `Engine`. This is currently only supported in the Gecko Engine.


# 111.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/releases_v110...releases_v111)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/releases_v111/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/releases_v111/android-components/plugins/dependencies/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/releases_v111/android-components/.config.yml)

* **compose-cfr**
  * �� Bug fixed [Bug 1809592](https://bugzilla.mozilla.org/show_bug.cgi?id=1809592). Improve screen alignment for Contextual Feature Recommendation popups.

* **service-pocket**
  * �� Added `country` and `city` parameters to Pocket sponsored stories fetch request. These can be overwritten using `PocketStoriesConfig`, allowing clients to specify a location and receive sponsored stories when outside countries where Pocket is enabled based on IP location. [Bug 1811537](https://bugzilla.mozilla.org/show_bug.cgi?id=1811537).

* **service-pocket**
  * �� Added `site` parameter to Pocket sponsored stories requests. It can be overwritten using `PocketStoriesConfig`, allowing clients to customize spoc content. [Bug 1811531](https://bugzilla.mozilla.org/show_bug.cgi?id=1811531).

* **browser-storage-sync**:
* **feature-awesomebar**
* **feature-syncedtabs**
  * �� [Bug 1800268](https://bugzilla.mozilla.org/show_bug.cgi?id=1800268) New autocomplete providers for bookmarks, local tabs or synced tabs that can be set for `ToolbarAutocompleteFeature`.

* **feature-toolbar**
  * ⚠️ [Bug 1800268](https://bugzilla.mozilla.org/show_bug.cgi?id=1800268) **This is a breaking change**: `ToolbarAutocompleteFeature` has a new API for updating at any time `AutocompleteProvider` (add or remove any of them) individually or in bulk. This change allows supporting any instance and any number of autocomplete providers and optionally query for new autocomplete results when providers change.

* **feature-awesomebar**
  * �� [Bug 1800268](https://bugzilla.mozilla.org/show_bug.cgi?id=1800268) A new optional lambda `resultsHostFilter` has been added to the constructors of some AwesomeBar suggestions providers. This will allow for external url filtering of the provided suggestions.

* **feature-awesomebar**
  * �� New `SearchTermSuggestionsProvider` that will show by default up to 2 search suggestions based on past searches the user has done with the current search engine. These suggestions will appear between the search action ones and the search suggestion ones. [Bug 1804258](https://bugzilla.mozilla.org/show_bug.cgi?id=1804258).

* **feature-downloads**:
  * ��️ `DownloadsFeature` now allows passing a download dialog delegate for 1st party downloads through a new `customDownloadDialog` parameter. [Bug 1812518](https://bugzilla.mozilla.org/show_bug.cgi?id=1812518)
  * �� `DownloadsFeature` now allows passing a download dialog delegate for 3rd party downloads through a new `customThirdPartyDownloadDialog` parameter. [Bug 1812518](https://bugzilla.mozilla.org/show_bug.cgi?id=1812518)

* **browser-toolbar**
  * ⚠️ **This is a breaking change**: `BrowserToolbarBehavior` will not position the `Snackbar.SnackbarLayout` anymore. The ownership for the positioning behavior should be reversed with the snackbar choosing whether it want to be shown above the toolbar and exactly how. [Bug 1812518](https://bugzilla.mozilla.org/show_bug.cgi?id=1812518)

* **browser-engine-gecko**
  * �� Bug fixed [Bug 1811183](https://bugzilla.mozilla.org/show_bug.cgi?id=1811183). Handles non-digit values for `DateTimePrompt.stepValue`.

* **concept-engine**
  * �� Expose the release channel of GeckoView through a new `releaseChannel` property of `EngineVersion`. [Bug 1811448](https://bugzilla.mozilla.org/show_bug.cgi?id=1811448).

* **concept-engine**
  * �� Added `Settings.cookieBannerHandlingDetectOnlyMode` which helps to detect cookie banner events without handle the banners + indicating the mode of the events, see [Bug 1810743](https://bugzilla.mozilla.org/show_bug.cgi?id=1810743)
  * ⚠️ **This is a breaking change**: Removed `CookieBannerMode.MODE_DETECT_ONLY` use `Settings.cookieBannerHandlingDetectOnlyMode` instead.

* **feature-webnotifications**
  * �� Added support for silent web notifications. Default importance level for web notifications was set to `IMPORTANCE_DEFAULT`. [Bug 1796766](https://bugzilla.mozilla.org/show_bug.cgi?id=1796766).

* **feature-media**
  * �� Bug fixed [Bug 1802620](https://bugzilla.mozilla.org/show_bug.cgi?id=1802620). Handles `ForegroundServiceStartNotAllowedException`.
  * �� Bug fixed [Bug 1813416](https://bugzilla.mozilla.org/show_bug.cgi?id=1813416). Clear `FLAG_KEEP_SCREEN_ON` when playing media is finished.

* **lib-crash**
  * �� Added support for Glean crash pings in the `GleanCrashReporterService`. [Bug 1810951](https://bugzilla.mozilla.org/show_bug.cgi?id=1810951)

# 110.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/releases_v109...releases_v110)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/releases_v110/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/releases_v110/android-components/plugins/dependencies/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/releases_v110/android-components/.config.yml)

* **support-telemetry-sync**
  * �� Bug fixed [Bug 1804996](https://bugzilla.mozilla.org/show_bug.cgi?id=1804996). Removed fpsa, ftas, ftsa and ffos DDG type tags and replaced them with fpas.

* **lib-crash**
  * �� Bug fixed [Bug 1802975](https://bugzilla.mozilla.org/show_bug.cgi?id=1802975). Allow crash dumps to be shared using a11y services.

* **concept-engine**
  * ��️️ Add `CookieBannerHandlingStatus` to `SessionState` instance to indicate the status of the given session state see more on [Bug 1797568](https://bugzilla.mozilla.org/show_bug.cgi?id=1797568).

* **feature-share**
  * �� Bug fixed [Bug 1806411](https://bugzilla.mozilla.org/show_bug.cgi?id=1806411). Remove image link from share message when sharing an image.

* **concept-engine**
* �� Added `CookieBannerMode.MODE_DETECT_ONLY`, this help to dected cookie banner events without handle the banners see [Bug 1806435](https://bugzilla.mozilla.org/show_bug.cgi?id=1804594)

* **browser-state**, **feature-search**
  * Added a new parameter `isGeneral` to `SearchEngine` to specify whether or not the search engine is a general search engine (eg, provides broad search results). Search engines read from storage will now have this parameter set based on a list of general search engines. [Bug 1804594](https://bugzilla.mozilla.org/show_bug.cgi?id=1804594)
  * Added Selector `BrowserState.findNormalOrPrivateTabByUrlIgnoringFragment` to match urls ignoring the fragment/anchor of the url, allowing `SelectorAddUseCase` to use this functionality.

* **feature-tabs**
  * Added `ignoreFragment` param in `SelectOrAddUseCase` to match urls ignoring the anchor/fragment. This sets the the foundation to fix [Bug 1796319](https://bugzilla.mozilla.org/show_bug.cgi?id=1796319).

* **lib-crash-sentry**
  * �� Bug fixed [Bug 1801349](https://bugzilla.mozilla.org/show_bug.cgi?id=1801349).  Properly synchronize access to the crash reporter breadcrumb list.

* **feature-prompts**:
  * Added permission requests for accessing media files (`READ_MEDIA_AUDIO`, `READ_MEDIA_AUDIO`, `READ_MEDIA_AUDIO`) when uploading files on devices with Android 13 and later.

* **feature-awesomebar**
  * `SuggestionProviderGroup` now has a new parameter `priority` that decides the order of this group in the AwesomeBar suggestions. Priority is same as the `score` of `AwesomeBar.Suggestions`. Group having the highest integer value will have the highest priority.

* **concept-toolbar**
  * Added optional parameter `cursorPlacement` to `editMode` which allows cursor placement to be specified when switching to edit mode.

* **feature-toolbar**
  * �� Added a new parameter `shouldDisplaySearchTerms` to `ToolbarFeature` which allows clients to specify if the search terms should be shown instead of the URL when the toolbar is in display mode. [Bug 1805164](https://bugzilla.mozilla.org/show_bug.cgi?id=1805164)

* **browser-engine-gecko**
  * �� Added `GeckoCookieBannersStorage.addPersistentExceptionInPrivateMode` to allow to add persistent cookie banner exceptions in private browsing [Bug 1797605](https://bugzilla.mozilla.org/show_bug.cgi?id=1806924).

# 109.0.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/releases_v108...releases_v109)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/releases_v109/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/releases_v109/android-components/plugins/dependencies/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/releases_v109/android-components/.config.yml)

* **support-ktx, feature-contextmenu**
  * �� Bug fixed [Bug 1798873](https://bugzilla.mozilla.org/show_bug.cgi?id=1798873) Added a way to exclude current app from share targets. Used when sharing text.

* **feature-top-sites**
  * �� A new filter `hasHost` was added when getting top frecent sites in order to remove duplicate frecent top sites that have same host/domain as provided top sites. For more references see [Bug 1801285](https://bugzilla.mozilla.org/show_bug.cgi?id=1801285).

* **browser-menu**:
  * �� Bug Fixed [Bug 1800885](https://bugzilla.mozilla.org/show_bug.cgi?id=1800885) Increase touch target of Add/Edit checkbox from `mozac_browser_menu_item_image_text_checkbox_button.xml` to improve accessibility.

* **All components**
  * ⚠️Increased `compileSdkVersion` to 33 (Android 13)

* **feature-awesomebar**
  * `SearchSuggestionProvider` and `SearchActionProvider` now have a new parameter `suggestionsHeader`, to add title to suggestions.

* **support-ktx**:
  * Added `String.toShortUrl` extension that allows making URLs more user friendly [#1796379](https://bugzilla.mozilla.org/show_bug.cgi?id=1796379)

* **browser-engine-gecko**
  * �� Added `GeckoCookieBannersStorage.kt` to manage cookie banner exceptions [Bug 1797605](https://bugzilla.mozilla.org/show_bug.cgi?id=1797605).

* **concept-engine**
  * �� Bug fixed [Bug 1801648](https://bugzilla.mozilla.org/show_bug.cgi?id=1801648). Fix autoplay settings are not getting updated in private mode.

* **browser-storage-sync**
  * Removed Fennec to Fenix migration code. Deleted the `importVisitsFromFennec`, `importBookmarksFromFennec` and `readPinnedSitesFromFennec` functions. [Bug 1803632](https://bugzilla.mozilla.org/show_bug.cgi?id=1803632)

* **service-sync-logins**
  * Removed Fennec to Fenix migration code. Deleted `importLoginsAsync` function. [Bug 1803632](https://bugzilla.mozilla.org/show_bug.cgi?id=1803632)

* **lib-crash-sentry**
  * �� Bug fixed [Bug 1801349](https://bugzilla.mozilla.org/show_bug.cgi?id=1801349).  Copy the breadcrumb date to the Sentry breadcrumb.

# 108.0.0
* [Commits](https://github.com/mozilla-mobile/firefox-android/compare/v107.0.0...v108.0.0)
* [Dependencies](https://github.com/mozilla-mobile/firefox-android/blob/v108.0.0/android-components/buildSrc/src/main/java/Dependencies.kt)
* [Gecko](https://github.com/mozilla-mobile/firefox-android/blob/v108.0.0/android-components/buildSrc/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/firefox-android/blob/v108.0.0/android-components/.config.yml)

* **feature-search**
  * �� A new action `RefreshSearchEnginesAction` was added to the `BrowserAction` to allow for refreshing search engines when app locale is changed. For more references see [Bug 1800209](https://bugzilla.mozilla.org/show_bug.cgi?id=1800209).

* **feature-readerview**:
  * [Bug 1798672](https://bugzilla.mozilla.org/show_bug.cgi?id=1798672) Reader view font controls have adaptive font sizes to support smaller width devices.

* **ui-autocomplete**
  * �� Bug fixed [Bug 1794933](https://bugzilla.mozilla.org/show_bug.cgi?id=1794933) Immediately remove autocomplete when not applicable anymore.

* **concept-engine**
  * [Bug 1798359](https://bugzilla.mozilla.org/show_bug.cgi?id=1798359) Set Total Cookie Protection as the default cookie policy for all Tracking Protection modes. Read more about Total Cookie Protection [here](https://blog.mozilla.org/en/mozilla/firefox-rolls-out-total-cookie-protection-by-default-to-all-users-worldwide/).
  * Renamed `EngineSession.onSaveToPdfError` to `EngineSession.onSaveToPdfException`.

* **browser-engine-gecko**
  * �� A new action `SaveToPdfExceptionAction` was added to the `EngineAction` to allow for notifying consumers on unsuccessful Save to PDF requests. For more references see [Bug 1796482](https://bugzilla.mozilla.org/show_bug.cgi?id=1796482).
  * ⚠️ When using the save to pdf feature, now it's required have a middleware that handles the `SaveToPdfExceptionAction`, or your application will crash when an error happens when requesting a page to be saved as PDF.

* **compose-cfr**
  * �� New composable popup allowing to offer more context about a specific View anchor on the screen. Supports RTL along with many other customizations and anchorings.

* **feature-qr**
  * QRFeature now allows querying if scanning is in progress with a new `isScanInProgress` property. This helps deciding on whether to resume scanning by calling `scan` in a new `QRFeature` instance as it can happen if the process is restarted as a followup to the user updating system permissions for the app.

* **concept-engine**:
  * Added support for changing the cookie banner handling setting in regular and private browsing. [Bugzilla](https://bugzilla.mozilla.org/show_bug.cgi?id=1796144)

* **concept-storage**:
  * �� New API: `StorageMaintenanceRegistry` in `concept-storage` that deals with registering/unregistering storage maintenance workers.
  * ⚠️ **This is a breaking change**: Added a new parameter `dbSizeLimit` to `Storage.runMaintenance` API to indicate Maximum DB size to aim for, in bytes.

* **browser-storage-sync**:
  * �� New: An abstract WorkManager Worker class `StorageMaintenanceWorker` is introduced. [Bugzilla](https://bugzilla.mozilla.org/show_bug.cgi?id=1795903)
  * �� New: A Kotlin object `GlobalPlacesDependencyProvider` is introduced to provide `placesStorage: PlacesStorage` globally when needed.
  * ⚠️ **This is a breaking change**: `PlacesStorage.runMaintenance` API has changed. Now it needs `dbSizeLimit` parameter as it implements new version of `Storage` API.

* **support-ktx**:
  * The colors of the icons from the status bar should be in contrast with the status bar background color [#1795650](https://bugzilla.mozilla.org/show_bug.cgi?id=1795650)

* **service-glean**
  * Re-export TextMetricType, RateMetricType, DenominatorMetricType, NumeratorMetricType to make them usable by applications [#13010](https://github.com/mozilla-mobile/android-components/pull/13010)

* **browser-state**:
  * `UpdateThumbnailAction` and `RemoveThumbnailAction` now throw an exception if those actions are not handled with a middleware.
  * See `BrowserThumbnails` and `ThumbnailsMiddleware` for example usages within other features.
  * Removed handling of `LowMemoryAction` in `SystemReducer` on in-memory thumbnails.

* **browser-tabstray**:
  * `TabViewHolder` no longer checks if a thumbnail is in memory before retrieving a thumbnail from the `ImageLoader`.

# 107.0.0
* [Commits](https://github.com/mozilla-mobile/android-components/compare/v106.0.0..v107.0.0)
* [Milestone](https://github.com/mozilla-mobile/android-components/milestone/154?closed=1)
* [Dependencies](https://github.com/mozilla-mobile/android-components/blob/v107.0.0/buildSrc/src/main/java/Dependencies.kt)
* [Gecko](https://github.com/mozilla-mobile/android-components/blob/v107.0.0/buildSrc/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/android-components/blob/v107.0.0/.config.yml)

* **feature-syncedtabs**
  * �� Bug fixed [issue #12930](https://github.com/mozilla-mobile/android-components/issues/12930) Ensure `DefaultPresenter` will unregister it's `FxaAccountManager` observers when it's `lifecycleOwner` is stopped to prevent memory leaks.

* **feature-app-links**
  * �� Bug fixed [issue #12804](https://github.com/mozilla-mobile/android-components/issues/12804) Speculative fix for a TransactionTooLargeException or RuntimeException when querying activities.

* **all modules**
  * Updated the locally published artifacts to use a single timestamp rather than many [#12902](https://github.com/mozilla-mobile/android-components/issues/12902)

* **nimbus-gradle-plugin**:
  * Updated the plugin to use the version of application services defined in the buildSrc Dependencies.

* **browser-engine-gecko**:
  * Canceling the "Open in app?" displays an empty page [#12894](https://github.com/mozilla-mobile/android-components/issues/12894)

* **feature-readerview**:
  * �� Reader Mode now defers to the active dark mode for the default color scheme.

# 106.0.0
* [Commits](https://github.com/mozilla-mobile/android-components/compare/v105.0.0..v106.0.0)
* [Milestone](https://github.com/mozilla-mobile/android-components/milestone/153?closed=1)
* [Dependencies](https://github.com/mozilla-mobile/android-components/blob/v106.0.0/buildSrc/src/main/java/Dependencies.kt)
* [Gecko](https://github.com/mozilla-mobile/android-components/blob/v106.0.0/buildSrc/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/android-components/blob/v106.0.0/.config.yml)

* **concept-engine**, **feature-sitepermissions**
  * �� New `name` property for Permission which allows to easily identify and differentiate Permissions.
  * Use the permission name when reporting telemetry for the permission dialogs. [#12683](https://github.com/mozilla-mobile/android-components/issues/12683).

* **browser-engine-gecko**
  * �� Bug fixed [fenix issue #16943](https://github.com/mozilla-mobile/fenix/issues/26943) - Prevent crashes when accessing a time picker with blank step value.

* **browser-storage-sync**:
  * �� Bug fixed [issue #12689](https://github.com/mozilla-mobile/android-components/issues/12689) Decouple autocomplete suggestions from history search suggestions by using a separate reader which allows for separate management.

* **support-ktx**
  * �� Bug fixed [issue #12689](https://github.com/mozilla-mobile/android-components/issues/12689)  Make `Context.shareMedia` work with Android Direct Share.

* **feature-accounts-push**:
  * ⚠️ **This is a breaking change**: `FxaPushSupportFeature` now requires to be explicitly started with `initialize`.
  * The constructor for `FxaPushSupportFeature` has a `coroutineScope` parameter that defaults to a `CoroutineScope(Dispatchers.IO)`.

# 105.0.0
* [Commits](https://github.com/mozilla-mobile/android-components/compare/v104.0.0...v105.0.0)
* [Milestone](https://github.com/mozilla-mobile/android-components/milestone/152?closed=1)
* [Dependencies](https://github.com/mozilla-mobile/android-components/blob/v105.0.0/buildSrc/src/main/java/Dependencies.kt)
* [Gecko](https://github.com/mozilla-mobile/android-components/blob/v105.0.0/buildSrc/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/android-components/blob/v105.0.0/.config.yml)

* **feature-search**:
  * Allow the search widget to match the resized width [#12676](https://github.com/mozilla-mobile/android-components/issues/12676).

* **feature-findinpage**:
  * �� Bug fixed [issue #12637](https://github.com/mozilla-mobile/android-components/issues/12637) Disable find in page previous and forward buttons if the query is empty

* **feature-search**:
  * Implement the common part of search widget in Android Components [#12565](https://github.com/mozilla-mobile/android-components/issues/12565).

* **feature-prompts**:
  * Added prompt dismiss listener to `ChoicePromptDelegate`. [#12562](https://github.com/mozilla-mobile/android-components/issues/12562)

* **browser-engine-gecko**:
  * Add support for Save to PDF in the

* **concept-engine**:
  * Add new `requestPdfToDownload` API in `Engine`. This is currently only supported in the Gecko Engine.

* **browser-storage-sync**:
  * Stop reporting to the crash servers the expected `OperationInterrupted` exceptions for when interrupting in progress reads/writes from Application-Services. [#12557](https://github.com/mozilla-mobile/android-components/issues/12557), [#12569](https://github.com/mozilla-mobile/android-components/issues/12569).

* **support-migration**
  * ⚠️ **This is a breaking change**: This component was removed since the Fennec -> Fenix migration is no longer supported (https://github.com/mozilla-mobile/fenix/pull/23651/)

* **nimbus-gradle-plugin**
  * ⚠️ **This is a breaking change**: Updated the NimbusGradlePlugin to use the new nimbus cli commands.

# 104.0.0
* [Commits](https://github.com/mozilla-mobile/android-components/compare/v103.0.0...v104.0.0)
* [Milestone](https://github.com/mozilla-mobile/android-components/milestone/151?closed=1)
* [Dependencies](https://github.com/mozilla-mobile/android-components/blob/v104.0.0/buildSrc/src/main/java/Dependencies.kt)
* [Gecko](https://github.com/mozilla-mobile/android-components/blob/v104.0.0/buildSrc/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/android-components/blob/v104.0.0/.config.yml)

* **feature-media**:
  * �� Bug fixed [issue #12433](https://github.com/mozilla-mobile/android-components/issues/12433) Prevent media notifications updates that would cause it to flicker or loose the action button.

* **browser-awesomebar**:
  * �� Bug fixed [issue #12469](https://github.com/mozilla-mobile/android-components/issues/12469) Cancel previous queries from the application-services persistence layer before new suggestions requests.

* **service-firefox-accounts**
  * `SyncStatus` can now be `LoggedOut`.
  * `SyncStoreSupport` will update the `SyncStore` with `LoggedOut` when observed.

* **browser-toolbar**
  * �� Bug fixed [issue #12497](https://github.com/mozilla-mobile/android-components/issues/12497) - Set the same margin to toolbar background for display as for edit

* **feature-recentlyclosed**
  * �� Bug fixed [issue #12470](https://github.com/mozilla-mobile/android-components/issues/12470) - Set autoMirrored to true to fix RTL issues

* **browser-awesomebar**:
  * �� Bug fixed [issue #12469](https://github.com/mozilla-mobile/android-components/issues/12469) Cancel previous queries before new suggestions requests.

* **service-pocket**
  * Add an index for sponsored stories foreign key to resolve a compilation warning. [#12406](https://github.com/mozilla-mobile/android-components/issues/12406)

* **service-pocket**
  * Fix recent breakage of the sponsored stories feature and allow to dynamically make requests to either the development server or the production one. [Issue #12432](https://github.com/mozilla-mobile/android-components/issues/12432)

* **feature-top-sites**
  * Replaced `frecencyConfig` from `TopSitesConfig` with `TopSitesFrecencyConfig`, which specifies the `FrecencyTresholdOption` and the frecency filter, an optional function used to filter the top frecent sites. [#12384] (https://github.com/mozilla-mobile/android-components/issues/12384)

* **browser-storage-sync**:
  * Added exception handling for all places history and bookmark calls. This prevents the app from crashing on SQL errors. [#12300](https://github.com/mozilla-mobile/android-components/pull/12300)

# 103.0.0
* [Commits](https://github.com/mozilla-mobile/android-components/compare/v102.0.0...v103.0.0)
* [Milestone](https://github.com/mozilla-mobile/android-components/milestone/150?closed=1)
* [Dependencies](https://github.com/mozilla-mobile/android-components/blob/v103.0.0/buildSrc/src/main/java/Dependencies.kt)
* [Gecko](https://github.com/mozilla-mobile/android-components/blob/v103.0.0/buildSrc/src/main/java/Gecko.kt)
* [Configuration](https://github.com/mozilla-mobile/android-components/blob/v103.0.0/.config.yml)

* **site-permission-feature**
  * �� [issue #12345](https://github.com/mozilla-mobile/android-components/issues/12345)
  * - Add an id for all site permissions allowing to easily identify with what permissions the user interacts.
  * - Emit facts for when a permission prompt is shown/allowed/denied.

* **site-permission-feature**
  * �� [issue #12338](https://github.com/mozilla-mobile/android-components/issues/12338) - Add support for setting a custom text for the negative button of the site permission prompts. Use "Block" for the storage access prompt.

* **feature-recentlyclosed**
  * �� Bug fixed [issue #12310](https://github.com/mozilla-mobile/android-components/issues/12310) - Catch all database exceptions thrown when querying recently closed tabs and clean the storage for corrupted data.

* **feature-media**
--> --------------------

--> maximum size reached

--> --------------------

[ Verzeichnis aufwärts0.213unsichere Verbindung  ]