Commit Graph

1215 Commits (854b3701e32c8055307530f8247b208958940d7e)

Author SHA1 Message Date
Roger Yang 829c06ebe4 Close #23250: Remove duplicate sites within a time period in history 2 years ago
Gabriel Luong 26b65a2a23 For #22727 - Add Contile to Top Sites 2 years ago
mcarare 64a8932e3c For #22477: Ignore null and empty values for share data title. 2 years ago
Matt Tighe 0b99c2e67d fixes #22943: update androidx.lifecycle to 2.4.0 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
Roger Yang 047ec890b2 Closes #22550: Refactor search term tab grouping logic to rely on middleware 2 years ago
Grigory Kruglov 1b305c1398 For #22795: Stop trimming login origins on sorting
Due to the async nature (??) of the trimming code, this is causing severe performance issues
during search.

Looking back through commits, doesn't seem like there's a particularly good reason we were trimming here. All I could find is #9986 (comment) which is lacking explanation of why this is actually useful.

And currently, we're dealing with an origin (not a full url when this was initially written, I think), i.e. https://accounts.firefox.com vs https://accounts.firefox.com/signin. So, the suffix stripping isn't even doing much beyond removing com in vast majority of cases.

So, seems like all of this trimming stuff can be cleaned up.
2 years ago
Brais Gabín 7ec31a25c4 For #23142 - Fix license formatting in tests 2 years ago
mcarare cdbe7983f5 For #22879: Filter default engines when sending telemetry.
Filter out custom engines that are not well known search domains.
3 years ago
mavduevskiy 89f5e96d73
For #18160: Show a prompt when trying to leave private browsing with active downloads (#22912)
Co-authored-by: mike a <mavduevskiy@gmail.com>
3 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.
3 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.
3 years ago
Mugurell 34c0a17b4d For #22852 - Add a new "Storage access" permission 3 years ago
mcarare 00280d3b65 For #20513: Use UrlMetricType for search engine submission url. 3 years ago
Roger Yang 26198330e9 Closes #22671: Show correct time groups header in history 3 years ago
Grisha Kruglov 33af7d8729 Fix breaking change in KeyProvider
`key` was renamed to `getOrGenerateKey` and is now a `suspend`.
3 years ago
Grisha Kruglov 8de4c0b4db For #22569: Remove allopen plugin and Mockable annotations 3 years ago
Matt Tighe edcccc2f4c fixes #20833: move home recycler bottom margin into standalone item 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
aime Soriano Pastor 9bfc94b793 For #9294: Add option to clear current site data in quick settings dialog. 3 years ago
MickeyMoz 07d43971c0 Update Android Components version to 97.0.20211208143435. 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
Christian Sadilek 26713a58c8 Refactor: Move historymetadata classes in separate package 3 years ago
Mugurell 5c3fedd707
For #22534 - Show history highlights and groups in "Recently visited" (#22535)
* For #22534 - Update homescreen section name to "Recently visited"

* For #22534 - Show both history highlights and groups in Recently visited

For now the metadata groups don't support scoring so as an interim solution we
will show up to 9 items, evenly distributes, first favoring groups sorted by
date then history highlights pre-sorted by default.

Tapping a history highlight will switch to it's already open tab if available
or create a new one in which to load it if needed.

A "Remove" option will also be available for history highlights to remove it
from the screen and also from history.
Currently removing a group / highlight will not query new ones to again show up
to 9 items, this will be implemented separately.

* For #22534 - Rename and refactor historymetadata to recentvisits

The updated feature supports more than history metadata so updating the overall
naming scheme seems needed.
To signal that this is a homescreen feature the entire package is moved to home

* For #22534 - Update UI tests to account for the new items space on the screen

Saw failures about not finding the collection section on screen.
This is probably happening because w are now adding the recent visits to
homescreen above the collections section pushing it off screen.

Since the collections might be obstructed by the toolbar shown on top as a
quick solution we'll scroll to the next homescreen section so that the
collections will be shown above in their entirety.

* Update app/src/main/java/org/mozilla/fenix/home/recentvisits/RecentVisitsFeature.kt

Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>

* Update app/src/main/java/org/mozilla/fenix/home/recentvisits/RecentVisitsFeature.kt

Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>

Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
3 years ago
Noah Bond de1c6b0dae
Tab group count telemetry (#22479)
* For #22410 - Refactored tab sorter metrics into a middleware

* For #22410 - Created distribution metric for tab group sizes

* For #22410 - Created tests for tabs tray middleware

* For #22410 - Merge fixes

* For #22410 - Added PR number to metric

* For #22410 - Fixed unit tests post merge. Added waitUntilIdle to new tests.

* For #22410 - Added missing line to middleware to have the Store process actions

* For #22410 - Updated metric expiration to December

* For #22410 - PR Feedback

* For #22410 - Removed else from middleware when
3 years ago
Gabriel Luong 7c2d9bd8a8 For #22595 - Remove unused OnboardingAutomaticSignInViewHolder 3 years ago
Gabriel Luong 91da5318e3 For #22211 - Use Hero images for Recent Bookmarks 3 years ago
Arturo Mejia a49f80d5e8 Update Android Components version to 96.0.20211125162700. 3 years ago
Arturo Mejia 3f86a5d6f9 Improve loading URLs 3 years ago
Mugurell 548efefcbb For #22442 - Don't display individual tab if part of the Jump back in tabs group
We'll show as a recent tab the next most recent tab not part of the last active
search group.
3 years ago
Mugurell 685da115c9 For #22442 - Don't display history group if already in Jump back in 3 years ago
Gabriel Luong dc15ee2415 For #22488 - Fix intermittent test failure with InactiveTabsControllerTest 3 years ago
Gabriel Luong 749da13516 For #22250 - Convert Recent Bookmarks to Jetpack Compose 3 years ago
Arturo Mejia 74406bef59 For issue #5298 the same page appears in the History section multiple times 3 years ago
Grisha Kruglov 63154a18f9 Closes #22484 - Track direct loads per tab; fix search term lookup
This patch fixes two problems:
1) We were treating "direct tab load" as an event which applies
   uniformally to all tabs, even though it's actually an event which
   happens for a specific tab. This lead to background tabs (pages opened as new tab)
   setting the direct load flag, and then a simultaneously loading
   parent tab would incorrectly interpret that flag for itself.

   The patch switches this tracking from a simple boolean (are we direct
   loading?) to a set of tab IDs that are currently direct loading.

2) In a case when a background tab was loading with a parent who's
   search terms were cleared by a direct load, we were not trying to
   lookup search terms on the background tab's historyMetadata key,
   which exists to capture search terms for this exact scenario.

   The patch adds an additional fallback lookup for that path.
3 years ago
Grisha Kruglov 45d4807bfe Closes #22472: Filter out redirects from History search groups 3 years ago
Roger Yang 24e4452cb5 Close #22402: Add top placeholder for home 3 years ago
Mugurell d4a6facd81 For #22155 - Store inactive tabs count telemetry when user opens tabs tray
Setting this value in FenixApplication.onCreate was buggy because of a race
with restoring BrowserState.
Setting it here would ensure a better granularity of the events and so to more
accurate reporting.
3 years ago
Mugurell 17865bdf66 For #22147 - New search term groups telemetry 3 years ago
Arturo Mejia 94a543a403 For #22271 Improve URL accessing from the clipboard for Android 12 and above. 3 years ago
Jonathan Almeida e3b6e00331 Close #22223: Move to the selected page when switching modes 3 years ago
Grisha Kruglov 9a4a4713ac No issue: clean up code duplication in PagedHistoryProvider 3 years ago
Jonathan Almeida 8ced675817 No issue: Correct TabsTrayAction naming 3 years ago
Jonathan Almeida 08b15689b1 Close #22305: Use TabsTrayStore for populating adapters 3 years ago
Jonathan Almeida f16300392d Close #22305: Add tab state into the TabsTrayStore 3 years ago
Mugurell 953f6feb17 For #22155 - The inactiveTabsCount probe reports actualInactiveTabs number 3 years ago
Mugurell f9b67091c6 For #22155 - New BrowserState.actualInactiveTabs public method
This allows querying from all throughout the app which of the current tabs are
inactive while taking into consideration whether the feature is enabled or not
such that when the feature is disabled it will always return an empty result.
3 years ago