Commit Graph

5565 Commits

Author SHA1 Message Date
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.
2021-05-11 17:33:10 +03:00
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.
2021-05-11 17:33:10 +03:00
Mozilla L10n Automation Bot
db97d85057 Import l10n. 2021-05-11 00:31:17 +00:00
Neha Binwal
c3823b654c
For #19401 - Replace hard-coded hex color values with their respective photon color variable (#19406)
* Replaced #20123A with @color/photonInk80 in values\colors.xml

* Replaced #F9F9FB with @color/photonLightGrey10 in values\colors.xml

* Replaced #E0E0E6 with @color/photonLightGrey30 in values\colors.xml

* Replaced #592ACB with @color/photonViolet70 in values\colors.xml

* Replaced #312A65 with @color/photonInk20 in values\colors.xml

* Replaced #FBFBFE with @color/photonLightGrey05 in values\colors.xml

* Replaced #52525E with @color/photonDarkGrey10 in values\colors.xml

* Replaced #ffffff with @color/photonWhite in values\colors.xml

* Replaced #5B5B66 with @color/photonDarkGrey05 in values\colors.xml

* Replaced #1C1B22 with @color/photonDarkGrey80 in values\colors.xml

* Replaced #737373 with @color/photonGrey50 in values\colors.xml

* Replaced #9059FF with @color/photonViolet50 in values\colors.xml

* Replaced #5B5B66 with @color/photonDarkGrey05 in values-night\colors.xml

* Replaced #3A3944 with @color/photonDarkGrey40 in values-night\colors.xml
2021-05-10 19:26:10 -04:00
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.
2021-05-10 21:37:32 +04:00
mcarare
93c6403882 For #19357: Remove bookmarks experiment and keep star-with-line icon. 2021-05-10 15:38:52 +03:00
Mozilla L10n Automation Bot
f18e771fb3 Import l10n. 2021-05-10 00:43:35 +00:00
Mozilla L10n Automation Bot
34e9b1f284 Import l10n. 2021-05-09 00:35:54 +00:00
William Lachance
f180119774
No issue - Stop generating metrics.md and direct to Glean Dictionary instead (#19411)
Now that the Glean Dictionary (https://dictionary.telemetry.mozilla.org)
has hit production, our guidance is to move away from generating
metrics.md files. The Glean Dictionary is a better solution for this task
for a couple of reasons:

1. The Glean Dictionary contains a complete reference of all metrics
and pings sent by an application (not just those defined in the
application itself, as is the case with the markdown documentation)
2. The Glean Dictionary provides additional context and links beyond
what is provided by the documentation (for example, information on
how to access metric information via BigQuery or GLAM) as well as
annotations provided by data scientists in the course of analyzing data
(see, for example, the commentary section for:
https://dictionary.telemetry.mozilla.org/apps/fenix/metrics/metrics_search_count).

This should also reduce some of the churn/burden on people when
they submit PRs, as there is no longer any need to update metrics.md
as a part of them.
2021-05-07 20:52:01 -04:00
Mozilla L10n Automation Bot
4e2477919b Import l10n. 2021-05-08 00:33:33 +00:00
Neha Binwal
0eaf9f3c12
For #8984: Added color for "Share" menu's "Recently Used" in Dark theme (#18839)
* Added color for "Share" menu's "Recently Used" in Dark theme

- Changed HEX code for inset_dark_theme in values/colors.xml

* Replaced #52525E in values/colors.xml with @color/photonDarkGrey10

* Added color for "Share" menu's "Recently Used" in Dark theme

- Created a separate attribute recentlyUsedSharedMenu to be used by 'recently used' panel of tab share menu
- It specifies colors to be used for Light and Dark theme
2021-05-07 14:48:35 -05:00
Neha Binwal
ccfff640fc
For #18226: Fixed display of tabs for when text size is set to largest (#19046)
- Made website titles clearly visible in Grid view of tab tray
- Made website URLs clearly visible in List view of tab tray
2021-05-07 14:45:09 -05:00
Elise Richards
cf9a84eed5
Move locale restoration on startup to the visual completeness queue to prevent perf impact (#19315) 2021-05-07 14:12:40 -05:00
Dharan Aditya
6cbc35b7d8
Fixed mozilla-mobile#18641: [Bug] Fill link from clipboard overlaps search engines (#18657) 2021-05-07 14:25:41 -04:00
Gabriel Luong
d83c9d1e72
For #18993 - Nimbus: Allow internal tooling to opt into specific branches of an experiment (#19333) 2021-05-07 14:21:03 -04:00
AndiAJ
8db42d6d25 Fix flaky UI Tests #19306 #19160 #19404 #19373 2021-05-07 17:14:23 +03:00
Roger Yang
a9e0557d83
Closes #3728: Add secret menu switch for allowing third party root certificates (#19398) 2021-05-06 21:52:55 -04:00
Arturo Mejia
9bfb31519a For issue #19290 update to proton icons second batch 2021-05-06 10:35:39 -04:00
mcarare
516d52997d For #18266: Validate credit card entry info. 2021-05-06 17:06:33 +03:00
mcarare
3428dd67ed For #18266: Refactor fragment and view to remove duplicate code. 2021-05-06 17:06:33 +03:00
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
2021-05-06 14:43:27 +03:00
mcarare
32d7b78e94 For #19281: Add border radius for top sites favicons. 2021-05-06 13:56:24 +03:00
kglazko
008c523ed1
For #19055 - Add a ScrollView to the Credit Card Editor Fragment (#19117) 2021-05-05 15:43:09 -04:00
Mozilla L10n Automation Bot
4578621ffe Import l10n. 2021-05-05 15:33:22 +00:00
Roger Yang
74047cdceb
Closes #19147: Move startup metrics to right after Glean initialization (#19252) 2021-05-05 11:11:02 -04:00
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.
2021-05-05 09:55:10 +04:00
Jonathan Almeida
f421f82f2c Close #19259: Pass CoroutineContext to nav interactor constructor 2021-05-04 20:13:10 +04:00
Mozilla L10n Automation Bot
3dfb89d2eb Import l10n. 2021-05-04 00:31:21 +00:00
Roger Yang
79cf3fc765
Closes #18253: Bookmark and History open new tabs in the background (#19275) 2021-05-03 17:27:19 -04:00
Mozilla L10n Automation Bot
bd9d5597fa Import l10n. 2021-05-03 00:28:38 +00:00
Mozilla L10n Automation Bot
2f5937aeb3 Import l10n. 2021-05-02 00:32:00 +00:00
Mozilla L10n Automation Bot
622f7ab4a8 Import l10n. 2021-05-01 00:27:28 +00:00
Sebastian Kaspari
ea47db4a9e Unit tests: Bump max heap size to 3072m. 2021-04-30 16:40:42 +02:00
Mozilla L10n Automation Bot
4036ae92df Import l10n. 2021-04-30 00:30:50 +00:00
Priyanka
05c38d911e
For #19273 - Ensure a new line at the EOF is available in all xml files (#19295) 2021-04-29 15:06:46 -04:00
Elise Richards
5b5e7ebf47
Turn on feature flag for three-dot menu redesign for beta. (#19111) 2021-04-29 11:34:57 -05:00
Sebastian Kaspari
cd4294d314 Issue #19040 - Fix UI test: settingsPrivacyItemsTest 2021-04-29 19:13:33 +04:00
Sebastian Kaspari
5f4a590418 Issue #19040 - Update marketing data setting description 2021-04-29 19:13:33 +04:00
Sebastian Kaspari
70fe7d5886 Issue #10941: Align Nightly version with Gecko/A-C version.
Instead of using a timestamp this will synchronize the Nightly version with the version
of Gecko / A-C. So when using 90.0.20210426143115 then the Nightly version will be
90.0a1 - similar to what Firefox desktop uses.
2021-04-29 09:50:07 +02:00
Mozilla L10n Automation Bot
c9fba71d5f Import l10n. 2021-04-29 00:31:49 +00:00
Roger Yang
59de530a9c
Closes #18253: Remove spaces from Addons telemetry comma-separated list (#19292) 2021-04-28 12:09:27 -04:00
Codrut Topliceanu
8f39592c9c
For #19113 - Change top site corner radius to 8dp (#19262) 2021-04-27 18:42:40 -04:00
Arturo Mejia
21cf0b31a4 For issue #18132 update to proton icons first batch 2021-04-27 15:42:15 -04:00
mcarare
8c0f86bd96 For #19213: Adjust synced tabs to properly show in RTL. 2021-04-27 22:26:34 +04:00
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.
2021-04-27 17:28:41 +03:00
Mozilla L10n Automation Bot
4ee8f159da Import l10n. 2021-04-27 01:39:26 +00:00
Arturo Mejia
c725493bea Fix openFile breaking changes 2021-04-26 20:24:47 -04:00
William Lachance
8070a326b7
No issue - Properly quote description for ad metric (#19243)
This is pedantic, but strictly something called <provider-name> is considered an HTML tag
unless it's in a code block (backticks). 

See mozilla/glean-dictionary#549 and mozilla/glean-dictionary#497. I'm going to fix this upstream
but figured I might as well file a PR here to fix the underlying issue.
2021-04-26 19:24:23 -04:00
Sebastian Kaspari
7d690219ea Issue #19040: Remove Leanplum (Nightly) 2021-04-26 19:08:10 +02:00
Grisha Kruglov
4e16c46b27 Fix breaking changes introduced by credit card encryption APIs 2021-04-26 10:41:45 +02:00
Sebastian Kaspari
6a1b5875b0 Use new SearchSuggestionProvider flag. 2021-04-26 10:41:45 +02:00
Mozilla L10n Automation Bot
eec64110ae Import l10n. 2021-04-26 00:32:02 +00:00
Mozilla L10n Automation Bot
088d5cc801 Import l10n. 2021-04-25 00:29:11 +00:00
Mozilla L10n Automation Bot
7a4e0cd016 Import l10n. 2021-04-24 00:29:05 +00:00
Mozilla L10n Automation Bot
d1951cc672 Import l10n. 2021-04-23 00:40:41 +00:00
Mihai Adrian Carare
e952513569
For #19065 - Add extension functions to be used with credit cards. (#19187) 2021-04-22 18:22:20 -04:00
Mugurell
0f9f439329 For #18591 - Update tests
Some tests trying to "Add to top sites" may fail because of the sticky navbar
now covering that menu item -> scroll the menu up a little.

Some tests that previously were trying to scroll to the bottom of the menu to
interact with navbar options now don't have to. Them trying to interact with
navbar option with the menu opened as collapsed is a good test for the navbar
stickyness.
2021-04-22 21:09:37 +03:00
Mugurell
dc51cd47b5 For #18591 - Make the navbar sticky in the new menu 2021-04-22 21:09:37 +03:00
Roger Yang
cd37f398f1
Closes #18816: Disable TabsTray FAB on accessibility enabled (#19170) 2021-04-22 12:48:10 -04:00
mcarare
ded686d533 For #19125: Move top site pin net to title. 2021-04-22 18:53:50 +03:00
Gabriel Luong
3b3e4c0243
No issue - Replace local photon colors with ui-colors (#19167) 2021-04-22 10:37:34 -04:00
mcarare
46784ecbfb For #19180: Fix tab counter not entirely visible on RTL layout. 2021-04-22 17:02:01 +03:00
Sebastian Kaspari
cf4847dc17 Remove browser-search references. 2021-04-22 13:18:10 +02:00
mcarare
00744fa9e5 For #18267: Updates preferences visibility depending on creditCardsStore 2021-04-22 10:45:57 +03:00
Mozilla L10n Automation Bot
0bc5c22b63 Import l10n. 2021-04-22 00:30:11 +00:00
Elise Richards
688453f61f
Remove strings marked as deprecated that are no longer being used. (#19060) 2021-04-21 16:02:14 -05:00
Elise Richards
db76b8fe21
For #19114: check state of sync account when navigating from sync sign in menu item (#19118) 2021-04-21 14:13:44 -05:00
mcarare
8f1b3e03f1 For #18608: Also add default browser item in new menu. 2021-04-21 15:54:21 +03:00
Arturo Mejia
acb24396e5 Address WebExtensionBrowserMenuBuilder breaking change 2021-04-21 11:44:37 +02:00
Sebastian Kaspari
a126f0913a Update to Mozilla Android Components 90.0 2021-04-21 11:44:37 +02:00
Roger Yang
b396ede068
No issue: Suppress deprecation for LoginStorageDelegate (#19145) 2021-04-20 16:25:01 -04:00
mcarare
8b3a878062 No issue: Rename Event for naming consistency. 2021-04-20 14:48:07 -04:00
mcarare
f693375270 For #18852: Add metrics for default browser settings experiment. 2021-04-20 14:48:07 -04:00
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
2021-04-20 12:18:19 -05:00
mcarare
90c9e634af For #18240: Adjust preference screen to fit UX specs. 2021-04-20 19:32:14 +03:00
Christian Hernandez
f8af231582
For #18830 - Remove card nickname from credit card editor (#18891)
* Removed all views with regards to credit card nickname. Removed the TextInputLayout and TextInputEditText where information would be typed in. Also removed the credit card nickname title text view. I added a margin of 16 dp to the bottom ConstraintLayout that houses the delete, cancel, and save buttons as requested.

* #18830 - Removed all views with regards to credit card nickname. Removed the TextInputLayout and TextInputEditText where information would be typed in. Also removed the credit card nickname title text view. I added a margin of 16 dp to the bottom ConstraintLayout that houses the delete, cancel, and save buttons as requested.
2021-04-20 12:09:09 -04:00
Jonathan Almeida
69efd3a089 Close #19094: Open sign-in flow if no account is created for tabs tray 2021-04-19 23:18:37 +04:00
Kate Glazko
1ca7d55b4a For #18745: Add Shadow To Shortcut Tiles 2021-04-19 11:01:08 -07:00
Jonathan Almeida
cfaaf82541 No issue: Allow tabstray rewrite to ride the trains 2021-04-19 20:08:24 +04:00
Jonathan Almeida
8bb7abc3fe Disabling tabstray collection tests until #19090 is fixed 2021-04-19 18:10:43 +04:00
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.
2021-04-19 18:10:43 +04:00
Jonathan Almeida
0189fed012 No issue: Use same open tabs tray everywhere 2021-04-19 18:10:43 +04:00
Jonathan Almeida
1e09d50fd7 No issue: Fix the initial select mode check 2021-04-19 18:10:43 +04:00
Jonathan Almeida
ad483903ed No issue: Do not create a new instance of TabsTrayStore
We only need one. :)
2021-04-19 18:10:43 +04:00
Jonathan Almeida
b6f9bbf560 Attempt at fixing openAllTabsInCollectionTest test 2021-04-19 18:10:43 +04:00
Jonathan Almeida
8b1752dd9e Disable/fix tests that rely on Select Tabs button 2021-04-19 18:10:43 +04:00
Jonathan Almeida
053453cc7f No issue: Enable tabs tray re-write by default in nightly 2021-04-19 18:10:43 +04:00
mcarare
f94f8531f6 For #18496: Set activity theme in onCreate before call to super. 2021-04-19 13:32:45 +03:00
Mozilla L10n Automation Bot
1d80ece660 Import l10n. 2021-04-19 00:31:22 +00:00
Mozilla L10n Automation Bot
635eb8eab0 Import l10n. 2021-04-18 00:32:58 +00:00
Jonathan Almeida
8b6d06e551 Close #19064: Focus on tab page with the BrowsingModeManager 2021-04-17 04:30:38 +04:00
Roger Yang
cba68faac6 Closes #18946: Add undo toast for tabstray 2021-04-17 02:30:39 +04:00
Michael Comella
cbc5df3c63 For #18836: address onCreate method length detekt issue. 2021-04-16 15:30:26 -07:00
Michael Comella
d6999234b0 For #18836: add & integrate StartupTypeTelemetry. 2021-04-16 15:30:26 -07:00
Michael Comella
aa3846212c For #18836: add metric perf.startup.startup_type. 2021-04-16 15:30:26 -07:00
Michael Comella
a64540bd06 For #18836: add StartupPathProvider + tests. 2021-04-16 15:30:26 -07:00
Michael Comella
ec65737cbb For #18836: address lint errors for StartupStateProvider*. 2021-04-16 15:30:26 -07:00
Michael Comella
ea1d569837 For #18836: add getStartupStateForStartedActivity method. 2021-04-16 15:30:26 -07:00
Michael Comella
18507ec24c For #18836: add isHotStartForStartedActivity and tests. 2021-04-16 15:30:26 -07:00
Michael Comella
e803cc61a2 For #18836: add isWarmStartForStartedActivity, tests. 2021-04-16 15:30:26 -07:00
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.
2021-04-16 15:30:26 -07:00
Michael Comella
4f26aae254 For #18836: add VIEW to warm and hot entries. 2021-04-16 15:30:26 -07:00
Michael Comella
fd11cc1c51 For #18836: refactor tests to forEachHotStartEntries. 2021-04-16 15:30:26 -07:00
Michael Comella
a7f4aac6e8 For #18836: refactor test into forEachWarmStartEntries. 2021-04-16 15:30:26 -07:00
Michael Comella
a00fbbb6b3 For #18836: refactor tests into forEachColdStartEntries. 2021-04-16 15:30:26 -07:00
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.
2021-04-16 23:35:14 +04:00
Julien Cristau
6d862c989a Update A-C to 75.0.20210415213638 2021-04-16 12:01:51 -04:00
Mugurell
abe3036065 For #18439 - Open link from QR code only if activity is not null 2021-04-16 13:08:01 +03:00
Kate Glazko
ae157e5679 For #18520: Add Empty Tab State To Browser Tray List 2021-04-16 05:22:44 +04:00
Mozilla L10n Automation Bot
d0f8b3a64d Import l10n. 2021-04-16 00:29:09 +00:00
Jonathan Almeida
2ef04c2a9e Close #19024: Fix intermittent test failure in NavigationInteractor 2021-04-16 02:34:23 +04:00
Jonathan Almeida
72c13f89f5 Issue #19030: Allow homescreen to be scrollable with extra content 2021-04-16 02:33:53 +04:00
Jonathan Almeida
71240a5e0f No issue: Set tray dismissal from background tap 2021-04-16 02:31:13 +04:00
Jonathan Almeida
6c8b1a7e8f Close #19045: Dismiss tabstray when last tab in a page is closed 2021-04-16 02:31:13 +04:00
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
2021-04-15 12:49:19 -05:00
Christian Sadilek
d036ba1338
Issue #18819: Hide Credit Card pref by default (for settings w/o icons) (#19058) 2021-04-15 13:29:22 -04:00
Gabriel Luong
2e562579ed
For #18274 - [Edit card] Update a saved credit card information (#19032) 2021-04-15 12:40:48 -04:00
Gabriel Luong
f7c56ee6fa
For #18273 - [Edit card] Delete a saved credit card (#19029) 2021-04-15 11:18:29 -04:00
Codrut Topliceanu
d8660341a1
For #18521 - Added scroll to current tab (#19021)
* For #18521 - Added scroll to current tab

* For #18521 - Addressed comments
2021-04-15 18:09:22 +03:00
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
2021-04-15 11:29:13 +03:00
Roger Yang
bde54dc30f
Closes #19003: Add account setting to tabstray synced tab menu (#19034) 2021-04-15 00:46:26 -04:00
Mozilla L10n Automation Bot
afd007d741 Import l10n. 2021-04-15 00:36:37 +00:00
Roger Yang
8246f81c97
Closes #18948: Update tabstray telemetry (#19004) 2021-04-14 15:32:45 -04:00
mcarare
cea869c276 For #18854: Add metrics for home screen being displayed. 2021-04-14 21:21:28 +03:00
mcarare
0ac78665d5 No issue: Fix indenting in onViewCreated. 2021-04-14 21:21:28 +03:00
mcarare
80d2bec150 For #18376: Add experiment for set default browser settings card. 2021-04-14 19:28:38 +03:00
mcarare
dbae5dd3c0 For #18853: Add metrics for default browser new tab experiment. 2021-04-14 19:22:27 +03:00
mcarare
920c1285e4 For #18856: Add metrics for opening settings screen from home menu. 2021-04-14 18:50:15 +03:00
mcarare
445091db14 For #18815: Expand app bar on onboarding dismissal and browsing start. 2021-04-14 18:09:51 +03:00
Jonathan Almeida
b9881372ef Close #19011: Always have a click listener in TabTrayViewHolder 2021-04-14 19:08:39 +04:00
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.
2021-04-14 19:00:51 +04:00
Gabriel Luong
6eb528f912
For #18272 - [Edit card] Display a saved card information in the Edit card screen (#18884) 2021-04-14 10:56:23 -04:00
Oana Horvath
1128f921ad For #18986 & #19016: disabled failing tests changeThemeSetting & changeAccessibiltySettings 2021-04-14 13:34:58 +03:00
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>
2021-04-13 20:48:45 -04:00
Mozilla L10n Automation Bot
973c891c5e Import l10n. 2021-04-14 00:32:38 +00:00
Michael Comella
5560d7de01 For #18836: rename CreatedActivityLogEntry -> LogEntry.ActivityCreated and similar.
It's too much work to squash "correctly".
2021-04-13 15:10:36 -07:00
Michael Comella
3ae80cda40 For #18836: note refactor in metrics docs. 2021-04-13 15:10:36 -07:00
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.
2021-04-13 15:10:36 -07:00
Michael Comella
0cbedaadb1 For #18836: add StartupStateProvider. 2021-04-13 15:10:36 -07:00
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.
2021-04-13 15:10:36 -07:00
Michael Comella
cde954f3a7 For #18836: add StartupActivityLog, tests. 2021-04-13 15:10:36 -07:00
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.
2021-04-14 01:48:35 +04:00
Jonathan Almeida
22e7410e4a Issue #18931: Move dialog adapter to collections package 2021-04-14 01:48:35 +04:00
Jonathan Almeida
f1e7c1130b Issue #18931: Rename class to CollectionsListAdapter 2021-04-14 01:48:35 +04:00
Christian Sadilek
72230377f4 Upgrade to Android Components 75.0.20210413143139 2021-04-13 12:10:36 -04:00
Jonathan Almeida
cb60461bdd Close #18934: Remove adapter when deataching from window 2021-04-13 19:00:01 +04:00
Jonathan Almeida
1944a5ef6b Issue #18885: Dismiss FAB icon when tabs tray is closed 2021-04-13 18:59:16 +04:00
mcarare
ba218e638b For #18375: Add experiment for set default browser New Tab card. 2021-04-13 17:25:51 +03:00
Elise Richards
cbfba4478b Add ignores for intermittent toolbar tests 2021-04-13 13:21:29 +03:00
Mozilla L10n Automation Bot
6036bf035a Import l10n. 2021-04-13 00:55:06 +00:00
Jonathan Almeida
38a7921913 Close #18973: Fix references to info banner 2021-04-13 04:15:43 +04:00
Roger Yang
bc90e193a2 Closes #18522: Re-add call to action in tabs tray 2021-04-13 02:01:42 +04:00
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
2021-04-12 16:01:33 -05:00
Roger Yang
b3f5e557cc
Closes #18899: Update content description string for synced tabs icon (#18963) 2021-04-12 15:16:38 -04:00
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.
2021-04-12 14:57:01 -04:00
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
2021-04-12 13:05:58 -05:00
Arturo Mejia
fc1739624d For #18608 only show the experiment for set default browser MenuItem when Nightly, Beta, Release are not the default browser 2021-04-12 13:26:52 -04:00
Sören Hentzschel
51df37cde5
For #18898 - implement quit button in page menu (#18942) 2021-04-12 12:02:14 -05:00
Gabriel Luong
c5e78f69ed
For #18940 - Remove reserved icon spacing for "Nimbus Experiments" setting preference (#18949)
Co-authored-by: Sören Hentzschel <kontakt@agenedia.com>
2021-04-12 12:32:55 -04:00
Oana Horvath
78f0086b7e For #17979 & #17840: fix and re-enable UI tests affected by main menu changes 2021-04-12 19:16:17 +03:00
Oana Horvath
358a3a3d4c Fix screenshots tests: showDefaultHomeScreen, bookmarksManagementTest 2021-04-12 16:21:35 +03:00
Mozilla L10n Automation Bot
d7f7f817c9 Import l10n. 2021-04-12 00:38:10 +00:00
Mozilla L10n Automation Bot
5a2a61330d Import l10n. 2021-04-11 00:25:07 +00:00
Mozilla L10n Automation Bot
aa4d0b84db Import l10n. 2021-04-10 00:31:18 +00:00
Jonathan Almeida
d702af5a53
For #15372 - Correct one more instance of the onboarding string (#18906) 2021-04-09 15:21:26 -04:00
Gabriel Luong
7cc4a8a4d8
For #18742 - Resize the top site item sizes (#18751) 2021-04-09 11:47:35 -04:00
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.
2021-04-09 14:48:51 +03:00
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.
2021-04-09 14:48:51 +03:00
Sebastian Kaspari
dfb3c4c9bf Introduce process lifecycle observer to collect metrics about tabs when app goes to foreground/background. 2021-04-09 12:36:27 +02:00
Sebastian Kaspari
54d46c7e94 Move TelemetryMiddleware to telemetry sub package. 2021-04-09 12:36:27 +02:00
mcarare
c30d0f9240 For #18829: Adjust bookmark item color to UX specs. 2021-04-09 10:32:33 +03:00
Jonathan Almeida
9170ee3621 Update kdocs of navigation interactor 2021-04-09 06:50:05 +04:00
Jonathan Almeida
e422016367 Call stop in deattach for feature binding 2021-04-09 06:50:05 +04:00
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.
2021-04-09 06:50:05 +04:00
Mozilla L10n Automation Bot
d6652785e9 Import l10n. 2021-04-09 00:27:10 +00:00
Arturo Mejia
db9b3676d3 For #18608 Add experiment for set default browser MenuItem. 2021-04-08 15:58:43 -04:00
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
2021-04-08 15:20:18 -04:00
Elise Richards
10f75a3606
For #17870 - Enable new three-dot menu redesign on nightly builds (#18883) 2021-04-08 15:19:05 -04:00
Elise Richards
e5e9ceba5a
Settings menu item should be tinted if there is an account issue (#18849) 2021-04-08 13:10:55 -05:00
Elise Richards
ba111dabaa
PWA install to homescreen is available in main menu (#18850) 2021-04-08 12:14:28 -05:00
Gabriel Luong
37b6079d83
For #18268, #18269 - [Saved cards] Display a list of Saved cards fetched from the credit card storage (#18808) 2021-04-08 12:09:57 -04:00
Gabriel Luong
15fc01c7f9 Update app/src/main/java/org/mozilla/fenix/ext/Activity.kt 2021-04-08 14:23:06 +03:00
Arturo Mejia
be7318f608 For #18608 made set a default browser functionality publicly available. 2021-04-08 14:23:06 +03:00
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
2021-04-07 23:40:59 -07:00
Mozilla L10n Automation Bot
cb62f98717 Import l10n. 2021-04-08 00:39:56 +00:00
Jonathan Almeida
80a3475b30
No issue - Enable the tabs tray refactor in nightly (#18858) 2021-04-07 19:02:15 -04:00
codrut.topliceanu
9219a1b35b For #18515 - Added Icon and sync functionality
Co-authored-by: Jonathan Almeida <jalmeida@mozilla.com>
2021-04-08 02:45:16 +04:00
codrut.topliceanu
d961d7ba38 For #18515 - Adds FAB to TabsTray rewrite 2021-04-08 02:45:16 +04:00
Gabriel Luong
c31d507e19
For #18743 - Change the top sites label colour and size (#18752) 2021-04-07 17:39:11 -04:00
Roger Yang
10eace2f99
Closes #18068: Track custom fill link from clipboard clicked (#18827) 2021-04-07 16:31:41 -04:00
Jonathan Almeida
b1727416f3 No issue: Move UseCase wrappers to the interactor; it's only usage 2021-04-07 21:23:09 +04:00
Jonathan Almeida
2e3086ac40 No issue: Move menu to separate integrations class 2021-04-07 21:23:09 +04:00
Jonathan Almeida
dd3e95b4cf No issue: Add test for share tab in navigation interactor
Co-authored-by: Roger Yang <royang@mozilla.com>
2021-04-07 21:23:09 +04:00
Jonathan Almeida
729acdba39 No issue: Observe only normal tabs when updating counter 2021-04-07 21:23:09 +04:00
Jonathan Almeida
09e9561600 Issue #18774: Fix long parameter warnings in detekt 2021-04-07 19:14:54 +04:00
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).
2021-04-07 19:14:54 +04:00
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.
2021-04-07 19:14:54 +04:00
Arturo Mejia
8ca9f94abb For issue #16557 set autoplay block audio only
by default
2021-04-07 07:04:59 -04:00
Mozilla L10n Automation Bot
ae5ab1c6fa Import l10n. 2021-04-07 00:26:52 +00:00
Elise Richards
547a843c5c
For #18770 - Correct addons position in three dot menu based on toolbar position (#18828) 2021-04-06 15:40:32 -04:00