This patch completes a few minor translations UI adjustments. Including
updating mock data on the "never translate these sites" page and the
"language settings" page.
Additionally, adds a content description on the toolbar for the
translation icon.
This patch refactors out the translations controller and interactor to
transition fully to a redux pattern.
Leaving the translations use cases for reference browser usage.
When deleting bookmarks, we do not instantly remove them due to
having the possibility of undoing the deletion. Because of this,
when the bookmarks are pending to delete, they can still be displayed
when pulling down to refresh and then acted on. This patch aims to
fix this issue by subtracting the pending to delete bookmarks
when they are refreshed by pulling down.
Report breadcrumbs to Sentry before crashing with
`UnsatsisfiedLinkError`:
- The files inside the app directory, to detect if the library is
present or not.
- The files inside the APK, to detect if a file inside the APK didn't
get installed correctly.
- The name of the installer package, so that we can know if the APK
was installed from a 3rd-party source.
- The path to the APK. I don't really see this being useful, but it's
needed to determine all the other info, so we might as well report
it.
The idea here is that hopefully one of these will detect that something
was off with their install. For example, maybe they installed an APK
for the wrong arch or maybe `libjnidispatch` was not extracted
correctly. If not, at least we can rule these possibilities out as the
root cause.
"leaf" feature has been removed since [Bug 1571089](https://bugzilla.mozilla.org/show_bug.cgi?id=1571089)
and it's been removed from the presets in that bug as well. This commit
removes this feature from these presets as well to keep them in sync.
Note that having an unrecognised feature gets ignored automatically and
it doesn't throw any error, but still these presets should kept up-to-date.