Commit Graph

104 Commits (382ca721c4788c348da1bc4c24f702a26fdbe707)

Author SHA1 Message Date
Mark Hammond 382ca721c4 Bug 1879332 - ensure synced tabs includes the inactive property
(cherry picked from commit 5b559a4e485fa859e43e5eb3bbca95abbcbdb151)
2 months ago
Mugurell 244dc7e2af [fenix] For https://github.com/mozilla-mobile/fenix/issues/25816: Support changing autocomplete providers.
Everywhere the toolbar which needs to show autocomplete suggestions is used we
show a `ToolbarView`. So instead of having this configurable in 2 or more
places as it happened before the autocomplete functionality is configured only
from the `ToolbarView` class.
It will contain a `ToolbarAutocompleteFeature` that will be immediately updated
with the appropriate autocomplete providers or remove all such providers to
immediately update the current autocomplete or remove it entirely depending on
the new search engine selected.
1 year ago
Charlie Humphreys 826bf1341c [fenix] update nimbus event for sync sign in
https://dictionary.telemetry.mozilla.org/apps/fenix/metrics/sync_auth_sign_in
1 year ago
Charlie Humphreys ff740dac17 [fenix] fix tests and linting 1 year ago
Charlie Humphreys 0410b1ade3 [fenix] update for pr feedback and add sync login event 1 year ago
Jonathan Almeida 0c5e0f8233 [fenix] Bug 1798805 - Initialize the FxaPushSupportFeature
We added the new `initialize` to explicitly make the call to start the
feature but we never actually used it here after it landed.
2 years ago
mcarare 393d5161df [fenix] For https://github.com/mozilla-mobile/fenix/issues/27541: Update AndroidX Annotation to latest version.
Add AndroidX Annotation as a direct dependency to app build.gradle.
Update imports for annotations moved to Companion Object.
2 years ago
mcarare 932823c871 [fenix] For https://github.com/mozilla-mobile/fenix/issues/26844: Fix ktlint issues and remove them from baseline. 2 years ago
MatthewTighe 7660235e97 [fenix] Fixes 24823: remove recent synced tab when logged out 2 years ago
Gabriel Luong 74fdb5243a [fenix] For https://github.com/mozilla-mobile/fenix/issues/24967 - Enable address autofill for Nightly and Debug 2 years ago
MatthewTighe f0d39d0680 [fenix] Revert https://github.com/mozilla-mobile/fenix/pull/24894: settings should not be used to cache previous auth state 2 years ago
MatthewTighe b495c724d9 [fenix] for https://github.com/mozilla-mobile/fenix/issues/24665: cache previous auth status and display placeholders accordingly 2 years ago
MatthewTighe ac1a195417 [fenix] for https://github.com/mozilla-mobile/fenix/issues/24665: remove unused fxaHasSyncedItems setting 2 years ago
Alexandru2909 f2a0ca62b9 [fenix] For https://github.com/mozilla-mobile/fenix/issues/24452 - Remove Event.wrapper for SyncAuth metrics 2 years ago
Grigory Kruglov e136adf6c6 [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/15882: check for account state abnormalities after account manager is ready 2 years ago
Grisha Kruglov 4ad2c1c592 [fenix] For https://github.com/mozilla-mobile/fenix/issues/22569: Remove allopen plugin and Mockable annotations 2 years ago
Ben Dean-Kawamura 84773fa9a2 [fenix] Register the logins key provider
This is required for sync to work
3 years ago
Grisha Kruglov 1608dbc495 [fenix] Enable addresses sync for nightly/debug builds 3 years ago
mcarare c555252e0c [fenix] For https://github.com/mozilla-mobile/fenix/issues/19554: Add SyncEngine.CreditCards to sync supportedEngines. 3 years ago
Roger Yang b7ecc05811 [fenix] Issue https://github.com/mozilla-mobile/fenix/issues/19147: Move set startup metrics off main thread 3 years ago
Sebastian Kaspari 7c11a19369 [fenix] Issue https://github.com/mozilla-mobile/fenix/issues/19040: Remove Leanplum (Nightly) 3 years ago
Grisha Kruglov 632ba92ad5 [fenix] Fix breaking changes introduced by credit card encryption APIs 3 years ago
Jonathan Almeida 36d8481c96 [fenix] Update Android Components to 67.0.20201117165227 (https://github.com/mozilla-mobile/fenix/pull/16619) 4 years ago
Michael Comella a6cef89dc2 [fenix] No issue: move StrictModeManager to perf package.
While StrictMode is not exclusively used for performance purposes, it's
primarily used for perf purposes so let's move it to the perf package
and code owner it.
4 years ago
Michael Comella 3879697c06 [fenix] For https://github.com/mozilla-mobile/fenix/issues/15279: replace lazy with lazyMonitored in component groups.
By component groups, I mean I applied this to any class with the
class kdoc, "Component group for...".

There are a few instances of lazy we had to keep using the old API to
avoid having to update constructor arguments.
4 years ago
Mugurell 5311233fae [fenix] For https://github.com/mozilla-mobile/fenix/issues/16339 - Initialize FxaAccountManager with also a CrashReporter (https://github.com/mozilla-mobile/fenix/pull/16340) 4 years ago
Michael Comella 8a9472e540 [fenix] For https://github.com/mozilla-mobile/fenix/issues/13959: move resetAfter into StrictModeManager.
In a followup PR, we need to add state to strictModeManager (the
number of suppressions). This is much simpler to do when this is defined
as a class rather than an object. However, when this is defined as a
class, `resetAfter` needs access to the strictModeManager. Instead of
passing it in as an argument, it made sense to move this function onto
the strictModeManager instead.

Since folks are used to calling:
```
StrictMode.ThreadPolicy.allowThreadDiskReads().resetAfter
```

We're going to have to add a lint check to prevent them from doing that.
4 years ago
Grisha Kruglov 661a48a940 [fenix] Update breaking changes in the FxA/Sync integration 4 years ago
Jonathan Almeida 1a7ba25347 [fenix] For https://github.com/mozilla-mobile/fenix/issues/12287: Add feature flag for Synced Tabs in tabs tray 4 years ago
Tiger Oakes 233708b122 [fenix] Update LongParameterList baseline 4 years ago
Tiger Oakes 75817b004c [fenix] Use AC RunWhenReadyQueue (https://github.com/mozilla-mobile/fenix/pull/12800) 4 years ago
Tiger Oakes adbadba250 [fenix] Move settings in components (https://github.com/mozilla-mobile/fenix/pull/12675) 4 years ago
Hakkı Kaan Çalışkan 0dae637cdb [fenix] remove suppress and unnecessary otherwise = private 4 years ago
Hakkı Kaan Çalışkan cbaf662206 [fenix] For https://github.com/mozilla-mobile/fenix/issues/9782: Clean up unused FeatureFlags
I've currently found out this ones unused.
webPushIntegration removed because looks like all fatal bugs solved as it said from note.
4 years ago
Vishwa Patel d7faa8c2c5 [fenix] For https://github.com/mozilla-mobile/fenix/issues/10834 - Adding Sync Tabs Feature in Fenix 4 years ago
ekager 089e2db827 [fenix] For https://github.com/mozilla-mobile/fenix/issues/7208 For https://github.com/mozilla-mobile/fenix/issues/7212 - Update parameterized strings 4 years ago
Michael Comella b9fe826cef [fenix] No issue: Move Do and OpenClass to utils pkg.
They were both in their packages by themselves, which feels unnecessary.
Unfortunately, a utils pkg is discouraged by kotlin but we don't have a
better place for them right now. Maybe an annotations/ pkg for the
latter?
4 years ago
Grisha Kruglov 4e308faf35 [fenix] Part 1: Add 'accountManagerReady' queue to BackgroundServices
This gives us an ability to perform tasks against 'accountManager' without
causing its immediate initialization.
4 years ago
Grisha Kruglov 51a31a42ba [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/7450: Lazy storage initialization
Make sure that we actually lazily initialize our storage layers.

With this patch applied, storage layers (history, logins, bookmarks) will be initialized when first
accessed. We will no longer block GeckoEngine init, for example, on waiting for the logins storage
to initialize (which needs to access the costly securePrefStorage).
Similarly, BackgroundServices init will no longer require initialized instances of the storage
components - references to their "lazy wrappers" will suffice.

In practice, this change changes when our storage layers are initialized in the following ways.
Currently, we will initialize everything on startup. This includes loading our megazord, as well.

With this change, init path depends on if the user is signed-into FxA or not.

If user is not an FxA user:
- on startup, none of the storage layers are initialized
- history storage will be initialized once, whenever:
  - first non-customTab page is loaded (access to the HistoryDelegate)
  - first interaction with the awesomebar
  - history UI is accessed
- bookmarks storage will be initialized once, whenever:
  - something is bookmarked, or we need to figure out if something's bookmarked
  - bookmarks UI is accessed
- logins storage will be initialized once, whenever:
  - first page is loaded with a login/password fields that can be autofilled
  - (or some other interaction by GV with the autofill/loginStorage delegates)
  - logins UI is accessed
- all of these storages will be initialized if the user logs into FxA and starts syncing data
  - except, if a storage is not chosen to be synced, it will not be initialized

If user is an FxA user:
- on startup, none of the storage layers are initialized
- sometime shortly after startup is complete, when a sync worker runs in the background, all storage
layers that are enabled to sync will be initialized.

This change also means that we delay loading the megazord until first access (as described above).
4 years ago
Arturo Mejia 397ce4da6d [fenix] No issue: Add serverConfig param to FxaWebChannelFeature 4 years ago
Jonathan Almeida acc3bb4ec6 [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/6730: Lazily initialize account manager on new push message 4 years ago
Grisha Kruglov f07442ba4e [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/7344: Login storage refactor
The a-c side of this work is in https://github.com/mozilla-mobile/android-components/pull/6128

This switches Fenix to use `SyncableLoginsStorage`, which caches a connection internally
on first access, and doesn't expose any lock/unlock APIs at the public boundary.
4 years ago
Emily Kager 9a81700566 [fenix] For https://github.com/mozilla-mobile/fenix/issues/7999 - for Leanplum fxaHasSyncedItems use SyncEnginesStorage 4 years ago
Jonathan Almeida 8e13b8bb98 [fenix] For https://github.com/mozilla-mobile/fenix/issues/373: Implement LeanPlum push messaging
Also closes https://github.com/mozilla-mobile/fenix/issues/6250, since we rely solely on the SDK itself to consume the
messages straight from FCM.
4 years ago
Jonathan Almeida ef061e1068 [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/7645: Disable push service when migrating 4 years ago
Colin Lee f5a7312763 [fenix] For https://github.com/mozilla-mobile/fenix/issues/5182: Loading experiments on startup is slow, remove Fretboard (https://github.com/mozilla-mobile/fenix/pull/7510)
This removes Fretboard. The goal is to reduce cold startup costs associated with loading the experiments on the main thread. We currently have two experiments frameworks in use and should only require one.
4 years ago
Jeff Boek 0d2b57ed16 [fenix] For https://github.com/mozilla-mobile/fenix/issues/5552 - Reverts temporary fix for https://github.com/mozilla-mobile/fenix/issues/5552 4 years ago
Jonathan Almeida e816fa6a00 [fenix] No issue: Use SendTabFeature and FxaPushSupportFeature 4 years ago
Vlad Filippov 3091418bd7 [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/5913: Add new sessionToken scope (https://github.com/mozilla-mobile/fenix/pull/6155) 5 years ago
Grisha Kruglov 2265e8ee61 [fenix] Enable encryption of persisted FxA account state 5 years ago