Commit Graph

385 Commits (c7604436c39066f45c7c77767e4266dd2f402c79)

Author SHA1 Message Date
Kate Glazko c7604436c3 ammend 4 years ago
Kate Glazko 9ae110e11c works 4 years ago
ekager eea6eb0c4c Add toolbar padding for bookmark snackbar 4 years ago
ekager 16b40992d2 For #9351 - Show snackbars with toolbar padding to work with dynamic toolbar 4 years ago
Severin Rudie 35a132d7ff
8017 advanced autoplay controls. (#8978)
* For #8017: add advanced autoplay controls
4 years ago
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).
4 years ago
Arturo Mejia 823eea44ed No issue: Add serverConfig param to FxaWebChannelFeature 4 years ago
Sawyer Blatz cc8f34b68b
For #8773: Fixes issue with snackbar placement on ContextMenu (#8942) 4 years ago
ekager 31cc7d9166 For #8897 - Don't remove all external sessions on back press 4 years ago
Sawyer Blatz 28f58eb025
For #7158: Improves home to search animation (#9008) 4 years ago
Sawyer Blatz 3548e58c00
For #7158: Improves browser to search animation (#8961) 4 years ago
Grisha Kruglov e6e2dd94c7 Closes #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
Sawyer Blatz 8e06933e8d For #167: Adds browser -> home animation 4 years ago
Sawyer Blatz e96732604b For #167: Improves home to browser animation 4 years ago
ekager a6b07afa95 No issue: Fix LeakCanary detected memory leaks
Co-authored-by: Emily Kager <emilykager@gmail.com>
Co-authored-by: Pierre-Yves Ricau <py@squareup.com>
4 years ago
mcarare 5a6fc02976 For #8773: Set proper anchor and padding for Snackbars on browser screen 4 years ago
Sawyer Blatz 13c9c39658 For #4383: Add feature flag 4 years ago
Sawyer Blatz 009a7f3020 For #4383: Enable dynamic bottom toolbar 4 years ago
ekager ffc2785c1e No issue: Add back updateThemeForSession in onResume 4 years ago
Sawyer Blatz 82979afb48 For #8743: Fix baseBrowserFragment crash 4 years ago
ekager 511c36e191 Removes FragmentPreDrawManager changes in BrowserFragment 4 years ago
Sawyer Blatz dcc1e9fc65 No issue: Fixes swipeRefresh UI test crash 4 years ago
Jeff Boek 541bcf072a Reverts all BrowsingModeManager changes 4 years ago
ekager 0d398f7d44 For #8580 - Don't change theme in initialize UI 4 years ago
Roger Yang 60d38057bb
Closes #8654: Fix breakage from customTabId rename (#8656) 4 years ago
Sawyer Blatz d918cfdf38 For #1901: Screenshot engineView to remove GV flash
Co-authored-by: ekager <ekager@mozilla.com>
4 years ago
Roger Yang 0630e2482f
Closes #8544: Activity should be reused when opening intents from other apps (#8547) 4 years ago
Simon Chae da0148b8bd For #8535 #8498: Allow for multiple browsingModeListeners dispatch 4 years ago
ekager 35bf4fbda9 No issue: Fix login for BaseBrowserFragment FragmentPreDrawManager 4 years ago
Severin Rudie cc29c5fe84
For #7896: integrate text selection search from AC (#8295) 4 years ago
Mugurell ad1144c722 For #6577 - Remove the `total_uri_count` Glean StringMetricType
This was added as a duplicate to an already existing `total_uri_count`
CounterMetricType in #4456.
4 years ago
Emily Kager 9bac7ef47b For #8403: Don't postpone transition for view intents 4 years ago
Simon Chae 2c01022c4b For #8153: Allow web-ext to open new tabs in correct browsing mode 4 years ago
Emily Kager 5839f5891c No issue: Update androidx dependencies 02.08.20 4 years ago
Kate Glazko 7c00a1ad6b For #5073: View Site Cert 4 years ago
David Walsh f728cdaf05
Bug 7189 - Provide page title in website information dialog (#7255)
* Bug 7189 - Provide page title in website information dialog

* Update QSFS test

* Fix Tiger's nits
4 years ago
Gabriel Luong e1863dd3c2 For #6758 - Part 4: Implement "Add to Firefox Home" browser menu item
- The "Add to Firefox Home" browser menu item adds a top site to the top site storage.
- Refactors the FenixSnackbar from BaseBrowserFragment into BrowserToolbarController
since there are multiple menu items that need to show a FenixSnackbar.
- Adds metrics for the new browser menu item.
4 years ago
Kate Glazko dbf711e112 For #4904: Pressing back external link doesn't go back 4 years ago
ekager 0777fb3bbe For #5545 For #5542 Closes #6696 Integrate logins API, adds Settings for Autofilling/Saving Logins 4 years ago
Colin Lee cf220427d7
Fix #7649: Fix missing NOT in asFeatureWebChannelsDisabled check (#7650) 4 years ago
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.
4 years ago
ekager 47c13136f7 No issue: Fix dynamic theming to accommodate lazily inflated readerview 4 years ago
Sawyer Blatz a58decd708 For #6304 & #7577: Persist private mode between app launches 4 years ago
mawen7 a2e0af3194 Only close tab on back press if it has a parent tab 4 years ago
Sawyer Blatz c7c4ad051a
For #6413: Adds more snackbar positioning logic (#7444)
* For #6413: Adds more snackbar positioning logic

* Refactor
4 years ago
Roger Yang f6e286fd9c
Closes #7346: Enable dynamic app links in Fenix (#7361) 4 years ago
Sawyer Blatz 3fb060f682
For #6413: Fixes snackbar positionining for bottom toolbar (#7415)
* For #6413: Fixes snackbar positionining for bottom toolbar

* For #6413: Cleans up snackbar usage
4 years ago
Roger Yang dd1433733a
Closes #7156: Update app links feature usage to include app links interceptor (#7275) 4 years ago
Rushab Kumar 562eb89356 For #7250 - Replace anko.dimen 4 years ago
Severin Rudie cd53e9778a For 6795: expands toolbar whenever a new session is selected
This ensures that the bar is expanded when opening a link in a new tab
4 years ago