Commit Graph

4095 Commits (e52000bb209ee7dc75bb46e7b3ed5f1b4f8e527a)

Author SHA1 Message Date
Roger Yang 2ed4115a6c Revert "For #18711 - Refactor credit card telemetry under the Metrics ping (#19733)"
This reverts commit 172a118a51.
3 years ago
Mugurell 27d3a3f0dd For #20584 - Use CombinedHistorySuggestionProvider for history suggestions
This should ensure user is always presented with history results for his
searches.
3 years ago
Jonathan Almeida ca51ac6168 Issue #20664: Do not consider newly created tabs as inactive 3 years ago
Sebastian Kaspari 145f1898f1 Enable Android Autofill in Beta builds. 3 years ago
mcarare 066f9d7f5d For #20601: Use View binding in quick settings. 3 years ago
Arturo Mejia 0b43eb879e For #19970 [Crash] IllegalStateException when navigating to TP panel 3 years ago
Roger Yang c55c252f9a Closes #20650: Revert to manually close tab as default setting 3 years ago
Arturo Mejia 525e5e7c25 For #20601: Undo Use View binding in quick Settings. 3 years ago
Michael Comella 1963d502c7 Closes #20461: remove app_received_intent probe. 3 years ago
Sebastian Kaspari 1cc4ae9ab2 Fix UI tests: SettingsPrivacyTest, DeepLinkTest. 3 years ago
Sebastian Kaspari 7fed8b4ab5 Add preference for enabling/disabling Android Autofill from within the app. 3 years ago
Sebastian Kaspari 4774f8396b Add dialog-like theme for AutofillSearchActivity 3 years ago
Elise Richards 7fdade49ec
No issue: fix glean metrics tests for expired metrics (#20621)
* Remove references to preferences.open_links_in_private and preferences.private_search_suggestions in tests. These metrics have been expired and may be removed.

* Add ignores for performance metrics that have expired.

* Remove tabs_tray.cfr.dismiss and tabs_tray.cfr.go_to_settings telemetry probes.

* Remove metrics controller from signature and remove in tests
3 years ago
fevziomurtekin a80b7fa329 For issue: #16396 Fix text contrast ratio on "recently closed tabs" 3 years ago
Jonathan Almeida 69d630f46c Issue #20349: Add inactive tab grouping to tabs tray 3 years ago
Jonathan Almeida f8945b3720 Issue #20590: 'Jump back in' should obey feature flags 3 years ago
Gabriel Luong 0f861236c1 Add history metadata feature to the settings menu 3 years ago
Christian Sadilek 27a7396a42 Keep history metadata for 14 days 3 years ago
Sebastian Kaspari 971b419d77 Run ktlintFormat to adapt to latest formatting rules. 3 years ago
Sebastian Kaspari 24e9f64cff Add telemetry for Android Autofill feature. 3 years ago
mcarare cca7892e91 For #17917: Use View binding in settings screens. 3 years ago
mcarare 26e41be02e For #19955 #20393: Add telemetry for home screen recent tabs. 3 years ago
mcarare 8b13e382fd For #17917: Use View binding in lists. 3 years ago
Jonathan Almeida e81c20bc26 Close #19785: Let WebAuthnFeature ride the trains 3 years ago
Arturo Mejia 7e5644036b Put the Start On home setting behind a feature flag. 3 years ago
codrut.topliceanu e2af42a497 For #20440 - Forces TopSitePager bind if no. of pages changed 3 years ago
Sebastian Kaspari 1cd04cd05e Render debug info screen with Jetpack Compose. 3 years ago
codrut.topliceanu 302ad8ae85 For #20449 - Fixes `Show most visited sites` crash on disable 3 years ago
mcarare c094e1a457 For #20425: Do not show recent bookmarks older than 10 days. 3 years ago
Mugurell 2c8c6d29ea For #20402 - Re-enable "in progress media tab"
The crash for when media starts playing in a custom tab is now resolved in AC.
3 years ago
Gabriel Luong 973070ab50 For #20259 - Add HistoryMetadataSuggestionProvider in AwesomeBar 3 years ago
Gabriel Luong 9b22b2baa4 For #20438 - Display a list of history metadata groups 3 years ago
Christian Sadilek 589f166b29 Issue #16330: Remove remaining usages of Sentry.capture 3 years ago
codrut.topliceanu 2040af6a5d For #20367 - Fixes removeAllTabs adding to recently closed
`removeAllTabs` will now no longer allow `UndoMiddleware` from recovering the tabs.
3 years ago
jhugman 097fa68964
Allow branch enrollment and unenrollment in Nimbus secret menu (#20050)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
3 years ago
codrut.topliceanu bc723e0a9b For #15499 - Smoothly updates topSites list on remove
To remove the flash on refresh of the topsites list we have to use submitList, however using this too high up in the hierarchy of our listAdapters within listAdapters will cause children to refresh at once. The solution to this is to use submitList lower. Using it in TopSitesPagerAdapter.kt to update the TopSitesAdapter is the way to go. I've also had to use a dummy item for the "removed" Topsite ( with id = -1) so I can manually diff that before using submitList.
3 years ago
Sebastian Kaspari 8b5aef7def Update Kotlin to 1.5.10 (and Coroutines to 1.5.0). 3 years ago
Jonathan Almeida 41ba94b951 Issue #20402: Disable LastMediaAccessMiddleware temporarily
The reducer in this middleware assumes the SessionState is always a
TabSessionState which holds the lastMediaAccess. This is true for the
lastAccess long which is a persistent state.

The list of MediaSessionActions however can also come from Custom Tabs
which relies on a CustomTabSessionState.

For now, the temporary fix is to disable this feature by removing the
middleware and no longer adding the last accessed media to the
recent tabs list ("Jump back in") to avoid crashing users while we think
of a real fix.
3 years ago
Roger Yang c4347a9492 Closes #19847: Add telemetry for the default browser notification 3 years ago
Roger Yang 049811fabb Issue #20307: Clear sharedViewModel selectedFolder when backing out of bookmark fragment 3 years ago
Mugurell 1251894933 For #19933 - Show a media tab item on homescreen for the last tab with media 3 years ago
Roger Yang 68b56ff240 Issue #19846: Make sure default browser notification only happens once 3 years ago
Mugurell f95567912f For #20229 - Use the AC common implementation for ads/search telemetry
Everything should work exactly as before.
3 years ago
mcarare b2a5723bad For #20292: Use tint for home button icon. 3 years ago
mcarare b25f807eea For #17808: Remove deprecated systemUiVisibility and flags. 3 years ago
Jonathan Almeida 4b4c86551d Close #20320: Use scope from testDispatcher in RecentBookmarksFeatureTest 3 years ago
Jonathan Almeida b877430bad Close #20267: Filter out network errors from Nimbus 3 years ago
Marc Leclair 298ec5cce1 For #19804: Restore logic to original behavior 3 years ago
Marc Leclair 871cde764e For #19804: checkDefaultBrowser moved to helper function 3 years ago
Marc Leclair db01fab8a9 For 19804:Fixed call order in the 3 years ago
Marc Leclair b8bbdb45bc For #19804: Changed `var isDefaultBrowser` to a function
The change to the function makes it so when the Settings.kt class is initialized, the isDefaultBrowser, which calls the
BrowserCache, won't get called right away. `isDefaultBrowser()` is known to take quite a while on start up on the G5+ (approx
30-40ms).
3 years ago
Michael Comella 79fcbcba83 Closes #20127: fix app_received_intent extras.
Apparently, it had been using the wrong mapping this whole time. I can't
wrap my head around fenix's glean wrapper so I'm not sure if this
resulted in bugs or if my change changes the behavior. However, I don't
think anyone is using this probe so I'm requesting to remove it. If we
don't end up removing it, then we can check for bugs/changes in
behavior. This isn't ideal but I'd rather not spend the time on it if we
don't have to.
3 years ago
Michael Comella be64ee4159 For #20127: remove app_opened_all_startup integration. 3 years ago
Elise Richards 9bfe9b0787
For FNX-22339: Recently saved bookmarks (#19835)
* Title and button for home screen recently saved bookmarks section

Create bookmark item view with favicon and title

* View holders and interactors for recently saved bookmarks

Recent bookmark item view holder binding

Create adapter for recent bookmarks. Implement controller methods. Implement view holder bindings for items

Top level adapter for recent bookmarks section

Retrieve list of recent bookmarks on home

View holders and interactors for recently saved bookmarks

Recent bookmark item view holder binding

Create adapter for recent bookmarks. Implement controller methods. Implement view holder bindings for items

Top level adapter for recent bookmarks section

Retrieve list of recent bookmarks on home

Update list on app start and when bookmarks are added

View holders and interactors for recently saved bookmarks

Recent bookmark item view holder binding

Create adapter for recent bookmarks. Implement controller methods. Implement view holder bindings for items

Top level adapter for recent bookmarks section

Retrieve list of recent bookmarks on home

Update list on app start and when bookmarks are added

Make a use case for retrieving and updating the list of recently saved bookmarks

Add adapter items and define header viewholder binding

Use session interactor for header button clicks. Bind in the adapter

* Retrieve list of bookmarks asynchronously on home

Interactor and controller tests

Address review comments

Split up tests for recent bookmarks

Update to new interactors

Dark mode and light mode styles

Refactor bookmarks home stuff

* Add RecentBookmarksFeature to home

Move interactor to SessionControlInteractor

Clean up lint, styles, and dimens.

* Bookmarks use case tests for retrieving recently saved bookmarks. Linting.

* View holder tests

* Match ux to designs for colors, margins, and scrolling

* Clean up clean up

* Tests for the view bound feature

* Controller test

* Clean up: check state of store in feature tests; ellipsize textviews for bookmark item; remove unused attr; format

Co-authored-by: Jonathan Almeida <jalmeida@mozilla.com>
3 years ago
Roger Yang d4af9401d1 Closes #19846: Update default browser notification strings 3 years ago
Roger Yang 6d1a44e259 Closes #19846: Only add default browser notification work if work is not pending 3 years ago
Roger Yang 0133f42a15 Closes #19846: Show Default Browser Notification if browser is not default 3 years ago
codrut.topliceanu 3ae6472e16 For #20257 - Sets min no. of grid columns to 2 in TabsTray 3 years ago
codrut.topliceanu 083d50aafd For #20250 - Adds FLAG_SECURE to TabsTray dialog 3 years ago
codrut.topliceanu d530f5b773 For #17855 - Stops SecureWindowFeature from removing FLAG_SECURE 3 years ago
Grisha Kruglov 946fda55aa Closes #20276: Fall-back to URL parsing for tabs with parents to obtain search terms 3 years ago
mcarare b43db5f2b6 For #20029: Remove animations when recreating activity on locale change. 3 years ago
codrut.topliceanu 9693507ffb For #19131 - Adds kdoc to TopSitePagerPayload 3 years ago
codrut.topliceanu a7f3d34538 For #19131 - Fixes top sites refresh and interactability 3 years ago
Roger Yang 702e3e6886 Closes #20274: Limit about:config to Nightly and Beta 3 years ago
Roger Yang e69f3dfbbb Closes #19090: Show snackbar on adding to bookmarks from tabs tray 3 years ago
mcarare 36b50ea8d9 For #17917: Use View binding in onboarding cards. 3 years ago
Christian Sadilek 7c57898c76 Closes #20123: PlacesException when recording history metadata 3 years ago
codrut.topliceanu ce0773fcdc For #19558 - Adds proper tint to "Report Site Issue" 3 years ago
Codrut Topliceanu af1c00a645
For #20195 - Adds tabsTray allowScreenshotsInPrivateMode check (#20203)
* For #20195 - Adds tabsTray allowScreenshotsInPrivateMode check
3 years ago
Oana Horvath c830ed9986 For #20123: Disable historyMetadataFeature flag 3 years ago
Travis Long a2984e6863 [SDK-279] Adds a way to switch to the "preview" collection in Nimbus
This adds a toggle/switch to the debug settings menu that causes Nimbus to use the "preview" collection rather than the "main" collection when it initializes.  Since it is only applied during init, it does require a restart in order to take effect.
3 years ago
Gabriel Luong 7aea29d57b For #19951 - Use Proton icon for new home button 3 years ago
Arturo Mejia 29f5567869 For #19922 Fix the default autoplay setting to be block audio only 3 years ago
Mugurell 5d62fe11a6 For #20046 - Show the last accessed tab in Jump back in 3 years ago
jhugman 8b32f7dcda
Add error reporting via sentry to Nimbus caught exceptions (#20049) 3 years ago
Roger Yang cabd004390 Closes #19182: Close Tabs Tray when sharing completes 3 years ago
Roger Yang 74c1cc82fb Closes #19921: Update appcompat and fragment dependencies to 1.3.x 3 years ago
Arturo Mejia 1d76bc7ca2 For #19922 Update the default autoplay setting to be block audio only 3 years ago
Jonathan Almeida 15df06b294 Issue #20054: Update recent tab on title or icon changes 3 years ago
Arturo Mejia 251bfc7fe9 Improvements to site permissions 3 years ago
codrut.topliceanu 37e2c6ceeb For #19739 - Adds start tabsTray with multiSelect support 3 years ago
codrut.topliceanu 2c538dbb5d For #16330 - Replaces Sentry.capture with submitCaughtException 3 years ago
Mugurell b3a6dcccd7 For #19797 - Remove FenixAccountManager#authenticatedAccount
This api had a bug stemming from the property name - authenticatedAccount which
may return even an unauthenticated account.
After the recent refactorings it was left unused so best to remove it to
prevent from future misuses.
3 years ago
Mugurell ce64c2439d For #19797 - Use the FXA email only if the account is authenticated
An account may exist but it may need to be re-authenticated.
In this case also the email should not be exposed to the app.
3 years ago
Mugurell 19af5e9b15 For #19797 - Remove FenixAccountManager#signedInToFxa
After the changes from this patch this api is not used anymore so to prevent
future misuses of it this is removed in favor of the new "accountState".
3 years ago
Mugurell 1fc3bb84ca For #19797 - Home menu: go to problems page if account exists but not signed in 3 years ago
Mugurell 3d071dd049 For #19797 - Browser menu: go to problems page if account exists but not signed in 3 years ago
Mugurell d663383cf7 For #19797 - New FenixAccountManager#getAccountState()
This new method allows a single source of truth for getting the up-to-date
account status without clients interesting in this needing to know what to
check for.
3 years ago
Grisha Kruglov 2198298df5 Obtain searchTerms from previous page in tab's history
Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
3 years ago
Arturo Mejia c2439914fa For #19881 add telemetry for start on Home. 3 years ago
Mihai Adrian Carare 9c9e26953f
For #19813: Invalidate tab tray adapter structure on screen rotation. (#20044) 3 years ago
Christian Sadilek b123b50df7 HistoryMetadataMiddleware: Use state ext. functions from A-C 3 years ago
mcarare df2efcf310 For #20024: Visit FAB after synced tabs in a11y traversal.
This helps focus on FAB without going through whole tab lists.
3 years ago
Jonathan Almeida 5be35df969 Revert "For #19739 - Adds start tabsTray with multiSelect support"
This reverts commit d8288f5e89.
3 years ago
Jonathan Almeida aeb186f79c Revert "For #19739 - Moves argument to initial state init"
This reverts commit f198e110d7.
3 years ago
codrut.topliceanu f198e110d7 For #19739 - Moves argument to initial state init 3 years ago
codrut.topliceanu d8288f5e89 For #19739 - Adds start tabsTray with multiSelect support 3 years ago
Mihai Adrian Carare 83a5aa2838
For #20007: Multiselect title is important for a11y just in select mode. (#20008) 3 years ago
Gabriel Luong c0329f3c26 For #19988 - Part 2: Load tab icon from BrowserIcons cache if needed for the recent tab
Co-authored-by: Jonathan Almeida <jalmeida@mozilla.com>
3 years ago
Gabriel Luong ad91f91eb6 For #19988 - Part 1: Move RecentTabsListFeature into recenttabs package
Co-authored-by: Jonathan Almeida <jalmeida@mozilla.com>
3 years ago
Mugurell a1fa1a5df6 For #19135 - Offer more context for why STATE_HALF_EXPANDED is not used 3 years ago
Mugurell abeb8b5576 For #19135 - Set different offsets for expanded trays
As in the previous version of tabs tray when tray is expanded while in portrait
it should have a 40dp offset and when the tray is expanded while in landscape
it should have a 0dp offset - effectively making it fullscreen.

These values were set in code, always overriding the xml set value so I
removed that xml declaration.
3 years ago
Mugurell 3cbb67da5c For #19135 - Expand the tabs tray in landscape
Track the current orientation and collapse / expand it the tabs tray depending
on the orientation and the number of opened tabs.
3 years ago
Mugurell d7544337b8 For #19135 - Refactor the behavior code to support more functionality later
Setup a new TabSheetBehaviorManager with all the dependencies it needs to
set the initial tray's behavior.
This same manager will later be called to update behavior's properties.
3 years ago
Sammy Khamis 950e36c053 changes required for uniffi-ing logins component= 3 years ago
Christian Sadilek ba19960b7e Issue FNX-22435: Introduce History metadata
Co-authored-by: Grisha Kruglov <gkruglov@mozilla.com>
3 years ago
mcarare d43acbd03d For #19938: Remove a11y workaround for tab tray new tab button.
Historically, button was introduced in a3dc565c10,
because FAB was not selectable by a11y in previous implementation of tab tray.
3 years ago
Jan-Erik Rediger d55f55d70c Suppress deprecation warnings for now-deprecated Glean APIs
Glean v39 allows to specify types for event extra keys.
The old API is therefore deprecated.
To avoid to much churn right now and keep the build going let's suppress
the deprecation warnings.
3 years ago
mcarare 2d2be26fbc For #19915: Add telemetry for the toolbar Home screen button. 3 years ago
Gabriel Luong 9d3cf79051 For #19916 - Add last viewed tab to home screen
Co-authored-by: Jonathan Almeida <jalmeida@mozilla.com>
3 years ago
Sebastian Kaspari c0531ffa82
Update Android Components to 91.0.20210610143711. (#19946) 3 years ago
Christian Sadilek 0c1e712ca8 Issue #17800: Cleanup and fix request desktop site from home 3 years ago
Arturo Mejia 2f879f8e9d Fix site permissions breaking changes 3 years ago
Sebastian Kaspari 4753a1d494 Complete browser-state migration and remove browser-session dependency.
Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
3 years ago
Gabriel Luong ace835d1e8 For #19876 - Part 3: Add a FeatureFlag to keep the Home screen button in Nightly 3 years ago
Gabriel Luong 044c9a5b40 For #19876 - Part 2: Add a Home screen button to the browser toolbar 3 years ago
Gabriel Luong 86a9c56782 For #19876 - Part 1: Refactor BrowserToolbarInteractor
- Renames `BrowserInteractor` to `DefaultBrowserTolbarInteractor`
- Renames `BrowserTooolbarViewInteractor` to `BrowserToolbarInteractor`
- Refactors `BrowserToolbarViewInteractor` interface from `BrowserToolbarView.kt` to  `BrowserToolbarInteractor` as `BrowserToolbarInteractor`
3 years ago
rxumoz 3a4f73be19
For #10300 - Fix Baidu search telemetry (#19127) 3 years ago
Jonathan Almeida f06e3a6493 Issue #19178: Apply new styling to Synced Tabs list 3 years ago
codrut.topliceanu 5729137ddb For #19738 - Adds tests for SecureTabsTrayBinding.kt 3 years ago
codrut.topliceanu 0572cab97c For #19738 - Secure mode enabled in private tabs tray
Prevents screenshots while tabs tray with private tabs page is open.
3 years ago
Arturo Mejia f0bb70e354 For #19789 Start on Home after some amount of time 3 years ago
Gabriel Luong 74a96905a3
For #19495 - Add validation for the name on card (#19836)
- We want to ensure that name on card in the credit card is not empty when submitted. Display an appropriate error when the field is invalid.
3 years ago
Christian Sadilek 68a761388a Suppress TooGenericExceptionCaught for NimbusApi.withExperiment 3 years ago
James Hugman 5981a92148 Re-instate catch-all to withExperiment 3 years ago
Jonathan Almeida a64cac6c7f Issue #19792: Add content description for tab tray action button 3 years ago
Roger Yang 2e4635334a
Closes #19090: Show snackbar on adding to bookmarks from tabs tray (#19807) 3 years ago
Jonathan Almeida 811dd3e618 Issue #19809: Change default tab tray view to grid layout 3 years ago
Jonathan Almeida 27280e6683 Issue #19809: Remove Grid layout info banner in tabs tray 3 years ago
codrut.topliceanu 85c438798e For #19191 - Fixes missing multi-select checkmarks 3 years ago
Jonathan Almeida bf3f81d271 Issue #19112: Remove old Synced Tabs code 3 years ago
Jonathan Almeida dc11c334b6 Issue #19112: Remove old tab tray code 3 years ago
Mugurell 0455cc3cd4
For #18877 - Support updated PromptRequest AC APIs (#19767)
* For #18877 - Support updated PromptRequest AC APIs

This issue stemming from a race condition is fully resolved in AC by adding
support for having multiple prompts at a time.
Fenix needs just a small change to support the AC refactoring.

* Update Android Components version to 91.0.20210603145049

Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
3 years ago
Gabriel Luong a5110f8c0a
For #19746 - Remove FeatureFlags.nimbusExperiments (#19771) 3 years ago
ZianeA e4fa71fde7 For #[15083]: Add multi select to recently closed tabs 3 years ago
Elise Richards 6dbe5acc5b
For #19746 - Remove feature flag for the three-dot menu redesign (#19750)
* Remove feature flag for the three-dot menu redesign

* Remove menu feature flag from unit tests
3 years ago
codrut.topliceanu 13f9a35131 For #19571 - Adds gdprForgetMe when stopping Adjust 3 years ago
Gabriel Luong 33b2789270
For #19734 - Enable Credit cards autofill for Release (#19735) 3 years ago
Gabriel Luong 172a118a51
For #18711 - Refactor credit card telemetry under the Metrics ping (#19733) 3 years ago
Jonathan Almeida fc46ab2804 Close #19731: Track metrics before we dismiss the tabs tray 3 years ago
Mihai Adrian Carare e69bf4e26a
For #19564: Explicitly update switch state for a11y event announcements. (#19589) 3 years ago
Gabriel Luong d30ebf86f9
For #19693 - Display a biometric prompt when a credit card is selected to autofill (#19697)
Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
3 years ago
Grisha Kruglov daba5595f6 Enable addresses sync for nightly/debug builds 3 years ago
Grisha Kruglov e891139db9 Minor cleanup of the account settings 3 years ago
Elise Richards e0b410efdf
For #18711: Telemetry for credit card autofill (#19548) 3 years ago
Gabriel Luong 89a1b0016c
For #19492 - Provide the correct CreditCardNumber type to UpdatableCreditCardFields when updating a credit card (#19692)
We were crashing because we were specifying the wrong `CreditCardNumber` type when constructing the `UpdatableCreditCardFields`.
We only had the plaintext card number from the user input, but was placing it off as an encrypted card number, which resulted in the crash.
3 years ago
Christian Sadilek 9d1e51dfff Fix breaking change in MetricController 3 years ago
Christian Sadilek 3a57188c35 Fix lint/detekt issues 3 years ago
James Hugman ab678a21ff Add an experiment to demontrate the Feature API
This is not visible in production, but only debug. It shows three variables
being used to change the settings screen (title, icon and title-punctuation).
3 years ago
Elise Richards 279d59897c
For #18264 - Add biometric prompt to credit card settings (#19505) 3 years ago
Jonathan Almeida 758700cbb0 Issue #19647: Navigate to browser from home via Synced Tabs page 3 years ago
Gabriel Luong 338c488fae
For #19680 - Show the card number when editing a credit card (#19681) 3 years ago
Gabriel Luong c11335fafc
For #18271 - [Saved cards] Display the credit card provider icon and report the correct card type (#19652) 3 years ago
Mugurell bd8facb025 For #18263 - Allow dynamically toggling credit cards autofill 3 years ago
Ionut Cristian Bedregeanu ac71b47c61 For #19653 - Address 19643 PR comments
Rename handleAddCreditCard to handleAddCreditCardClicked
Rename onClickAddCreditCard to onAddCreditCardClick
Format layout_add_credit_card.xml
3 years ago
Mugurell 3fb40e1f40 For #19475 - Introduce a DefaultTabsTrayInteractor
Refactored the TabsTrayFragment to not implement the TabsTrayInteractor which
among other advantages allowed for easier testing.
3 years ago
Mugurell dc26272381 For #19475 - Cleanup - respect naming scheme in TabsTrayController
In our current MVI implementation the View Interactors are first called in
response to a direct user action and contain methods following the
"onXXHappened" naming scheme and then delegate other Interactors / Controllers
for specific actions.

Controllers contain the business logic for actually updating the app's state
and offer methods following the "handleXXAction" naming scheme.
3 years ago
Sebastian Kaspari 84f4ff0d86 Issue #17819: Update detekt to 1.17.1 3 years ago
Ionut Cristian Bedregeanu 0a226962bb For #18881 - Create a new layout for 'Add credit card' button
Add functionality for 'Add credit card' button

Add unit tests for 'Add credit card' functionality
3 years ago
Codrut Topliceanu 5f2b3fec38
For #18270 - Adds ellipses+last 4 digits to CC display (#19420)
* For #18270 - Adds ellipses+last 4 digits to CC display
3 years ago
mcarare 0141d96465 For #19554: Add SyncEngine.CreditCards to sync supportedEngines. 3 years ago
mcarare 9400f58e2a For #17538: Perform autofill storage warm-up after visual completeness. 3 years ago
mcarare a862824697 For #19600: Change manage cards preference UI dynamically. 3 years ago
mcarare bcf6b901ee For #19600: Change manage cards preference UI dynamically. 3 years ago
Mugurell bbc25e430e
For #19590 - Enable credit card autofill in Debug and Nightly (#19601) 3 years ago
Sebastian Kaspari 761752e382 AutofillConfiguration: Correctly specify autofill confirm activity. 3 years ago
Mihai Adrian Carare d96415111b
For #19054 - Navigate to the Credit card screen when deleting last card. (#19451) 3 years ago
Mihai Adrian Carare 11efbaacc4
For #18507 - Prevent screenshots on credit card screens. (#19560) 3 years ago
mcarare 888b45b079 For #8370: Remove extra characters from name mapping. 3 years ago
Arturo Mejia 52587753a5 Remove feature flag for proton icons re-design #18132 3 years ago
Gabriel Luong 75fc116043
For #18287 - Display a credit card autofill prompt (#19477) 3 years ago
Arturo Mejia bf42a1786e For issue AC#10231 update proton icons third batch 3 years ago
Elise Richards 6459a859b9
For #17537: Add preferences for syncing credit cards and addresses (#19471)
* Add preferences for enable/disable sync for cc and addresses

* Set pref visibility based on feature flags

* Helper function for pin warning preferences and set default values for cc and addresses to false.

* Kdocs for relevant sync functions in account settings

* Default visibility to false for credit cards and addresses in account settings
3 years ago
Jonathan Almeida ede909e858
Issue #19176: Exit select mode when removing tab (#19486) 3 years ago
mcarare 4dd4e35982 For #19258: Replace default Android back button with a custom icon. 3 years ago
Codrut Topliceanu d08b00717a
For #19091 - Fix Undo of close multiple tabs (#19466)
Fixes the issue where closing multiple selected tabs and then pressing Undo would only restore one of the tabs.
3 years ago
Roger Yang f13560ae52 Issue #19147: Move set startup metrics off main thread 3 years ago
Jonathan Almeida f0d352f47e Issue #19002: Correct naming of pager viewholders 3 years ago
Jonathan Almeida a95a26b2c6 Issue #19002: Use a single BrowserTrayList for normal/private list
We now have a BrowserTrayList.
 - Renamed from `BaseBrowserTrayList`.
 - Removed the abstract `configuration` and used a `lateinit var`
 instead.
 - Removed `NormalBrowserTrayList` and `PrivateBrowserTrayList`.
3 years ago
Jonathan Almeida bd753d3f94 Issue #19002: Correct browser viewholder naming 3 years ago
Jonathan Almeida 809c82a9f9 Issue #19002: Move TabsTrayViewHolder to browser package 3 years ago
Jonathan Almeida 78af3d80b3 Issue #19002: Remove unused TrayItem interface 3 years ago
Jonathan Almeida e66983d093 Issue #19002: Use AbstractBinding from lib-state 3 years ago
Mugurell 551031eee3 For #18672 - Renaming a TopSite changes just the title
Previously renaming a TopSite would bind that as a new item and in such update
the entire list. This could potentially leading changes in the list and then
it's ViewPager parent's layout.

This patch switches the code to use the existing TopSitePayload and so do a
partial update of an on-screen TopSite instead of rebind it as a new item.

If a layout is requested while showing <=4 TopSites on the second page, by
having "offscreenPageLimit = 1" the biggest height of ViewPager pages is used
preventing an edgecase where the ViewPager would hide half of the items from
the first page.
3 years ago
kanish671 9e30833506 For #18672 - Rename TopSites even on the second page
Index calculation for notifying changes while renaming a top site in the second
page was being wrongly calculated. Since it is page 2, we would need to take a
mod with the number of top sites per page to get the actual index of the top
site that was being renamed.
3 years ago
Jonathan Almeida 392ace67d6 Issue #19175: Fix SyncTabs list not updating on changes
The main cause for this is that the `LifecycleProvider` needs to be set
to `State.RESUMED` to avoid the account manager's internal
`ObserverRegistry` from putting the UI observers into the paused state.

The rest of the changes is to rely the internal (safe) logic to
correctly sync and then update the tabs list.
3 years ago
mcarare 93c6403882 For #19357: Remove bookmarks experiment and keep star-with-line icon. 3 years ago
Elise Richards cf9a84eed5
Move locale restoration on startup to the visual completeness queue to prevent perf impact (#19315) 3 years ago
Dharan Aditya 6cbc35b7d8
Fixed mozilla-mobile#18641: [Bug] Fill link from clipboard overlaps search engines (#18657) 3 years ago
Gabriel Luong d83c9d1e72
For #18993 - Nimbus: Allow internal tooling to opt into specific branches of an experiment (#19333) 3 years ago
Roger Yang a9e0557d83
Closes #3728: Add secret menu switch for allowing third party root certificates (#19398) 3 years ago
Arturo Mejia 9bfb31519a For issue #19290 update to proton icons second batch 3 years ago
mcarare 516d52997d For #18266: Validate credit card entry info. 3 years ago
mcarare 3428dd67ed For #18266: Refactor fragment and view to remove duplicate code. 3 years ago
Codrut Topliceanu 277034546f
For #18262 - [Credit cards] Turn the "Sync cards across devices" button into a "Sync cards" toggle (#19207)
* For #18262 - Turns "Sync cards/logins" into toggle
3 years ago
Roger Yang 74047cdceb
Closes #19147: Move startup metrics to right after Glean initialization (#19252) 3 years ago
codrut.topliceanu 0c74756d39 For #19132 - Fix navigation on disconnect started from tabsTray
- Added checks to popBackStack from the Disconnect Logged-in User Dialog, either back to settings, browserFragment or homeFragment.
3 years ago
Jonathan Almeida f421f82f2c Close #19259: Pass CoroutineContext to nav interactor constructor 3 years ago
Roger Yang 79cf3fc765
Closes #18253: Bookmark and History open new tabs in the background (#19275) 3 years ago
Elise Richards 5b5e7ebf47
Turn on feature flag for three-dot menu redesign for beta. (#19111) 3 years ago
Sebastian Kaspari 5f4a590418 Issue #19040 - Update marketing data setting description 3 years ago
Roger Yang 59de530a9c
Closes #18253: Remove spaces from Addons telemetry comma-separated list (#19292) 3 years ago
Arturo Mejia 21cf0b31a4 For issue #18132 update to proton icons first batch 3 years ago
mcarare 8c0f86bd96 For #19213: Adjust synced tabs to properly show in RTL. 3 years ago
Mugurell d495d84208 For #11819 - Show the mic in widget only if setting is enabled
If "Show voice search" is disabled under Settings, the mic icon should not be
shown in the search widget.
3 years ago
Arturo Mejia c725493bea Fix openFile breaking changes 3 years ago
Sebastian Kaspari 7d690219ea Issue #19040: Remove Leanplum (Nightly) 3 years ago
Grisha Kruglov 4e16c46b27 Fix breaking changes introduced by credit card encryption APIs 3 years ago
Sebastian Kaspari 6a1b5875b0 Use new SearchSuggestionProvider flag. 3 years ago
Mihai Adrian Carare e952513569
For #19065 - Add extension functions to be used with credit cards. (#19187) 3 years ago
Mugurell dc51cd47b5 For #18591 - Make the navbar sticky in the new menu 3 years ago
Roger Yang cd37f398f1
Closes #18816: Disable TabsTray FAB on accessibility enabled (#19170) 3 years ago
mcarare ded686d533 For #19125: Move top site pin net to title. 3 years ago
Sebastian Kaspari cf4847dc17 Remove browser-search references. 3 years ago
mcarare 00744fa9e5 For #18267: Updates preferences visibility depending on creditCardsStore 3 years ago
Elise Richards db76b8fe21
For #19114: check state of sync account when navigating from sync sign in menu item (#19118) 3 years ago
mcarare 8f1b3e03f1 For #18608: Also add default browser item in new menu. 3 years ago
Arturo Mejia acb24396e5 Address WebExtensionBrowserMenuBuilder breaking change 3 years ago
Sebastian Kaspari a126f0913a Update to Mozilla Android Components 90.0 3 years ago
mcarare 8b3a878062 No issue: Rename Event for naming consistency. 3 years ago
mcarare f693375270 For #18852: Add metrics for default browser settings experiment. 3 years ago
Elise Richards 59c94e447c
For #19005: new tab three-dot menu sync sign in (#19037)
* Show synced tabs or sync account in new tab menu

* Sync sign in item navigates to account settings

* Check account auth and get sync item title

* Look for sync sign in item on home menu for UI test

* Sync sign in menu item UI test
3 years ago
Jonathan Almeida 69efd3a089 Close #19094: Open sign-in flow if no account is created for tabs tray 3 years ago
Jonathan Almeida cfaaf82541 No issue: Allow tabstray rewrite to ride the trains 3 years ago
Jonathan Almeida 46cec3d658 No issue: Fix regression in last tab deleted
When we allow the homescreen to handle undo for the last tab, we no
longer need to handle this ourselves with our own binding.

In the future, we should re-think this logic to be more robust and less
spread out across multiple screens.
3 years ago
Jonathan Almeida 1e09d50fd7 No issue: Fix the initial select mode check 3 years ago
Jonathan Almeida ad483903ed No issue: Do not create a new instance of TabsTrayStore
We only need one. :)
3 years ago
Jonathan Almeida 053453cc7f No issue: Enable tabs tray re-write by default in nightly 3 years ago
mcarare f94f8531f6 For #18496: Set activity theme in onCreate before call to super. 3 years ago
Jonathan Almeida 8b6d06e551 Close #19064: Focus on tab page with the BrowsingModeManager 3 years ago
Roger Yang cba68faac6 Closes #18946: Add undo toast for tabstray 3 years ago
Michael Comella cbc5df3c63 For #18836: address onCreate method length detekt issue. 3 years ago
Michael Comella d6999234b0 For #18836: add & integrate StartupTypeTelemetry. 3 years ago
Michael Comella a64540bd06 For #18836: add StartupPathProvider + tests. 3 years ago
Michael Comella ec65737cbb For #18836: address lint errors for StartupStateProvider*. 3 years ago
Michael Comella ea1d569837 For #18836: add getStartupStateForStartedActivity method. 3 years ago
Michael Comella 18507ec24c For #18836: add isHotStartForStartedActivity and tests. 3 years ago
Michael Comella e803cc61a2 For #18836: add isWarmStartForStartedActivity, tests. 3 years ago
Michael Comella ed1f38611f For #18836: shorten isColdStart... and rm questionable test.
The test failed with the rewrite of the code because it violates
one of our assumptions that only one Activity will be started. However,
since it doesn't rely on observed behavior and we made up the events,
it's value is questionable so it seems okay to remove, especially for
the gain of conciseness in the code.
3 years ago
codrut.topliceanu 3b7ba340e1 For #19023 - Expands tabsTray when tabs over certain number
TabsTray should be collapsed when there are only a few tabs on screen, otherwise it should go straight to STATE_EXPANDED.
3 years ago
Mugurell abe3036065 For #18439 - Open link from QR code only if activity is not null 3 years ago
Kate Glazko ae157e5679 For #18520: Add Empty Tab State To Browser Tray List 3 years ago
Jonathan Almeida 71240a5e0f No issue: Set tray dismissal from background tap 3 years ago
Jonathan Almeida 6c8b1a7e8f Close #19045: Dismiss tabstray when last tab in a page is closed 3 years ago
Elise Richards 3d226429aa
For #18867: remove "signed in as" string in three-dot menu (#19035)
* Remove signed in as string from sync menu item

* Nav to sync account settings on click

For #18806: navigate to settings account page or sign in on clicking menu item.

* Confirm account exists and retrieve item title

* Remove string
3 years ago
Gabriel Luong 2e562579ed
For #18274 - [Edit card] Update a saved credit card information (#19032) 3 years ago
Gabriel Luong f7c56ee6fa
For #18273 - [Edit card] Delete a saved credit card (#19029) 3 years ago
Codrut Topliceanu d8660341a1
For #18521 - Added scroll to current tab (#19021)
* For #18521 - Added scroll to current tab

* For #18521 - Addressed comments
3 years ago
Arturo Mejia a3f4cee388 Telemetry for #18855, #18851 and #18857
For #18857 [Telemetry] Send a Glean event when users change their default browser

For #18855 [Telemetry] Send an event when users open the toolbar menu

For #18851 [Telemetry] Send an event when users click on the "set as default browser" entry in the toolbar menu
3 years ago
Roger Yang bde54dc30f
Closes #19003: Add account setting to tabstray synced tab menu (#19034) 3 years ago
Roger Yang 8246f81c97
Closes #18948: Update tabstray telemetry (#19004) 3 years ago
mcarare cea869c276 For #18854: Add metrics for home screen being displayed. 3 years ago
mcarare 0ac78665d5 No issue: Fix indenting in onViewCreated. 3 years ago
mcarare 80d2bec150 For #18376: Add experiment for set default browser settings card. 3 years ago
mcarare dbae5dd3c0 For #18853: Add metrics for default browser new tab experiment. 3 years ago
mcarare 920c1285e4 For #18856: Add metrics for opening settings screen from home menu. 3 years ago
mcarare 445091db14 For #18815: Expand app bar on onboarding dismissal and browsing start. 3 years ago
Jonathan Almeida b9881372ef Close #19011: Always have a click listener in TabTrayViewHolder 3 years ago
Jonathan Almeida 0a4927a495 Issue #18934: Do not nullify adapter on window detached
Previously, to fix a memory leak, we were removing the adapter reference
entirely in order to have the `onDetachedFromRecyclerView` callback
invoked. This causes a side-effect where we can no longer reference the
adapter any more when we re-attach.

The simpler solution is to just invoke the needed callback directly
instead.
3 years ago
Gabriel Luong 6eb528f912
For #18272 - [Edit card] Display a saved card information in the Edit card screen (#18884) 3 years ago
MarcLeclair 990bfa7e6d
16900 make navgraph inflation asynchronous (#18889)
* For #16900: implement async navgraph inflation

For #16900: removed nav graph from xml

For #16900: inflate navGraph programatically

For #16900: Made NavGraph inflation asynchronous

For #16900: Changed to block with runBlocking

For #16900: Refactored blocking call into a function

For 16900: NavGraph inflation is now async

We now attach the nav graph (or check if its attached) on every nav call ( an extension function for NavController).
This is done by checking the value of the job stored in PerfNavController.map which keeps track of the job with the NavController as a Key.
If the job hasn't been completed, it will block the main thread until the job is done. The job itself is responsible for attaching the navgraph
to the navcontroller (and the inflation of the latter too)

For 16900: rebased upstream master

For 16900: Rebase on master

For #16900: Fixed Async Navgraph navigation per review comments.

1)The Asynchronous method is now found in NavGraphProvider.kt. It creates a job on the IO dispatcher
2)The Job is tracked through a WeakHashMap from Controller --> NavGraph
3)The Coroutine scope doesn't use MainScope() anymore
4)The Coroutine is cancelled if the Activity is destroyed
5)The tests mockk the blockForNavGraphInflation method through the FenixReoboelectricTestApplication instead of calling the mock every setup()

For #16900: inflateNavGraphAsync now takes navController

For #16900: Pass lifecycleScope to NavGraphProvider

For #16900: removed unused mock

For #16900: Added linter rules for navigate calls

We need linting rules to make sure no one calls the NavController.navigate() methods

For #16900: Added TestRule to help abstract the mocks in the code

For 16900: Fix linting problems

For #16900: Cleaned duplicated code in tests

For #16900: cleaned up NavGraphTestRule for finished test

For #16900: had to revert an accidentally edited file

For #16900: rebased master

* For #16900: Review nits for async navgraph

This is composed of squash commits, the original messages can be found below:

-> DisableNavGraphProviderAssertionRule + kdoc.

Use test rule in RobolectricApplication.

Fix failing CrashReporterControllerTest

Fix blame by -> navigate in tests.

This commit was generated by the following commands only:
```
find app/src/test -type f -exec sed -i '' "/import org.mozilla.fenix.ext.navigateBlockingForAsyncNavGraph/d" {} \;
find app/src/test -type f -exec sed -i "" "s/navigateBlockingForAsyncNavGraph/navigate/g" {} \;
git checkout app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
```

Fix various blame

This is expected to be squashed into the first commit so, if so, it'd
fix the blame.

Move test rule to helpers pkg.

add missing license header

Add import change I missed

fix unused imports

Replace robolectricTestrunner with test rule.

Improve navGraphProvider docs

Remove unnecessary rule as defined by robolectric.

add clarifying comment to robolectric

remove unnecessary space

* For #16900: nit fixes for MozillaNavigateCheck and lint fixes

3 squash commits:
 *Changed violation message and fixed the lint rule for MozillaNavigateCheck
 *Added suppression to NavController.kt
 *Fixed detekt violations

* For 16900: Fixed failing tests

Co-authored-by: Michael Comella <michael.l.comella@gmail.com>
3 years ago
Michael Comella 5560d7de01 For #18836: rename CreatedActivityLogEntry -> LogEntry.ActivityCreated and similar.
It's too much work to squash "correctly".
3 years ago
Michael Comella 000bef020a For #18836: replace StartupActivityStateProvider with StartupStateProvider.
The StartupActivityStateProvider uses an imperative implementation,
driven by callbacks, to set the state of the application. This is hard
to follow as you need to understand which callbacks will be called in
which order. For example, to make sense of an implementation like this,
COLD, WARM, AND HOT would likely need to be implemented in separate
ActivityLifecycleCallbacks.

I feel the StartupStateProvider is an improvement because it leverages
the StartupActivityLog to query a linear state for a more understandable
implementation. Furthermore, it seems accessible to write COLD, WARM,
and HOT in the same class because they can all be approached the same
way.
3 years ago
Michael Comella 0cbedaadb1 For #18836: add StartupStateProvider. 3 years ago
Michael Comella e864e74960 For #18836: prevent StartupActivityLog from growing infinitely.
We do this is as a separate commit over the original implementation
because it's simpler to implement the class without this optimization.
3 years ago
Michael Comella cde954f3a7 For #18836: add StartupActivityLog, tests. 3 years ago
Jonathan Almeida d342aeae48 Close #18931: Implement add to collections in interactor
We moved the collection dialog code out from the old fragment, because it
had nothing to do with tabs tray, and into the collections package to be
re-usable in other parts of the app.

In addition, we also make use of it in the new tabs tray's
NavigationInteractor.
3 years ago
Jonathan Almeida 22e7410e4a Issue #18931: Move dialog adapter to collections package 3 years ago
Jonathan Almeida f1e7c1130b Issue #18931: Rename class to CollectionsListAdapter 3 years ago
Christian Sadilek 72230377f4 Upgrade to Android Components 75.0.20210413143139 3 years ago
Jonathan Almeida cb60461bdd Close #18934: Remove adapter when deataching from window 3 years ago
Jonathan Almeida 1944a5ef6b Issue #18885: Dismiss FAB icon when tabs tray is closed 3 years ago
mcarare ba218e638b For #18375: Add experiment for set default browser New Tab card. 3 years ago
Roger Yang bc90e193a2 Closes #18522: Re-add call to action in tabs tray 3 years ago
Elise Richards 761d6babb9
For #18806: Show sync tabs or sync account sign in based on feature flag (#18859)
* Show sync tabs or sync account sign in based on feature flag. Sign in navigates to account settings on click.

* lint and nits
3 years ago
Jonathan Almeida f3df2c73d9
Close #18862: Add multi-select banner to tabs tray (#18932)
* Issue #18862: Add new addBookmark BookmarksUseCase

* Issue #18862: Add class for state binding features

* Issue #18862: Add delete multiple tabs to tray interactor

* Issue #18862: Add new actions to navigation interactor

* Issue #18862: Enable select mode from main tray menu

* Issue #18862: Add menu when in select mode

* Close #18862: Add multi-select banner to tabs tray

* Close #18862: Add select support for handle UI

We apply various layout changes to the "handle" UI in the tabs tray when
switching modes. It isn't quite clear to my, why we do this, if it's
really needed to meet the end result, and if there is a better way.

For now, we're simplying moving over that logic that we can re-evaluate
at a later time.
3 years ago
Elise Richards 52209673fb
For #18960: Remove nav in homescreen three dot menu (#18962)
* Remove nav in homescreen three dot menu

* Remove back and forward items
3 years ago
Arturo Mejia fc1739624d For #18608 only show the experiment for set default browser MenuItem when Nightly, Beta, Release are not the default browser 3 years ago
Sören Hentzschel 51df37cde5
For #18898 - implement quit button in page menu (#18942) 3 years ago
Mugurell 660f0609cb For #18122 - Update browser layout for find in page bar with bottom toolbar
With a dynamic bottom toolbar the  browser extends all the way to the bottom of
the screen and so when the find in page bar is shown it will be so above the
bottom part of the browser which may contain exactly the searched for items.

To fix the browser must effectively be placed at the top of the newly shown
find in page bar.
3 years ago
Mugurell b36431a6df For #18616 - Update browser and toolbar layout when toolbar is at top
FindInPageIntegration which already updated the toolbar to make room for the
find in page bar now receives more data based on which it will be able to
better update the layout of BrowserFragment to to support showing the find in
page bar.
3 years ago
Sebastian Kaspari dfb3c4c9bf Introduce process lifecycle observer to collect metrics about tabs when app goes to foreground/background. 3 years ago
Sebastian Kaspari 54d46c7e94 Move TelemetryMiddleware to telemetry sub package. 3 years ago
mcarare c30d0f9240 For #18829: Adjust bookmark item color to UX specs. 3 years ago
Jonathan Almeida 9170ee3621 Update kdocs of navigation interactor 3 years ago
Jonathan Almeida e422016367 Call stop in deattach for feature binding 3 years ago
Jonathan Almeida 6d09a8757c Close #18845: Adds swipe-to-delete to tabs tray refactor
Copied the TabsTouchHelper from the `tabtray` package here so we don't
need to re-write our own because there's nothing more to add.

We can hook this up with our tabs tray here by putting it in the
`BaseBrowserTrayList` for our normal and private tabs list.
3 years ago
Arturo Mejia db9b3676d3 For #18608 Add experiment for set default browser MenuItem. 3 years ago
MarcLeclair 9d728ec168
For #17759: Added min SDK 23 to avoid crashes on android 5.0 and 5.1 (#18832)
* For #17759: Added min SDK 23 to avoid crashes on android 5.0 and 5.1

* For #17759: fixed Android code from INT to actual version name
3 years ago
Elise Richards 10f75a3606
For #17870 - Enable new three-dot menu redesign on nightly builds (#18883) 3 years ago
Elise Richards e5e9ceba5a
Settings menu item should be tinted if there is an account issue (#18849) 3 years ago
Elise Richards ba111dabaa
PWA install to homescreen is available in main menu (#18850) 3 years ago
Gabriel Luong 37b6079d83
For #18268, #18269 - [Saved cards] Display a list of Saved cards fetched from the credit card storage (#18808) 3 years ago
Gabriel Luong 15fc01c7f9 Update app/src/main/java/org/mozilla/fenix/ext/Activity.kt 3 years ago
Arturo Mejia be7318f608 For #18608 made set a default browser functionality publicly available. 3 years ago
rxu efdb30483a Add domestic China FxA service for Mozilla Online builds
China fxa related string

Add switch preference in settings to use local/global fxa server

inherit fennec FxA settings

Present or hide fxa switch according to isMozillaonline

Allow China fxa server auto login during migration
3 years ago
Jonathan Almeida 80a3475b30
No issue - Enable the tabs tray refactor in nightly (#18858) 3 years ago
codrut.topliceanu 9219a1b35b For #18515 - Added Icon and sync functionality
Co-authored-by: Jonathan Almeida <jalmeida@mozilla.com>
3 years ago
codrut.topliceanu d961d7ba38 For #18515 - Adds FAB to TabsTray rewrite 3 years ago
Roger Yang 10eace2f99
Closes #18068: Track custom fill link from clipboard clicked (#18827) 3 years ago
Jonathan Almeida b1727416f3 No issue: Move UseCase wrappers to the interactor; it's only usage 3 years ago
Jonathan Almeida 2e3086ac40 No issue: Move menu to separate integrations class 3 years ago
Jonathan Almeida 729acdba39 No issue: Observe only normal tabs when updating counter 3 years ago
Jonathan Almeida 09e9561600 Issue #18774: Fix long parameter warnings in detekt 3 years ago
Jonathan Almeida 9078139e40 Close #18774: Migrate mutli-selection to store
Removes the recyclerview-selection library and replaces it with the
SelectionHolder/SelectionInteractor with a Store.

This is an implementation that's similar to what we have in other UI
lists (library).
3 years ago
Jonathan Almeida 499aa858b2 Issue #18774: Move SelectionInteractor to new package
The interactor and holder are useful outside of the `library` package, so
let's move it up a package level for other components.
3 years ago
Arturo Mejia 8ca9f94abb For issue #16557 set autoplay block audio only
by default
3 years ago
Elise Richards 547a843c5c
For #18770 - Correct addons position in three dot menu based on toolbar position (#18828) 3 years ago
Roger Yang 01568d5859
Closes #18513: Re-add menu to tabs tray (#18756) 3 years ago
Jonathan Almeida a443509c8b Issue #18535: Set the span count for grid view 3 years ago
Jonathan Almeida 2c6395cafe Issue #18535: Do not animate first scroll to position
This looks less that ideal with a grid layout that swings by from the
normal tabs to private tabs.
3 years ago
Jonathan Almeida 8ccc4648a9 Issue #18535: Move list/grid viewholders to browser package 3 years ago
Kate Glazko 841dacb69e For 17798: Sync Menu Item 3 years ago
Jonathan Almeida 92a99542e6
Close #17821: Add TabsTrayStore with actions and reducer (#18773) 3 years ago
Jonathan Almeida af3a5b0a17
No issue - Make TabLayoutMediator lifecycle aware (#18779) 3 years ago
Travis Long c17594c745
[SDK-246] Change Nimbus `channel` input to use the same method as Glean (#18766)
* [SDK-246] Change Nimbus `channel` input to use the same method as Glean

* Update app/src/main/java/org/mozilla/fenix/experiments/NimbusSetup.kt

Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
3 years ago
Gabriel Luong 1f320fd2ad
No issue - Remove generic strings for more specificity (#18769) 3 years ago
Mugurell 0f0c319896 For #17772 - Collapse browser menu to "Add to Home screen"
The menu will start as collapsed.
Users can then swipe up to expand it.
3 years ago
Gabriel Luong 1008ca2b4a
For #18265 - [Add card] Integrate the credit card storage and handle adding a new credit card (#18719) 3 years ago
Michael Comella 6e5b4b3ce6 For #18731: remove anonymous classes from StrictModeManager.
After this change, I took 3 profiles: the new code appeared in the profiler
only once and only for one sample (i.e. possibly just got unlucky). It
seems to be improved. Profiles:
- https://share.firefox.dev/3wifiV2 (captured it)
- https://share.firefox.dev/39xgdHz
- https://share.firefox.dev/2QMdlA0
3 years ago
Gabriel Luong 3f21a63c3c
For #18729 - Use consistent string naming for generic strings (#18730) 3 years ago
Elise Richards ca33aef036
For #17770: New tab three-dot menu reorder (#18427)
* Create new menu order for new tab

* Add new tab menu navigation. Dynamically update menu when sync auth is needed. Make new tab menu and browser menu consistent.

* Lint

Lint and refactoring tests

* Tests for default toolbar menu

* Feature flag for request desktop site

Add todos for UI test issue 17979

Add todos for UI tests
3 years ago
Mugurell 304e471801 For #18617 - Use the new EngineView#getInputResultDetail()
All functionality should remain the same.
3 years ago
mcarare 6f17e329c4 For #17797: Add bookmarks menu item. 3 years ago
Roger Yang c7cb0fd5a0
Closes #18706 - Remove unneeded add-on telemetry calls (#18707) 3 years ago
rxumoz 51c41f84d5
Closes #18386 - Change language display name to traditional/simplified Chinese for Chinese locale (#18387) 3 years ago
Mihai Adrian Carare ccfb275b03
For #17800 - Request desktop site from home screen. (#18653) 3 years ago
Roger Yang caf8ac8207
Closes #18514: Re-add tab counter in tabs tray (#18659) 3 years ago
Michael Comella ac34432176 For #18426: warn about flaw in `app_opened_all_startup` probe. 3 years ago
Michael Comella ade38246be For #18426: record cold start duration telemetry. 3 years ago
Michael Comella 2be9fb61d0 For #18426: add StartupActivityStateProvider.
This will be used to filter conditions for the start up telemetry we're
adding.
3 years ago
Michael Comella edd49b286d For #18426: add ApplicationStartReasonProvider.
We need to know this state to add a correct COLD MAIN probe.
3 years ago
Michael Comella 520634165e For #18426: add DefaultActivityLifecycleCallbacks.
We'll extend this in subsequent commits.
3 years ago
Jonathan Almeida d167bc7b67 Issue #14117: Add Synced Tabs as a page in the tabs tray 3 years ago
Gabriel Luong ae625e60cf For #18247 - [Add card] Populate the Credit card expiry year drop down 3 years ago
Gabriel Luong 4763d8c9e5 For #18246 - [Add card] Populate the Credit card expiry month drop down 3 years ago
Gabriel Luong 46a267a494 For #18243 - Add a credit card editor screen 3 years ago
Jonathan Almeida cb1fb95a3a Issue #18521: Focus on page corresponding to selected tab
This first part of #18521 is to focus on the correct pager item first
before we land a patch for `scrollToPosition` of the selected tab.
3 years ago
Jonathan Almeida e41344aa1f Close #18668: Add stable ID cache for TabAdapter.getItemId 3 years ago
Kershan 02d70d3837
For #18453 - Show SUMO for default browser deeplink on Android <N
Lower Android versions don't offer the possibility of opening system settings
at a specific preference. In this cases we already shown a sumo article
detailing the manual steps each user is expected to perform to change the
system set default browser.
3 years ago
Jonathan Almeida 26c176a75e Issue #18443: Move viewholders to separate files and package 3 years ago
Jonathan Almeida 917783a141 Issue #18443: Fix changes between grid/list viewholders 3 years ago
Jonathan Almeida 9ce4adaa32 Close #18443: Use recyclerview-selection for multi-select mode in tray
Add multi-select mode to the BrowserTabsAdapter. It has the
functionality to:
 - Enable multi-select mode on long-press.
 - Enable multi-select mode when changed by an external function.
 - Only works for normal tabs (as we currently have it).

Co-authored-by: "codrut.topliceanu" <codrut.topliceanu@softvision.ro>
3 years ago
Gabriel Luong 5d0af34537
For #17291 - Display a list of all active Nimbus experiments (#17515) 3 years ago
yichiehc dd09ba64c4
For #18594: Highlight the "Default browser" system setting on Android >= N
Although not public APIs we can use specific extras in the Intent used to open
system settings such that the "Default browser" setting is highlighted to
provide a better UX for users looking to set Fenix as default.
3 years ago
rxumoz 46af52d254
Update top sites to add PDD for MozillaOnline builds (#18615) 3 years ago
Mihai Adrian Carare a539f69cb2
For #18260 - Add pin to default sites. (#18618) 3 years ago
Roger Yang c21b44e0a3
Closes #18535: Re-add grid layout to tabs tray (#18638) 3 years ago
Arturo Mejia 869c99afaa For #15372 Optimize the order and messages of onboarding cards 3 years ago