Commit Graph

5379 Commits (fad6417c16a5533d57140f8786fd7071ca5766c7)

Author SHA1 Message Date
Michael Comella 3ae80cda40 For #18836: note refactor in metrics docs. 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
Elise Richards cbfba4478b Add ignores for intermittent toolbar tests 3 years ago
Mozilla L10n Automation Bot 6036bf035a Import l10n. 3 years ago
Jonathan Almeida 38a7921913 Close #18973: Fix references to info banner 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
Roger Yang b3f5e557cc
Closes #18899: Update content description string for synced tabs icon (#18963) 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
Gabriel Luong c5e78f69ed
For #18940 - Remove reserved icon spacing for "Nimbus Experiments" setting preference (#18949)
Co-authored-by: Sören Hentzschel <kontakt@agenedia.com>
3 years ago
Oana Horvath 78f0086b7e For #17979 & #17840: fix and re-enable UI tests affected by main menu changes 3 years ago
Oana Horvath 358a3a3d4c Fix screenshots tests: showDefaultHomeScreen, bookmarksManagementTest 3 years ago
Mozilla L10n Automation Bot d7f7f817c9 Import l10n. 3 years ago
Mozilla L10n Automation Bot 5a2a61330d Import l10n. 3 years ago
Mozilla L10n Automation Bot aa4d0b84db Import l10n. 3 years ago
Jonathan Almeida d702af5a53
For #15372 - Correct one more instance of the onboarding string (#18906) 3 years ago
Gabriel Luong 7cc4a8a4d8
For #18742 - Resize the top site item sizes (#18751) 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
Mozilla L10n Automation Bot d6652785e9 Import l10n. 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
Mozilla L10n Automation Bot cb62f98717 Import l10n. 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
Gabriel Luong c31d507e19
For #18743 - Change the top sites label colour and size (#18752) 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 dd3e95b4cf No issue: Add test for share tab in navigation interactor
Co-authored-by: Roger Yang <royang@mozilla.com>
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
Mozilla L10n Automation Bot ae5ab1c6fa Import l10n. 3 years ago
Elise Richards 547a843c5c
For #18770 - Correct addons position in three dot menu based on toolbar position (#18828) 3 years ago
Grisha Kruglov 3e37426375 Closes #17361: Extend perf.awesomebar.* metrics 3 years ago
Gabriel Luong db993196c6
For #18819 - Hide the Credit Card preference by default (#18820) 3 years ago
Mozilla L10n Automation Bot 568bad0f48 Import l10n. 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
VaishnaviShri 3260cbd986 For #8545: Fix unnecessary scroll in home screen
Changed the height of the recycler view inside the home fragment
to ‘wrap_content’ to avoid scrolling if the viewport is not filled
with elements.

Closes #8545
3 years ago
Mozilla L10n Automation Bot 8916e567bc Import l10n. 3 years ago
Mozilla L10n Automation Bot 10d2623bb6 Import l10n. 3 years ago
Gabriel Luong fe06d88e7e
Use photon colors from ui-color (#18760) 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
mcarare 2687092f90 For #18717: Use normal theme color for tab tray synced tabs. 3 years ago
Mugurell 304e471801 For #18617 - Use the new EngineView#getInputResultDetail()
All functionality should remain the same.
3 years ago
AndiAJ e03ffff3b8 Disable failing UI Tests 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 89088aa595 For #18426: add data review links. 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
Oana Horvath 246348501c For #18644: fix metod to verify system notifications 3 years ago
Jonathan Almeida d167bc7b67 Issue #14117: Add Synced Tabs as a page in the tabs tray 3 years ago
Oana Horvath aacb5e3ebb For #18421: Ignore the ContextMenusTest class because of test failures 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
yichiehc 7c46f5e74f
For #16830: Increase the Show in private sessions option in Search Preferences Settings (#18689)
* For #18242 - Wire up "Sync cards across devices" preference with SyncPreferenceView (#18605)

* For #16830: Increase the Show in private sessions option in Search Preferences Settings

Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
3 years ago
Aaron Klotz 0a0d48f48c Explicitly set android:extractNativeLibs to true in ApplicationManifest.xml
The Android Gradle Plugin's default for android:extractNativeLibs changed from
true to false beginning with version 3.6.0. Based on GeckoView's needs, we
should ensure that this attribute is explicitly set to true.
3 years ago
Michael Droettboom 50ae7826ad
Bug 1689162: Update Glean metrics.yaml schema (#18683) 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
Arturo Mejia 367413cd20 For #15372 Improve Onboarding strings 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
Oana Horvath 1c0360af7b Disable customTrackingProtectionSettingsTest 3 years ago
Oana Horvath 11d410de0b Re-enable working UI tests from #18644 3 years ago
Mozilla L10n Automation Bot cc0fdd1109 Import l10n. 3 years ago
Mugurell 060b986f1c For #18644 - Temporarily disabling UI tests that fail on Firebase.
This is a quick solution to resume PR merges.
Investigations and a proper fix is to follow on this same ticket.
3 years ago
Arturo Mejia 869c99afaa For #15372 Optimize the order and messages of onboarding cards 3 years ago
Aaron Train 246c192de3
Closes #18623: Fix Gradle task name in gradlewbuild.py (#18624) 3 years ago
Roger Yang 34a7bc0baa
For #17644: Record when user taps on a add-on's setting (#18504) 3 years ago
Mozilla L10n Automation Bot cd0efaca40 Import l10n. 3 years ago
Jonathan Almeida 2c23941823 Issue #18538: Add BrowserTabsAdapter for tabs tray 3 years ago
Gabriel Luong 3b11b9a700
For #18242 - Wire up "Sync cards across devices" preference with SyncPreferenceView (#18605) 3 years ago
mcarare 90fea8ba5e For #17790: Remove app from recents screen on quit. 3 years ago
Elise Richards 559cf54798
For #17190: notifications are updated when locale is changed (#18179)
* Add intent processor for locale changes

* Recreate notification and notify in the service

* Use locale use cases to update notification

* Use notification id instead of tag

* Add locale use cases and restore locale in application

* Send locale to service instead of string

* Controller tests for locale

* Update Android Components version to 74.0.20210323143308

Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
3 years ago
Gabriel Luong 578d6b5205
For #18240 - Add a Credit Card preference screen (#18410)
- Removes an unused preference key "pref_key_credit_cards_addresses"
3 years ago
Roger Yang a8c53c6bf1
Closes #17791: Use updated URL with custom tabs when copying to clipboard (#18590) 3 years ago
Mugurell cc2ba4ba97
For #18585 - Don't use hardcoded String values in Onboarding unit test (#18597)
Test if the welcome message has the expected structure and uses the expected
String values, not what the string values are.
3 years ago
Vitaly V. Pinchuk 43c54b7006
For #18395: Dismiss contextual menu when entering/exiting Reader Mode 3 years ago
mcarare d0a45bab21 For #17799: Add extensions submenu item. 3 years ago
Arturo Mejia 54db8f3fde Revert "For #17805 - Fix adjustResize deprecation (#18252)"
This reverts commit 38f906a6
3 years ago
Mozilla L10n Automation Bot 975f97df46 Import l10n. 3 years ago
Mozilla L10n Automation Bot a3ef6b552b Import l10n. 3 years ago
Michael Comella 62e2fb1aa6 For #18426: add measurement probes for long-running lifecycle methods.
In addition to the existing probes for onCreate, this should cover all
lifecycle methods that take a long time in our profiles.
3 years ago
Mozilla L10n Automation Bot 17fe128939 Import l10n. 3 years ago
Stefan Arentz b12222503b
[SDK-218] Nimbus updates to provide app_name and channel (#18559)
* [SDK-218] Nimbus updates to provide app_name and channel

Provides the `app_name` and `channel` info to Nimbus.

* Update to A-C Nightly 74.0.20210319190549

Co-authored-by: Travis Long <tlong@mozilla.com>
3 years ago
Michael Comella 9024eca01e For #18426: add telemetry for app.onCreate subsections.
Hopefully this will help us understand behavior of the
`application_on_create` probe, specifically that it seems to take longer
in telemetry than in does locally compared to `home_activity_on_create`
(comparing the medians to local runs)..
3 years ago
Michael Comella 5c0f30fd5c For #18426: add TimingDistributionMetricType.measureNoInline.
This addresses an issue I found in my follow-up PR.
3 years ago
Roger Yang d2ffaa85f9
Closes #17531: Use shared preference to store top sites count for telemetry (#18557) 3 years ago
Roger Yang 27e52b7e3d
Closes #17956: Add top site telemetry to available search engines (#18129) 3 years ago
Mihai Adrian Carare 79794962d0
Closes #12565: Clean up use of Context within ReviewPromptController. (#18537) 3 years ago
mcarare f9a52af98d No issue: Update Android Components version to 74.0.20210318143143
Replaces deprecated method setToolbarColor(Int) in CustomTabsIntent.Builder.
3 years ago
Mozilla L10n Automation Bot 10af28c977 Import l10n. 3 years ago