Commit Graph

6072 Commits (ebd336501b6b7296b24fbf0419deeda16c88edfd)

Author SHA1 Message Date
Michael Comella d67bd65f19 For #21299: add duration marker for IntentReceiverActivity.onCreate.
We only instrument onCreate because it's the only one with an
implementation.

While declaring this as a function that accepts a lambda is less
fragile, we've previously had issues with it such as suspected memory
leaks when used for telemetry. Therefore, we go with the simpler
approach.
3 years ago
Michael Comella f8a4113271 For #21299: add markers for all activity lifecycle callbacks.
We implement these all in the same track because between it'd create a
lot noise between this and fragment lifecycle callbacks.
3 years ago
Roger Yang 872263cf2d Update tabs tray title header string comment to clarify what it does. 3 years ago
Michael Comella a3d3519e68 Closes #21335: return self instead of mock in FenixSnackbarKtTest.
This is a speculative fix for the intermittent issue. Typically, these
intermittents are caused by mocked lambdas but there is no mocked lambda
here. If this doesn't work, one `any()` argument fills in for a lambda:
it's possible that's causing the failure.

Unfortunately, I can't verify this fix easily because the "run test until
failure" option was removed from Android Studio.

See b3f5c87585 for a prior attempt to
address the intermittents in this class.
3 years ago
Jonathan Almeida bc7f5d80df Issue #21236: Fixes empty tray visibility logic
This is a bug we noticed after landing search term grouping.

An adapter can submit an empty list of items to the `ConcatAdapter`
early. This has the side-effect of triggering our `observeFirstInsert`
too soon and therefore updating the visibility to show the empty tray
placeholder and never switches back.

Our solution is to keep a constant observer on the adapter so we can
perform the visibility check on every insert/remove.

Co-authored-by: Roger Yang <royang@mozilla.com>
3 years ago
Sebastian Kaspari 6ac10d5209 Issue #21291: SearchDialogFragment: Get URL from clipboard once and not for every state update 3 years ago
Roger Yang fc18fd2520
For #21236: Separate tabs with the same search term into a different section (#21177)
* For #21236: Separate tabs with the same search term into a different section in tabs tray

* Issue #21236: Scroll to selected tab + various tab fixes for groupings

* Issue #21236: Fix failing test

Co-authored-by: Jonathan Almeida <jalmeida@mozilla.com>
3 years ago
Mozilla L10n Automation Bot 030f7d0d44 Import l10n. 3 years ago
Arturo Mejia 19ed21c70b Update strings comments 3 years ago
Michael Comella e6560c229d For #21309: add profiler markers on global layout. 3 years ago
Michael Comella cafc23acb1 For #21309: set up HomeActivityBinding the recommended way.
The recommended way is here:
https://developer.android.com/topic/libraries/view-binding

I was concerned with the existing implementation that binding was being
set conditionally.
3 years ago
Michael Comella c251e4c5ab For #21309: remove outdated comment regarding async nav graph. 3 years ago
Michael Comella 83bd2f2254 Closes #18102: remove intermittent failing App onCreate duration measurement test.
The test as it exists relies on the robolectric lifecycle, which is hard
to predict, so it doesn't seem worth fixing the test. Writing the test
any other way would require excessive mocking, which also seems
impractical.
3 years ago
rxu e6395bff97 Add default topsite 58 for MozillaOnline builds 3 years ago
Arturo Mejia 4e846b3cb6 For #21095 add customize home button on the home screen. 3 years ago
Gabriel Luong 66a31ddbfc Issue #21099 - Update items under "Jump back in" section to the latest designs 3 years ago
Christian Sadilek 2a92bd5942 Sort history metadata on home and allow limiting results 3 years ago
Mozilla L10n Automation Bot 1732b9e087 Import l10n. 3 years ago
Mugurell a54a4ea20a For #21120 - ImageLoader with a shimmer effect placeholder 3 years ago
AndiAJ abc881f9f8 New deleteBookmarkInEditModeTest UI test 3 years ago
AndiAJ 9546e50451 Improve coverage for copyBookmarkURLTest 3 years ago
Mozilla L10n Automation Bot 1e99d133e4 Import l10n. 3 years ago
Elise Richards 52975b4f05 For #20654: Handle private mode switching from home behind search dialog.
Add tests for controller and interactor to handle private mode switches
3 years ago
Christian Sadilek c1289f657d Fix history metadata API breakage in unit tests 3 years ago
Jan-Erik Rediger 276626e5ba Ensure glean-native is excluded 3 years ago
Jan-Erik Rediger c7d7337f00 Use glean-native in tests
The Glean core native code is now shipped through GeckoView directly
(through its `-omni` packages).
For local tests we need a library matching the host-platform, which is
available in the glean-native package.
3 years ago
Rohan Maity a2a10556b1 For #20634: remove some unused color resources 3 years ago
AndiAJ d33df2bedd Improve coverage for addPrivateBrowsingShortcut Ui test 3 years ago
Arturo Mejia cbb8f808c1 For #18629: add support for SmartBlock exceptions 3 years ago
Arturo Mejia fe914dc964 For #21226 only show the "Customize Home" menu on home screen. 3 years ago
Arturo Mejia de59a3ec48 For #21211 hide the ETP in custom tabs. 3 years ago
Mozilla L10n Automation Bot 46e9631a71 Import l10n. 3 years ago
Mozilla L10n Automation Bot a31f859508 Import l10n. 3 years ago
AndiAJ fc806283a5 For #21133 fix openMainMenuSyncItemTest UI test 3 years ago
bendk 5ba47a90db
Handle breaking changes from a-s 83.0.0 (#21215) 3 years ago
Mozilla L10n Automation Bot cd053f2a9a Import l10n. 3 years ago
Noah Bond b3a86e982d Issue mozilla-mobile#20637 - Fixed bug causing the tabs tray to scroll to the wrong tab when opened 3 years ago
mcarare 70247e9456 For #6968: Use close instead of read to close the response stream. 3 years ago
Arturo Mejia d4a212f235 For #21095 allow users to configure their home screen. 3 years ago
Elise Richards 7d481a7836
For #19947: manually add login (#21199)
* [WIP] New Layout for adding login and 'add login' button in 'SavedLoginsListView' to launch it.
Fixed bindings.

* [WIP] Removed "reveal password" button

* [WIP] Added interactor for the add login screen

* [WIP] Trying to check for duplicates

* [WIP] Renaming "addNew..." with "add..."

* [WIP] Check for duplicates

* [WIP] Fixes after merge

* Cleaning up the layout and making edit text for hostname selectable

* Error handling on add login screen. Tests for interactors and controllers

Co-authored-by: Vitaly V. Pinchuk <vetal.978@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
3 years ago
Mozilla L10n Automation Bot 32105f8724 Import l10n. 3 years ago
Michael Comella d4b13ce519 For #21183: remove view hierarchy depth check from excessive resource test.
This doesn't seem to be a high value test: increasing the view hierarchy
depth will only result in a performance problem on low end devices
if there is enough content on the new layer to cause the traversal to
take longer. It's more likely to result in a hard-to-workaround false
positive so we can remove it, like component init count.
3 years ago
Michael Comella 4fe6a4506d For #21183: remove lazyMonitored wrapper functionality.
We're not using the functionality so there's no sense in doing the work.
However, we keep the wrapper: see the code comments for details.
3 years ago
Michael Comella 09fe569b30 For #21183: remove component init check from excessive resource test.
This check doesn't seem high value because initializing a component
only indicates a performance problem if it's slow, which is not most
components, so it's likely to result in many false positives. To fix
the intermittent, we won't lose much if we remove it.
3 years ago
Arturo Mejia d288502840 For #20892 update connection panel strings 3 years ago
Noah Bond 28b07e7c8b
Issue mozilla-mobile#21140 - Updated recent tab logic to show media tab and second-to-last tab, if the media tab was the last active tab. (#21141)
* Issue mozilla-mobile#21140 - Updated recent tab logic to show media tab and second-to-last tab, if the media tab was the last active tab.

* Fixed RecentTabsListFeatureTest unit test

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
3 years ago
Arturo Mejia dd1fb24705 For #20881 print if the build is a MozillaOnline 3 years ago
Mozilla L10n Automation Bot 64f5e85ddd Import l10n. 3 years ago
Elise Richards 3e30219fe9 Dont clip bounds on recently saved bookmarks 3 years ago
Michael Comella 951e49fec4 For #21138: change EXPECTED_RUNBLOCKING to range.
Compared with my local runs, CI sees +1 runBlockingIncrement calls so seems to
take other code paths. As such, we search for a range of rather than a single
value. The main downside I can think of is this could make the test trickier to
debug but we can wait and see if that's a problem in practice before taking
action on it.
3 years ago
Michael Comella 0014f94176 For #21138: re-enable excessive resource use test.
This test wasn't running in CI
https://github.com/mozilla-mobile/fenix/issues/20386 so we changed the
CI configuration so that it will. However, the test was then failing so
this is the revision that unignores the test.

I wonder if componentInit count is useful - it seems like it'd cause
more false positives than not - but I figure we can leave it in and see
how it goes.
3 years ago
Roger Yang 5d22bb4707 Issue #18711: Telemetry for credit card autofill 3 years ago
Mozilla L10n Automation Bot fe7f6b8a56 Import l10n. 3 years ago
Mozilla L10n Automation Bot e74a304f14 Import l10n. 3 years ago
Mozilla L10n Automation Bot ac71f4d929 Import l10n. 3 years ago
Mozilla L10n Automation Bot 7f08b2d44d Import l10n. 3 years ago
Mozilla L10n Automation Bot 0a9b70f47d Import l10n. 3 years ago
Arturo Mejia 4357ebb8aa For 20892 Update connection icons in address bar 3 years ago
Christian Sadilek 5cc5a3438c Remove mocked lambdas from AccountSettingsInteractorTest 3 years ago
Christian Sadilek a3cd81e7b8 Add missing androidx.lifecycle dependencies 3 years ago
Mozilla L10n Automation Bot ffa5668c73 Import l10n. 3 years ago
czlucius cb6741210b For #18727: Exit PiP when launched externally with Intents 3 years ago
Mickey Moz 4c30483c57
Update Android Components version (#21109)
* Update Android Components version to 93.0.20210901143120.

* For #21043 - Integrate AC changes

* Fix breaking API changes of RestoreAction

Co-authored-by: Mugurell <Mugurell@users.noreply.github.com>
Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
3 years ago
Christian Sadilek b7c2c0eb0b Do not run unit tests in parallel
This is to investigate the intermittent mockk class
generation/loading issues. Since we can not reproduce
locally and the failures are intermittent they could
be caused by us running unit tests in parallel.
3 years ago
codrut.topliceanu 2805f2e42e For #19166: Increases tab_tray_list bottom padding
... to fit snackbar and FAB
3 years ago
Mozilla L10n Automation Bot 95e18986f3 Import l10n. 3 years ago
Gabriel Luong 9bd6d298f1 For #21078 - Remove unused creditCardsFeature feature flag 3 years ago
Elise Richards 13fd0699cb Include data review for renewed metrics 3 years ago
Elise Richards 6cb872cd98 Remove banner open in app telemetry 3 years ago
Elise Richards c9626019ef Remove search suggestions in private telemetry 3 years ago
Elise Richards 19d8f58b47 Remove user specified search engine telemetry 3 years ago
Elise Richards 7653691d30 Remove private browsing shortcut telemetry 3 years ago
Elise Richards 34fb522f1a Fix data-review listed for default_browser_changed, toolbar_menu_visible, and toolbar_menu_clicked 3 years ago
Elise Richards cb9bbd2650 Remove private browsing mode telemetry 3 years ago
Elise Richards d137becd48 Remove tip telemetry 3 years ago
Elise Richards fa811cb244 Remove enable private search suggestions telemetry 3 years ago
Elise Richards de992994de Remove open links in private tab telemetry 3 years ago
Elise Richards f1cf6f4651 Remove find in page telemetry 3 years ago
Elise Richards 1f94dfa59b Remove total uri count telemetry 3 years ago
Elise Richards 87530ab9a4 Remove about page telemetry 3 years ago
Elise Richards 1b066458d5 Remove downloads management telemetry 3 years ago
Elise Richards 8455886ca8 Remove downloads misc telemetry. 3 years ago
Elise Richards c4ec8aa520 Remove download notification telemetry. 3 years ago
Elise Richards 2392c7e565 Remove master password telemetry. 3 years ago
Elise Richards 0f246bd16d Renew probes set to expire in September 3 years ago
Elise Richards 7c5155568e Renew probes set to expire in October 3 years ago
Gabriel Luong 4080eba225 For #21037 - Add a delete history menu item
This removes the existing "Delete history" button in the History in favour of a menu item
3 years ago
Arturo Mejia 6034adcbc8 Add tint to settings icon on Tracking protection panel 3 years ago
Mozilla L10n Automation Bot 7bd1530d8a Import l10n. 3 years ago
AndiAJ dd889d8c0d For #21002 update and add missing tabs setting validations 3 years ago
Oana Horvath fe8f4be9b9 For #20702: fix tests flakiness 3 years ago
Sebastian Kaspari 846274b7cd Enable Android Autofill support in all build types. 3 years ago
Mozilla L10n Automation Bot 91819626b4 Import l10n. 3 years ago
Mozilla L10n Automation Bot 19992707c7 Import l10n. 3 years ago
Gabriel Luong e4a25f4123 For #21035 - Refactor HistoryViewInteractor from HistoryView into HistoryInteractor 3 years ago
Oana Horvath a7c45425d7 For #21002: added page main menu items tests 3 years ago
Christian Sadilek 597b73c732 Dedupe history metadata in groups based on url 3 years ago
Elise Richards 014abc8143
Update search metric expiration dates (#21016) 3 years ago
Arturo Mejia 37c26976ac For #20919 add confirm dialog when turning on/off experiments 3 years ago
Arturo Mejia ce0fc5b1af For #20871 mark strings for removal 3 years ago
Elise Richards 41825022e7
For #19931: Add telemetry probes for recent bookmarks on home screen (#20316)
* Add telemetry probes for recent bookmarks on home screen. Tests for controller.

* Make the events into counters in the metrics ping

Update tests to reflect new metrics

Add data review link for new metrics

Mock new settings for startup metrics tests

Update metrics

Add test for recent bookmark glean events

* Recent bookmarks controller tests
3 years ago
Mugurell 09e8d34c26 For #20507 - Inactive tabs telemetry
Two new events are added:
- "inactive_tabs_expanded" for when the inactive tabs section is expanded
- "inactive_tabs_collapsed" for when the inactive tabs section is collapsed

For tracking when an inactive tab is opened / closed I've repurposed the
existing tabs tray telemetry (since the functionality uses the same code)
- tabs_tray.opened_existing_tab
- tabs_tray.closed_existing_tab
to support an extra "source" key indicating the feature from which a tab was
opened or closed. The current values for this new key are:
- "Tabs tray" for when a tab was opened/closed from tabs tray
- "Inactive tabs" for when a tab was openes/closed from the Inactive tabs
section of the tabs tray.
3 years ago
Mugurell 0fa9363f99 For #17917 - Remove the Kotlin synthetics Lint detector
Since all usages of Kotlin synthetics are removed and no such code is generated
anymore there is no need to keep around this Detector anymore.
3 years ago
Mugurell cb32b1437e For #17917 - Remove the `kotlin-android-extensions` plugin
This means no code will be generated by Kotlin Android Extensions for caching
views and also for @Parcelize annotated classes.

As recommended in the official documentation
https://developer.android.com/topic/libraries/view-binding/migration#gradle
we need to switch on using `kotlinx.parcelize.Parcelize` instead of
`import kotlinx.android.parcel.Parcelize`

For #17917 - Remove the `kotlin-android-extensions` plugin

This means no code will be generated by Kotlin Android Extensions for caching
views and also for @Parcelize annotated classes.

As recommended in the official documentation
https://developer.android.com/topic/libraries/view-binding/migration#gradle
we need to switch on using `kotlinx.parcelize.Parcelize` instead of
`import kotlinx.android.parcel.Parcelize`
3 years ago
Mugurell 621c388c12 For #17917 - Finish migrating all synthetics usages 3 years ago
codrut.topliceanu 5e13ead750 For #20328 - Adds telemetry for recentlyClosed button
...from tabsTray, inactiveTabs section.
3 years ago
Oana Horvath 84767f84ea For #20716: re-enables mainMenuInstallPWATest UI test 3 years ago
Oana Horvath 9920cbeb1d For #20868, #18764: Update Tracking Protection UI tests 3 years ago
Grisha Kruglov 6161dc6e8d Closes 20975: Run metadata cleanup after Megazord.init()
This ensures that we do not attempt places initialization before
Megazord.init() finishes, and that touching BrowserStore does not
kick-off places initialization (due to the `cleanup` call being a
side-effect of creating metadata middleware, used as part of the
BrowserStore).

Glean initialization happens before initialize megazord, and it touches
core.store BrowserStore instance, kicking-off places initialization on
an IO thread (due to the cleanup call), which raced megazord
initialization on the main thread.

App init sequence is a bit of a mine-field, so this patch takes the easy
way out and doesn't attempt to re-order initialization sequence. Also,
initializing places as a side-effect of touching BrowserStore was also,
clearly, a bug.
3 years ago
codrut.topliceanu 7070bb5607 For #17917: Use View binding in add-ons 3 years ago
Mugurell 05f74eb620 For #20586 - Put everything behing a secret setting
Not ready for prime-time. Lot of work still to be done.
3 years ago
Mugurell 6ae8c90f41 For #20586 - Basic Jetpack Compose implementation.
This is just the basic skeleton for the feature.
3 years ago
Arturo Mejia 4f163e18e7 For #20892 update connection icons in quick settings 3 years ago
mcarare 83b752afef For #20927: Replace icons with AC icons. 3 years ago
rxu f88be38796 Use armeabi-v7a version code for MozillaOnline builds 3 years ago
Arturo Mejia ffad73d646 For #20919 quite the app when turning on/off experiments 3 years ago
Rohan Maity 707918cdc1 For #20596 remove startup timeline probes 3 years ago
Jonathan Almeida 7915ef8f3f Close #20945: Fix failing test in AccountSettingsInteractorTest 3 years ago
Jonathan Almeida 693fbef88d Speculative fixes intermittent test in DeleteAndQuitTest 3 years ago
Arturo Mejia d3019986a4 For #20919 quit the after removing a study. 3 years ago
codrut.topliceanu bf5b4a5655 For #17917: Use View binding in tabs tray 3 years ago
Mugurell 69fa9abdd2 For #17917 - Migrate `home` from Kotlin synthetics to View Binding. 3 years ago
Mugurell ff4669a759 For #17917 - Migrate `browser` from Kotlin synthetics to View Binding. 3 years ago
codrut.topliceanu 34e063669a For #17917: Use View binding in Login Exceptions 3 years ago
rxu c82af0a97a Add event ping telemetry for the Baidu top site click 3 years ago
Grisha Kruglov fc7a92bf10 Enable recording of history metadata for all builds
This allows recording part of history metadata to ride the trains.
The UI features are still guarded by the secret settings flag (or,
enabled on debug builds).
3 years ago
Arturo Mejia 8b4190a429 For #20890 when TP is off globally hide TP section on quick settings. 3 years ago
Roger Yang 6855295b61 Restore unused string tab_collection_dialog_negative 3 years ago
Grisha Kruglov 4b01846ab0 Closes #20901: Do not record viewTime observations when we do not have a set lastAccess
The bug here was that we'd try to record `now - 0` as a viewTime delta.
This isn't just an obviously wrong value to record, but it will also
overflow our storage - we'll end up with a value on disk that doesn't
fit into an i32, but HistoryMetadata.total_view_time is i32 in our Rust
struct. Once that happens, reads that touch this bad row will result in
an overflow and a crash.
3 years ago
Roger Yang c9b2f9e866 Issue #2783: Add snackbar to collection deletion 3 years ago
codrut.topliceanu 77e12f9014 For #20716 - Disables Intermittent failing UI test 3 years ago
Sebastian Kaspari 8be900392b metrics.yaml: Add data review URL for Android Autofill metrics 3 years ago
Roger Yang 64cd72871f Update Android Components version 3 years ago
Jonathan Almeida ef036f3ca9 Issue #20864: Speculative fix for HomeFragmentTest failures 3 years ago
codrut.topliceanu 20c9a247f5 For #17917: Use View binding in tracking protection(2) 3 years ago
Michael Comella f74e63ceae For #20824: use fast service loader for MainDispatcherFactory.
For details on the root cause, see the commit. We replaced the similar
proguard rules because:
- the key line was returning false instead of true
- the other line had the same outcome as the written code. I believe it
  was a micro-optimization. Since perf seems fine without it, let's
  remove it

I benchmarked this change on COLD MAIN first frame. We see an
improvement of 89ms:
- before: 1346ms
- after: 1257ms
3 years ago
codrut.topliceanu c52b6615e5 For #17917: Use View binding in Share views 3 years ago
codrut.topliceanu 7acd6997f6 For #17917: Use View binding in Onboarding Tests 3 years ago
Arturo Mejia 215ef9d46b For #19886 use block color on disabled permissions 3 years ago
Mozilla L10n Automation Bot 45daeb128a Import l10n. 3 years ago
Jonathan Almeida 0090381663 Close #20796: Additional fixes for intermittent failing test
Fixes for TrackingProtectionExceptionsInteractorTest to remove the lamba
mocking and test actual BrowserState changes instead (where possible).
3 years ago
Arturo Mejia 512475df9e For #19886 integrate view binding. 3 years ago
Arturo Mejia fd8e6a9c27 For #19886 fix ui tests 3 years ago
Gabriel Luong d1b9744069 For #19886 - Add a back navigation to the Global Quick Settings from the Tracking Protection dialog 3 years ago
Arturo Mejia 34d99f89ac For #19886 - Improve quick setting dialogs navigation 3 years ago
Gabriel Luong 4b2b058b4e For #19886 - Remove tracking protection overlay CFR 3 years ago
Gabriel Luong dbb6819e7d For #19886 - Use the new "Details" text for navigating to ETP details 3 years ago
Arturo Mejia 07bb1113f8 For #19886 - Add connection sub-menu. 3 years ago
Gabriel Luong 63368779df For #19886 - Add favicon to website info view
Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
3 years ago
Gabriel Luong a535a8d031 For #19886 - Add right arrowheader to tracking protection navigators 3 years ago