2
0
mirror of https://github.com/fork-maintainers/iceraven-browser synced 2024-11-11 13:11:01 +00:00
Commit Graph

296 Commits

Author SHA1 Message Date
Grisha Kruglov
eb14532c3c Closes #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).
2020-03-19 15:46:50 -07:00
MickeyMoz
5ed131969a Update Android Components version to 37.0.20200318190037. 2020-03-19 13:47:16 +02:00
Arturo Mejia
b44360ab74 Update Android Components version 2020-03-18 17:25:51 -07:00
Sawyer Blatz
b4e1360f59
For #3086: Adds settings animations (#9187) 2020-03-17 12:35:00 -07:00
MickeyMoz
341393abaa Update Android Components version to 37.0.20200317130045. 2020-03-17 11:49:54 -04:00
Sebastian Kaspari
34144fd254 Use pinned Android Components Nightly version instead of snapshots. 2020-03-17 12:09:36 +01:00
Christian Sadilek
1f189aa4d1 Update to AC 37.0.0-SNAPSHOT 2020-03-11 15:21:28 -04:00
mcarare
320fc4e4ae For #8788 Use Flexbox instead of Grid manager for top sites 2020-03-09 11:01:14 -07:00
Christian Sadilek
fab0d5c9f8 Update to AC 36.0.0-SNAPSHOT 2020-03-05 16:02:23 -05:00
ekager
bd4701f29e No issue: Update androidx testing 2020-02-28 13:28:16 -08:00
Michael Droettboom
bb2c009c16 1592947: Use the Glean Gradle plugin 2020-02-28 13:24:58 -08:00
Arturo Mejia
3bc1ae7232 No issue: Update to AC 35.0.0-SNAPSHOT 2020-02-27 17:44:23 +01:00
Grisha Kruglov
fddf77280c Remove direct A-S dependency; switch to using 'full' megazord
As far as I can tell, we never actually exercise the a-s libraries in Fenix tests currently (this was one of the presumed reasons for having a direct dependency).
In a different branch I've started work on adding end-to-end tests, but currently that's blocked on trying to figure out to load native libraries in tests (somehow, fenix's setup is different than what we have in A-C, not yet clear to me in what way).

Another reason for a direct dependency (i think) is that we needed it to configure a `fenix` megazord. This could be solved via a `support-megazord-fenix` a-c component that provides the correct transient dependencies,
but we can also just switch to use the `full` megazord instead, which is essentially what fenix megazord is at this point. A-S team wants to remove the fenix megazord, so this will help. This is what this patch does.
2020-02-25 17:30:57 -08:00
Mihai Branescu
fdbf63fb97 For #4231
Added kapt plugin + dependencies in order to be able to use Room
Added recent apps to share fragment (top 6)
Extracted dimens of share_to_apps.xml in the dimens file
2020-02-19 10:36:58 -08:00
Sebastian Kaspari
d7e1259e7b
Use Mozilla Android Components 34.0.0-SNAPSHOT. (#8527) 2020-02-19 16:59:34 +02:00
ekager
d41b3608ac For #8504 - Update Lottie version to 3.3.0 2020-02-18 17:44:30 -08:00
Jeff Boek
a8746320d7 For #3869 - Uses RegionSearchLocalizationProvider in the search engine provider 2020-02-18 10:10:16 -08:00
ekager
2b0a5086d5 No issue: Update to latest LeakCanary version 2020-02-18 10:08:32 -08:00
Alessio Placitelli
8875a6be72 Bump Glean to v25.0.0
This is required for making the new A-C snapshot work.
2020-02-18 09:44:21 +01:00
Sebastian Kaspari
4400ee00cd Use Mozilla Android Components 33.0.0-SNAPSHOT. 2020-02-14 12:02:58 +01:00
Simon Chae
b9089e2bdb Update mozilla_service_glean_forUnitTests version 2020-02-12 13:41:28 -08:00
Sebastian Kaspari
f0af6d6f6e Update Mozilla Android Components to 32.0.0-SNAPSHOT. 2020-02-10 17:13:58 +01:00
Emily Kager
5839f5891c No issue: Update androidx dependencies 02.08.20 2020-02-10 11:33:12 +01:00
Sebastian Kaspari
267314ebac Update to Mozilla Android Components 31.0.0-SNAPSHOT. 2020-02-06 11:48:10 +01:00
Grisha Kruglov
3f9ed2992c Bump to a-s 0.50.0 2020-02-05 13:29:17 -05:00
Gabriel Luong
64a4a7f422
Provide add-on support (#8064)
Closes #5630, #6069, #6092, #6091, #6124, and #6147.

Co-authored-by: Simon Chae <chaesmn@gmail.com>
Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
2020-02-04 01:41:51 -05:00
Jonathan Almeida
cbcc56bbba For #373: Implement LeanPlum push messaging
Also closes #6250, since we rely solely on the SDK itself to consume the
messages straight from FCM.
2020-02-04 00:13:56 +01:00
Simon Chae
db34700e3a
Update a-c snapshot version to 30.0.0 (#8003) 2020-01-30 16:55:06 +01:00
Vlad Filippov
3fbfdac129 Changelog: https://github.com/mozilla/application-services/releases/tag/v0.48.3
Ref: mozilla-mobile/android-components#5703

@grigoryk @ekager r?
2020-01-29 16:25:57 +01:00
Gabriel Luong
584b270aa4 For #6758 - Part 2: Add AC dependencies for top sites feature 2020-01-24 15:18:25 -08:00
Chenxia Liu
4dc0aa2bfb Update Fenix to 29.0.0-SNAPSHOT 2020-01-22 11:47:51 -08:00
Will Hawkins
f69009aa9e No Issue: Add custom detekt rule to blacklist certain properties
Add a custom detekt rule to blacklist certain properties. This is
immediately useful for making sure that developers do not configure
runtime behavior using the `BuildConfig.DEBUG` property but it is
useful in a wider context.
2020-01-17 15:46:32 -08:00
Vlad Filippov
dd701233f5 Bump a-s dependency to 0.48.2
Changelog: https://github.com/mozilla/application-services/releases/tag/v0.48.2
2020-01-13 18:44:52 -08:00
Colin Lee
7baf54f566
For #5182: Loading experiments on startup is slow, remove Fretboard (#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.
2020-01-13 12:38:32 -06:00
Jonathan Almeida
3ac17fd390 Update App Services version to 0.48.1 (#7601)
Multiple PRs required to fix UI tests. Force land needed.
2020-01-10 14:52:13 -06:00
Jonathan Almeida
eae3209feb Downgrade app services to 0.44.0 2020-01-08 18:57:31 -05:00
Sebastian Kaspari
e3408b12b4 Update Mozilla Android Components to 28.0.0-SNAPSHOT. 2020-01-08 18:57:31 -05:00
Jan-Erik Rediger
4ee259a939 Update Glean forUnitTest dependency (#6389) 2020-01-08 14:26:16 -08:00
mcarare
1e7a10c585 For #7095 Update androidx.biometric to latest version 2020-01-07 12:11:48 -07:00
Mihai Branescu
ea2411a88b Feature/#220 language menu (#7070)
* For #220
- Added advanced header + locale settings item in the settings fragment

* For #220
- Added locale selection page with lib state + handling of locale changes

* For #220
- Removed registering for locale changes in the manifest, allow system
to restart activity in that scenario

* For #220
- Added unit tests for locale settings page

* For #220: fixed an outdated unit test
ga-a

Co-authored-by: Severin Rudie <Baron-Severin@users.noreply.github.com>
2020-01-03 18:15:35 -08:00
Severin Rudie
9cbc3f7a4a
7410 remove rxjava (#7426)
* For #7410: rewrite updateBookmarkFromObservableInput with coroutines

* For 7410: remove RxJava from project. :(

* For 7410: converted updateBookmarkFromTextChanges to Flow per review
2020-01-03 14:37:12 -08:00
Tiger Oakes
a45821bac5
Closes #7085 - Remove anko (#7301) 2020-01-02 20:15:53 -08:00
Michael Comella
93e677e11b No issue: remove unused Anko dependencies. 2019-12-31 10:46:39 -05:00
Kadeem M
e22d092f5d Added UI tests for the About Settings page (#6161) 2019-12-27 07:55:35 -08:00
Roger Yang
dd1433733a
Closes #7156: Update app links feature usage to include app links interceptor (#7275) 2019-12-20 08:27:19 -05:00
Colin Lee
b654ec99cd
For #747: Update to stable LeakCanary (#7211) 2019-12-16 13:24:55 -06:00
Ryan Kelly
31f2e80ab0 Use feature-accounts-push, which replaces feature-sendtab. 2019-12-13 16:42:28 -08:00
Colin Lee
a8f895cb5c
For #4064: Replace prerelease R8 with improved Kotlin coroutines library (#7153) 2019-12-13 13:29:27 -06:00
Sawyer Blatz
f5f0cb8d9c
Updates to AC 26.0.0-SNAPSHOT (#7068) 2019-12-10 10:41:47 -08:00
ekager
cb1cb37fd8 No issue: Update to 25.0.0-snapshot 2019-12-04 12:49:10 +00:00