Commit Graph

312 Commits (1f633edd7d4436f20ead4ba657b1284b94cca0c6)

Author SHA1 Message Date
Brais Gabín 1f633edd7d For #23046 - Align detekt config between Fenix and Android Components
Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
2 years ago
mcarare cb14837bc6 For #24098: Update tests for tabs tray metrics. 2 years ago
Jonathan Almeida f953c5ec94 For #24220 and #24223: Connect GleanPlumb messages with the new tab ui card.
Co-authored-by: Jonathan Almeida <jalmeida@mozilla.com>
2 years ago
Gabriel Luong 6ae4f9b4c5 For #24114 - Refactor HomeFragmenStoreTest to AppStoreTest 2 years ago
Gabriel Luong 221ce814ef For #24235 - Remove Tip from HomeFragmentStore 2 years ago
Gabriel Luong 788b83bfaa For #24229 - Remove unused MigrationTipProvider 2 years ago
Grigory Kruglov 7ca7190199 Bump Android-Components version to 100.0.20220309001717 2 years ago
Gabriel Luong 56022546f2 For #23893 - Add telemetry for Contile services 2 years ago
Sarah541 a222ea521d
For #23821 - Add telemtry for RecentlyVisted Homepage (#23909)
Add test

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Ryan VanderMeulen <rvandermeulen@mozilla.com>
2 years ago
Roger Yang 7dc969103b No issue: Renew/remove metrics set to expire in March 2022 2 years ago
Roger Yang 7d8bad05cd Close #23694: Add telemetry for history search 2 years ago
Mugurell bc59ede073 For #22722 - Reacting to the crashed flag
Whenever the ".crashed" property of the currently displayed
TabSessionState -> EngineState is true we will show an in-app crash reporter
with the usual close tab / restore tab options and also the option to report
all current non-fatal crashes to Mozilla if the setting for sending the crash
reports is enabled in app settings.
This closely mimics the previous crash reporter UI but there might be some
subtle differences stemming from migrating to using a ComposeView.

Whenever the ".crashed" property of the currently displayed
TabSessionState -> EngineState is false we will set the in-app crash reporter
to have a View.GONE visibility effectively removing it from the layout.

The functionality for receiving the non-fatal crashes from the AC CrashReporter
through an Intent is still kept and these crashes will be persisted in memory
until the user closes / restores a tab and so also makes a decision about
sending or not these crashes.

Currently more tabs can crash following just one since more share the same
process and as such there is no way to differentiate between them or link a
certain Crash to a certain tab.
They will all be acted upon at once from any tab the user chooses to close or
restore.
2 years ago
Sarah Khan 26c7562e62 For #23596 and #23309 - Add deeplink to wallpaper settings 2 years ago
mcarare de6e2e763e Add VisitInfo.isRemote parameter. 2 years ago
Sarah541 ef5966cddd
For #22576 - Indicate mutability flag for PendingIntent
* For #22576 - Indicate mutability flag for PendingIntent

* Fix lint issues

* Make Analytics Pending Intent flag mutable

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2 years ago
Grigory Kruglov 9ceb06e55c Account for Int->UInt changes in bookmarks API 2 years ago
Roger Yang f8b0dd6e7e No issue: Remove showHistorySearchGroups feature flag 2 years ago
mcarare a6abaf7cf9 Set a minimum number of sites a search group should contain. 2 years ago
Roger Yang 829c06ebe4 Close #23250: Remove duplicate sites within a time period in history 2 years ago
Alexandru2909 a34711c444 For #20524 - Remove redundant coroutine dispatchers from tests 2 years ago
Alexandru2909 cf83b3050b For #8108 - Add BrowserToolbar option to remove url from TopSites 2 years ago
Brais Gabín 7ec31a25c4 For #23142 - Fix license formatting in tests 2 years ago
Grisha Kruglov 5bbfd49e1d Refactor History types to eliminate nullability
This introduces a separate HistoryDB type at the PagedHistoryProvider
layer, that doesn't need to deal with positions. Positioning logic in
HistoryDataSource becomes a type conversion between the new type and an
existing History type that UI and ItemKeyedDataSource API is written against.

With this refactor, we entirely eliminate nullability from these types.
2 years ago
Grisha Kruglov 836ff1151b Closes #22764: Convert History.id to an Int position
We were converting Long timestamps into Ints (and getting negative
numbers back), and treating that as, basically, a position for the
paging API; the paging API would pass us back the obscure negative
number back as an offset, and we'll mishandle it resulting in an
infinite loop.

This patch removes all of the Long -> Int conversions, and introduces an
explicit 'position' that is calculated once we have a full page of
results completed.
2 years ago
Grisha Kruglov 8de4c0b4db For #22569: Remove allopen plugin and Mockable annotations 3 years ago
Matt Tighe fee26e62a8 Fixes #22688: remove inactive_tabs_recently_closed probe 3 years ago
mcarare 0cb4059b12 For #17130: Replace hardcoded strings with string resources. 3 years ago
Christian Sadilek 229c410437 Introduce timeout for capturing thumbnail in BrowserAnimator 3 years ago
Christian Sadilek ae0dba29b1 Prevent flash when navigating to home 3 years ago
Gabriel Luong 91da5318e3 For #22211 - Use Hero images for Recent Bookmarks 3 years ago
Arturo Mejia 74406bef59 For issue #5298 the same page appears in the History section multiple times 3 years ago
Grisha Kruglov 45d4807bfe Closes #22472: Filter out redirects from History search groups 3 years ago
Mugurell 17865bdf66 For #22147 - New search term groups telemetry 3 years ago
Grisha Kruglov 9a4a4713ac No issue: clean up code duplication in PagedHistoryProvider 3 years ago
Roger Yang 04618983aa Close #22299: Add history search term group telemetry 3 years ago
Grisha Kruglov 294997e559 No issue: history view search group missing
Our boundary conditions for matching search groups to visits was wrong.

This change switches the boundary buffer to only be applied to history
items, not the metadata items.

In other words, when checking if any of the metadata items match the
current "page" of history, we'll be looking to see if the item falls
within this time window:
buffer - oldest history item <= metadata item <= newest history item +
buffer

There's a separate problem with buffer though: it's reset to 0 when requested
offset is >0, but that requires a larger refactor of this code, for a
separate PR.
3 years ago
Roger Yang a46905b5e7 Issue #22057: Add search term groups telemetry 3 years ago
Roger Yang 4e5c9a3440 Close #22172: Add Recent searches telemetry 3 years ago
Roger Yang 9c970a5276 Close #22103: Add recent bookmarks telemetry 3 years ago
Jonathan Almeida 9cef9357b1 Close #20704: Add AppStore to Components 3 years ago
Grisha Kruglov 04a35c81b8 Closes #22083 - Match history groups to history pages by all items within the group
When deciding if we should include a history group within the "page of
history" results on the History View UI, we used to look at the most
recent timestamp of the metadata items within the group, and see if that
falls within the range of the timestamps of the history page, +/- some
buffer.

This assumes that each metadata entry will have a corresponding history
item. However, that's not true - when restarting the app, the selected
tab will be restored, and when opening History View right after we'll
record some metadata for it. However, we won't record a history visit
during the app restore for the selected tab.

That's all correct, but the assumption around group matching to history is now incorrect.

This patch changes the logic to instead look at every item within the
group, and see if any of them match the time window of the current
history page. This has a side-effect of also displaying search groups
multiple times on diffenent pages of history, if it makes sense to do so chronologically.
I think that's fine, it reflects reality at least (e.g. items within the
group may have been visited at very different points in time).

Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
3 years ago
MickeyMoz a4bcecf8c5 Update Android Components version to 95.0.20211026143215.
Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
3 years ago
Gabriel Luong 76c746b982 For #21776 - Remove unnecessary type argument 3 years ago
Sebastian Kaspari 170fa9705e Update Kotlin and Jetpack Compose versions. 3 years ago
Grisha Kruglov 0d9e2b3a36 Do not show home screen behind search if we have search terms
Home screen isn't actually visible in case we're displaying awesomebar
search results. The navigation is thus unnecessary and actually causes visual
jankiness as we display home for a moment before covering it up with
search results.
3 years ago
Michael Comella 4c33b1b75c For #21294: add partial test for existing factToEvent code.
When we refactor, this will help ensure we've done it correctly.
3 years ago
Christian Sadilek 54549c49ec Fix mapping between history visits and groups to use createdAt
We currently have a 15s buffer to match metadata to its corresponding
visit. However, a existing metadata record can be updated more than
15s after it was created e.g. when closing the tab and updating
the view time.
3 years ago
Christian Sadilek d830006984 For #20893: Dedupe urls/site in history groups 3 years ago
Gabriel Luong d9847f9525 For #21408 - Pass the corresponding HistoryMetadataKey to openToBrowserAndLoad and addTab use case 3 years ago
Gabriel Luong 2ae7d5d593 For #20893 - Search term groups in history 3 years ago