Compare commits

...

4249 Commits

Author SHA1 Message Date
Ishan Jain b57b2cf75a
feat: close tab when back button is pressed and history is empty and bring up the home page 2023-01-08 00:10:22 +05:30
Ishan Jain c8dde9b239
feat: close last active tab when home button is pressed 2023-01-08 00:10:19 +05:30
MickeyMoz 4f5c2f1d42 Update to Android-Components 110.0.20230107143316. 2023-01-07 16:14:57 +00:00
MatthewTighe 24674cbec4 For #28428: update growth data with new events 2023-01-07 03:08:39 +00:00
mozilla-l10n-automation-bot a3801065eb
Import l10n. (#28445) 2023-01-07 01:12:19 +00:00
MickeyMoz 7525ea87ff Update to Android-Components 110.0.20230106190247. 2023-01-06 21:09:38 +00:00
MickeyMoz caf018acbb Update to Android-Components 110.0.20230106143238. 2023-01-06 16:29:48 +00:00
AndiAJ b18d32a7f4 Bug 1807302 - New set desktop site before page load UI tests 2023-01-06 10:22:35 +00:00
mozilla-l10n-automation-bot 99ff1e92d5
Import l10n. (#28427)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2023-01-06 01:06:23 +00:00
Arturo Mejia 804d286650 Bug 1797593 - Add re-engagement dialog for cookie banners. 2023-01-06 00:39:17 +00:00
Harrison Oglesby 614ba71842 For #28201 - replace existing night mode preview annotations with LightDarkPreview annotation 2023-01-06 00:05:59 +00:00
Harrison Oglesby cab8c35568 For #28201 - Make a LightDarkPreview annotation
Add LightDarkPreview annotation
2023-01-06 00:05:59 +00:00
Noah Bond 4f8c9c3e64 For #28262 - Refactor InactiveTabsAutoCloseDialogInteractor into InactiveTabsInteractor 2023-01-05 23:33:44 +00:00
rahulsainani 38a67b9517 Closes 28417: Add nimbus flags for pre permission prompt 2023-01-05 21:33:04 +00:00
Ryan VanderMeulen 923bb27abf Bug 1801022 - Update AndroidX testing libraries to the latest releases 2023-01-05 20:57:44 +00:00
Noah Bond a2f0580344 For #28261 - Rename solo `xInteractor` parameters in the Tabs Tray to `interactor` 2023-01-05 19:40:33 +00:00
rahulsainani f62c56db2f Closes 28414: NotificationManagerCompat extension to safely check if notifications are enabled 2023-01-05 19:01:49 +00:00
MickeyMoz 8994a66a3c Update to Android-Components 110.0.20230105143224. 2023-01-05 18:03:37 +00:00
jhugman 60d7a658b1
For EXP-2992: Add notification config with polling interval to messaging feature (#28381) 2023-01-05 16:57:15 +00:00
AndiAJ d69ad4e962 Bug 1807288 - Disable intermittent validateBaselinePing UI test 2023-01-05 16:12:55 +00:00
Alexandru2909 8186c44ef0 Bug 1807727 - Dismiss SearchDialogFragment on editing cancelled 2023-01-05 15:40:12 +00:00
AndiAJ e4fc184ece No issue - Use android resource for positive/negative dialog buttons 2023-01-05 10:24:02 +00:00
AndiAJ b8877c2388 Bug 1807302 - New sponsored shortcuts UI tests and other refactoring work 2023-01-05 09:18:46 +00:00
mcarare b1c40a784b Switch to AC implementation for checking device manufacturer. 2023-01-05 07:22:55 +00:00
MickeyMoz af51a7e34c Update to Android-Components 110.0.20230105001740. 2023-01-05 01:55:46 +00:00
mozilla-l10n-automation-bot b9930bf48f
Import l10n. (#28402) 2023-01-05 00:53:57 +00:00
Arturo Mejia 14ef1fe841 Bug 1797593 - Update text descriptions for cookie banner handling dialog 2023-01-04 22:16:19 +00:00
Ryan VanderMeulen 24ab9789fc Bug 1808338 - Update Sentry to version 6.11.0 2023-01-04 21:46:19 +00:00
MickeyMoz 7fec0a07bc Update to Android-Components 110.0.20230104190109. 2023-01-04 20:28:25 +00:00
sunil9211 469345b074 For #23841: Hide keyboard when selecting month or year 2023-01-04 18:05:42 +00:00
MickeyMoz 774b872e5a Update to Android-Components 110.0.20230104143250. 2023-01-04 17:11:08 +00:00
sarah541 4c1db2837c For #27035 - Add padding around onboarding buttons and content 2023-01-04 16:39:03 +00:00
Arturo Mejia f0be6e673a Bug 1797593 - Pre-land text for cookie banner handling dialog 2023-01-04 15:33:33 +00:00
AndiAJ 025895dd91 Bug 1807270 - re-enable collections UI tests disabled by the tabs tray migration to compose 2023-01-04 09:06:32 +00:00
Alexandru2909 d88d930b83 For #25812 - Set the cursor at the end for search terms when switching to toolbar editMode. 2023-01-04 08:03:42 +00:00
mozilla-l10n-automation-bot 9565b48b70
Import l10n. (#28384) 2023-01-04 00:35:12 +00:00
Arturo Mejia 9490561c75 Bug 1796146 - Add learn more link to cookie banner handling settings page 2023-01-03 22:14:29 +00:00
Jeff Boek aea7cbff9d For #3722: Invoke search on long press home button
Co-authored-by: s-ankur <s.ankursonawane@gmail.com>
2023-01-03 21:30:24 +00:00
MickeyMoz 767d18ae64 Update to Android-Components 110.0.20230103190107. 2023-01-03 20:37:51 +00:00
dependabot[bot] dbe56f1a85 Bump certifi from 2022.9.24 to 2022.12.7 in /taskcluster
Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.9.24 to 2022.12.7.
- [Release notes](https://github.com/certifi/python-certifi/releases)
- [Commits](https://github.com/certifi/python-certifi/compare/2022.09.24...2022.12.07)

---
updated-dependencies:
- dependency-name: certifi
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-03 18:06:50 +00:00
kycn c3b9c540ca Bug 1807933 - Enable places storage maintenance feature for the Beta variant.
Places storage maintenance flag is enabled for the Beta variant, previously it was enabled only for Nightly variant. This feature registers a periodic storage maintenance worker that runs to prune and maintain places db.
2023-01-03 17:31:48 +00:00
github-actions[bot] 58c530cd4b
Update to Android-Components 110.0.20230103143200. (#28373)
Co-authored-by: MickeyMoz <sebastian@mozilla.com>
2023-01-03 11:58:58 -05:00
mozilla-l10n-automation-bot a9729abb43
Import l10n. (#28365) 2023-01-03 00:47:59 +00:00
MickeyMoz 7fb602fbbe Update to Android-Components 110.0.20230102203010. 2023-01-02 21:53:37 +00:00
MickeyMoz c07ee762e6 Update to Android-Components 110.0.20230102143325. 2023-01-02 16:21:56 +00:00
MickeyMoz 364ef98a3b Update to Android-Components 110.0.20230101143317. 2023-01-02 01:26:28 +00:00
mozilla-l10n-automation-bot 83110e3c71
Import l10n. (#28359) 2023-01-02 00:43:37 +00:00
MickeyMoz 2bcb5214f2 Update to Android-Components 110.0.20221231143335. 2022-12-31 16:05:14 +00:00
mozilla-l10n-automation-bot 089969f5bc
Import l10n. (#28352) 2022-12-31 00:41:57 +00:00
Zac McKenney 4946c2795c For bug 1807716: Move engine warmup above Glean initialization to fix crash at launch 2022-12-30 22:14:29 +00:00
MickeyMoz bdf6432abc Update to Android-Components 110.0.20221230143323. 2022-12-30 16:13:32 +00:00
mozilla-l10n-automation-bot d9106ff1a7
Import l10n. (#28345) 2022-12-30 00:37:13 +00:00
MickeyMoz b4a5f14610 Update to Android-Components 110.0.20221229143342. 2022-12-29 16:12:28 +00:00
mozilla-l10n-automation-bot 0502da2f5c
Import l10n. (#28333) 2022-12-29 00:41:30 +00:00
MickeyMoz c74a2e70d1 Update to Android-Components 110.0.20221228143243. 2022-12-28 16:10:15 +00:00
mozilla-l10n-automation-bot 8336d98c0e
Import l10n. (#28325) 2022-12-28 00:40:43 +00:00
mozilla-l10n-automation-bot c6b69bac76
Import l10n. (#28312)
Co-authored-by: dsmithpadilla <88508950+dsmithpadilla@users.noreply.github.com>
2022-12-27 13:30:54 +00:00
AndiAJ 26a2fb3b3f For #28182 fix disabled verifySearchEnginesWithRTLLocale and toggleSearchEnginesShortcutListTest UI tests 2022-12-27 11:46:34 +00:00
oana.horvath 8ab6826d4a No issue: Fix add-on name check in UI test 2022-12-27 10:20:58 +00:00
MickeyMoz 0c15e9f723 Update to Android-Components 110.0.20221223190300. 2022-12-23 20:30:40 +00:00
MickeyMoz adb0f85c7a Update to Android-Components 110.0.20221223143308. 2022-12-23 16:46:03 +00:00
mozilla-l10n-automation-bot 5efab07eba
Import l10n. (#28269) 2022-12-23 15:20:53 +00:00
DreVla 073bbbf5c8 For #28298: Disable deletion of last element in search engines list
When removing search engines from settings,
the option to delete the last one should not be
available
2022-12-23 11:43:25 +00:00
Mugurell 6bff78b738 For #28273 - Configure search with the selected search engine before user searching 2022-12-23 10:19:10 +00:00
MickeyMoz 7598cbca67 Update to Android-Components 110.0.20221222151132. 2022-12-22 16:52:21 +00:00
AndiAJ f6f52972fe For #28212 disable failing emailLinkPWATest UI test 2022-12-22 14:15:02 +00:00
AndiAJ 9ca3179ab0 For #26286 new privateHomeThreeDotMenuItemsTest UI test 2022-12-22 14:15:02 +00:00
MickeyMoz 50cc477d14 Update to Android-Components 110.0.20221221190038. 2022-12-21 21:57:03 +00:00
MickeyMoz 991e622583 Update to Android-Components 110.0.20221221143317. 2022-12-21 17:14:58 +00:00
Mugurell b69e3c18b1 For #26957 - Disable intermittently failing ui test to unblock landing. 2022-12-21 15:52:05 +00:00
Alexandru2909 782a903072 For #26957 - Allow SearchDialogFragment to be dismissed on homescreen swipe 2022-12-21 15:52:05 +00:00
MickeyMoz d07de1e028 Update to Android-Components 110.0.20221221024602. 2022-12-21 04:29:24 +00:00
MickeyMoz 6fe346ced6 Update to Android-Components 110.0.20221220190216. 2022-12-20 20:41:49 +00:00
rahulsainani 3a79234a1b Bug 1796319 - Select existing addon settings tab if already opened 2022-12-20 16:54:37 +00:00
MickeyMoz 5ff72d4c08 Update to Android-Components 110.0.20221220143331. 2022-12-20 16:13:55 +00:00
mozilla-l10n-automation-bot 4e52da097a
Import l10n. (#28252)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-12-20 01:30:16 +00:00
MickeyMoz 6aec6edd1d Update to Android-Components 110.0.20221219220907. 2022-12-20 00:14:17 +00:00
rxu b10b33dac0 Update MOZILLA_ONLINE_ADDON_EXCLUSIONS 2022-12-19 23:39:15 +00:00
MickeyMoz 0c37b85001 Update to Android-Components 110.0.20221219190241. 2022-12-19 20:52:59 +00:00
MickeyMoz 3ace765deb Update to Android-Components 110.0.20221219143418. 2022-12-19 16:41:57 +00:00
AndiAJ f31246de06 For #28182 fix for verifySearchEnginesWithRTLLocale UI test 2022-12-19 16:08:55 +00:00
Arturo Mejia a39ac5a4d1 Bug 1804383 - Save as PDF text is missing in Private Mode 2022-12-19 15:05:06 +00:00
Gabriel Luong 212d32a137
No issue - Bump relbot to 5.0.2 (#28243) 2022-12-19 09:19:46 +00:00
MickeyMoz d37196d89f Update to Android-Components 110.0.20221218234933. 2022-12-19 02:05:20 +00:00
mozilla-l10n-automation-bot 9478a84be7
Import l10n. (#28237) 2022-12-19 00:38:37 +00:00
mozilla-l10n-automation-bot b73b37329e
Import l10n. (#28233) 2022-12-18 01:13:55 +00:00
MickeyMoz 185ea4a81f Update to Android-Components 110.0.20221217143322. 2022-12-17 17:03:14 +00:00
mozilla-l10n-automation-bot 74c48af0dd
Import l10n. (#28228) 2022-12-17 00:39:28 +00:00
MickeyMoz a643553360 Update to Android-Components 110.0.20221216190240. 2022-12-16 21:05:34 +00:00
sarah541 775258db6b Bug 1800700 - Add default search suggest header 2022-12-16 18:06:35 +00:00
Alexandru2909 52b4a1ebfa For #28155 - Show search terms in address bar for both edit and display modes 2022-12-16 16:38:08 +00:00
MickeyMoz 96ed5ecc0d Update to Android-Components 110.0.20221216143118. 2022-12-16 16:38:08 +00:00
DreVla 2e9a6685c4 For #27697 - Load icon for unified search engine immediately.
The engine icon was set after the screen was visible leading to a delay.
With this solution, the icon will be set before the screen is visible
eliminating any visible artefacts.
2022-12-16 08:04:22 +00:00
DreVla 35ab4db755 For #27697 - Load icon for browser and history search immediately.
The icon was set after the screen was visible leading to a flicker.
With this solution, the icon will be set before the screen is visible
eliminating any visible artefacts.
2022-12-16 08:04:22 +00:00
mozilla-l10n-automation-bot 4a0c1e5a8c
Import l10n. (#28218) 2022-12-16 00:38:05 +00:00
MickeyMoz 499385fb9c Update to Android-Components 110.0.20221215190237. 2022-12-15 20:57:21 +00:00
MickeyMoz 28c2b83d4e Update to Android-Components 110.0.20221215143201. 2022-12-15 16:19:49 +00:00
DreVla 60e09709ff For #28013 - Display correct hint for topic specific search engine
Since the search engines are split into two categories, general and
topic specific, the hint for each category is different.
2022-12-15 14:21:49 +00:00
DreVla 7e9b7b9279 For #28090: Show QR scanner when general or custom search engine is selected 2022-12-15 12:47:48 +00:00
AndiAJ d4d814ac25 For #26087 re-enable UI tests disabled due to tabs tray migration to compose 2022-12-15 10:31:57 +00:00
mike a 8d3a691d4e Closes #28205: fix ripple position over unified search icon 2022-12-15 09:55:17 +00:00
oana.horvath c9083280ea Issue #27312: Fallback measure for ETP UI tests and re-enabling them 2022-12-15 09:16:38 +00:00
mozilla-l10n-automation-bot a35bfdc79b
Import l10n. (#28203) 2022-12-15 05:43:21 +00:00
MickeyMoz b4a0ca596e Update to Android-Components 110.0.20221214190352. 2022-12-14 21:26:55 +00:00
Abdul Basit 5d1da3a5bc Closes mozilla-mobile#26733 Language search doesn't reset to full list view anymore 2022-12-14 19:43:42 +00:00
MickeyMoz 4cc8ccb13d Update to Android-Components 110.0.20221214143050. 2022-12-14 16:43:06 +00:00
Arturo Mejia ae25f75ee4 Bug 1797577 - Clear site data when turning off cookie banner handling. 2022-12-14 15:16:14 +00:00
AndiAJ 679cd403e6 For #26286 new verifyUndoRemoveTopSite UI test 2022-12-14 05:21:37 +00:00
mozilla-l10n-automation-bot a24e874c65
Import l10n. (#28191)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-12-14 02:51:04 +00:00
Gabriel Luong 7d15265299 Bug 1804820 - Refactor Versions to FenixVersions 2022-12-14 00:21:55 +00:00
Gabriel Luong 36c06f1276 Bug 1804820 - Refactor Deps to FenixDependencies 2022-12-14 00:21:55 +00:00
mozilla-l10n-automation-bot 6649416dd5
Import l10n. (#28187)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-12-13 19:21:59 +00:00
Arturo Mejia 278e1d301a No issue: Update add-ons collection. 2022-12-13 18:50:02 +00:00
MickeyMoz 622ffd80ac Update to Android-Components 110.0.20221213163249. 2022-12-13 13:20:01 -05:00
AndiAJ 7d0b1e9dd1 For #28165 fix showDefaultHomeScreen screenshot UI test 2022-12-13 16:51:56 +00:00
AndiAJ 3632aab037 For #26087 fix disabled tabMediaControlButtonTest UI test 2022-12-13 14:50:37 +00:00
Alexandru Putanu 4ee62ddfe7
For #26957 - Exit search dialog when interacting with home fragment (#27262)
* Revert "For #26790 - Dismiss search dialog when opening recent bookmark dropdown menu"

This reverts commit 262aa16991.

* Revert "For #26790 - Dismiss search dialog when opening recent visit dropdown menu"

This reverts commit b93b0850

* Revert "For #26790 - Dismiss search dialog when opening recent tab dropdown menu"

This reverts commit 44b71bb590.

* Revert "For #26690 - Dismiss search dialog when opening recent synced tab dropdown menu"

This reverts commit bda817a608.

* For #26957 - Remove code to dismiss search dialog when interacting with homescreen top sites

* For #26957 - Remove code to dismiss search dialog when interacting with homescreen collection

* For #26957 - Remove code to dismiss search dialog when interacting with homescreen recent visits

* For #26957 - Remove code to dismiss search dialog when interacting with homescreen recent tabs

* For #26957 - Remove code to dismiss search dialog when interacting with homescreen recent bookmarks

* For #26957 - Remove code to dismiss search dialog when interacting with pocket stories

* For #26957 - Dismiss search dialog when interacting with home fragment

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-12-13 12:42:05 +00:00
AndiAJ df4e08ff38 For #28170 fix failing mainMenuAddToHomeScreenTest UI test 2022-12-13 11:38:42 +00:00
AndiAJ 78c0b7ec3b For #26286 improve homeThreeDotMenuItemsTest UI test coverage and other refactoring work 2022-12-13 11:38:42 +00:00
AndiAJ 875a339ee7 Create new MatcherHelper object 2022-12-13 11:38:42 +00:00
mozilla-l10n-automation-bot 6bc1d27a7e
Import l10n. (#28178) 2022-12-13 00:54:35 +00:00
Gabriel Luong a09fb7999b For #28161- Refactor mozilla-detekt-rules in detekt.yml to the bottom of the file 2022-12-12 23:44:40 +00:00
MickeyMoz 46a8ed82e4 Update to Android-Components 110.0.20221212191718. 2022-12-12 23:06:56 +00:00
Arturo Mejia 1ea7554026 No issue: Update Cookie banner handling strings 2022-12-12 21:53:33 +00:00
Gabriel Luong c216e3b268 For #28174 - Remove all unused strings marked moz:removedIn <= 107 2022-12-12 20:00:59 +00:00
Jonathan Almeida c3dea0a834 Close #28137: Disable run-build tasks on Pull Requests 2022-12-12 18:39:37 +00:00
Ryan VanderMeulen 7d3784f9cd Update version.txt to 110.0b1 2022-12-12 17:44:53 +00:00
MickeyMoz 0d3f33a751 Update to Android-Components 109.0.20221212145348. 2022-12-12 16:37:28 +00:00
rahulsainani 5a1a6c1b5b Bug 1804690 - Allow emulator to access network of the host machine sidestepping the TLS error on debug channel 2022-12-12 13:25:44 +00:00
AndiAJ 0e88bfad6b For #26286 improve firstRunScreenTest UI test coverage 2022-12-12 07:59:06 +00:00
MickeyMoz 814328427b Update to Android-Components 109.0.20221211143351. 2022-12-11 19:16:43 +00:00
MickeyMoz 70048b810c Update to Android-Components 109.0.20221211031229. 2022-12-11 05:04:35 +00:00
mozilla-l10n-automation-bot bc94d00479
Import l10n. (#28157) 2022-12-10 00:48:38 +00:00
MickeyMoz 38f2f750f0 Update to Android-Components 109.0.20221209143110. 2022-12-09 16:50:59 +00:00
AndiAJ 2d2f4a0346 For #26286 improve verifySearchEnginesWithRTLLocale UI test coverage 2022-12-09 16:06:31 +00:00
oana.horvath 61d052b9d6 New UI test coverage for Toolbar position preference 2022-12-09 14:53:56 +00:00
oana.horvath 49ac79df65 New UI test coverage for Pull to refresh preference 2022-12-09 14:53:56 +00:00
oana.horvath 2c1622650d New UI test coverage for Swipe toolbar preference 2022-12-09 14:53:56 +00:00
oana.horvath b22fe8d3e5 Create a robot and test class for Customize Settings menu 2022-12-09 14:53:56 +00:00
AndiAJ 826cbdbaae For #28069 fix disabled openPocketStoryItemTest UI test 2022-12-09 13:57:21 +00:00
AndiAJ cf70dd11ca No issue: refactor verifyLinkFromClipboardNotDisplayedTest UI test 2022-12-09 09:17:01 +00:00
MickeyMoz 324e0cfac7 Update to Android-Components 109.0.20221209032153. 2022-12-09 05:19:42 +00:00
jeddai fb5e474273 update initial_experiments.json based on the current first-run experiments in experimenter 2022-12-09 01:59:13 +00:00
MickeyMoz f24c978620 Update to Android-Components 109.0.20221208190115. 2022-12-08 21:00:06 +00:00
Noah Bond 21c270bb87 For #28133 - Fix Pocket story category color mismatch 2022-12-08 19:44:46 +00:00
Arturo Mejia cc666c8887 Bug 1797577 - Add cookie banner handling panel to the toolbar. 2022-12-08 18:43:18 +00:00
MickeyMoz e7a7712a6b Update to Android-Components 109.0.20221208144508. 2022-12-08 17:08:25 +00:00
mozilla-l10n-automation-bot 6eaf7d5c51
Import l10n. (#28131) 2022-12-08 14:51:42 +00:00
Mugurell 4298ae9d96 Bug 1804544 - Disable TCP by default in beta and release 2022-12-08 10:02:00 +00:00
MickeyMoz a479ac5b26 Update to Android-Components 109.0.20221208025039. 2022-12-08 00:06:56 -05:00
DreVla f38d5c52f3 For #15348: Voice search option appears for all search engines
Voice search was restricted only for google, with the condition removed
it should appear now for all search engines
2022-12-08 04:58:06 +00:00
mozilla-l10n-automation-bot 3edc91d13d
Import l10n. (#28120) 2022-12-08 00:40:53 +00:00
t-p-white e65209af74 For #28114: Update CFR strings in Private Browsing Mode. 2022-12-07 23:37:31 +00:00
MickeyMoz b962311510 Update to Android-Components 109.0.20221207203046. 2022-12-07 22:07:05 +00:00
MickeyMoz f89ebb8753 Update to Android-Components 109.0.20221207143211. 2022-12-07 16:14:29 +00:00
mozilla-l10n-automation-bot 953f033cfd
Import l10n. (#28107) 2022-12-07 09:25:28 +00:00
mozilla-l10n-automation-bot 342f8138ed
Import l10n. (#28102)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-12-07 01:18:45 +00:00
Zac McKenney 4cd398a0b5 Bug 1804107 - Fix for BaseBrowserFragment toolbar getter null crash and invalidating actions when modifying toolbar 2022-12-07 00:46:00 +00:00
Aaron Train f6a52e9216 For #28098 - Disable openPocketDiscoverMoreTest 2022-12-06 22:48:49 +00:00
Jonathan Almeida 7a8b0a91c0 Bug 1799996 - Speculative fix checks CFRPopup.anchor is attached to window
We're seeing crashes in the Fenix copy of the `CFRPopup` that are
happening when our activity has already been destroyed, and then we are
trying to add a view to it with the WindowManager.

Our guess from looking at the traces are that the
`BrowserToolbarCFRPresenter` is receiving the `collect call on the main
thread, but further down the event loop. As well as the Runnable in
`CFRPopup#show` that is posting to the end event loop - both of these
calls are putting us in a state where the activity we want has already
been destroyed before we get to the moment where we want to use it.

This is a crash that is difficult to synthesize or write a test for.
As a result, our fix is rather speculative but still straight-forward
and safe to uplift, should it work.

There are three remaining follow-ups to do when fix is confirmed:
1. There is a CFRPopup that was upstreamed which is based on the Fenix
   implementation. We should upstream this patch to that component as
   well.
2. We should remove this copy of the CFRPopup and use the upstreamed
   version to avoid confusion between the two copies.
3. With this change, we are now gracefully failing when our users get
   into this state, however our telemtry and onboarding flows are
   unaware that the CFR was never shown.
   We need to to correct telemetry for `TrackingProtection.tcpCfrShown`
   to stop incorrectly reporting false positives and reset our
   `shouldShowTotalCookieProtectionCFR` pref to false so that we can
   try again at the appropriate time.

Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
2022-12-06 22:00:12 +00:00
MickeyMoz 383051eeeb Update to Android-Components 109.0.20221206190339. 2022-12-06 21:27:26 +00:00
Roger Yang 40e4c57ec4 Close #27949: Add Nimbus exposure event for re-engagement notification 2022-12-06 20:36:32 +00:00
priyanka0906 d4303a29c6 For #7924 - added an undo snackbar when a pinned site is removed 2022-12-06 19:12:54 +00:00
MickeyMoz 90d7ee2575 Update to Android-Components 109.0.20221206143258. 2022-12-06 16:35:33 +00:00
mozilla-l10n-automation-bot 54b2dac294
Import l10n. (#28083)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Ryan VanderMeulen <rvandermeulen@mozilla.com>
2022-12-06 14:36:36 +00:00
Alexandru2909 3135062936 For #22770 - Use String.toShortUrl from A-C 2022-12-06 13:03:38 +00:00
Alexandru2909 9361fb1bb8 For #28010 - Update documentation for browser_search_with_ads and browser_search_ad_clicks 2022-12-06 12:20:55 +00:00
DreVla 80a1708d2f For #27753 - Update search engines immediately after changing system language 2022-12-06 10:33:51 +00:00
DreVla 807b0567f9 For #27753 - Update search engines immediately after changing language 2022-12-06 10:33:51 +00:00
Madalin Valceleanu 1b63240f99 Fixed link from clipboard open up from same URL on every new tab #15588 2022-12-06 00:31:05 +00:00
Jeff Boek 0ea57ded11 For mozilla-mobile#17904 - Increases tap area on the add shortcut button 2022-12-05 21:49:33 +00:00
joaopmatos 630edbb709 For #8545 - Change home screen recyclerView height to wrap_content 2022-12-05 21:03:41 +00:00
Perry McManis ce6dd57487 For #28042 - Increase lifetime of customize_home.contile to application 2022-12-05 17:53:41 +00:00
MickeyMoz 39d186b560 Update to Android-Components 109.0.20221205143121. 2022-12-05 16:01:16 +00:00
mozilla-l10n-automation-bot b054222676
Import l10n. (#28060)
Co-authored-by: Ryan VanderMeulen <rvandermeulen@mozilla.com>
2022-12-05 14:16:35 +00:00
oana.horvath 5b61f2ec72 No issue: RTL nav bar UI tests 2022-12-05 13:06:21 +00:00
oana.horvath 2c00a4b587 No issue: disables openPocketStoryItemTest 2022-12-05 11:25:42 +00:00
MickeyMoz c2442e8206 Update to Android-Components 109.0.20221203143207. 2022-12-03 16:09:14 +00:00
mozilla-l10n-automation-bot 70b623ca9f
Import l10n. (#28058) 2022-12-03 14:38:15 +00:00
MickeyMoz 351561a164 Update to Android-Components 109.0.20221202210159. 2022-12-02 23:55:19 +00:00
Zac McKenney b634f0e115 For #27540: Add screen size configuration change handling 2022-12-02 23:14:22 +00:00
Ryan VanderMeulen 3e4f0fabce Update protobuf to version 3.21.10 2022-12-02 15:53:31 +00:00
AndiAJ 181f6b5ffe For #26286 new dismissOnboardingWithPageLoadTest UI test 2022-12-02 09:02:01 +00:00
MickeyMoz a38def3468 Update to Android-Components 109.0.20221202003559. 2022-12-02 02:37:07 +00:00
mozilla-l10n-automation-bot e04b8b77b8
Import l10n. (#28049) 2022-12-02 00:31:48 +00:00
MickeyMoz 301034ac77 Update to Android-Components 109.0.20221201174451. 2022-12-01 19:48:47 +00:00
Rahul Sainani efdb1172ef
For mozilla-mobile#26736 - fix username validation error state (#28017) 2022-12-01 18:43:38 +01:00
mozilla-l10n-automation-bot 68bcf7e872
Import l10n. (#28038) 2022-12-01 01:02:46 +00:00
MickeyMoz 4d5ca81c6b Update to Android-Components 109.0.20221130170727. 2022-11-30 19:23:28 +00:00
MickeyMoz 148fe08f94 Update to Android-Components 109.0.20221129190138. 2022-11-30 01:19:38 +00:00
mozilla-l10n-automation-bot 561b56389b
Import l10n. (#28027) 2022-11-30 00:43:13 +00:00
Roger Yang 322b9ecf73 Close #28021: Add ability to opt in to receiving push notifications on Android 13+ devices 2022-11-29 19:51:51 +00:00
Andrew Halberstadt f42e18a20e Update Taskgraph to version 3.7.0 2022-11-29 18:49:16 +00:00
mozilla-l10n-automation-bot c1afeac743
Import l10n. (#28018)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-11-29 17:27:41 +00:00
MickeyMoz 1b34d74869 Update to Android-Components 109.0.20221129143251. 2022-11-29 11:32:20 -05:00
Alexandru2909 326986b98f For #26708 - Add search widget preview for nightly 2022-11-29 07:40:30 +00:00
mozilla-l10n-automation-bot acc4b8b2d9
Import l10n. (#28007)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-11-29 02:29:57 +00:00
Charlie Humphreys 73d105bd4e update nimbus event for sync sign in
https://dictionary.telemetry.mozilla.org/apps/fenix/metrics/sync_auth_sign_in
2022-11-29 01:29:32 +00:00
Charlie Humphreys f3f98173e6 update override method response to be nullable 2022-11-29 01:29:32 +00:00
Charlie Humphreys 01bc96990c remove extra line 2022-11-29 01:29:32 +00:00
Charlie Humphreys 4dc05644c6 add license headers 2022-11-29 01:29:32 +00:00
Charlie Humphreys e400a8ed8d fix tests and linting 2022-11-29 01:29:32 +00:00
Charlie Humphreys 41f7698bfa remove mavenLocal from repositories 2022-11-29 01:29:32 +00:00
Charlie Humphreys 65a4442d89 update for pr feedback and add sync login event 2022-11-29 01:29:32 +00:00
Charlie Humphreys d8e724218f add Experimentation helper 2022-11-29 01:29:32 +00:00
Charlie Humphreys f709036636 Fixes #27933: record app opened event and add nimbus event test suite 2022-11-29 01:29:32 +00:00
Roger Yang 11efaff96c Close #27949: Add engagement notification for inactive users 2022-11-28 20:08:10 +00:00
MickeyMoz 9b920a472c Update to Android-Components 109.0.20221128143301. 2022-11-28 16:16:45 +00:00
DreVla f681171720 For #27896 - Match share sheet header style with the rest
"Send to device" share sheet header is now styled to match the other headers.
2022-11-28 12:04:26 +00:00
mcarare 171a2e6522 For #26633: Add post notifications permission. 2022-11-28 08:37:30 +00:00
MickeyMoz 4f5165d1da Update to Android-Components 109.0.20221127143308. 2022-11-28 01:16:30 +00:00
mozilla-l10n-automation-bot c4b9983bfb
Import l10n. (#27991) 2022-11-28 00:42:30 +00:00
mozilla-l10n-automation-bot fb0db11265
Import l10n. (#27981) 2022-11-27 00:39:25 +00:00
MickeyMoz 093918da60 Update to Android-Components 109.0.20221125143304. 2022-11-25 16:48:52 +00:00
mozilla-l10n-automation-bot 2d04c13c5c
Import l10n. (#27970) 2022-11-25 00:40:03 +00:00
AndiAJ 53d0a50973 For #26286 new verifyPocketLearnMoreLinkTest UI test 2022-11-24 19:00:12 +00:00
AndiAJ e0cc64a13a For #26286 new selectStoriesByTopicItemTest UI test 2022-11-24 19:00:12 +00:00
AndiAJ 12c01ff4f9 For #26286 new openPocketDiscoverMoreTest UI test 2022-11-24 19:00:12 +00:00
AndiAJ 808884f625 For #26286 new openPocketStoryItemTest UI test 2022-11-24 19:00:12 +00:00
AndiAJ d014295eaa For #26286 improve coverage for verifyPocketHomepageStoriesTest UI test 2022-11-24 19:00:12 +00:00
AndiAJ cf0cf784eb For #26286 new verifyJumpBackInSectionTest UI test 2022-11-24 19:00:12 +00:00
AndiAJ c86c917cce For #26286 refactor homeScreenItemsTest UI test 2022-11-24 19:00:12 +00:00
MickeyMoz 38a1c4a357 Update to Android-Components 109.0.20221124143318. 2022-11-24 17:06:17 +00:00
James Hugman 5606e72872 Use NimbusBuilder from AppServices/AndroidComponents 2022-11-24 15:42:04 +00:00
AndiAJ 79d99a819b For #27966 disable verifySponsoredShortcutsSponsorsAndPrivacyOptionTest UI test 2022-11-24 14:55:30 +00:00
mcarare 216cb7233d For #27536: Update Jetpack Compose to latest version. 2022-11-24 13:39:16 +00:00
oana.horvath 8e09d2a023 No issue: Adding new start on homepage setting UI test 2022-11-24 12:34:41 +00:00
mozilla-l10n-automation-bot b2ef07bb10
Import l10n. (#27962)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-11-24 02:16:08 +00:00
Ryan VanderMeulen 3847ded1ba Update Sentry to version 6.8.0 2022-11-24 01:45:34 +00:00
MickeyMoz 8eb853db19 Update to Android-Components 109.0.20221123190051. 2022-11-23 21:37:58 +00:00
MatthewTighe 1fd2bab054 For #27950: add first week days of use growth data 2022-11-23 19:37:21 +00:00
MickeyMoz bca7ecc7d6 Update to Android-Components 109.0.20221123143300. 2022-11-23 16:25:40 +00:00
Arturo Mejia 9bf17f1a6a Disable cookie banner handling by default. 2022-11-23 09:43:15 -05:00
mcarare 415849f09d Use blank string instead of empty string for version name fallback in release variants.
App version name cannot be empty or null in SDK 33 PackageInfo.
2022-11-23 10:11:33 +00:00
mozilla-l10n-automation-bot 03ca41b0a8
Import l10n. (#27954) 2022-11-23 00:30:37 +00:00
Jocelyne 0631941e17 Closes #27288: Remove glean test rule and Android test runner from WallpaperUseCasesTest 2022-11-22 23:16:13 +00:00
PrashantSaroj eb9df51de6 Closes #27290 - Refactor DefaultLoadBitmapUseCase to receive orientation and files directory as argument 2022-11-22 19:09:56 +00:00
MickeyMoz 6a4cfe6777 Update to Android-Components 109.0.20221122143037. 2022-11-22 16:41:47 +00:00
mozilla-l10n-automation-bot 1a42fdd199
Import l10n. (#27940)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-11-22 01:08:18 +00:00
BFadairo 71bc9eb4f7 Closes #27854: Remove unnecessary Theme.getTheme() calls from FirefoxTheme usages 2022-11-22 00:13:35 +00:00
Arturo Mejia 4610fb2186 Update to Android-Components 109.0.20221121201219 2022-11-21 22:09:29 +00:00
James Hugman 5d2cf6f6b6 Fixup breaking change for application-services 96.0.0 2022-11-21 22:09:29 +00:00
Jonathan Almeida 6d9808a067 Close #26320: Make Nimbus first-startup comments clear in FenixApplication 2022-11-21 19:32:14 +00:00
Jonathan Almeida fc8b6788d3 Bug 1796146 - Update l10n descriptions for Cookie Banner protection 2022-11-21 19:00:39 +00:00
MickeyMoz e1f6122850 Update to Android-Components 109.0.20221121143245. 2022-11-21 17:03:51 +00:00
Mugurell 9671d0a638 For #27228 - Resume qr scanning if camera permission is changed
If permissions are changed the app process is restarted with the same
happening for the previously running app components.
SearchDialogFragment used for searches will check if qr scanning was in
progress and resume if needed.
PairFragment used for signing-in will start scanning on itself.

Android-Components will avoid resuming the scan functionality if the camera
permission is missing and so allow to request the permission again without the
camera permission related system calls causing issues.
2022-11-21 15:22:24 +00:00
Alexandru2909 43612486e4 For #27885 - Change default browser notification delay to 72 hours 2022-11-21 13:06:44 +00:00
MickeyMoz 592d19f4b6 Update to Android-Components 109.0.20221120190220. 2022-11-20 20:45:37 +00:00
mozilla-l10n-automation-bot c3705b3b1f
Import l10n. (#27910) 2022-11-20 00:35:52 +00:00
MickeyMoz 26361ce4f7 Update to Android-Components 109.0.20221119143258. 2022-11-19 16:23:18 +00:00
MickeyMoz 63a5171718 Update to Android-Components 109.0.20221118221738. 2022-11-19 01:17:50 +00:00
mozilla-l10n-automation-bot 8c736129b6
Import l10n. (#27904) 2022-11-19 00:33:41 +00:00
MickeyMoz 07c6a6f24e Update to Android-Components 109.0.20221118190312. 2022-11-18 21:13:59 +00:00
MickeyMoz 69e5ea8951 Update to Android-Components 109.0.20221118143430. 2022-11-18 16:03:08 +00:00
mozilla-l10n-automation-bot 78fc99ebfb
Import l10n. (#27890) 2022-11-18 00:36:29 +00:00
MickeyMoz df500666d7 Update to Android-Components 109.0.20221117204150. 2022-11-17 22:31:57 +00:00
James Hugman b3ec3062cc Fixes: #26320 Reorganize Nimbus Startup 2022-11-17 21:00:48 +00:00
Noah Bond 79521d692b For #27852 - Set BrowsingMode to Normal when selecting a wallpaper 2022-11-17 18:25:55 +00:00
MickeyMoz e99d9a5ccc Update to Android-Components 109.0.20221117143310. 2022-11-17 16:57:50 +00:00
oana.horvath d3dfbeb1a0 For #27704: Disable search group tests 2022-11-17 14:48:59 +00:00
Mugurell f81efb17c0 For #27346 - Disable swiping to switch tabs when fullscreen 2022-11-17 06:59:45 +00:00
MickeyMoz ebfcf11f9c Update to Android-Components 109.0.20221117001233. 2022-11-17 02:33:05 +00:00
mozilla-l10n-automation-bot 9ff56968cb
Import l10n. (#27871) 2022-11-17 00:35:58 +00:00
mcarare 7c7028844e For #25808: Re-enable UI media notification tests. 2022-11-16 22:11:43 +00:00
MickeyMoz 4b4875adeb Update to Android-Components 109.0.20221116192746. 2022-11-16 21:40:40 +00:00
DreVla 868a63a91a For #27801 - Update header text for the search selector menu 2022-11-16 21:00:20 +00:00
Noah Bond 3f3f508b2b For #27457 - Refactor Pocket category colors 2022-11-16 20:13:34 +00:00
Noah Bond 0609475ede For #27457 - Refactor Pocket category colors 2022-11-16 20:13:34 +00:00
mcarare 9a52bbcc3d For #25808: Temporary disable UI media notification tests.
Locally, on some devices, these tests pass.
Also, with devices on which the test fail, on mirroring the tests in real app usage the notification closes on tab close.
2022-11-16 17:30:51 +00:00
mcarare de8b990e8a Update to Android-Components 109.0.20221116143121 2022-11-16 17:30:51 +00:00
mcarare 0884a178ef For #25808: Fix failing 'process make_default_browser deep link for API 23 and below' test. 2022-11-16 17:30:51 +00:00
mcarare d9b2c6e5e1 For #25808: Handle PackageManager methods deprecation in UI tests. 2022-11-16 17:30:51 +00:00
mcarare 3472933c37 For #25808: Suppress deprecations in tests. 2022-11-16 17:30:51 +00:00
mcarare 5ddeba154c For #25808: Suppress onBackPressed deprecation. 2022-11-16 17:30:51 +00:00
mcarare 2e9fd871d6 Update to Android-Components 109.0.20221116053804. 2022-11-16 17:30:51 +00:00
mcarare ca46f2f07e For #25808: Remove unnecessary safe call. 2022-11-16 17:30:51 +00:00
mcarare 0b2fe605ce For #25808: Handle PackageManager methods deprecation. 2022-11-16 17:30:51 +00:00
mcarare 324b29cca7 For #25808: Handle get(String) deprecation. 2022-11-16 17:30:51 +00:00
mcarare a4b858e90f For #25808: Update URLStringUtils package path. 2022-11-16 17:30:51 +00:00
mcarare c5af10fac0 For #25808: Remove unnecessary elvis operator. 2022-11-16 17:30:51 +00:00
mcarare 87ed4e4c56 For #25808: Handle onBackPressed() deprecation. 2022-11-16 17:30:51 +00:00
mcarare e057bb4514 For #25808: Link only URLs in library descriptions.
Linkify.ALL is deprecated.
2022-11-16 17:30:51 +00:00
mcarare 8c0c9af65b For #25808: Update method signature for GestureDetector.SimpleOnGestureListener 2022-11-16 17:30:51 +00:00
mcarare 5feedd38c2 For #25808: Update method signature for AnimatorListenerAdapter. 2022-11-16 17:30:51 +00:00
mcarare 40fbcb6e9e For #25808: Update method signatures for View.OnAttachStateChangeListener 2022-11-16 17:30:51 +00:00
mcarare 0189958bff For #25808: Handle a11y obtain() methods deprecations. 2022-11-16 17:30:51 +00:00
mcarare 8638fa3ba3 For #25808: Update method signature for View.AccessibilityDelegate. 2022-11-16 17:30:51 +00:00
mcarare c947fa07bf For #25808: Fix smart cast exception. 2022-11-16 17:30:51 +00:00
mcarare ef96a08a55 For #25808: Build with compileSdkVersion for Android 13 / API 33. 2022-11-16 17:30:51 +00:00
Mugurell a71aad1702 For #26826 - Add test tags allowing to differentiate Pocket stories 2022-11-16 10:11:45 +00:00
oana.horvath 537c296f63 For #27220: replaces manually deleting a file with deleting storage programmatically. 2022-11-16 09:05:46 +00:00
Arturo Mejia cca309e0e6 Improve site permissions 2022-11-16 03:28:25 +00:00
MickeyMoz 9a47aa3ac9 Update to Android-Components 109.0.20221115235215. 2022-11-16 03:28:25 +00:00
rxu fd716ddbe3 Add distribution_id in baseline ping 2022-11-16 02:24:12 +00:00
mozilla-l10n-automation-bot 5c0dcda19e
Import l10n. (#27856) 2022-11-16 00:34:30 +00:00
Jonathan Almeida 840c91d9e8 Close #26475: Remove more feature flags 2022-11-15 22:06:01 +00:00
Michelle Goossens a343d60478 Bug 1799910 - Migrate fenix from AWS to GCP 2022-11-15 16:20:52 -05:00
owlishDeveloper 8589aec0a0 Bug 1796146 - Add UI for the Cookie Banner preferences 2022-11-15 19:42:54 +00:00
kl3jvi c87589bef2 For #27575: Add String.toHexColor extension 2022-11-15 19:11:57 +00:00
MickeyMoz 1a5443167d Update to Android-Components 109.0.20221115143228. 2022-11-15 17:45:08 +00:00
Alexander Gramiak 48288f0198 For #21414: Use MenuProvider and MenuHost interface methods
onPrepareOptionsMenu was not being called on invalidateOptionsMenu,
which led to the saveButton being left enabled even with invalid
hostnames, usersnames, and passwords.
2022-11-15 15:12:08 +00:00
mcarare c67bbb3e03 For #27538: Return null for clipboard text longer than MAX_URI_LENGTH.
This avoids extra processing of large text that is unlikely to be an URL.
2022-11-15 09:42:56 +00:00
MickeyMoz be7c0ba401 Update to Android-Components 109.0.20221114224659. 2022-11-15 01:42:01 +00:00
mozilla-l10n-automation-bot 76159bcbba
Import l10n. (#27835)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-11-15 01:08:35 +00:00
MatthewTighe b2c89763f1 Remove all unused strings marked moz:removedIn <= 106 2022-11-15 00:32:58 +00:00
Roger Yang 5222d2bd8b Close #27795: Add metrics ping to see if user allows notifications 2022-11-15 00:00:31 +00:00
Gabriel Luong 20b396e0cd For #26475 - Remove unnecessary features flags 2022-11-14 22:31:55 +00:00
MickeyMoz d5459de3b5 Update to Android-Components 108.0.20221114190357. 2022-11-14 21:32:11 +00:00
mike a 7c4050eb08 Closes #25809: tapping on search engine triggers engine selection 2022-11-14 20:47:03 +00:00
dsmithpadilla 74ff3f4c51 Update version.txt to 109.0b1 2022-11-14 20:16:48 +00:00
MickeyMoz 004158028e Update to Android-Components 108.0.20221114143121. 2022-11-14 16:17:05 +00:00
Julien Cristau aa7e56d036
Update mergify queue conditions to account for update-nimbus-experiments PRs (#27774)
The update-nimbus-experiments workflow creates PRs that don't schedule a
`complete-pr` task (because the github-actions bot is untrusted), but in this
case we have a `complete-push` task which is good enough.
2022-11-14 11:17:40 +01:00
mozilla-l10n-automation-bot 9113bdb513
Import l10n. (#27821) 2022-11-14 00:42:02 +00:00
MickeyMoz 98df4b87e6 Update to Android-Components 108.0.20221113143151. 2022-11-13 15:46:18 +00:00
mozilla-l10n-automation-bot ae751dd574
Import l10n. (#27817) 2022-11-13 00:40:06 +00:00
MickeyMoz 3d1e6b4eea Update to Android-Components 108.0.20221112143158. 2022-11-12 16:15:26 +00:00
mozilla-l10n-automation-bot 2aa79d30d2
Import l10n. (#27811) 2022-11-12 00:36:43 +00:00
Ryan VanderMeulen 669b8fc043 Update leakcanary to version 2.10 2022-11-11 19:54:31 +00:00
MickeyMoz c779c36f65 Update to Android-Components 108.0.20221111143147. 2022-11-11 16:05:04 +00:00
Alexander Gramiak fbea76df74 No issue: Remove deprecated gradle property
This fixes the following build warning with no behavior change:

WARNING:The option 'android.enableUnitTestBinaryResources' is deprecated.
The current default is 'false'.
It has been removed from the current version of the Android Gradle plugin.
The raw resource for unit test functionality is removed.
2022-11-11 03:53:14 +00:00
mozilla-l10n-automation-bot cdabd25cd8
Import l10n. (#27805) 2022-11-11 00:40:17 +00:00
Roger Yang be63c162b0 Close #27779: Add telemetry for showing the default browser notification 2022-11-10 19:07:33 +00:00
Aaron Train 7c92420690 For #27799: Upgrade AndroidX Test Depdencies 2022-11-10 18:10:07 +00:00
MickeyMoz a60a4c5bc9 Update to Android-Components 108.0.20221110143111. 2022-11-10 16:12:24 +00:00
Mugurell 18d51d9ce2 For #27549 - Collect shim data about the Pocket sponsored stories.
With the new telemetry will immediately report when a certain Pocket sponsored
story is shown (visible more than 50%) or clicked by the user.
The reasons for the new ping help easily identify the probe being sent and the
type of shim data.
2022-11-10 14:38:59 +00:00
mcarare 573e320708 No issue: Make the Startup profiling hints clearer. 2022-11-10 08:15:04 +00:00
mozilla-l10n-automation-bot 786358c7dd
Import l10n. (#27787) 2022-11-10 00:38:09 +00:00
MatthewTighe 3c9ba2bbaa For #27782: add first URI load growth data 2022-11-09 22:48:05 +00:00
MatthewTighe 5947344dd2 For 27768: add FirstAppOpenForDay growth data 2022-11-09 22:48:05 +00:00
mergify 6b89c28604 update initial_experiments.json based on the current first-run experiments in experimenter 2022-11-09 14:35:59 -05:00
AndiAJ 8fa230a78e For #27714 fix disabled sponsored shortcut UI tests 2022-11-09 18:40:55 +00:00
Alexander Gramiak ba5ee133dc For #27734: Make tab tray overflow menu background layer2
This matches with the toolbar overflow menu.
2022-11-09 18:15:04 +00:00
Alexander Gramiak df2458002b For #27715: Allow FirefoxColors.copy to override some values
This helps to reduce theme color duplication, making it easier to see
which parameters differ.

This also brings FirefoxColors closer to the upstream Compose Material
Colors class.
2022-11-09 17:17:48 +00:00
MickeyMoz f814c7c0f3 Update to Android-Components 108.0.20221109144837. 2022-11-09 11:42:38 -05:00
Mugurell af8e364381 For #26826 - Add test tags for the recent bookmarks section. 2022-11-09 16:38:04 +00:00
Mugurell 0924de7753 For #26826 - Add test tags for the recent visits section. 2022-11-09 16:38:04 +00:00
Mugurell 5102adc001 For #26826 - Add test tags for the recent tabs section. 2022-11-09 16:38:04 +00:00
Mugurell f8c0ad0e59 For #26826 - Add test tags for the Pocket section 2022-11-09 16:38:04 +00:00
oana.horvath f8124ffb28 For #27522: Re-enabled and added search group UI tests 2022-11-09 16:03:54 +00:00
mozilla-l10n-automation-bot 55185dcca9
Import l10n. (#27769)
Co-authored-by: dsmithpadilla <88508950+dsmithpadilla@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-11-09 06:59:31 +00:00
Jonathan Almeida 706a73ea3e Issue #27759: Add link to storageMaintenance flag 2022-11-09 06:25:42 +00:00
mergify 945019e07c update initial_experiments.json based on the current first-run experiments in experimenter 2022-11-09 00:58:38 -05:00
github-actions[bot] e483644de6
Update to Android-Components 108.0.20221108190330. (#27761)
Co-authored-by: MickeyMoz <sebastian@mozilla.com>
Co-authored-by: dsmithpadilla <88508950+dsmithpadilla@users.noreply.github.com>
2022-11-09 00:07:24 -05:00
Jonathan Almeida 81f513e357 Bug 1798805 - Initialize the FxaPushSupportFeature
We added the new `initialize` to explicitly make the call to start the
feature but we never actually used it here after it landed.
2022-11-08 17:45:40 -05:00
Roger Yang 5af08cd72c Close #27023: Add capability to override telemetry URL using local properties 2022-11-08 18:13:52 +00:00
MickeyMoz d7e40b2a0c Update to Android-Components 108.0.20221108143336. 2022-11-08 16:40:57 +00:00
AndiAJ 39937f51c9 For #27392 fix flaky verifyAboutFirefoxPreview UI test 2022-11-08 10:03:50 +00:00
MickeyMoz 00327bb4e4 Update to Android-Components 108.0.20221108031613. 2022-11-08 05:00:42 +00:00
Ben Dean-Kawamura 70e740f23e Updating the code to work with application-services v95.0.0
This required updating the code to handle the new app-services error
hierarchy.
2022-11-08 05:00:42 +00:00
mozilla-l10n-automation-bot 78bedb9f3c
Import l10n. (#27749)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-11-08 01:14:05 +00:00
MatthewTighe 2bccb86a9b For #27698: add set as default growth data 2022-11-07 19:04:46 -05:00
Noah Bond c59b0845a0 For #27746 - Move top sites text outside of backplating 2022-11-07 22:52:45 +00:00
Noah Bond 82fb016098 Revert "For #26606 - Add backplating to Top Sites 2022-11-07 22:52:45 +00:00
MickeyMoz 9524ab4845 Update to Android-Components 108.0.20221107190113. 2022-11-07 20:36:58 +00:00
Alexander Gramiak 3c0aaa75c0 For #27511: Remove duplicate padding update code
This padding update is already performed in FenixSnackbar.make when
isDisplayedWithBrowserToolbar is true, and that variable has no other
side-effects, so simply use that code.
2022-11-07 18:47:12 +00:00
mozilla-l10n-automation-bot ac64ec9eff
Import l10n. (#27741)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-11-07 17:55:55 +00:00
Gregory Mierzwinski bfc385ffce Bug 1793823 - Disable perf tests running on P2. 2022-11-07 17:25:35 +00:00
MickeyMoz c2dbba996a Update to Android-Components 108.0.20221107143052. 2022-11-07 16:03:55 +00:00
mozilla-l10n-automation-bot 3b85861a0c
Import l10n. (#27736) 2022-11-07 00:32:22 +00:00
MickeyMoz c9bebbc4f9 Update to Android-Components 108.0.20221106143258. 2022-11-06 16:01:00 +00:00
mozilla-l10n-automation-bot 61dc36be9f
Import l10n. (#27727) 2022-11-06 00:40:30 +00:00
MickeyMoz 8a38f84bd0 Update to Android-Components 108.0.20221105143131. 2022-11-05 16:01:12 +00:00
mozilla-l10n-automation-bot dae5265c40
Import l10n. (#27717) 2022-11-05 00:38:51 +00:00
MickeyMoz 56cd0e9022 Update to Android-Components 108.0.20221104182737. 2022-11-04 20:16:28 +00:00
AndiAJ 03602239bd For #26710 fix flaky deleteCookiesTest UI test 2022-11-04 16:36:12 +00:00
Gabriel Luong 5410be0e8c For #27667 - Update the commit sha in .git-blame-ignore-revs 2022-11-04 07:36:58 +00:00
Alexandru2909 f10634e593 For #27252 - Update a11y services label for private browsing myths button 2022-11-04 06:57:56 +00:00
mozilla-l10n-automation-bot 61b7815e08
Import l10n. (#27701) 2022-11-04 00:42:32 +00:00
Gabriel Luong 9654b4dfb1 For #27667 - Remove import-ordering from the list of disabled ktlint rules 2022-11-03 23:27:03 +00:00
Noah Bond 1b89abdf3e For #27469 - Update no collections button colors when a wallpaper is selected 2022-11-03 22:35:56 +00:00
Noah Bond 07e461390b For #27468 - Backplate homepage MessageCard 2022-11-03 22:05:47 +00:00
Alexandru2909 62b65d3a57 For #27691 - Replace 'Pocket' word in all strings with placeholder 2022-11-03 20:30:37 +00:00
perrymcmanis144 90d0d9a7c5 Update app/metrics.yaml
Co-authored-by: Alessio Placitelli <alessio.placitelli@gmail.com>
2022-11-03 15:56:09 -04:00
Perry McManis c4b4f07a25 added search metrics to baseline ping 2022-11-03 15:56:09 -04:00
kycn dda6719c32 Close #7227: Re-enable storage maintenance call.
Re-enable storage maintenance call by introducing WorkManager worker on A-C side and consuming it from Fenix.
The work request is periodic and the repeat interval is 24h. It requires the device to be idle and not to have
low battery. This feature is available only for Nightly for now.
2022-11-03 19:04:58 +00:00
MickeyMoz 408d15af9b Update to Android-Components 108.0.20221103143443. 2022-11-03 16:33:12 +00:00
AndiAJ 035305ceb2 For #27220 disable failing manageDownloadsInDownloadsMenuTest UI test 2022-11-03 15:48:12 +00:00
t-p-white 6228dad8e4 For #27472 - Added telemetry data points for the Google Play Store review prompts 2022-11-03 14:57:54 +00:00
Jonathan Almeida ef2af26b69 Bug 1795105: Remove usages of ContentState.thumbnail 2022-11-03 13:56:42 +00:00
Alexandru2909 ee0bff886a For #25814 - Hide "Show search engines" toggle from search settings when unified search is enabled 2022-11-03 08:36:25 +00:00
mozilla-l10n-automation-bot 3a41b00e36
Import l10n. (#27679) 2022-11-03 00:36:18 +00:00
MickeyMoz cd5923f669 Update to Android-Components 108.0.20221102215151. 2022-11-02 23:20:50 +00:00
Noah Bond c89a0d20ef For #27578 - Add optional color parameters to MessageCard 2022-11-02 22:16:21 +00:00
MickeyMoz c18972c29d Update to Android-Components 108.0.20221102190107. 2022-11-02 21:30:30 +00:00
Ryan VanderMeulen ac1393e640 Update Adjust to version 4.33.0 2022-11-02 18:34:17 +00:00
DreVla 27c34cecbf For #27635 - New telemetry for Save to PDF failures 2022-11-02 17:19:42 +00:00
MickeyMoz 063f00ca95 Update to Android-Components 108.0.20221102143037. 2022-11-02 12:42:41 -04:00
Christian Sadilek 1dbee2291b Closes #27652: Fix A-C auto publish docs in README 2022-11-02 12:41:07 -04:00
Gabriel Luong 03e6ac04e8 For #27656 - Add a Fenix prefix to GitHub actions 2022-11-02 16:00:10 +00:00
AndiAJ 7d2f18b314 For #27522 new search codes UI tests 2022-11-02 15:02:30 +00:00
oana.horvath e9ef7c2546 Issue #27522: Search groups tests refactoring 2022-11-02 09:33:26 +00:00
Alexandru2909 4047d97ad6 For #25813 - Use specific hint for history, bookmarks and tab unified search 2022-11-02 08:21:19 +00:00
mozilla-l10n-automation-bot c75efe35b3
Import l10n. (#27654)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-11-02 00:58:21 +00:00
Arturo Mejia 3c70d237d8 Bug 1796482 - Report save to PDF errors. 2022-11-02 00:10:21 +00:00
MickeyMoz 1b9a86bfaa Update to Android-Components 108.0.20221101212406. 2022-11-01 23:06:39 +00:00
MickeyMoz d30753ccef Update to Android-Components 108.0.20221101190054. 2022-11-01 21:19:16 +00:00
Roger Yang d9d855685e Close #27023: Add capability to override telemetry URL 2022-11-01 20:26:26 +00:00
Noah Bond 79f0ce4cd3 For #27331 - Add migration for Turning Red wallpaper card colors 2022-11-01 19:55:20 +00:00
Noah Bond a44d9ff8d9 For #27485 - Replace `Button` in `CustomizeHomeButtonViewHolder` with `TertiaryButton` 2022-11-01 19:26:26 +00:00
Noah Bond 8857073e5b For #27485 - Add optional overrides for the colors in `Button` Composables 2022-11-01 19:26:26 +00:00
Noah Bond 0933f901fc For #27579 - Fix broken previews for MessageCard 2022-11-01 18:56:58 +00:00
Alexandru2909 62a661ab97 For #26911 - Allow users to enable re-supported Fennec extensions 2022-11-01 17:13:24 +00:00
dsmithpadilla 90b8d339e1 Update to Android-Components 108.0.20221101143225
AC version off the new firefox-android repo
2022-11-01 17:13:24 +00:00
Mugurell 50c8e56bd2 For #27627 - Check the TCP CFR status lazily
Use lazyFeatureFlagPreference as a quick small way to avoid a race between
initializing the value and the Nimbus initialization based on which the value
should be calculated.
This is the same flow that the other MR experiments use.
2022-11-01 14:13:43 +00:00
DreVla bc76907605 For #10344 - Enable tab reordering in beta/release 2022-11-01 12:11:42 +00:00
AndiAJ a5c1c578bd For #27522 remove shortcutButtonTest UI test and unused SearchRobot functions 2022-11-01 11:27:31 +00:00
AndiAJ 307460c3c3 For #27522 refactor shortcutSearchEngineSettingsTest to setDefaultSearchEngineFromShortcut 2022-11-01 11:27:31 +00:00
AndiAJ 9c46639331 For #27522 new toggleSearchEnginesShortcutListTest UI test 2022-11-01 11:27:31 +00:00
AndiAJ 3efd1dc9f2 For #27522 new verifySearchEnginesWithRTLLocale UI test 2022-11-01 11:27:31 +00:00
AndiAJ 418302dbfa For #27522 new changeSearchEnginesBasedOnTextTest UI test 2022-11-01 11:27:31 +00:00
Alexandru2909 97f3a1fd8a For #25811 - Add header to unified search engine menu 2022-11-01 09:20:29 +00:00
iorgamgabriel 5ae0ed3830 For #27450 Fix Crash from Navigation action/destination org.mozilla.firefox:id/action_savedLoginsAuthFragment_to_loginsListFragment 2022-11-01 07:36:41 +00:00
AndiAJ 7ac5674e81 For #26934 fix showDefaultHomeScreen screenshot test 2022-11-01 06:21:35 +00:00
mozilla-l10n-automation-bot f0cc6e071e
Import l10n. (#27631) 2022-11-01 00:44:40 +00:00
Harrison Oglesby e052493cd5
For #27459 - Add divider composable (#27544) 2022-10-31 12:36:41 -07:00
MickeyMoz 400fc98d35 Update to Android-Components 108.0.20221031143305. 2022-10-31 16:19:42 +00:00
MickeyMoz ef79099e97 Update to Android-Components 108.0.20221031113629. 2022-10-31 13:36:51 +00:00
AndiAJ a16e6ce102 For #27522 new delete all search engines UI test 2022-10-31 10:03:13 +00:00
AndiAJ c47986e742 For #27522 new delete default search engine UI test 2022-10-31 10:03:13 +00:00
AndiAJ 29f1356cdf For #27522 new undo delete search engine UI test 2022-10-31 10:03:13 +00:00
mozilla-l10n-automation-bot d027b47d3e
Import l10n. (#27618) 2022-10-31 00:36:41 +00:00
MickeyMoz 4768aa2599 Update to Android-Components 108.0.20221030143256. 2022-10-30 16:04:35 +00:00
mozilla-l10n-automation-bot cb12f20cc9
Import l10n. (#27612) 2022-10-30 00:39:19 +00:00
MickeyMoz 9f8216d654 Update to Android-Components 108.0.20221029143054. 2022-10-29 16:11:53 +00:00
MickeyMoz 5d3f2ad5c5 Update to Android-Components 108.0.20221029010307. 2022-10-29 02:29:14 +00:00
mozilla-l10n-automation-bot db31b3e2fb
Import l10n. (#27606) 2022-10-29 00:37:13 +00:00
Aaron Train 703d9ba466 Update Google Cloud SDK Version in ui-tests Dockerfile
203 -> 407

https://cloud.google.com/sdk/docs/release-notes
2022-10-28 18:50:04 +00:00
Arturo Mejia 3fe88c05b2 Bug 1780639 - let Save as PDF ride the trains. 2022-10-28 18:19:36 +00:00
oana.horvath c528c371d5 For #27522: New search settings UI tests coverage 2022-10-28 17:43:16 +00:00
MickeyMoz 1da0d91ed9 Update to Android-Components 108.0.20221028143126. 2022-10-28 12:41:50 -04:00
iorgamgabriel 1362ec6b66 For #27524 Set as default browser toggle get set to true after user select Fenix as default browser 2022-10-28 07:59:32 +00:00
Gabriel Luong 9a4d4c1371 For #27584 - Replace Button in RecentSyncedTab with SecondaryButton 2022-10-28 07:00:19 +00:00
MickeyMoz 75460afc10 Update to Android-Components 108.0.20221028000535. 2022-10-28 02:17:15 +00:00
mozilla-l10n-automation-bot b67fb6573e
Import l10n. (#27581) 2022-10-28 00:39:09 +00:00
Alexander Gramiak f352a4f9dc For #27269: Use parentFile method over substring extraction
This fixes gradle tests on Windows, where the file separator is "\"
and not "/".
2022-10-27 22:54:18 +00:00
Roger Yang 35e0afe329 Close #24613: Remove history improvement feature flag 2022-10-27 21:30:45 +00:00
Ryan VanderMeulen e8ef439469 Update Sentry to 6.6.0 2022-10-27 20:58:18 +00:00
chettas 5f51a62424 For #27336: Combine Google package name regex 2022-10-27 19:57:34 +00:00
MickeyMoz 5e44259f17 Update to Android-Components 108.0.20221027143133. 2022-10-27 18:08:05 +00:00
Alexander Gramiak 5c2679006d Add and update tests for login address view holder 2022-10-27 17:36:28 +00:00
Alexander Gramiak 9fd2d20310 For #16162: Simplify site addresses in saved logins view
This is what Firefox Desktop does.
2022-10-27 17:36:28 +00:00
t-p-white 0c13a5aa5d For #27455 - Rename all reference names to `AppStore` as appStore 2022-10-27 16:57:38 +00:00
mozilla-l10n-automation-bot 7d39494c06
Import l10n. (#27566)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-10-27 15:10:04 +00:00
ohall-m 02d4da00d6 For #27458: Add AD_ID Permission
Added AD_ID Permission to Manifest for Android 13.
2022-10-27 14:43:13 +00:00
MickeyMoz 2f34e8f8cd Update to Android-Components 108.0.20221026223604. 2022-10-27 03:04:56 +00:00
mozilla-l10n-automation-bot 1255319747
Import l10n. (#27558) 2022-10-27 02:31:25 +00:00
MickeyMoz ba02e745b2 Update to Android-Components 108.0.20221026190101. 2022-10-26 20:32:11 +00:00
Noah Bond f4e7471aea For #26520 - Color homepage cards via wallpaper card colors 2022-10-26 17:41:11 +00:00
MickeyMoz 374bff84c4 Update to Android-Components 108.0.20221026143138. 2022-10-26 17:07:37 +00:00
mozilla-l10n-automation-bot e9387e50d4
Import l10n. (#27553) 2022-10-26 16:32:14 +00:00
Roger Yang 489548b0de For #11404 - Add 'Open all' options in bookmarks
* Add "Open all in new tabs" options in bookmarks
* Add "Open all in private tabs" options in bookmarks
* Add metrics tracking if the usage of "Open all in..." in bookmarks

Co-authored-by: Pg <pg.developper.fr@gmail.com>
2022-10-26 14:17:28 +00:00
mozilla-l10n-automation-bot adb9cfbb24
Import l10n. (#27546) 2022-10-26 00:37:04 +00:00
mcarare 6913cd59c9 For #27541: Update AndroidX Annotation to latest version.
Add AndroidX Annotation as a direct dependency to app build.gradle.
Update imports for annotations moved to Companion Object.
2022-10-25 19:15:08 +00:00
MickeyMoz 919c40e407 Update to Android-Components 108.0.20221025143110. 2022-10-25 16:26:17 +00:00
Roger Yang 6237b26e36 No issue: Update data renewal request script 2022-10-25 15:32:49 +00:00
MickeyMoz 5a0b85fad2 Update to Android-Components 108.0.20221025010754. 2022-10-25 02:55:24 +00:00
MickeyMoz 722ea2b559 Update to Android-Components 108.0.20221024190111. 2022-10-24 21:01:39 +00:00
Timshel 814f87f9f3 For #26577 - resetFocus only when camera permission is denied 2022-10-24 18:50:17 +00:00
MickeyMoz 7ceb931940 Update to Android-Components 108.0.20221024143125. 2022-10-24 17:20:54 +00:00
AndiAJ 7ea69a43ab For #26286 new external links UI tests 2022-10-24 14:47:02 +00:00
AndiAJ 6998809039 For #26286 new web control UI tests 2022-10-24 14:47:02 +00:00
AndiAJ ce3d6b84ca Add external links static asset 2022-10-24 14:47:02 +00:00
AndiAJ f369129aad Add HTML controls static asset 2022-10-24 14:47:02 +00:00
mozilla-l10n-automation-bot 731748a5b1
Import l10n. (#27512) 2022-10-24 00:31:07 +00:00
MickeyMoz 8b01578488 Update to Android-Components 108.0.20221023143208. 2022-10-23 16:03:24 +00:00
MickeyMoz 5f136e8227 Update to Android-Components 108.0.20221022143114. 2022-10-22 16:00:04 +00:00
mozilla-l10n-automation-bot d44e8b0052
Import l10n. (#27498) 2022-10-22 00:39:02 +00:00
MickeyMoz 8c22f3faab Update to Android-Components 108.0.20221021143146. 2022-10-21 15:59:54 +00:00
Alexandru2909 9a99666d2b For #27135 - Correctly report top sites for a11y services 2022-10-21 09:32:55 +00:00
Alexandru2909 dbc05b4aa5 For #9323 - Use android:background to set small search widget microphone icon 2022-10-21 06:41:35 +00:00
MickeyMoz bd465bb44f Update to Android-Components 108.0.20221021021005. 2022-10-21 03:35:56 +00:00
mozilla-l10n-automation-bot 2517804c8f
Import l10n. (#27488) 2022-10-21 00:39:17 +00:00
MickeyMoz 37a3f43875 Update to Android-Components 108.0.20221020190123. 2022-10-20 20:48:27 +00:00
MatthewTighe 83e2ab5d38 No issue: add script to generate filled telemetry renewal request 2022-10-20 19:53:07 +00:00
MickeyMoz 79a55e0b0f Update to Android-Components 108.0.20221020143135. 2022-10-20 18:32:02 +00:00
AndiAJ 990d015c3d Add smoke test annotations for blockCookiesStorageAccessTest and allowCookiesStorageAccessTest UI tests 2022-10-20 13:55:53 +00:00
AndiAJ 6834aadf84 For #27478 fix for allowCookiesStorageAccessTest UI test 2022-10-20 13:55:53 +00:00
sarah541 8ac2dc317b Truncate urls to prevent slowing down of UI 2022-10-20 03:55:56 +00:00
Meiirbek Baimuratov adfed996a2 For mozilla-mobile#27282: delete WallpaperManager 2022-10-20 01:31:08 +00:00
mozilla-l10n-automation-bot 0cfa44e634
Import l10n. (#27474) 2022-10-20 00:39:13 +00:00
Gregory Mierzwinski 5e60cea503
Bug 1791998 - Disable TCP popup when running performance tests. (#27451)
* Disable TCP popup when running performance tests.

* Run some perf tests.

* Undo testing changes.

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-10-19 22:47:42 +00:00
Alexandru2909 fe25aa8e14 For #21787 - Update the Pocket stories toggle label and summary from homepage settings 2022-10-19 22:18:44 +00:00
MickeyMoz 90960153ce Update to Android-Components 108.0.20221019143129. 2022-10-19 17:05:53 +00:00
sv-ohorvath 106b692c41 Adds TCP prompt & storage access tests 2022-10-19 15:33:44 +00:00
sv-ohorvath 61a3f26cba No issue: refactoring for ETP tests 2022-10-19 15:33:44 +00:00
AndiAJ 9721381243 For #25029 and #26087 re-enable useAppWhileTabIsCrashedTest and privateBrowsingUseAppWhileTabIsCrashedTest UI tests 2022-10-19 15:01:45 +00:00
Aaron Train 89acf3b3a2 No issue: Fix for None key-pair in Flank client-details
Remove URL construction
2022-10-19 14:32:20 +00:00
AndiAJ 6a07c171ca No issue: Refactor web page items long clicks 2022-10-19 12:01:35 +00:00
AndiAJ 8cd394b88e No issue: Refactor web page items clicks and setting text 2022-10-19 12:01:35 +00:00
Noah Bond a0df375b17 For #27456 - Migrate Context.isDark() into a top-level extension 2022-10-19 02:08:42 +00:00
mozilla-l10n-automation-bot 1e8a719197
Import l10n. (#27462) 2022-10-19 00:35:54 +00:00
Roger Yang 20b25d77dd For #27439: Remove all unused strings marked moz:removedIn <= 105 2022-10-18 19:51:55 +00:00
Ryan VanderMeulen 0194e11a19 Update jna to version 5.12.1 2022-10-18 19:02:01 +00:00
MickeyMoz 14d169dd4c Update to Android-Components 108.0.20221018160640. 2022-10-18 17:39:04 +00:00
Aaron Train c1b2f78219 No issue: Add source commit pair to Flank client-details flag 2022-10-18 13:29:16 +00:00
Alexandru2909 2b2f3a711e For #27405 - Clean up references to "Sing in to Sync" phrase 2022-10-18 10:06:46 +00:00
mozilla-l10n-automation-bot 8fa81d4cd2
Import l10n. (#27441) 2022-10-18 00:35:36 +00:00
MickeyMoz cfe143ae6a Update to Android-Components 108.0.20221017190200. 2022-10-17 21:59:59 +00:00
Ryan VanderMeulen 4a118751a3 Update protobuf to 3.21.7 2022-10-17 20:20:19 +00:00
DonalMe c0fbd2bd13 Update version.txt to 108.0b1. 2022-10-17 14:57:49 -04:00
MickeyMoz 573d854e7c Update to Android-Components 107.0.20221017143148. 2022-10-17 16:19:01 +00:00
mozilla-l10n-automation-bot 9284513b49
Import l10n. (#27431) 2022-10-17 00:35:26 +00:00
MickeyMoz f362aed4b2 Update to Android-Components 107.0.20221016143152. 2022-10-16 16:02:49 +00:00
mozilla-l10n-automation-bot cd2a8987ea
Import l10n. (#27424) 2022-10-16 00:34:27 +00:00
MickeyMoz 4c0571af22 Update to Android-Components 107.0.20221015145354. 2022-10-15 16:34:02 +00:00
mozilla-l10n-automation-bot 16062968cc
Import l10n. (#27419) 2022-10-15 00:36:14 +00:00
MickeyMoz 53ecff6a21 Update to Android-Components 107.0.20221014190058. 2022-10-14 20:49:09 +00:00
MickeyMoz 01990accf9 Update to Android-Components 107.0.20221014143152. 2022-10-14 16:46:15 +00:00
Ryan VanderMeulen ab7ba41946 Update Adjust to latest release 2022-10-14 14:34:09 +00:00
Ryan VanderMeulen e6ca08df3b Update Google Play Review dependency to 2.0.0 2022-10-14 13:23:52 +00:00
mozilla-l10n-automation-bot 6661a61e57
Import l10n. (#27404)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-10-14 01:02:21 +00:00
Sammy Khamis b36ce9fd34 For #27117 - Update copy for the menu from "Sign in to sync" to "Sync and save data" 2022-10-14 00:14:08 +00:00
Noah Bond 1d4fc6aa36 For #27396 - Add optional text colors to SelectableChip 2022-10-13 23:41:08 +00:00
MickeyMoz aac92cbb49 Update to Android-Components 107.0.20221013190102. 2022-10-13 23:08:40 +00:00
Ryan VanderMeulen faf6d30928 Update Kotlin and coroutines. 2022-10-13 22:07:57 +00:00
MickeyMoz ba9791e41f Update to Android-Components 107.0.20221013143128. 2022-10-13 17:00:58 +00:00
Johan Lorenzo 3dfbae0d10 Pin relbot Github Action to the 1.0.0 tag
https://github.com/mozilla-mobile/relbot/pull/88 will introduce some breaking changes that shouldn't make the fenix repo.
2022-10-13 16:09:33 +00:00
sv-ohorvath 881d761d4f No issue: Adds TCP & jump back in contextual hints UI tests 2022-10-13 15:16:47 +00:00
mozilla-l10n-automation-bot 832e832ec7
Import l10n. (#27391)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-10-13 01:08:59 +00:00
MatthewTighe 5e282ae326 For #27101: set dialog to be dismissed when touched outside 2022-10-13 00:42:11 +00:00
Noah Bond 538fd700bd For #27388 - Add optional background colors to SelectableChip 2022-10-13 00:05:33 +00:00
MickeyMoz 56c80f2539 Update to Android-Components 107.0.20221012190125. 2022-10-12 20:38:18 +00:00
MatthewTighe 846e60987a Closes #27292: renew telemetry expiring in 108 and 109 2022-10-12 19:16:07 +00:00
Mugurell 09b11da8c2 For #27381 - Unregister FXA observer to prevent memory leaks 2022-10-12 16:53:14 +00:00
MickeyMoz 8ee0a8a27a Update to Android-Components 107.0.20221012143145. 2022-10-12 12:21:53 -04:00
Mugurell f0aced49c0 For #27366 - Revert "For #26644 - Apply the new theme earlier to the private browsing button"
This reverts commit c7c5682104 given that the
severity of the new issue is much higher.
2022-10-12 07:10:30 +00:00
MickeyMoz 8b0fd1b85a Update to Android-Components 107.0.20221011190253. 2022-10-12 03:45:09 +00:00
mozilla-l10n-automation-bot 46e463db31
Import l10n. (#27376) 2022-10-12 00:32:35 +00:00
Noah Bond 165a516c38 For #27330 - Cache selected wallpaper card colors 2022-10-11 17:41:04 +00:00
MickeyMoz c6ff008f4b Update to Android-Components 107.0.20221011143144. 2022-10-11 16:03:55 +00:00
mcarare 8ed3bf704f For #25980: Use new backQueue instead of removed backStack. 2022-10-11 07:56:26 +00:00
mcarare 55724deda9 For #25980: Suppress LongParameterList warning.
Remove issues from baseline.
2022-10-11 07:56:26 +00:00
mcarare 5e88437d61 For #25980: Update method signatures for View.OnAttachStateChangeListener. 2022-10-11 07:56:26 +00:00
mcarare d9d39bd979 For #25980: Solve overload resolution ambiguity. 2022-10-11 07:56:26 +00:00
mcarare d9d01db7cc For #25980: Replace deprecated setHasOptionsMenu with MenuProvider. 2022-10-11 07:56:26 +00:00
mcarare 2b8b6a9aca For #25980: Replace deprecated popUpTo var. 2022-10-11 07:56:26 +00:00
mcarare 0ceeda92df For #25980: Update method signatures for onInitializeAccessibilityNodeInfo. 2022-10-11 07:56:26 +00:00
mcarare 0b4d9dc270 For #25980: Update method signatures for SimpleOnGestureListener.
GestureDetector onTouchEvent now expects only a NonNull MotionEvent.
2022-10-11 07:56:26 +00:00
mcarare 4e481f4f3e For #25980: Use new extension function to get fragment's NavController. 2022-10-11 07:56:26 +00:00
mcarare a4696c8fba For #25980: Replace removed BottomSheetDialog style. 2022-10-11 07:56:26 +00:00
mcarare ab928ac272 For #25980: Upgrade navigation, lifecycle, fragment and core to latest versions. 2022-10-11 07:56:26 +00:00
mozilla-l10n-automation-bot 89df72b415
Import l10n. (#27361)
Co-authored-by: Ryan VanderMeulen <rvandermeulen@mozilla.com>
2022-10-11 00:39:53 +00:00
Ryan VanderMeulen f84b65364a Update gradle testing dependencies 2022-10-11 00:05:23 +00:00
suman fab8300a78 For #27289: standardize coroutine usage in WallpaperFileManager
scope variable inlined as in only one place it is used, class injected dispatcher is used in all withcontext to use differnt dispatchers in different scenarios, clean function suspend keyword removed, as there no requirement to know its result, unnecessary return removed
2022-10-10 22:27:00 +00:00
Noah Bond 3207e6213e For #27095 - Download light/dark wallpaper card colors 2022-10-10 20:41:44 +00:00
MickeyMoz 8da9ba432e Update to Android-Components 107.0.20221010143126. 2022-10-10 17:06:10 +00:00
Mugurell 47b7336387 For #27016 - Ensure smooth search UX after the MR onboarding is closed
If the app is opened from the search widget and the MR onboarding is shown then
the backstack will have the following structure:
- root, homeFragment, searchDialogFragment, onboardingFragment
as opposed to otherwise
- root, homeFragment, searchDialogFragment.

This patch allows to avoid the MR onboarding fragment causing the
SearchDialogFragment to not know that below it is the HomeFragment and
consequently not applying transparency or propagate user touches to the parent
Activity.
2022-10-10 06:13:12 +00:00
Mugurell 6c6c3f5259 For #27016 - Prevent the MR onboarding always going to homescreen
This will mean that hen the onboarding is finished the user will get back to
the screen that should've been opened if not the onboarding.
2022-10-10 06:13:12 +00:00
mozilla-l10n-automation-bot 809f632f72
Import l10n. (#27349) 2022-10-10 00:38:17 +00:00
MickeyMoz 6c89feb0c3 Update to Android-Components 107.0.20221009143152. 2022-10-09 17:02:18 +00:00
mozilla-l10n-automation-bot ec0be08b7e
Import l10n. (#27342) 2022-10-09 00:38:45 +00:00
MickeyMoz 15a95b8ddf Update to Android-Components 107.0.20221008143216. 2022-10-08 16:37:57 +00:00
mozilla-l10n-automation-bot effc40dc32
Import l10n. (#27335) 2022-10-08 00:33:13 +00:00
MickeyMoz 0c76929f9a Update to Android-Components 107.0.20221007190140. 2022-10-07 20:30:17 +00:00
kycn f9efa5e8bb Close #26948: Enable custom extension collections in Beta.
Similar to how Nightly functions, custom extension collections are enabled to be used in Firefox Beta as well.
2022-10-07 19:04:09 +00:00
Jonathan Almeida 90fb56a251 Close #27320: Include testing regex to Google Maven allowlist
When running UI tests locally, we found that the
`android-device-provider-local` dependency is no longer available on
mavenCentral. Our dependency repository uses various regex to allow only
google dependencies to be fetched from Google Maven, but somehow these
did not include the test ones everywhere.
2022-10-07 18:04:51 +00:00
Gabriel Luong b6b892faab For #27307 - Use the correct warning button text and icon color for DestructiveButton 2022-10-07 16:53:50 +00:00
MickeyMoz 4ecc432b69 Update to Android-Components 107.0.20221007143235. 2022-10-07 12:21:21 -04:00
mozilla-l10n-automation-bot 62f5f44917
Import l10n. (#27323) 2022-10-07 00:36:55 +00:00
Roger Yang 3f7391a322 Close #27147: Add telemetry for bookmark search 2022-10-06 20:41:17 +00:00
Roger Yang e81da189cd Close #24498: Add test for history search telemetry 2022-10-06 19:21:28 +00:00
MickeyMoz 102acb3a4b Update to Android-Components 107.0.20221006143319. 2022-10-06 18:53:29 +00:00
Aaron Train fb80d2ee8c No issue: Disable ETP permanent UI test failures 2022-10-06 14:06:45 -04:00
Alexandru2909 30b8de0dce For #27128 - Fix accessibility for wallpaper settings "Learn more" heading 2022-10-06 14:12:10 +00:00
mcarare 7a240eb9f6 For #26930: Upgrade kotlin to 1.7.10 and compose compiler to 1.3.0.
Replace deprecated Xopt-in with op-in.
Replace deprecated Xjvm-default=enable with Xjvm-default=all.
2022-10-06 08:12:01 +00:00
Ryan VanderMeulen fbe8dfee6f Bump Sentry to 6.4.2 2022-10-05 23:37:42 -04:00
MickeyMoz 18eb3678af Update to Android-Components 107.0.20221005223456. 2022-10-05 23:37:42 -04:00
mozilla-l10n-automation-bot c26bdae1f6
Import l10n. (#27296) 2022-10-06 00:33:49 +00:00
mergify 11af9ab394 update initial_experiments.json based on the current first-run experiments in experimenter 2022-10-05 16:32:46 -04:00
Arturo Mejia 5cce4b5f15 For #3709: Add save to PDF UI. 2022-10-05 15:33:07 -04:00
MickeyMoz 5391b4cbc3 Update to Android-Components 107.0.20221005143122. 2022-10-05 16:58:48 +00:00
mcarare 5d33d387a1 For #27253: Add content description to close button. 2022-10-05 11:53:35 +00:00
mozilla-l10n-automation-bot 49791c3774
Import l10n. (#27271) 2022-10-05 00:37:58 +00:00
MickeyMoz ec85814ce3 Update to Android-Components 107.0.20221004145201. 2022-10-04 16:19:23 +00:00
sv-ohorvath 8cf20cc6c6 No issue: adds new onboarding smoke tests 2022-10-04 13:47:52 +00:00
Alexandru2909 31e9f69aae For #27129 - Fix accessibility for default wallpaper thumbnail 2022-10-04 11:39:36 +00:00
mozilla-l10n-automation-bot 69849cafa4
Import l10n. (#27260) 2022-10-04 00:34:11 +00:00
MickeyMoz 390201b9bc Update to Android-Components 107.0.20221003143033. 2022-10-03 16:04:43 +00:00
Mugurell db79ad5cb0 For #26884 - Re-enable selectAllAndCopyTextTest and copyTextTest
With the other changes from this patch they should now pass.
2022-10-03 12:16:57 +00:00
Mugurell d391d1bf95 For #26884 - Update tests to modify settings through the activity rules 2022-10-03 12:16:57 +00:00
Mugurell 0442695972 For #26884 - Merge FeatureSettingsHelper with activity rules 2022-10-03 12:16:57 +00:00
Mugurell ddf0dc3b4d For #24544 - Have Talkback use "expand" and "collapse" actions for collections 2022-10-03 11:18:02 +00:00
mozilla-l10n-automation-bot 0c5b1a910b
Import l10n. (#27248) 2022-10-03 01:01:28 +00:00
MickeyMoz 853ee1aa92 Update to Android-Components 107.0.20221002190240. 2022-10-02 20:35:21 +00:00
mozilla-l10n-automation-bot ee970d4fc8
Import l10n. (#27242) 2022-10-02 00:35:02 +00:00
MickeyMoz ffecc11a98 Update to Android-Components 107.0.20221001143328. 2022-10-01 15:58:31 +00:00
mozilla-l10n-automation-bot d70f8dec4f
Import l10n. (#27235) 2022-10-01 00:39:22 +00:00
MickeyMoz 41c0d822bd Update to Android-Components 107.0.20220930190122. 2022-09-30 21:42:42 +00:00
mike a 595d931dc0 Closes #27209: fix WallpapersSettings crash 2022-09-30 16:20:22 +00:00
sv-ohorvath acf9756a76 No issue: remove sdk suppression tests tags for API28 and unschedule cron job 2022-09-30 07:35:40 +00:00
MickeyMoz f8682dab94 Update to Android-Components 107.0.20220929190135. 2022-09-30 01:29:32 +00:00
mozilla-l10n-automation-bot 3fdbbe9ef5
Import l10n. (#27225) 2022-09-30 00:30:29 +00:00
AndiAJ f58442d3c5 For #26087 re-enable UI tests affected by tabs tray migration to compose 2022-09-29 20:51:10 +00:00
MatthewTighe 521f1485e6 For #27127: do not display wallpaper onboarding in private browsing mode 2022-09-29 20:24:55 +00:00
MickeyMoz 189b22fb69 Update to Android-Components 107.0.20220929143100. 2022-09-29 16:27:28 +00:00
mozilla-l10n-automation-bot d30ca3d57a
Import l10n. (#27211) 2022-09-29 00:35:02 +00:00
MickeyMoz 7abfb5728c Update to Android-Components 107.0.20220928143130. 2022-09-28 16:21:43 +00:00
Alexandru2909 19685170de For #26424 - Handle special legacy wallpaper cases 2022-09-28 06:02:12 +00:00
MickeyMoz f0c4660851 Update to Android-Components 107.0.20220928020045. 2022-09-28 04:16:44 +00:00
Delphine Lebédel 094c2f028f Added missing locales
Also updated top section.
This is for #26964
2022-09-28 03:08:19 +00:00
mozilla-l10n-automation-bot 6ebecfcaa7
Import l10n. (#27199) 2022-09-28 00:34:50 +00:00
MickeyMoz 83c49cc050 Update to Android-Components 107.0.20220927143145. 2022-09-27 17:40:50 +00:00
AndiAJ 8a652fc06f For #24978 re-enable media notification UI tests 2022-09-27 14:25:12 +00:00
AndiAJ af36e27933 For #24978 re-enable mainMenuOpenInAppTest UI test 2022-09-27 14:25:12 +00:00
AndiAJ 397ffd555c For #24978 re-enable verifyContextMixedVariations UI test 2022-09-27 14:25:12 +00:00
AndiAJ 81fd5f2644 For #24978 re-enable homeThreeDotMenuItemsTest UI test 2022-09-27 14:25:12 +00:00
AndiAJ 67bd387e0d For #24978 re-enable audioPlaybackSystemNotificationTest UI test 2022-09-27 14:25:12 +00:00
AndiAJ 46c2a714f6 For #24978 re-enable testStrictVisitDisableExceptionToggle UI test 2022-09-27 14:25:12 +00:00
Mugurell 460008c759 For #27172 - Enable the home onboarding dialog in all releases 2022-09-27 12:13:23 +00:00
Mugurell c3a3cae99b For #27172 - Enable the sync onboarding cfr in all releases 2022-09-27 12:13:23 +00:00
Mugurell 6c2609ad58 For #27111 - Allow TCP in all releases. Control it from Nimbus.
After this change the TCP feature (and CFR) are enabled by default.
Rollout can be controlled through Nimbus.
2022-09-27 11:43:18 +00:00
AndiAJ 66f16eeb69 For #24978 re-enable verifyAboutFirefoxPreview UI test 2022-09-27 11:16:04 +00:00
mcarare 1a21d49390 For #27133: Specify type when retrieving resValues. 2022-09-27 11:16:04 +00:00
Mugurell c7c5682104 For #26644 - Apply the new theme earlier to the private browsing button
This will help avoid a race between the two layers of the svg, with previously
only changing the color for just one.
By applying the new theme to the button when needing to apply the textColor
from wallpaper it will automatically use the right
2022-09-27 03:17:49 +00:00
mozilla-l10n-automation-bot d6883bc1f3
Import l10n. (#27186) 2022-09-27 00:37:50 +00:00
MickeyMoz 1005412862 Update to Android-Components 107.0.20220926143208. 2022-09-26 16:33:46 +00:00
sv-ohorvath 7e796d1cdc Issue #26711: re-enabled verifyPageMainMenuItemsTest 2022-09-26 15:21:08 +00:00
MatthewTighe 5c9a713512 For #27111: disable TCP in beta and release 2022-09-26 06:54:08 +00:00
mozilla-l10n-automation-bot 00f28939a1
Import l10n. (#27165) 2022-09-26 00:34:04 +00:00
MickeyMoz 96fc8e19d8 Update to Android-Components 107.0.20220925143143. 2022-09-25 15:58:36 +00:00
mozilla-l10n-automation-bot 4834f789e7
Import l10n. (#27157) 2022-09-25 00:35:07 +00:00
MickeyMoz d295390165 Update to Android-Components 107.0.20220924190144. 2022-09-24 20:18:37 +00:00
MickeyMoz e6680a4faa Update to Android-Components 107.0.20220924143230. 2022-09-24 17:50:28 +00:00
mozilla-l10n-automation-bot 0164544e41
Import l10n. (#27150) 2022-09-24 00:31:32 +00:00
MickeyMoz bc5bc7f564 Update to Android-Components 107.0.20220923143109. 2022-09-23 16:34:17 +00:00
AndiAJ a2011e201f For #26936 and #26818 fix saveLoginFromPromptTest and neverSaveLoginFromPromptTest UI tests 2022-09-23 14:55:15 +00:00
AndiAJ f9d7483bdd For #25345 re-enable customTrackingProtectionSettingsTest UI test 2022-09-23 14:10:41 +00:00
Julien Cristau 4d5f2f8ab4 Bug 1789398 - ensure task["metadata"]["owner"] is not empty on github-push decision tasks
Treeherder requires this in its ingestion pipeline, so if the pusher
doesn't have an email then use their name instead.
2022-09-23 09:07:31 +00:00
mozilla-l10n-automation-bot 4c3db08399
Import l10n. (#27116) 2022-09-23 00:39:08 +00:00
MatthewTighe 5811b06679 For #27055: handle legacy wallpaper naming case 2022-09-22 21:42:44 +00:00
Gabriel Luong 444f663143 For #27026 - Use the wallpaper adapted text color for the Collections placeholder 2022-09-22 20:07:02 +00:00
jeddai fba46517ff update initial_experiments.json based on the current first-run experiments in experimenter 2022-09-22 15:38:41 -04:00
Jonathan Almeida 911f350642 Closes #27077: Load first run experiments synchronously.
Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
Co-authored-by: Charlie Humphreys <chumphreys@mozilla.com>
Co-authored-by: jhugman <jhugman@users.noreply.github.com>
2022-09-22 14:46:40 -04:00
MickeyMoz 6e99d6310b Update to Android-Components 107.0.20220922143126. 2022-09-22 16:14:58 +00:00
mozilla-l10n-automation-bot 89998334f3
Import l10n. (#27098) 2022-09-22 00:30:22 +00:00
Roger Yang bc1cfb88e8 Revert "For #11404 - Create open all function"
This reverts commit 9cf42cb7d9.
2022-09-21 23:11:23 +00:00
Roger Yang 366423e85c Revert "For #11404 - Create the open_all_in_new_tabs metric in Glean"
This reverts commit f1bd7e192d.
2022-09-21 23:11:23 +00:00
Roger Yang dff4c31606 Revert "For #11404 - Add 'Open all in private tabs' option as requested."
This reverts commit fe16a81c1d.
2022-09-21 23:11:23 +00:00
Roger Yang cfa376e5d2 Revert "For #11404 - Create alert message when a lot of tabs are to be opened."
This reverts commit c75e331a30.
2022-09-21 23:11:23 +00:00
Roger Yang 7fc213ce0c Revert "For #11404 - Update open all tabs warning message"
This reverts commit b11fd9131d.
2022-09-21 23:11:23 +00:00
Roger Yang 79ba4b8039 Revert "For #11404 - Disable new open bookmarks tests pending compose refactoring"
This reverts commit 0d439f91e3.
2022-09-21 23:11:23 +00:00
MickeyMoz 4a5abdb849 Update to Android-Components 107.0.20220921190147. 2022-09-21 22:40:07 +00:00
mcarare 017d45e80d For #26023: Run lint test only once.
Avoids running with added extra whitespaces.
2022-09-21 20:50:49 +00:00
mcarare 7efc9fcb7a For #26023: Supress LongParameterList warnings. 2022-09-21 20:50:49 +00:00
mcarare 258acf5fd9 For #26023: Remove inaccurate VisibleForTesting annotations. 2022-09-21 20:50:49 +00:00
mcarare a914e72b68 For #26023: Replace VisibleForTesting with @get:VisibleForTesting. 2022-09-21 20:50:49 +00:00
mcarare e5cc8f7592 For #26023: Suppress NewApi warning for autofillConfiguration. 2022-09-21 20:50:49 +00:00
mcarare 4196308ac6 For #26023: Sync android lint version to gradle plugin version. 2022-09-21 20:50:49 +00:00
mcarare 8f67b30117 For #26023: Update Gradle, Gradle plugin and kotlin-dsl plugin. 2022-09-21 20:50:49 +00:00
MickeyMoz 6937faefba Update to Android-Components 107.0.20220921143112. 2022-09-21 16:36:45 +00:00
AndiAJ f043362176 For #27008 fix flaky addAndRemoveMostViewedTopSiteTest UI test 2022-09-21 15:35:32 +00:00
Mugurell 7b5ba840ab For #26644 - Apply the wallpaper provided text color to the Fenix logo
And to the private mode switcher.
2022-09-21 13:03:55 +00:00
Mugurell 103a0cb250 For #26644 - Split the Fenix logo in two images
This will allow us applying a certain tint just for the image containing a text
to have a better contrast with wallpapers.
2022-09-21 13:03:55 +00:00
mozilla-l10n-automation-bot 74cb0679e2
Import l10n. (#27083) 2022-09-21 00:34:02 +00:00
MatthewTighe ace7b1e35c Closes #27081: enable wallpaper onboarding flag 2022-09-20 22:42:55 +00:00
MatthewTighe 414c569e86 For #27055: check whether applied wallpaper name is blank 2022-09-20 22:12:45 +00:00
MickeyMoz 16f490ea15 Update to Android-Components 107.0.20220920190143. 2022-09-20 20:34:18 +00:00
Noah Bond 892e9842d4 For #26854 - Fix bug causing the Top Sites sponsored text to show scrollbars 2022-09-20 18:03:24 +00:00
MickeyMoz 4f507faa9d Update to Android-Components 107.0.20220920143100. 2022-09-20 16:09:15 +00:00
AndiAJ 1d15fad8ca For #27005 fix flaky updateSavedLoginTest UI test 2022-09-20 14:52:28 +00:00
mcarare bcc12b65ce For #27004: Make the top site frame layout focusable.
This makes the layout visible to a11y screen readers.
2022-09-20 07:05:11 +00:00
mozilla-l10n-automation-bot 8fa1924e83
Import l10n. (#27069) 2022-09-20 00:36:26 +00:00
MatthewTighe 6f24fadebb Closes #26966: enable wallpapers V2 2022-09-19 23:28:52 +00:00
MickeyMoz 7c1555e4e7 Update to Android-Components 107.0.20220919190141. 2022-09-19 22:22:39 +00:00
Gabriel Luong 997a4af839 For #26582 - Renew telemetry expiring in 107 2022-09-19 21:51:31 +00:00
MatthewTighe c77ee6f371 For #27064 - Remove all unused strings marked moz:removedIn <= 104 2022-09-19 19:54:08 +00:00
MatthewTighe c6af07dc8c Closes #26997: convert v1 wallpapers into collection group 2022-09-19 19:24:27 +00:00
AndiAJ 8dd71a0523 For #24978 re-enable UI tests with frequent ANR 2022-09-19 18:55:25 +00:00
Mugurell 0d439f91e3 For #11404 - Disable new open bookmarks tests pending compose refactoring 2022-09-19 14:25:16 -04:00
Pg b11fd9131d For #11404 - Update open all tabs warning message
Specify Firefox will only slow down while pages are loading.
2022-09-19 14:25:16 -04:00
Pg c75e331a30 For #11404 - Create alert message when a lot of tabs are to be opened.
Current threshold is 15.
2022-09-19 14:25:16 -04:00
Pg fe16a81c1d For #11404 - Add 'Open all in private tabs' option as requested.
https://github.com/mozilla-mobile/fenix/pull/21212#discussion_r739172674

- Add option is tree dot menu
- Edit folder opening to be aware of browsing mode
- Add metrics
- Add unit tests for 'Open all in private tabs'
- Add Android tests for open all in private.
2022-09-19 14:25:16 -04:00
Pg f1bd7e192d For #11404 - Create the open_all_in_new_tabs metric in Glean
Expiration date is set to the same of others bookmark metrics.
2022-09-19 14:25:16 -04:00
Pg 9cf42cb7d9 For #11404 - Create open all function
- Create element to be displayed

- Update the interface and bind in the view holder
Set the filter to limit this action to FOLDER.

- Create core function
Main logic is done on the controller (has it should be done). The whole
process is done in one coroutine to be non-blocking as many
(sub)folders & links can be present. If folder is empty, a toast is
displayed. Else iterate on items. When item is:
- a FOLDER -> restart process (without toast) on the folder
- a ITEM -> open it
- a SEPARATOR -> do nothing
Once finished, show the tabs tray.

Toast message is defined in fragment to have access to context.

- Create androidTest for openAllInTabs
- Create tests for handleBookmarkFolderOpening
- Display 'open all' options only if folder has at least on child:
A coroutine and suspended functions have to be used, since `getTree`
is async.
2022-09-19 14:25:16 -04:00
AndiAJ 400a2a60d1 For #26286 new homepage settings UI tests 2022-09-19 15:09:42 +00:00
Ryan VanderMeulen de14a20fae Update protobuf to latest release. 2022-09-19 14:02:30 +00:00
Pascal Chevrel 7b5ee112b4 Update version.txt to 107.0b1 2022-09-19 12:56:27 +00:00
mozilla-l10n-automation-bot 26cd937a61
Import l10n. (#27056) 2022-09-19 00:38:04 +00:00
MickeyMoz 8e33d78211 Update to Android-Components 106.0.20220918143158. 2022-09-18 18:48:54 +00:00
mozilla-l10n-automation-bot 055afeade8
Import l10n. (#27050) 2022-09-18 00:32:12 +00:00
MickeyMoz f2f1e74d81 Update to Android-Components 106.0.20220917211210. 2022-09-17 22:33:23 +00:00
mozilla-l10n-automation-bot 85b9c6e057
Import l10n. (#27047) 2022-09-17 00:37:53 +00:00
MickeyMoz 61463da357 Update to Android-Components 106.0.20220916143058. 2022-09-16 16:14:07 +00:00
Aaron Train 70fdfc8d2d No issue: Adjust shard count in legacy/nightly/beta UI test jobs 2022-09-16 14:41:38 +00:00
mozilla-l10n-automation-bot 9822a2d65b
Import l10n. (#27037) 2022-09-16 00:34:29 +00:00
mike a c81e7a1453 Closes #26999: fix disapprearing wallpapers after going back to home screen 2022-09-15 23:44:54 +00:00
MickeyMoz 8b18d24187 Update to Android-Components 106.0.20220915212218. 2022-09-15 23:12:24 +00:00
sarah541 924f00024e For #27020 - Correct padding for wallpaper thumbnails 2022-09-15 22:41:38 +00:00
sarah541 5e2fe2285c For #27029 - Use placeholder inplace of app name 2022-09-15 22:14:06 +00:00
mike a 4972b70018 Closes #26995: add sorting of wallpapers on wallpapers onboarding tool 2022-09-15 21:46:02 +00:00
sarah541 dafe5dbdd6 For #27024 - Use textAccent for the "Learn more" link in the wallpaper settings 2022-09-15 20:55:00 +00:00
mike a 2ee00374dd Closes #27021: add wallpaper onboarding downloading error snackbar 2022-09-15 18:58:43 +00:00
MatthewTighe 9ce3f65b51 Closes #26945: adds telemetry for learn more link on wallpaper settings 2022-09-15 18:07:57 +00:00
AndiAJ af1fbd5eeb For #26784 refactor use of idling resources in UI tests 2022-09-15 14:27:25 +00:00
AndiAJ 43b6445b46 For #27002 use featureSettingsHelper instead of app settings 2022-09-15 13:01:53 +00:00
AndiAJ 7193e4e637 For #26286 new sponsored shortcut UI tests and other refactoring work 2022-09-15 08:35:11 +00:00
mike a cc30e3dc5a Closes #26971: fix wallpaper onboarding display condition 2022-09-15 05:56:57 +00:00
mavduevskiy 7fc96b01b2
Closes #26973: adjust wallpaper onboarding ui (#26974)
Co-authored-by: mike a <mavduevskiy@gmail.com>
Co-authored-by: Ryan VanderMeulen <rvandermeulen@mozilla.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-09-15 04:06:15 +00:00
Mugurell d987afd23a For #26424 - Add contrasting text color for migrated Turning Red Wallpapers 2022-09-15 03:19:02 +00:00
Alexandru2909 817827997f For #26424 - Create wallpaper file migration helper 2022-09-15 03:19:02 +00:00
Aaron Train 0f4d711083 Update SmokeTest.kt
Disabled selectAllAndCopyTextTest()
2022-09-15 02:47:12 +00:00
Aaron Train 51c314e262 Disable copyTextTest in SmokeTest.kt
See https://github.com/mozilla-mobile/fenix/issues/26884
2022-09-15 02:47:12 +00:00
mozilla-l10n-automation-bot 9f0f052cab
Import l10n. (#26991)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-09-15 01:41:43 +00:00
MickeyMoz 3d4ded26eb Update to Android-Components 106.0.20220914204738. 2022-09-15 01:10:31 +00:00
Gabriel Luong d468bb5c58 For #26987 - Update MR Onboarding strings for existing users 2022-09-14 23:20:36 +00:00
MatthewTighe 7f59fa235f For #26980: enable task continuity in all channels 2022-09-14 22:37:18 +00:00
mike a 9cb441a6ca Closes #26215: add telemetry events for wallpaper onboarding dialog 2022-09-14 21:27:26 +00:00
sarah541 805fb0ff60 For #26908 - Update wallpapers settings page design 2022-09-14 19:45:38 +00:00
Jan-Erik Rediger 29e871086b Fix naming of generated exception 2022-09-14 12:57:21 -04:00
MickeyMoz 85f52e5329 Update to Android-Components 106.0.20220914143042. 2022-09-14 12:57:21 -04:00
Mugurell 8af2ee8aa9 For #26884: Properly disable the jumpBackIn and TCP CFRs in BookmarksTest 2022-09-14 15:22:47 +00:00
Mugurell 5010aa7d0d For #26884: [UI tests] Reset modified settings just before the Activity finishes
This should prevent issues with the cleanup being done earlier (even in @After)
and affecting the behavior of the Activity which is still running.
With this issue fixed I've re-enabled verifyCustomizeHomepageTest.

Because when FeatureSettingsHelper is instantiated it caches the settings
values from that instant it's important to only use one instance of it so I've
updated all tests that are using HomeActivityTestRule.
HomeActivityIntentTestRule may be updated with a similar functionality later.
2022-09-14 15:22:47 +00:00
Aaron Train 4e99fe8521
For #26792 - Change active Firebase Test Lab emulator from x86 to ARM (#26793)
* For #26792 - Change active Firebase Test Lab emulator from x86 to ARM

Update startup-test kind.yml Jobs for ARM
Update ui-test kind.yml Jobs for ARM
Cleans up and renames Flank configurations for ARM
Updates ui-test.sh for ARM

* Fix BookmarksTest.kt and HomeScreenTest.kt

* Fix intent matcher for SettingsAboutTest

Adds a helper function for Play Store intent

* Fix SettingsSearchTest.kt

* ktlint fix TestHelper.kt and SettingsRobot.kt
2022-09-14 16:42:25 +02:00
Mugurell 2899a66b15 For #26737 - Use the body2 for title else caption style in the Pocket section 2022-09-14 13:42:51 +00:00
Alexandru2909 bda817a608 For #26690 - Dismiss search dialog when opening recent synced tab dropdown menu 2022-09-14 12:49:08 +00:00
Alexandru2909 262aa16991 For #26790 - Dismiss search dialog when opening recent bookmark dropdown menu 2022-09-14 10:36:30 +00:00
Alexandru2909 b93b085085 For #26790 - Dismiss search dialog when opening recent visit dropdown menu 2022-09-14 10:36:30 +00:00
Alexandru2909 44b71bb590 For #26790 - Dismiss search dialog when opening recent tab dropdown menu
For #26790 -  recent tab
2022-09-14 10:36:30 +00:00
mozilla-l10n-automation-bot 1164703571
Import l10n. (#26970) 2022-09-14 00:36:07 +00:00
MatthewTighe 3ef7f959db For #26511: apply wallpapers immediately and observe updates 2022-09-13 22:40:36 +00:00
mcarare aa4a072d73 For #26743: Update the URL text styling in ClickableSubstringLink used by PoweredByPocketHeader
Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
2022-09-13 20:25:01 +00:00
Gabriel Luong 62c36ab46d For #26888 - Change Home Section Headers to use Headline6 2022-09-13 15:44:59 -04:00
MickeyMoz 8a29213e0c Update to Android-Components 106.0.20220913143057. 2022-09-13 15:56:29 +00:00
mike a 3aff74b40a Closes #26212: Download wallpapers when a thumbnail is clicked 2022-09-13 05:55:24 +00:00
mozilla-l10n-automation-bot 67ba299f77
Import l10n. (#26952) 2022-09-13 00:40:06 +00:00
mike a 65bee4bb27 Closes #26750: add Wallpapers Onboarding dialog 2022-09-12 23:21:25 +00:00
Mugurell 93615438fc For #26910: Enable TCP for all modes
Unify the TCP feature with the TCP setting allowing both to be controlled
through the same Nimbus experiment.
Allow changing the default cookie policy to TCP based on the Nimbus experiment.
2022-09-12 22:54:30 +00:00
Charlie Humphreys d469624d25 fixes #26905: update nimbus experiments github action control flow and versions 2022-09-12 21:53:10 +00:00
Arturo Mejia 1bc33c53fa Closes #26865: Make the Nimbus MR Onboarding features true by default. 2022-09-12 16:44:08 -04:00
MickeyMoz 322d96dadd Update to Android-Components 106.0.20220912143111. 2022-09-12 16:57:31 +00:00
Roger Yang c99ff75787 Close #24913: Update metrics.yaml owners 2022-09-12 16:19:55 +00:00
AndiAJ 27e2402429 For #26932 disabled failing verifyCustomizeHomepageTest UI test 2022-09-12 14:51:25 +00:00
AndiAJ aef6c0a5e4 For #26286 new site security quick settings UI tests 2022-09-12 09:34:52 +00:00
Mozilla L10n Automation Bot d5592687d2 Import l10n. 2022-09-11 21:03:38 -04:00
Christian Sadilek 9cae449e06 Revert "For #26511: Parallelize work for setting the wallpaper"
This reverts commit ce3a7152f9.
2022-09-11 13:26:12 -04:00
Christian Sadilek d39759e7ea Revert "For #26511: Avoid waiting to set no wallpaper"
This reverts commit 4a88dbf1f1.
2022-09-11 13:26:12 -04:00
Christian Sadilek a4692a67f0 Revert "Closes #26750: add Wallpapers Onboarding dialog"
This reverts commit 05b95b6a97.
2022-09-11 13:25:28 -04:00
Christian Sadilek 8dd326f9f2 Revert "Closes #26750: add ktlintFormat changes"
This reverts commit 0ff140193b.
2022-09-11 13:25:28 -04:00
Christian Sadilek 29a36d5e9a Revert "Closes #26750: pr review changes"
This reverts commit 87334d2a76.
2022-09-11 13:25:28 -04:00
Christian Sadilek 7ec570e8b1 Revert "Closes #26750: disable wallpapers onboarding in HomeScreenTest.verifyCustomizeHomepageTest"
This reverts commit 72d7264201.
2022-09-11 13:25:28 -04:00
Christian Sadilek 6525439709 Revert "Closes #26750: remove unused files from WallpaperOnboarding"
This reverts commit 97987dbf8b.
2022-09-11 13:25:28 -04:00
Mozilla L10n Automation Bot 42b9bbce44 Import l10n. 2022-09-11 12:52:57 -04:00
MickeyMoz 5e2051ddde Update to Android-Components 106.0.20220911143157. 2022-09-11 16:23:30 +00:00
MickeyMoz 7fd3a8802b Update to Android-Components 106.0.20220910143058. 2022-09-10 16:14:23 +00:00
mozilla-l10n-automation-bot 3d5c6b96b8
Import l10n. (#26912) 2022-09-10 00:38:28 +00:00
mike a 97987dbf8b Closes #26750: remove unused files from WallpaperOnboarding 2022-09-09 23:30:31 +00:00
mike a 72d7264201 Closes #26750: disable wallpapers onboarding in HomeScreenTest.verifyCustomizeHomepageTest 2022-09-09 23:30:31 +00:00
mike a 87334d2a76 Closes #26750: pr review changes 2022-09-09 23:30:31 +00:00
mike a 0ff140193b Closes #26750: add ktlintFormat changes 2022-09-09 23:30:31 +00:00
mike a 05b95b6a97 Closes #26750: add Wallpapers Onboarding dialog 2022-09-09 23:30:31 +00:00
Ryan VanderMeulen 93be491f26 Update hash to be ignored for ktlint update
The original commit was rebased before landing and the hash changed. Update it to the landed one. Also add a reference to the issue number.
2022-09-09 18:47:18 +00:00
MickeyMoz 3d3a52edd8 Update to Android-Components 106.0.20220909143109. 2022-09-09 13:42:49 -04:00
mcarare c7ebec3602 For #26844: Ignore fix ktlint issues commit from blame. 2022-09-09 16:52:09 +00:00
mcarare ffcef5ff2e For #26844: Fix ktlint issues and remove them from baseline. 2022-09-09 16:52:09 +00:00
Julien Cristau ba611e848e
mergify: allow complete-push check as an alternative to complete-pr in queue conditions (#26902)
PRs created by github actions don't get a pull-request taskcluster graph
scheduled (because that is only done for PRs created by collaborators).
However, if the PR is created in the main fenix repo, typically because
it comes from one of our internal github workflows, then we get a push
graph, which is sufficient to run the required checks.

This change lets mergify consider a green `complete-push` task as
sufficient to queue a PR (in addition to all the other conditions, e.g.
wrt review), which will allow PRs created by the
update-nimbus-experiments workflow to be queued by mergify instead of
having to be merged by a repo admin.
2022-09-09 18:08:56 +02:00
Mugurell 48f7803918 For #26511: Temporarily suppress ktlint issues
Instead of modifying the affecting files. While we set on a strategy on how to
approach this situations.
2022-09-09 13:36:09 +00:00
Mugurell 4a88dbf1f1 For #26511: Avoid waiting to set no wallpaper
This should squeeze the most performance for users who haven't set a wallpaper.
2022-09-09 13:36:09 +00:00
Mugurell ce3a7152f9 For #26511: Parallelize work for setting the wallpaper
Split loading the bitmap from storage and actually setting it in two operations
with one that can run in parallel with onCreateView for HomeFragment and one
that can be used serially on the main thread to actually set the wallpaper.

This seems like the best compromise to ensure that everytime the homescreen is
shown it will have the wallpaper set but does affect the performance - there is
a delay in showing HomeFragment to account for waiting for the wallpaper to be
set.
In testing the new delay seems close to the one from the initial wallpapers
implementation. See more in https://github.com/mozilla-mobile/fenix/pull/26794.
2022-09-09 13:36:09 +00:00
Julien Cristau 32a4be11d0 Bug 1781051 - simplify setting ownerEmail in .taskcluster.yml
Remove special cases for bors and github-actions:
- bors is no longer used for this, as far as I know
- the github-actions special case breaks chain-of-trust's ability to
  rebuild the decision task definition: because we don't leave a
  breadcrumb to record event.sender.login, it has to guess, and if it
  gets it wrong, chain of trust verification fails
2022-09-09 12:05:15 +00:00
Mozilla L10n Automation Bot 72227cb6a3 Import l10n. 2022-09-08 21:19:59 -04:00
MickeyMoz dbae86ffd0 Update to Android-Components 106.0.20220908190311. 2022-09-09 01:03:35 +00:00
Charlie Humphreys 13808e4535 remove qa experiment 2022-09-08 18:13:58 +00:00
MickeyMoz 10eb949ca1 Update to Android-Components 106.0.20220908143131. 2022-09-08 17:36:58 +00:00
Roger Yang 30814884b5 For #26502: Add time group and private extras in history telemetry 2022-09-08 16:12:20 +00:00
Gregory Mierzwinski 9ed3e8e138 Bug 1788643 - Enable nightly-test cron on fenix. 2022-09-08 11:12:13 -04:00
Arturo Mejia fd96263345 Closes #26858: Remove unused nimbus engine-settings tabs-prioritization-enabled feature. 2022-09-08 10:41:18 -04:00
Arturo Mejia 5358e9b878 Closes #26858: Remove unused nimbus engine-settings tabs-prioritization-enabled feature. 2022-09-08 10:41:18 -04:00
Arturo Mejia 49bef5d309 Closes #26858: Remove unused nimbus engine-settings total-cookie-protection-enabled feature. 2022-09-08 10:41:18 -04:00
Mugurell de38ada14e For #26869 - Enable TCP by default starting with v. 106
This change should not be uplifted.
2022-09-08 13:52:10 +00:00
mcarare ca88c8c1bb For #26844: Ensure consistent usage of a newline at the end of each file.
This automatically adds a new line at EOF when there is none.
2022-09-08 12:15:01 +00:00
mcarare 481b3655ac For #26844: Add ktlint baseline. 2022-09-08 12:15:01 +00:00
mcarare 9490fdff71 For #26844: Rename CFRPopupFullscreenLayout class to conform to filename rule. 2022-09-08 12:15:01 +00:00
mcarare 0f908db985 For #26844: Enable trailing commas rules. 2022-09-08 12:15:01 +00:00
mcarare 6b4d6363db For #26844: Replace deprecated disabled_rules with ktlint_disabled_rules. 2022-09-08 12:15:01 +00:00
mcarare 231ef74ff1 For #26844: Update ktlint to 0.47.0. 2022-09-08 12:15:01 +00:00
Mozilla L10n Automation Bot 316e495f22 Import l10n. 2022-09-08 00:01:32 -04:00
mergify dedc7704e3 update initial_experiments.json based on the current first-run experiments in experimenter 2022-09-08 00:00:48 -04:00
Gabriel Luong 812f073e39 For #26777 - Part 2: Refactor the Jump Back In onboarding CFR to use the CFRPopup 2022-09-08 01:30:16 +00:00
Gabriel Luong 86b62af556 For #26777 - Part 1: Rename SyncCFRPresenter to HomeCFRPresenter 2022-09-08 01:30:16 +00:00
MickeyMoz b7317d75a3 Update to Android-Components 106.0.20220907220702. 2022-09-08 00:21:35 +00:00
MatthewTighe 1eba8059f2 Closes #26870: remove layer behind wallpaper thumbnails 2022-09-07 23:20:20 +00:00
sarah541 adb7f7d48a For #26731 - First run onboarding updates 2022-09-07 22:36:25 +00:00
sarah541 bd06b626bf For #26867 - Remove feature flag for first run onboarding updates 2022-09-07 21:44:33 +00:00
Noah Bond 0ed40f239a For #26796 - Fix PocketStoriesComposablesPreview 2022-09-07 21:10:50 +00:00
mozilla-l10n-automation-bot 7c1aa011a9
Import l10n. (#26849) 2022-09-07 00:46:52 +00:00
Noah Bond f9380ebaa1 For #26797 - Add optional parameter to customize the background color of ListItemTabLarge 2022-09-06 22:32:44 +00:00
MickeyMoz 509c86b019 Update to Android-Components 106.0.20220906143158. 2022-09-06 18:42:14 +00:00
Noah Bond b1369a5de8 For #26606 - Add backplating to Top Sites 2022-09-06 17:48:02 +00:00
mcarare d4b6babdb0 For #12725: Suppress UnusedMaterial3ScaffoldPaddingParameter warning.
Padding value is not used for placing content.
2022-09-06 16:23:52 +00:00
mcarare bd354385d7 For #12725: Replace removed static "set", "get" methods of ViewTreeSavedStateRegistryOwner.
ViewTreeSavedStateRegistryOwner is retrieved/set with new extension methods.
2022-09-06 16:23:52 +00:00
mcarare bcfd0eb125 For #12725: Upgrade compose to 1.2.1 version.
Split versioning of compose compiler.
Enable Xjvm-default to allow inheriting from interfaces with '@JvmDefault' members
like AbstractComposeView, NestedScrollConnection.
2022-09-06 16:23:52 +00:00
Mugurell e51ec147c5 For #26830 - Allow the Pocket stories to scroll to the edges of the screen
Restore using LazyRow's "contentPadding" property to add padding to just the
items while the entire section is allowed to extend to the edges of the screen
and so have enough room to draw items shadows without them being clipped.
2022-09-06 12:33:18 +00:00
mozilla-l10n-automation-bot 92f68301bb
Import l10n. (#26828) 2022-09-06 00:39:00 +00:00
MickeyMoz 602910b096 Update to Android-Components 106.0.20220905190143. 2022-09-05 20:41:03 +00:00
MickeyMoz 2399f22303 Update to Android-Components 106.0.20220905143151. 2022-09-05 16:14:02 +00:00
AndiAJ 26a8f02233 For #26286 new home screen UI tests 2022-09-05 10:10:27 +00:00
mozilla-l10n-automation-bot 3d1924eb93
Import l10n. (#26814) 2022-09-05 00:39:53 +00:00
MickeyMoz c7a856240a Update to Android-Components 106.0.20220904143128. 2022-09-04 17:57:11 +00:00
mozilla-l10n-automation-bot 1aa59661b3
Import l10n. (#26806) 2022-09-04 00:34:03 +00:00
MickeyMoz 395ebab7a6 Update to Android-Components 106.0.20220903143150. 2022-09-03 15:34:25 +00:00
MickeyMoz 12b4197b8f Update to Android-Components 106.0.20220903000045. 2022-09-03 01:46:24 +00:00
mozilla-l10n-automation-bot 25fb180af4
Import l10n. (#26799) 2022-09-03 00:58:22 +00:00
Ben Dean-Kawamura fb0ebe4eec Added secret debug menu to override the push server URL (#24170)
- Created a new "sync debug" pref screen to hold the Fxa, Sync, and Push
  server override prefs.  They were taking a lot of screen space on the
  top-level settings menu as individual items
- Added button on that screen to quit FF which is needed to apply the
  changes.
    - This is definitely not the nicest UI, but hopefully QA can just
      override the prefs once save them in an emulator and never have to
      go back to this screen.
    - I do think this is a nicer UI than before, where FF would quit
      after a change to any of the prefs.  That forces you to restart FF
      3 times if you wanted to override all 3 server URLs.
2022-09-02 18:46:58 +00:00
MickeyMoz 0611beab00 Update to Android-Components 106.0.20220902143238. 2022-09-02 16:21:09 +00:00
sv-ohorvath df9c60b392 Issue #26711: Disable verifyPageMainMenuItemsTest UI test 2022-09-02 11:08:59 +00:00
sv-ohorvath 0a2d1c63f1 Issue #26286: adds UI test for the Language menu 2022-09-02 11:08:59 +00:00
Gabriel Luong 67d8a2c749 For #26776 - Don't dim the window when the Jump back in CFR is shown 2022-09-02 06:55:05 +00:00
Alexandru2909 03bc209dfd For #26191 - Add telemetry for jump back in onboarding message 2022-09-02 06:23:22 +00:00
sarah541 b432436859 For #26759 - Crash fix for UnsupportedOperationException 2022-09-02 03:22:22 +00:00
Gabriel Luong 4dfec35b73 For #26774 - Attempt to show the Synced Tab CFR before the Jump Back In CFR 2022-09-02 02:44:27 +00:00
mozilla-l10n-automation-bot d8c881a9f7
Import l10n. (#26779) 2022-09-02 00:36:57 +00:00
Gabriel Luong 9c2d4722ef For #26738 - Update MR onboarding with the latest illustrations 2022-09-01 22:22:08 +00:00
Gabriel Luong c43271fc0d For #26739 - Display MR onboarding dialog to existing users as soon as the app is opened 2022-09-01 21:31:44 +00:00
Gregory Mierzwinski 3033b26f67
Bug 1788643 - Add a nightly cron task for performance tests. (#26761)
* Bug 1788643 - Add a nightly cron task for performance tests.

* Fix bad function name.

* Run nightly-test cron manually.
2022-09-01 20:27:12 +00:00
Noah Bond bc6ec7a64e For #26609 - Update favicon dark mode background color for recent bookmarks and recent tabs 2022-09-01 18:50:07 +00:00
MickeyMoz 7dbdde3473 Update to Android-Components 106.0.20220901143315. 2022-09-01 13:01:12 -04:00
Gabriel Luong ca0cfd79e8 For #26756 - Don't show Jump Back In CFR if the synced tab CFR is shown 2022-09-01 15:57:12 +00:00
Gabriel Luong df2780cd01 For #26754 - Avoid showing CFR if the MR onboarding is being displayed 2022-09-01 15:07:14 +00:00
mergify afa661507b update initial_experiments.json based on the current first-run experiments in experimenter 2022-09-01 10:10:26 -04:00
Mugurell 93859d8560 For #26723 - Fix WallpapersObserver leaking a view from HomeFragment
The observer initialized with a fragment View would outlive the fragment and in
that allow for leaking the entire fragment layout.
2022-09-01 06:49:31 +00:00
Mugurell b7f9457cc4 For #26723 - Ensure wallpapers are set on the main thread
Using Dispatchers.IO allowed the observer to react faster to wallpaper state
updates but caused issues with updating the wallpaper in fragment layout.

Using Dispatchers.Main.immediate gives us a bit slower reaction time but still
faster than Dispatchers.Main and allows us to still execute before the fragment
is visible.
2022-09-01 06:49:31 +00:00
mozilla-l10n-automation-bot a7b4134e26
Import l10n. (#26749) 2022-09-01 00:37:46 +00:00
Gabriel Luong 3507f12484 For #26717 - Only show the MR onboarding dialog for existing users 2022-08-31 22:38:48 +00:00
MatthewTighe 8a9c68c872 Closes #26211: Download wallpapers when thumbnails clicked 2022-08-31 22:09:39 +00:00
MatthewTighe 2cd8a41ea5 Closes #26213: Add wallpaper use case to load thumbnails. 2022-08-31 22:09:39 +00:00
MatthewTighe 0d51d2b0f9 Closes #26214: Download wallpaper thumbnails at app startup 2022-08-31 22:09:39 +00:00
Noah Bond 7eb3278776 For #26607 - Update back plating for recent Bookmarks 2022-08-31 21:18:01 +00:00
mergify 58a1ae34ab update initial_experiments.json based on the current first-run experiments in experimenter 2022-08-31 16:41:11 -04:00
MickeyMoz 1b54a732fa Update to Android-Components 106.0.20220831190128. 2022-08-31 20:35:14 +00:00
Julien Cristau 6bee719969 mergify: auto-merge relbot PRs that target the main branch 2022-08-31 14:50:07 -04:00
mcarare 7cbe730b8a For #26444: Adapt Pocket 'powered by' text to wallpaper. 2022-08-31 17:57:20 +00:00
mcarare 186dee7e77 For #26444: Adapt HomeSectionHeader text colors to wallpaper. 2022-08-31 17:57:20 +00:00
mcarare 02be7600e8 For #26444: Replace SectionHeader with HomeSectionHeader for home sections. 2022-08-31 17:57:20 +00:00
mcarare 8a599bbf4e For #26444: Refactor HomeSectionHeader to have optional show all text. 2022-08-31 17:57:20 +00:00
MickeyMoz 310a029c37 Update to Android-Components 106.0.20220831143219. 2022-08-31 12:44:12 -04:00
Mugurell de7cf91d8a For #26450: Remove the star icon from Pocket sponsored stories 2022-08-31 15:27:01 +00:00
Alexandru2909 cedb777655 For #26706 - Add sponsored urls filter in BlocklistHandler 2022-08-31 13:03:38 +00:00
Alexandru2909 070bf5ac24 For #26706 - Change TopSite.containsQueryParameters as Uri extension function 2022-08-31 13:03:38 +00:00
mergify 2f1f6f3213 update initial_experiments.json based on the current first-run experiments in experimenter 2022-08-30 21:54:33 -04:00
mozilla-l10n-automation-bot 58b228575d
Import l10n. (#26720) 2022-08-31 00:40:51 +00:00
Aaron Train a719d3f764 No issue: Add is Test Lab helper 2022-08-30 18:36:42 +00:00
MickeyMoz 38eec4f5c4 Update to Android-Components 106.0.20220830143055. 2022-08-30 12:15:24 -04:00
Perry McManis 2d8ea17f47 For #26700 - URI counts will now additionally be sent in baseline 2022-08-30 16:01:50 +00:00
Lucius d26642b680 For #26093: Use `ic_menu` instead of `ic_close`
An override for History already exists in `HistoryListItemViewHolder`, so no global override for this icon is needed.
2022-08-30 10:20:19 -04:00
Aki Sasaki 5a2f9fe149 update bot name 2022-08-30 07:39:58 +00:00
Alexandru2909 22b8b873e1 For #26551 - Add telemetry for MR Onboarding welcome and sync dialogs. 2022-08-30 06:18:31 +00:00
mozilla-l10n-automation-bot 6ad87373ff
Import l10n. (#26703) 2022-08-30 00:41:37 +00:00
Gabriel Luong 036b0f8a8c For #26696 - Enable showSynCFR for Nightly 2022-08-29 22:55:42 +00:00
Jonathan Almeida 40cd58132e Close #25919: Move UpdateFirstFrameDrawn to RecyclerView.onLayoutCompleted
As part of a preventitive measure for home page regression loading, we
fixed the UpdateFirstFrameDrawn call to happen after the first layout in
the main RecyclerView is completed. In addition, we also make pocket
aware of this flag so that it renders itself after the first layout.

This helps prioritize current & future features that are visible first
to render before those that are off screen.

Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
2022-08-29 19:32:22 +00:00
Mugurell ab3f6b5e4b For #26555 - Observe and update the wallpaper before HomeScreen is visible.
By using Store.observeManually in a standalone coroutine we can observe the
store and update the wallpapers even before onStart (in manual tests is right
around onStart, certainly before the other widgets shown on homescreen).

Created a new WallpapersObserver to have the functionality easier to reason
about and be easier to test.
2022-08-29 18:38:46 +00:00
Gabriel Luong d314c1102b For #26693 - Use a new ID for onboarding_home_sync_title 2022-08-29 18:08:05 +00:00
MatthewTighe 853778e29a For #26511: load homescreen wallpaper in blocking coroutine 2022-08-29 17:33:13 +00:00
MickeyMoz 9c1f48c982 Update to Android-Components 106.0.20220829143136. 2022-08-29 12:18:25 -04:00
sv-ohorvath cad6c64236 No issue: disable TCP CFR in screenshots tests 2022-08-29 15:58:26 +00:00
sarah541 890a950f66 For #26489 - Add synced tab pickup onboarding message 2022-08-29 15:20:07 +00:00
sv-ohorvath d49c87f66d Issue #26286: adds delete browsing data UI tests 2022-08-29 14:15:37 +00:00
mozilla-l10n-automation-bot 82e86a8c54
Import l10n. (#26681) 2022-08-29 09:52:17 +00:00
MickeyMoz 8bc9c9b64c Update to Android-Components 106.0.20220828143157. 2022-08-28 12:26:07 -04:00
MickeyMoz 81a95a58ac Update to Android-Components 106.0.20220827143345. 2022-08-27 13:30:45 -04:00
MickeyMoz 7fff3ee07f Update to Android-Components 106.0.20220826190145. 2022-08-26 20:26:48 -04:00
Charlie Humphreys 97a346f7c4 rename usage of action repo 2022-08-26 20:15:18 +00:00
Gabriel Luong f6550f0fed For #26668 - Use the correct string for onboarding_home_sync_title 2022-08-26 19:40:33 +00:00
Roger Yang 6933719877 For #26227: Clean up double exclamation operator in BrowserState 2022-08-26 18:48:53 +00:00
Roger Yang da06df4d99 Close #26666: Use correct content scale when displaying recent tab thumbnail and icon 2022-08-26 17:51:29 +00:00
Roger Yang f8f8b4f813 Close #21702: Update host name check in add login
Co-Authored-By: joaopmatos <89925580+joaopmatos@users.noreply.github.com>
2022-08-26 17:08:15 +00:00
MickeyMoz 75a148b882 Update to Android-Components 106.0.20220826143117. 2022-08-26 12:06:58 -04:00
Johan Lorenzo 886a6fa87a chore: Bump taskgraph to v3.0.0 2022-08-26 15:40:49 +00:00
Alexandru2909 21d3d0f8f0 For #26190 - Update jump back in cfr logic and message 2022-08-26 08:45:31 +00:00
Gabriel Luong 1c77d8a978
For #26656 - Use the correct string for onboarding_home_welcome_description (#26657)
* For #26656 - Use the correct string for onboarding_home_welcome_description

* Update app/src/main/res/values/strings.xml

Co-authored-by: Sarah541 <sarahkhan1107@hotmail.com>

Co-authored-by: Sarah541 <sarahkhan1107@hotmail.com>
2022-08-26 03:15:47 +00:00
mozilla-l10n-automation-bot 3048a05a56
Import l10n. (#26654) 2022-08-26 00:59:47 +00:00
MickeyMoz 0cd2c560b2 Update to Android-Components 106.0.20220825190307. 2022-08-25 16:56:21 -04:00
Noah Bond bd36b31e5c For #26608 - Update recent bookmarks homepage title 2022-08-25 20:55:50 +00:00
Mugurell 5b083f5edd For #26646 - Use unescaped typographic apostrophes instead of escaped quotes 2022-08-25 19:36:27 +00:00
Gabriel Luong 9a64acd4b6 For #26169 - MR Home Onboarding Dialog for upgrading users 2022-08-25 18:22:35 +00:00
MickeyMoz 2d99dbb1c5 Update to Android-Components 106.0.20220825143119. 2022-08-25 12:16:05 -04:00
gmierz 938067a365 Undo testing changes. 2022-08-25 13:22:34 +00:00
gmierz 981f3fd370 Set symbol properly. 2022-08-25 13:22:34 +00:00
gmierz d940a1704c Fix bad line 2. 2022-08-25 13:22:34 +00:00
gmierz f3be0ad09a Fix bad line. 2022-08-25 13:22:34 +00:00
gmierz b79e2684e7 Fix missing variable. 2022-08-25 13:22:34 +00:00
gmierz e6f0e1aa56 Test changes. 2022-08-25 13:22:34 +00:00
gmierz 37869ec321 Bug 1784122 - Add non-fission variant for Fenix perf tests. 2022-08-25 13:22:34 +00:00
Mugurell b16e69105c For #26224 - Disable the TCP CFR in failing UI tests 2022-08-25 12:30:10 +00:00
Mugurell 00d2a9d402 For #26224 - metrics.yaml cleanup of unneeded newlines 2022-08-25 12:30:10 +00:00
Mugurell 67a55fe089 For #26224 - TCP CFR telemetry 2022-08-25 12:30:10 +00:00
Mugurell f4b823b43b For #26224 - Use the mr2022.sectionsEnabled.tcp-cfr Nimbus feature to display the cfr 2022-08-25 12:30:10 +00:00
Mugurell 4286606d8f For #26224 - New TCP CFR popup
If Total Cookie Protection is enabled when first accessing a normal tab
(not a custom tab) a new Contextual Feature Recommendation popup will be shown
informing about the added protection and allowing the user to open a support
page with more data about the new option for privacy protection.
2022-08-25 12:30:10 +00:00
Mugurell fc6ee3e3d9 For #18175 - Add telemetry for cookies option in custom ETP. 2022-08-25 10:05:11 +00:00
Mugurell bf23a2a6b9 For #18175 - Add a new total protection ETP cookies policy
This should only add the new option in settings based on a Nimbus experiment.
2022-08-25 10:05:11 +00:00
mozilla-l10n-automation-bot faa30e9c0e
Import l10n. (#26636) 2022-08-25 00:50:25 +00:00
Ryan VanderMeulen e162fe7348 Set the Gradle max heap size to 7g
Github Actions workers only have 7GB available, so the 8GB limit is causing crashes in that environment.
2022-08-24 21:30:37 +00:00
mergify e1b055a0ec update initial_experiments.json based on the current first-run experiments in experimenter 2022-08-24 16:36:04 -04:00
Gabriel Luong da677dd650 For #26620 - Replace the onboarding nimbus feature with MR2022 nimbus feature 2022-08-24 19:46:18 +00:00
Noah Bond 9779a544a9 For #26604 - Add missing preview to RecentTabs 2022-08-24 19:10:41 +00:00
Bryan Olsson 7e6a1c7f9f For #26556 - Add skr and tok native/English display names 2022-08-24 18:28:47 +00:00
Mugurell 19831e5c79 For #26584 - Add vertical offset support to the CFR composable. 2022-08-24 17:57:34 +00:00
Mugurell 5854735891 For #26584 - Add support to align the CFR composable inside a wider anchor
Supported anchorings will now be:
- INDICATOR_CENTERED_IN_ANCHOR - previous functionality - allows to have the
indicator point to exactly the middle of a smaller anchor.
- BODY_TO_ANCHOR_CENTER - new default - allows to align the popup inside a
wider anchor
- BODY_TO_ANCHOR_START - new anchoring - allows to align the popup flushed to
it's anchor's start.
2022-08-24 17:57:34 +00:00
Noah Bond c37cfc5b01 For #26605 - Clean up RecentTabViewHolder 2022-08-24 17:05:45 +00:00
MickeyMoz 9a858688e3 Update to Android-Components 106.0.20220824133606. 2022-08-24 12:02:31 -04:00
AndiAJ c63150332e For #26144 new credit card autofill UI smoke tests 2022-08-24 15:00:23 +00:00
AndiAJ a4fbf4c1f1 For #26144 new address autofill UI smoke tests 2022-08-24 15:00:23 +00:00
Alexandru2909 b29b5049aa For #26400 - Add long-press option to remove tab pickup on homescreen 2022-08-24 12:42:44 +00:00
Jonathan Almeida 9fe10e8a2b Closes #26615 Add nimbus configuration feature flags for MR 2022 2022-08-24 10:18:56 +00:00
mcarare a0ebbe0c7b For #26401: Remove unused wallpaper metrics.
Remove wallpaper_switched and change_wallpaper_logo_toggled.
Add lint ignore for common prefix in wallpaper metrics.
2022-08-24 09:49:06 +00:00
mozilla-l10n-automation-bot 203d7b28bf
Import l10n. (#26619)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-08-24 03:12:56 +00:00
MickeyMoz 3f8fe42506 Update to Android-Components 106.0.20220823190131. 2022-08-23 21:07:37 -04:00
sv-ohorvath fd4ea5ae58 No issue: increase flaky tests attempts on Nightly tests 2022-08-23 21:01:20 +00:00
MickeyMoz e87cebc85f Update to Android-Components 106.0.20220823152515. 2022-08-23 13:28:15 -04:00
Ryan VanderMeulen 627447a387 Use parallel execution for Gradle 2022-08-23 16:40:48 +00:00
Alexandru2909 43e629b7fb For #26398 - Filter recent synced tabs using the homescreen blocklist 2022-08-23 13:00:44 +00:00
mozilla-l10n-automation-bot 7944e442a5
Import l10n. (#26592) 2022-08-23 00:39:56 +00:00
MatthewTighe 299f887953 Add updated wallpaper use cases and activate them with feature flag. 2022-08-22 23:07:14 +00:00
MatthewTighe 02dda42cb6 Add updated downloader and file manager 2022-08-22 23:07:14 +00:00
Roger Yang ad1fd57b8f Close #26072: Don't show sync menu item until account manager is available 2022-08-22 22:19:57 +00:00
Noah Bond a9b2f1c6a7 For #26587 - Replace the color in DefaultImagePlaceholder with FirefoxTheme layer2 2022-08-22 21:44:26 +00:00
Noah Bond 45f998ee95 For #26587 - Fix broken previews using Fenix Image composable 2022-08-22 21:44:26 +00:00
MickeyMoz 7a3a52e475 Update to Android-Components 106.0.20220822190107. 2022-08-22 17:08:51 -04:00
Charlie Humphreys fa3c83bcb0 add about block to nimbus.fml.yaml 2022-08-22 19:47:11 +00:00
Ryan VanderMeulen 213f76833c Update version.txt to 106.0b1 2022-08-22 14:11:39 -04:00
Gabriel Luong 620ced08c9 For #26579 - Remove all unused strings marked moz:removedIn <= 103 2022-08-22 18:10:38 +00:00
Julien Cristau 6d7ecb5dbb
Let relbot update A-C on trunk (#26553)
* Let relbot update A-C on trunk

We already use relbot for this on fenix release branches and on all
branches for focus-android, so might as well avoid the duplication.

* Update mergify rules to auto-merge AC bumps from relbot on the main branch
2022-08-22 18:18:49 +02:00
MickeyMoz 4ad4937ba4 Update Android Components version to 105.0.20220822142319. 2022-08-22 15:58:56 +00:00
Julien Cristau 1750240bc6 mergify: squash l10n PRs
One commit per locale is quite noisy; a single commit per update also
matches what happens on desktop.
2022-08-22 09:10:34 -04:00
Alexandru2909 e2f1c5fc9c For #26399 - Use a list of tabs for recent synced tabs success state 2022-08-22 07:21:36 +00:00
MickeyMoz 77b959ec97 Update Android Components version to 105.0.20220821161547. 2022-08-21 18:16:31 +00:00
Mozilla L10n Automation Bot c58634fa7c Import l10n. 2022-08-21 00:41:17 +00:00
MickeyMoz d475c707a6 Update Android Components version to 105.0.20220820143102. 2022-08-20 16:46:12 +00:00
Mozilla L10n Automation Bot 4777f03d9a Import l10n. 2022-08-20 00:36:37 +00:00
mike a cb3f620507 Closes #26530: add top spacing to header in history list 2022-08-19 19:41:43 +00:00
Gabriel Luong 6a7f9075ad For #26549 - Add Nimbus feature flag for first run onboarding page updates and Jump back in CFR 2022-08-19 19:06:34 +00:00
Julien Cristau 8c0945db3b update_android_components: don't create an empty PR if we couldn't push 2022-08-19 18:27:19 +00:00
Ryan VanderMeulen 5950157911 Add more Gradle JVM memory flags. 2022-08-19 13:27:43 -04:00
Mugurell c3c2a4f6af For #26545 - Update the indicator and the close button of the CFR composable. 2022-08-19 17:01:46 +00:00
Mugurell 1332d408da For #26380 - Wait in tests until telemetry is recorded. 2022-08-19 16:26:21 +00:00
MickeyMoz 862d74587c Update Android Components version to 105.0.20220819133109. 2022-08-19 15:07:17 +00:00
sv-ohorvath fb8d22e37b Issue #26127, #26092: Ads RetryTestRule to TopSitesTest class, other small refactors 2022-08-19 07:44:18 +00:00
mike a 8e4effe70a Revert "Closes #25967: add classes to support multiple viewHolders"
This reverts commit f910fcfe76.
2022-08-19 01:52:15 +00:00
Mozilla L10n Automation Bot 9d127817d0 Import l10n. 2022-08-19 00:47:36 +00:00
mike a c90debfe15 Revert "Closes #24307: add synced history empty fragment, feature flag and history screen showing only local files 2022-08-18 22:33:07 +00:00
Gabriel Luong 5f2ebf8125 For #26528 - Add a nimbus feature flag for MR Home Onboarding Dialog 2022-08-18 21:30:37 +00:00
mike a 3434c702de Closes #26502: add isLocal parameter for history openItem telemetry event 2022-08-18 20:36:04 +00:00
Ryan VanderMeulen 4bb0e68d29
Set the gradle memory limit to 8GB. 2022-08-18 16:00:24 -04:00
Ryan VanderMeulen 7466d4a234 Set the gradle memory limit to 12GB.
We're seeing intermittent crashes with 16GB, so let's try 12GB instead.
2022-08-18 18:59:48 +00:00
Noah Bond 9d4c975c68 For #26517 - Create wallpaper v2 feature flag 2022-08-18 18:18:34 +00:00
MickeyMoz f5695e8418 Update Android Components version to 105.0.20220818143133. 2022-08-18 12:45:09 -04:00
AndiAJ d7c21755f3 For #26074 fix failing settingsTest screen shot UI test 2022-08-18 16:22:52 +00:00
MatthewTighe 532156bed6 For #26423: add wallpaper metadata fetcher 2022-08-18 15:45:00 +00:00
Ryan VanderMeulen bb44bfb72c Bump the gradle memory limit to 16GB. 2022-08-18 11:10:00 -04:00
AndiAJ 96c8bde3fd For #26144 new verifySponsoredShortcutsListTest UI test 2022-08-18 15:07:16 +00:00
Noah Bond 81dae89969 No issue: Remove code to generate tab group size metrics 2022-08-18 14:12:02 +00:00
Mugurell edff593ee6 For #26335: Disable tests for the number of inflations.
These fail in Firebase with different values making the test intermittent.
2022-08-18 13:40:09 +00:00
Mugurell 1f562fe927 For #26335: Allow for more inflations in performance tests
The first patch for this enabled the contile feature by default which based on
the automated tests increased the number of inflations done in HomeActivity.
This patch comes to address that by allowing for up to 6 inflations as seen
reported as the actual count in tests.
2022-08-18 13:40:09 +00:00
mergify 765c3e0b99 update initial_experiments.json based on the current first-run experiments in experimenter 2022-08-17 22:06:32 -04:00
Mozilla L10n Automation Bot 6e18cb1043 Import l10n. 2022-08-17 21:07:46 -04:00
Alexandru2909 0c6cf5f6a8 For #26335: Enable sponsored shortcuts by default 2022-08-17 12:57:40 -04:00
MickeyMoz 395c404f07 Update Android Components version to 105.0.20220817134040. 2022-08-17 11:40:01 -04:00
Jonathan Almeida 94ff169a30 Close #26495: Move Huawei checks to ManufacturerCodes 2022-08-17 14:52:57 +00:00
Mozilla L10n Automation Bot 32b635d5c8 Import l10n. 2022-08-17 00:52:37 +00:00
MatthewTighe 7bfd6caa5b For #26423: simplify wallpaper types to single data class 2022-08-16 21:12:21 +00:00
MatthewTighe ab306f0ab9 Fixes #26124: recent synced tab will use preview image URLs from history 2022-08-16 20:30:22 +00:00
sunilk9211 db47f4182d For #25985: Remove ability to click the logo to change the wallpaper 2022-08-16 19:11:39 +00:00
mavduevskiy 40ef60ca87 Revert "Closes #25942: use HistoryFragment to show synced history"
This reverts commit 6483e1c647.
2022-08-16 18:42:34 +00:00
MickeyMoz 537ad92520 Update Android Components version to 105.0.20220816141652. 2022-08-16 13:12:45 -04:00
Mugurell f96f8465ad For #26414 - Have the Pocket spocs feature as part of the homescreen sections experiments 2022-08-16 14:35:35 +00:00
sarah541 0b0e31aae8 For #26421 - Extract synced tabs into it's own viewholder 2022-08-16 04:12:55 +00:00
indu 979862357d For #26037: Open shared FireFox tab from another device in Firefox browser
This fix will allow the tab that's being shared from a device to open in FireFox browser in the device  that receives the tab, even if another browser is set as default in the destination device.

Co-Authored-By: Mugurell <Mugurell@users.noreply.github.com>
2022-08-15 21:16:10 -04:00
Mozilla L10n Automation Bot 7d0c09fb3e Import l10n. 2022-08-16 01:07:57 +00:00
Roger Yang 85f8a1f3ee Close #26150: Do not show sync tabs in home when sync open tabs setting is disabled 2022-08-16 00:15:11 +00:00
mike a 9baf0db8db Closes #26446: add wallpaper oboarding Nimbus flag 2022-08-15 23:21:25 +00:00
Gabriel Luong 8260702a3d No issue - Use the onboarding description in nimbus.fml.yaml 2022-08-15 17:17:23 -04:00
MickeyMoz ea4bdec8d2 Update Android Components version to 105.0.20220815143121. 2022-08-15 16:38:07 +00:00
Mozilla L10n Automation Bot c9c7e2f3b8 Import l10n. 2022-08-15 13:24:51 +00:00
MickeyMoz f6f21f98a8 Update Android Components version to 105.0.20220814143053. 2022-08-14 16:45:09 +00:00
Mozilla L10n Automation Bot e4ee87a614 Import l10n. 2022-08-14 00:40:15 +00:00
MickeyMoz f52f6b4e22 Update Android Components version to 105.0.20220813143108. 2022-08-13 12:44:46 -04:00
Mozilla L10n Automation Bot a28ffd76bd Import l10n. 2022-08-13 15:55:23 +00:00
MickeyMoz b4bc3918a8 Update Android Components version to 105.0.20220812143059. 2022-08-12 19:26:31 +00:00
Gabriel Luong a98868d791 For #26412 - Remove try catch for NimbusFeatureException from FxNimbus value() getter 2022-08-12 16:05:23 +00:00
sarah541 bbb602a2fd For #26308 - Add feature flag for MR onboarding 2022-08-12 15:01:33 +00:00
sv-ohorvath cffce104cf Issue ##26361: randomize shortcut titles to avoid data overlapping 2022-08-12 12:26:07 +00:00
AndiAJ 6bab84f565 For #26144 new cancelDeleteAllHistoryTest UI test 2022-08-12 08:15:35 +00:00
AndiAJ 323da3b459 For #26144 refactor deleteAllHistoryTest UI test 2022-08-12 08:15:35 +00:00
Mugurell e74742a3e6 For #25602: Lowercase search engine id when recording telemetry 2022-08-12 06:41:29 +00:00
Alexandru2909 c268161311 For #26115 - Change homescreen Show all button color according to wallpaper 2022-08-12 00:55:43 +00:00
Charlie Humphreys b33abbbec2 change name for isFirstRun to isFirstNimbusRun and move setter to after experiments are set 2022-08-12 00:24:28 +00:00
Charlie Humphreys 1ce99506ad update isFirstRun to be manually set and set experiments locally on first run 2022-08-12 00:24:28 +00:00
Charlie Humphreys 9b8ffbc8c1 Add workflow to download Nimbus early experiments 2022-08-11 21:35:14 +00:00
Mickey Moz 580ec1d7ff
Update Android Components version to 105.0.20220811143056. (#26440)
Co-authored-by: Donal Meehan <76789979+DonalMe@users.noreply.github.com>
2022-08-11 15:13:53 -04:00
isabelrios 33406ac245 use python 3.10 2022-08-11 15:31:37 +00:00
isabelrios ae21e63f8b For #26390 Upgrade to Python3 2022-08-11 15:31:37 +00:00
MatthewTighe 72959901d8 Fixes #26245: refactor the WallpaperManager as several WallpaperUseCases 2022-08-11 14:56:49 +00:00
Jonathan Almeida d0c21c06aa Close #26041: Remove un-needed Nimbus workaround
This workaround was temporary and is not needed with the Nimbus groovy
plugin updates in Android Components.
2022-08-11 10:13:19 -04:00
Roger Yang 4204c43236 Close #26198: Add debounce to account manager syncs 2022-08-10 21:06:29 +00:00
Mozilla L10n Automation Bot f356df785c Import l10n. 2022-08-10 07:26:01 +00:00
rxu 2a30213fc1 Add "manage account and devices" button to home menu in mozillaonline builds 2022-08-10 06:50:08 +00:00
Noah Bond a77375a363 For #22558 - Fix private theme bug in Tabs Tray 2022-08-09 21:08:38 +00:00
Jonathan Almeida f03ee91ecb Close #26041: Re-set TrackingProtectionPolicy after Nimbus SDK is initialized
There are three issues here that we have uncovered while investigating
this bug:

 1. Settings.kt has a lazy block around `enabledTotalCookieProtection`
    which ends up caching the first result it evaluates.
 3. The `FeatureHolder` within FxNimbus caches the incorrectly
    evaluated value and returns this value hence forth.
 4. Nimbus is not ready to return a result for an engine experiment
    when we need it early on in the dependency tree initialization.

There are multiple systems that require engine to be initialized for
 them to work (e.g. Glean, Profiler, concept-fetch). In our TCP,
 experiment, we need to apply these engine settings during the engine
 initialization. So when we try and evaluate Nimbus that early on, it
 has not had time to initialize itself correctly or even use the
 engine's concept-fetch client to return the correct experiment result.
 This bug is made worse because of the first two caching bugs where we
 are always holding onto a cached value of the wrong result.

Our temporary solution is to:

 1. Remove the `lazy` around `Settings.enabledTotalCookieProtection`.
 2. Set the `FxNimbus.api` value right after we are done initializing
    `FxNimbus` and `NimbusApi` so that all future queries to FxNimbus
    will be made against a real instance of `NimbusApi`. This is a
    short-term fix for the `FeatureHolder` caching bug.
 3. Set a new TrackingProtectionPolicy that will evaluate Nimbus now
    that it is in the correct state when receive the
    `NimbusInterface.Observer.onUpdatesApplied`.

Co-authored-by: jhugman <jhugman@users.noreply.github.com>
Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
2022-08-09 19:33:00 +00:00
MatthewTighe 29a8c33ba5 Fixes #26377: re-open already opened recent synced tabs 2022-08-09 19:00:40 +00:00
MickeyMoz b3fa1b0e81 Update Android Components version to 105.0.20220809141528. 2022-08-09 16:43:27 +00:00
Mozilla L10n Automation Bot 37745eb83d Import l10n. 2022-08-09 10:12:58 +00:00
Noah Bond db0162465b For #26289 - Remove search term tab groups metrics and setting 2022-08-08 18:16:33 +00:00
MickeyMoz 8e3d64f71c Update Android Components version to 105.0.20220808143406. 2022-08-08 12:51:06 -04:00
rudmannn 8e8ea5e57a
Fix #26362: Use app:lineHeight to support API Level <= 27 (#26364)
* Fix android:lineHeight

Change android:lineHeight to app:lineHeight for incompatibilities at API Level <= 27

* Fix android:lineHeight (Part 2)

Change android:lineHeight to app:lineHeight for fixing incompatibilities in custom_search_engine

* Change android:lineHeight (Part 3)

Change android:lineHeight to app:lineHeight in settings_https_only for incompatibilities at API Level <= 27

* cleanup lint-baseline.xml

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-08-08 12:12:18 -04:00
Jan-Erik Rediger 06488cdabe Move startup perf measurements to a background thread
This is required to avoid loading the Glean core library (provided by libxul) early on.
Fenix needs to do the time measurement itself for now.
2022-08-08 14:10:36 +00:00
Alexandru2909 1a2b357119 For #26302 - Change header text height to wrap_content for autofill add/edit screens 2022-08-08 05:37:09 +00:00
Mozilla L10n Automation Bot 9255d351fd Import l10n. 2022-08-08 00:39:10 +00:00
MickeyMoz 25d2233e35 Update Android Components version to 105.0.20220807143114. 2022-08-07 16:34:25 +00:00
Mozilla L10n Automation Bot 4f77d2966b Import l10n. 2022-08-07 00:43:28 +00:00
MickeyMoz 0ed165d3f7 Update Android Components version to 105.0.20220806154436. 2022-08-06 17:18:04 +00:00
Mozilla L10n Automation Bot 4379b06288 Import l10n. 2022-08-06 00:39:20 +00:00
Mugurell 624ffa79e1 For #26236: Update Android Components version which introduces the api change 2022-08-05 15:25:39 +00:00
indu 1488e8e87b For #26236: Fix breaking change from AC regarding exitImmersiveModeIfNeeded
This will allow Fenix to use the refactored method name 'exitImmersiveMode' in Activity from Android Components library

Co-Authored-By: Mugurell <Mugurell@users.noreply.github.com>
2022-08-05 15:25:39 +00:00
Mozilla L10n Automation Bot 926daabe1f Import l10n. 2022-08-05 00:40:01 +00:00
AndiAJ c356982a4d For #26144 new App-like experience in PWAs UI test 2022-08-04 19:28:09 +00:00
Mickey Moz 20911100d9
Update Android Components version to 105.0.20220804143845. (#26319) 2022-08-04 13:00:07 -04:00
AndiAJ 9a6d7f5bbd For #26286 new verifyRemoveTopSiteFromMainMenu UI test 2022-08-04 14:35:34 +00:00
AndiAJ 7e06d48bcb For #25926 disable failing mainMenuOpenInAppTest UI test 2022-08-04 11:54:48 +00:00
Mozilla L10n Automation Bot dd563b19f0 Import l10n. 2022-08-04 01:10:03 +00:00
Noah Bond 8656fd48eb For #26227 - Remove search term tab groups from Jump Back In 2022-08-04 00:10:47 +00:00
Mugurell aa992263d6 For #26172 - New CFR popup composable
This will allow for pinpoint accuracy when anchoring and resolve any color
disparities between the popup body and the indicator arrow by having everything
drawn programmatically as one shape.

Because of the async nature of the values for insets and screen rotation
immediately after an orientation change the popup will automatically get
dismissed to prevent any anchoring issues.
While not ideal the effect of this is better than accepting layout issues after
orientation changes and is the same approach used for other of our popups.
2022-08-03 19:04:31 +00:00
MickeyMoz 577ec0b659 Update Android Components version to 105.0.20220803135114. 2022-08-03 15:55:32 +00:00
KNS f96c77a5a0
Bug 1780858 - Run a51 browsertime tests on Fenix branch (#26152)
* Add a51 platform and worker

* Run on pull request

* Remove on-pull-request

* Add correct matching platform for A51

* Remove github-pull-request

Co-authored-by: KS <kshampur@MacBook-Pro.local>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-08-03 12:33:45 +00:00
Alexandru2909 ec4ad984c2 For #26239 - Avoid displaying multiple download items for the same file 2022-08-03 11:49:42 +00:00
AndiAJ f239a24d48 For #26286 new undoDeleteHistoryItemTest UI test 2022-08-03 05:51:31 +00:00
Christian Sadilek 7ddc50017e Revert "For #26227 - Remove search term tab groups from Jump Back In"
This reverts commit fa00527dc6.
2022-08-03 02:39:42 +00:00
Christian Sadilek b24650c449 Revert "For #26227 - Remove search term tab groups from Recently Visited"
This reverts commit c45e4b4ac5.
2022-08-03 02:39:42 +00:00
Arturo Mejia bddac731d5 For #26283: Use message buttonLabel in MessageCard. 2022-08-03 01:54:13 +00:00
Mozilla L10n Automation Bot 4ee1b6da9e Import l10n. 2022-08-03 00:36:46 +00:00
Noah Bond c45e4b4ac5 For #26227 - Remove search term tab groups from Recently Visited 2022-08-02 22:46:10 +00:00
Noah Bond fa00527dc6 For #26227 - Remove search term tab groups from Jump Back In 2022-08-02 22:46:10 +00:00
MatthewTighe 9fb6eeb8cf Fixes: #26052 remove WallpaperManager::updateWallpaper 2022-08-02 21:33:54 +00:00
MickeyMoz cedb040e84 Update Android Components version to 105.0.20220802143107. 2022-08-02 17:00:22 +00:00
Alexandru2909 acf9206fe1 For #25837 - Invalidate cached nimbusValidation values when changing locale settings 2022-08-02 07:45:13 +00:00
Mozilla L10n Automation Bot 1cf34a5ac4 Import l10n. 2022-08-02 01:35:29 +00:00
MickeyMoz 4982f7ccef Update Android Components version to 105.0.20220801222259. 2022-08-02 00:05:41 +00:00
MickeyMoz 01a0399190 Update Android Components version to 105.0.20220801143302. 2022-08-01 13:27:10 -04:00
Johan Lorenzo fcb5acb53a Bug 1781248 - part 5: Fix title of release promotion task 2022-08-01 17:20:58 +00:00
Johan Lorenzo b5ec15b0ab Bug 1781248 - part 4: Add another email notification when the ship phase is over 2022-08-01 17:20:58 +00:00
Johan Lorenzo 4334e982bf Bug 1781248 - part 3: Add email notification when the promote phase is over 2022-08-01 17:20:58 +00:00
Johan Lorenzo 417ece7d4d Bug 1781248 - part 2: Remove `version` and `next_version` from extended parameters
now that they are part of standalone taskgraph
2022-08-01 17:20:58 +00:00
Johan Lorenzo e0b748d8ac Bug 1781248 - part 1: Bump taskgraph to version 2.0.0 2022-08-01 17:20:58 +00:00
AndiAJ 39a4a7c275 For #25926 disable failing testDownloadPrompt UI test 2022-08-01 10:07:14 +00:00
Mozilla L10n Automation Bot c80195064f Import l10n. 2022-08-01 00:39:20 +00:00
MickeyMoz 7ea63280a8 Update Android Components version to 105.0.20220731143130. 2022-07-31 16:49:45 +00:00
Mozilla L10n Automation Bot b57ff63707 Import l10n. 2022-07-31 00:45:15 +00:00
MickeyMoz 1deecaae7b Update Android Components version to 105.0.20220730143045. 2022-07-30 16:40:23 +00:00
Mozilla L10n Automation Bot 77a6381520 Import l10n. 2022-07-30 00:42:27 +00:00
MatthewTighe 767d604315 Fixes #26029: Add wallpaper state to AppStore 2022-07-29 22:18:19 +00:00
MickeyMoz a167194697 Update Android Components version to 105.0.20220729143111. 2022-07-29 16:48:11 +00:00
Alexandru2909 7d85a9d274 For #26221 - Use favicon instead of ic_globe for composed tab grid item 2022-07-29 13:06:48 +00:00
Mozilla L10n Automation Bot 5e58ace753 Import l10n. 2022-07-29 00:42:02 +00:00
mike a 6483e1c647 Closes #25942: use HistoryFragment to show synced history 2022-07-28 20:53:36 +00:00
MickeyMoz 586aca8924 Update Android Components version to 105.0.20220728143105. 2022-07-28 16:40:46 +00:00
Mozilla L10n Automation Bot cf21e02182 Import l10n. 2022-07-28 00:38:34 +00:00
MickeyMoz 4128ec5fef Update Android Components version to 105.0.20220727204709. 2022-07-27 18:53:38 -04:00
Roger Yang 015b79f833 For #26061: Make sure favicons are cropped correctly 2022-07-27 22:11:13 +00:00
mcarare 11a7085e46 For #26197: Cancel history list update on fragment destroyed. 2022-07-27 18:06:56 +00:00
MickeyMoz b605ee0a8e Update Android Components version to 105.0.20220727143123. 2022-07-27 16:39:14 +00:00
Mozilla L10n Automation Bot d48bb493e7 Import l10n. 2022-07-27 00:48:42 +00:00
mike a 063a09782a Issue #26101: add telementry for deleting history time range 2022-07-26 20:59:16 +00:00
MickeyMoz b0acb01f6e Update Android Components version to 105.0.20220726143051. 2022-07-26 12:58:16 -04:00
mcarare 4f18bcd488 For #22692: Remove Metropolis font file issues from baseline lint. 2022-07-26 16:39:29 +00:00
mcarare 4b5b15aa53 For #22692: Remove Metropolis font. 2022-07-26 16:39:29 +00:00
Gabriel Luong db38b722a2 For #26180 - Renew telemetry expiring in 106 2022-07-26 15:58:27 +00:00
Alexandru2909 335159cef5 For #25891 - Move GridViewHolder to compose 2022-07-26 09:17:09 +00:00
sv-ohorvath 263e4d819b Issue #25970: wait for homescreen to exist before scrolling 2022-07-26 08:28:08 +00:00
Gabriel Luong 8f51a9968a For #26026 - Refactor the FenixTabCounterMenu creation from HomeFragment to TabCounterBuilder 2022-07-26 05:41:42 +00:00
Gabriel Luong ac51c345e7 For #26182 - Remove all unused strings marked moz:removedIn <= 102 2022-07-26 02:29:54 +00:00
Mozilla L10n Automation Bot 74d143721c Import l10n. 2022-07-26 01:52:49 +00:00
Gabriel Luong 352591805e Update version.txt to 105.0b1 2022-07-26 01:16:03 +00:00
MickeyMoz 84ca7a1f53 Update Android Components version to 105.0.20220725212705. 2022-07-25 23:35:03 +00:00
mike a ed152a31c1 Closes #26174: remove escapes from the typographic quotes 2022-07-25 19:30:19 +00:00
mike a a475541be2 Closes #26174: fix delete time range prompt text punctuation 2022-07-25 19:30:19 +00:00
Gabriel Luong 4ab1832e57 For #26167 - Check the QA Needed checkbox by default 2022-07-25 17:54:59 +00:00
MickeyMoz 5ea119ad1f Update Android Components version to 104.0.20220725143152. 2022-07-25 16:05:23 +00:00
Johan Lorenzo 8722993e79 Bug 1780740 - part 4: Make the MickeyMoz rule handle A-C updates for both main and release branches 2022-07-25 13:22:54 +02:00
Johan Lorenzo 615735877e Bug 1780740 - part 3: Remove Mergify release automation rules because they will be combined with the MickeyMoz one 2022-07-25 13:22:54 +02:00
Johan Lorenzo e6a99f19d2 Bug 1780740 - part 2: Don't automatically approve a bump if any other files than AndroidComponents.kt are changed 2022-07-25 13:22:54 +02:00
Johan Lorenzo 04691431bd Bug 1780740 - part 1: Don't automerge if Gecko.kt changes since this file was removed in https://github.com/mozilla-mobile/fenix/pull/4297 2022-07-25 13:22:54 +02:00
Mozilla L10n Automation Bot 4ec71c3aba Import l10n. 2022-07-25 00:43:30 +00:00
MickeyMoz f0f06eb9a9 Update Android Components version to 104.0.20220724143140. 2022-07-24 16:48:55 +00:00
Mozilla L10n Automation Bot 7c4e087749 Import l10n. 2022-07-24 00:39:21 +00:00
MickeyMoz c9365e9d95 Update Android Components version to 104.0.20220723143127. 2022-07-23 21:15:19 +00:00
Mozilla L10n Automation Bot 75864cca82 Import l10n. 2022-07-23 00:41:38 +00:00
MickeyMoz 8f06aad310 Update Android Components version to 104.0.20220722143220. 2022-07-22 18:21:46 +00:00
Gabriel Luong 1e43c4474c For #26146 - Use the correct moz:removedIn version in @string/delete_browsing_data_prompt_message 2022-07-22 16:28:53 +00:00
Gabriel Luong 540d39619f Update app/metrics.yaml 2022-07-22 14:54:02 +00:00
Alexandru2909 2345eb22a8 For #26089 - Record metrics for save credit card prompt shown 2022-07-22 14:54:02 +00:00
Gabriel Luong b4cf80a86d No issue - commit experimenter.yaml 2022-07-22 14:07:52 +00:00
Mozilla L10n Automation Bot fa8e4a7cc6 Import l10n. 2022-07-22 00:48:41 +00:00
MickeyMoz ea94b6c8e2 Update Android Components version to 104.0.20220721182501. 2022-07-21 20:07:58 +00:00
MickeyMoz ce92a0ab3b Update Android Components version to 104.0.20220721143105. 2022-07-21 17:18:31 +00:00
Gabriel Luong 7603d6db66 For #26134 - Add parameter description for @string/delete_all_history_group_prompt_message 2022-07-21 15:58:22 +00:00
Johan Lorenzo 6a14c89e7f Bug 1777255 - part 3: Bump fenix-beta-version Github Action to support new version numbers 2022-07-21 09:05:18 +00:00
Gabriel Luong ff15d4fcd0 For #26121 - Renew telemetry expiring in 105 2022-07-21 05:05:19 +00:00
Mozilla L10n Automation Bot 15a870c356 Import l10n. 2022-07-21 00:43:17 +00:00
mike a 7982c6b79f Close #25954: add a new delete time range confirmation dialog for history screen 2022-07-20 21:01:14 +00:00
Gabriel Luong bfd0eb7306 For #26113 ⁃ Enable address autofill in all channels 2022-07-20 20:31:51 +00:00
MickeyMoz 730f66fa97 Update Android Components version to 104.0.20220720144326. 2022-07-20 18:48:28 +00:00
Mickey Moz de99405830
Update Android Components version to 104.0.20220719143125. (#26112)
Co-authored-by: Ryan VanderMeulen <rvandermeulen@mozilla.com>
2022-07-20 12:50:09 -04:00
Johan Lorenzo 8f01fb0473 Bug 1779797 - part 6: Do automatically approve a merge request if any other files than L10n ones are changed 2022-07-20 16:44:24 +02:00
Johan Lorenzo 35abbc56a3 Bug 1779797 - part 5: Only auto-approve l10n bumps if they come from the right branches 2022-07-20 16:44:24 +02:00
Johan Lorenzo 8acdaf94da Bug 1779797 - part 4: Fix l10n bumps branch name 2022-07-20 16:44:24 +02:00
Johan Lorenzo 96692de82c Bug 1779797 - part 3: Create complete-push taskcluster task 2022-07-20 16:44:24 +02:00
Johan Lorenzo d2416d39ec Bug 1779797 - part 2: Provide email address for github-actions[bot] on Taskcluster decision task 2022-07-20 16:44:24 +02:00
sv-ohorvath 3111c8bf8b Issue #26097: use mock location in UI tests 2022-07-20 09:39:16 +00:00
sv-ohorvath f3ef15800c Issue #25972, #25971: reduce test failures with more retries on legacy-api-tests 2022-07-20 07:27:48 +00:00
Mozilla L10n Automation Bot 52a2cb6a4d Import l10n. 2022-07-20 00:42:36 +00:00
MatthewTighe f58f1541ce Fixes #26050: show jump back in when only synced tab available 2022-07-19 18:40:34 +00:00
MickeyMoz b454684090 Update Android Components version to 104.0.20220719143125. 2022-07-19 13:03:22 -04:00
Noah Bond 7e59a644d5 For #21898 - Remove search term tab groups from the Tabs Tray 2022-07-19 16:59:57 +00:00
sarah541 da4328e53f For #22186 - Scroll to collection after creating one 2022-07-19 16:07:18 +00:00
Mugurell 5c7921b448 For #26069 - Update steps for downloading APKs from open PRs. 2022-07-19 12:51:54 +00:00
Mozilla L10n Automation Bot 96472c9d72 Import l10n. 2022-07-19 00:44:36 +00:00
MickeyMoz e9de331b00 Update Android Components version to 104.0.20220718174753. 2022-07-18 15:45:56 -04:00
sarah541 4419e99b48 For #25894 - Add firefox suggest header for lib suggestions 2022-07-18 18:47:10 +00:00
MickeyMoz 221e3441f4 Update Android Components version to 104.0.20220718143145. 2022-07-18 16:42:30 +00:00
Mozilla L10n Automation Bot 9f36956291 Import l10n. 2022-07-18 00:42:19 +00:00
MickeyMoz 5151ab4c06 Update Android Components version to 104.0.20220717143135. 2022-07-17 16:47:48 +00:00
Mozilla L10n Automation Bot f3e0848533 Import l10n. 2022-07-17 00:46:06 +00:00
Mozilla L10n Automation Bot 51715c27b9 Import l10n. 2022-07-16 01:46:12 +00:00
mike a f910fcfe76 Closes #25967: add classes to support multiple viewHolders 2022-07-16 01:03:53 +00:00
MatthewTighe 5e15e9a6b3 Fixes #25955: refactor RecentSyncedTabsFeature to use SyncStore 2022-07-16 00:29:16 +00:00
mike a bbc835ad02 Closes #25952: update close icon, start using close_20 on smaller ui elements 2022-07-15 23:24:27 +00:00
Johan Lorenzo 46f69bc35a Bug 1779797 - Let mergify automatically approve l10n bumps on release branches 2022-07-15 18:43:09 -04:00
MickeyMoz 0bcaa92669 Update Android Components version to 104.0.20220715193302. 2022-07-15 17:49:37 -04:00
Roger Yang ee3fd03313 No issue: remove unused inactive tab auto close dialog controller 2022-07-15 19:07:25 +00:00
MickeyMoz 4de5ba42e7 Update Android Components version to 104.0.20220715143105. 2022-07-15 16:49:14 +00:00
Mozilla L10n Automation Bot 6c5e8b6e1d Import l10n. 2022-07-15 00:46:50 +00:00
MatthewTighe 1d20914f8f Fixes 24823: remove recent synced tab when logged out 2022-07-14 21:46:05 +00:00
MickeyMoz 28c2db09a1 Update Android Components version to 104.0.20220714143142. 2022-07-14 17:01:38 +00:00
Mozilla L10n Automation Bot 4f9516eb67 Import l10n. 2022-07-14 00:53:09 +00:00
MickeyMoz 8686f2828b Update Android Components version to 104.0.20220713143043. 2022-07-13 13:20:04 -04:00
Gabriel Luong d373f2b1c4 For #25999 - Add GitHub actions to tag milestones, link issues and reopen issues for QA 2022-07-13 16:34:49 +00:00
AndiAJ 218bc7f78c For #24457 re-enable selectAndSearchTextTest UI test 2022-07-13 14:48:33 +00:00
mcarare 0b289fd3cf For #25994: Make installToHomescreen item a collapsing menu limit.
The item is visible instead of addToHomeScreenItem when
current session can be installed as a PWA.
2022-07-13 13:14:04 +00:00
Mozilla L10n Automation Bot 2474b15ff6 Import l10n. 2022-07-13 00:48:30 +00:00
MickeyMoz 6e914f5ca4 Update Android Components version to 104.0.20220712190117. 2022-07-12 21:29:08 +00:00
AndiAJ c9d3af54c6 For #25992 #25832 and #25710 fix flaky PWA UI tests 2022-07-12 20:08:17 +00:00
Johan Lorenzo afa32dd56e Bug 1777255 - part 2: Use Gecko version number scheme 2022-07-12 18:20:29 +00:00
Johan Lorenzo efdced4cc3 Bug 1777255 - part 1: Bump taskgraph dependencies to get mozilla-version 1.1.0 2022-07-12 18:20:29 +00:00
MickeyMoz b191cf47b5 Update Android Components version to 104.0.20220712143112. 2022-07-12 12:55:21 -04:00
AndiAJ 70565d5a16 For #25796 fix flaky allowNotificationsPermissionPromptTest UI test 2022-07-12 14:05:59 +00:00
Mozilla L10n Automation Bot 203d4c6f72 Import l10n. 2022-07-12 01:01:52 +00:00
mike a 8af600d90b Closes #25937: update library item text size, change text size in synced and recently closed nav items, change remove icon size to wrap content 2022-07-11 22:58:26 +00:00
mike a 8d4ab0f0eb Closes #25937: update history list element design 2022-07-11 22:58:26 +00:00
Mozilla L10n Automation Bot 6b089268a3 Import l10n. 2022-07-11 22:25:14 +00:00
Jonathan Almeida 7309b671b1 Close #25982: Fix check between current and new when adding a bookmark 2022-07-11 21:41:40 +00:00
MickeyMoz 26d22e7528 Update Android Components version to 104.0.20220711143129. 2022-07-11 18:00:36 +00:00
AndiAJ 050a4c0764 For #17485 fix disabled manageDownloadsInDownloadsMenuTest UI test 2022-07-11 16:15:54 +00:00
Alexandru2909 beca81b442 For #25829 - String updates for Sync 2022-07-11 13:58:15 +00:00
MickeyMoz 14ee00303b Update Android Components version to 104.0.20220710143147. 2022-07-10 20:44:18 +00:00
Mozilla L10n Automation Bot 3a8ad63850 Import l10n. 2022-07-10 00:46:30 +00:00
MickeyMoz 9c9bafaa25 Update Android Components version to 104.0.20220709143115. 2022-07-09 16:48:57 +00:00
Mozilla L10n Automation Bot 279efffd9b Import l10n. 2022-07-09 00:52:48 +00:00
MickeyMoz b186d7ddea Update Android Components version to 104.0.20220708143231. 2022-07-08 16:41:49 +00:00
Arturo Mejia e1b7262ca8 For #25938: Address MessageCard text not adapting to the dark theme 2022-07-08 14:17:57 +00:00
Arturo Mejia 261569c2c5 For #25915: Remove the hard coded default browser message 2022-07-07 22:16:25 +00:00
Arturo Mejia 3f89c010f0 No issue: Update update default-browser style to PERSISTENT 2022-07-07 22:16:25 +00:00
Gabriel Luong 80524cd6ab For #25935 - Catch NimbusFeatureException from calling FxNimbus value getter 2022-07-07 21:14:07 +00:00
Gabriel Luong 1207180aa8 For #25933 - Ensure sponsored tiles are enable if enrolled in active experiment 2022-07-07 19:28:33 +00:00
MickeyMoz efa55fa15c Update Android Components version to 104.0.20220707143048. 2022-07-07 17:29:42 +00:00
sv-ohorvath 50536dc9d6 For #25852: Fixes visibility issue of private tabs notification in UI tests 2022-07-07 14:50:23 +00:00
AndiAJ f3def2e58b For #25034 fix disabled redirectToAppPermissionsSystemSettingsTest UI test 2022-07-07 09:11:08 +00:00
Aaron Train 8c1476e3f7 No issue: Add new cron target task for legacy API UI tests
Setups up a new daily cron task to run select UI tests on API 28 (we’ll call it legacy). We don’t necessarily want to invoke Flank twice (serial) with a different configuration (FTL APIs dont support API splitting per test-target) on event CI but we do want them running elsewhere (cron).
2022-07-06 21:19:08 +00:00
Mickey Moz 9cde9fce60
Update Android Components version to 104.0.20220706143109. (#25912) 2022-07-06 16:13:38 -04:00
Johan Lorenzo 7d37c2bcbd Bug 1776830 - part 6: Rename beetmover manifest to fenix_releases.yml because files are uploaded in the releases folder 2022-07-06 15:21:05 +00:00
Johan Lorenzo 9d65e33403 Bug 1776830 - part 5: Create 'promote' shipping phase and allocate existing tasks to them 2022-07-06 15:21:05 +00:00
Johan Lorenzo 2b090a3155 Bug 1776830 - part 4: Let multi_dep tasks override primary dep attributes 2022-07-06 15:21:05 +00:00
Johan Lorenzo 5e84f71324 Bug 1776830 - part 3: Rename release target_tasks into ship 2022-07-06 15:21:05 +00:00
Johan Lorenzo adc3786277 Bug 1776830 - part 2: Update taskcluster parameter files with shipit staging data 2022-07-06 15:21:05 +00:00
Johan Lorenzo 2fb89f0b0f Bug 1776830 - part 1: Rename taskcluster parameter files with a pattern closer to Gecko 2022-07-06 15:21:05 +00:00
Mozilla L10n Automation Bot 2ed23db9d8 Import l10n. 2022-07-06 00:57:46 +00:00
Arturo Mejia 8c752c3be1 For #25736: Add experiment for Total cookie protection. 2022-07-05 19:07:05 +00:00
Aaron Train 23796286df No issue: Refactor UIDevice calls in UIAutomator code 2022-07-05 18:20:56 +00:00
Mickey Moz c980337722
Update Android Components version to 104.0.20220705143027. (#25888) 2022-07-05 13:06:43 -04:00
AndiAJ 96be7af533 Fix and re-enable findInPageTest UI test 2022-07-05 15:06:05 +00:00
sv-ohorvath da77d7137f No issue: Tag problematic UI tests to run on API 28 only 2022-07-05 14:23:53 +00:00
AndiAJ 1d21c08670 For #24573 fix disabled openExternalLinksInPrivateTest UI test 2022-07-05 13:45:28 +00:00
rxu f7826c41bf Disable marketing telemetry until privacy pop window approved in Mozillaonline builds 2022-07-05 08:04:47 +00:00
MickeyMoz 97b679bda5 Update Android Components version to 104.0.20220704143130. 2022-07-04 16:48:09 +00:00
mcarare 70e6422d94 For #25846: Save the City field in addresses. 2022-07-04 13:58:25 +00:00
Alexandru2909 b6f140a76f For #24528 - Remove isPrivate conditional in getTheme in favor of inComposePreview 2022-07-04 06:18:38 +00:00
MickeyMoz 9bbd35187f Update Android Components version to 104.0.20220703143120. 2022-07-03 16:41:05 +00:00
MickeyMoz f4d3267383 Update Android Components version to 104.0.20220702143150. 2022-07-02 16:38:16 +00:00
AndiAJ da48ff609a For #25551 fix disabled openLinkInAppTest 2022-07-01 06:48:08 +00:00
Daniel Thorn e807f5d18a Submit commits to Glean probe-scraper
to validate and publish metrics, per https://mozilla.github.io/glean/book/user/adding-glean-to-your-project/enable-data-ingestion.html#validate-and-publish-metrics

> After your product has been enabled, you must submit commits to probe scraper to validate and publish metrics. Metrics will only be published from branches defined in probe scraper's repositories.yaml, or the Git default branch if not explicitly configured. This should happen on every CI run to the specified branches. Nightly jobs will then automatically add published metrics to the Glean Dictionary and other data platform tools.
2022-06-30 20:20:45 +00:00
MickeyMoz 4c9a316809 Update Android Components version to 104.0.20220630143048. 2022-06-30 18:19:02 +00:00
Roger Yang 46d73673ec Issue #25805: Always anchored unified search menu to the toolbar icon 2022-06-30 16:53:13 +00:00
AndiAJ 3445717ad6 For #23237 minor refactoring work for privateTabsTrayWithOpenedTabTest UI test 2022-06-30 15:19:57 +00:00
mcarare bf522dbd50 For #25806: Upgrade Robolectric to 4.8.1 2022-06-30 11:13:51 +00:00
Aaron Train 95146472c0 For #25061: Update debug maxSdkVersion for screenshots
For #25061 - update debug maxSdkVersion to 30, and override instead of merge on main manifest
2022-06-30 04:54:56 +00:00
MickeyMoz 37c895bd23 Update Android Components version to 104.0.20220629190109. 2022-06-30 00:23:32 +00:00
mcarare 808938137d For #25815: Fix interactor calls for address management. 2022-06-29 22:30:03 +00:00
MickeyMoz a25db9b271 Update Android Components version to 104.0.20220629143121. 2022-06-29 20:14:35 +00:00
Alexandru2909 4d430adbbe For #25764 - Prevent sponsored shortcut URLs from appearing as `frecent` shortcuts 2022-06-29 20:14:35 +00:00
mcarare 2676ef9696 For #25401: Update data review link. 2022-06-29 18:30:54 +00:00
Mugurell f906dda054 For #25401 - Add the PocketIntegration Glean annotation tag to all Pocket telemetry 2022-06-29 18:30:54 +00:00
Mugurell d4dd62341a For #25401 - Record Pocket sponsored stories telemetry 2022-06-29 18:30:54 +00:00
Mugurell feae3344de For #25401 - Improve how sponsored stories impressions are reported
While testing I observed that the Rect returned from `boundsInWindow()`
- will have the full height and width of the composable even if scrolled
offscreen vertically
- will only have the height and width of what part of the composable is shown
pn the screen.
Possibly because of the interactions of a vertically scrollable RecyclerView
and the LazyRow the composable is shown in.

To account for this the method calculating how much of the composable is shown
on screen will also now receive the real composable size as an argument.
2022-06-29 18:30:54 +00:00
mcarare 6a6fce3831 For #25658: Update metrics test. 2022-06-29 17:52:51 +00:00
mcarare a4c1828d27 For #25538: Update data review link. 2022-06-29 17:52:51 +00:00
Mugurell d4c86f1203 For #25538 - Add the "Wallpapers" tag to the new telemetry
By using a feature tag we can avoid having to define new tags in the Glean
annotations repository.

The list of available tags needed to be regenerated to be able to reference the
new "Wallpapers" tag.
Because the tags regeneration also brought a change in tags from "TopSites" to
"Shortcuts" all previous telemetry using "TopSites" had to be migrated to use
the new "Shortcuts" tag.
2022-06-29 17:52:51 +00:00
Mugurell c5f37f01eb For #25538 - Add "metrics" telemetry for if default wallpaper is shown 2022-06-29 17:52:51 +00:00
Mugurell 8d9ccd76e9 For #25538 - Add a simple way to check if the default wallpaper is to be shown
A previous check for whether the persisted name of the current wallpaper is
empty made checking whether the default wallpaper is to be shown brittle.
Instead of duplicating such a check in multiple places it is now extracted in
one method that can be used in multiple places including the new telemetry.
2022-06-29 17:52:51 +00:00
Arturo Mejia 8ba7b8bddc For #25213: Add tabs prioritization experiment 2022-06-29 17:11:54 +00:00
Arturo Mejia 61807c5316 No issue: Add number_of_app_launches custom attribute to nimbus messages. 2022-06-29 12:13:24 -04:00
mcarare 883401d8a4 For #25744: Build with SDK for Android 12 / API 32. 2022-06-29 07:40:25 +00:00
Mozilla L10n Automation Bot 9ba0ba563c Import l10n. 2022-06-29 01:30:27 +00:00
Marc Leclair 0680d7027c Fixed PR review 2022-06-29 00:54:30 +00:00
Marc Leclair 0da739930c Lint fixes 2022-06-29 00:54:30 +00:00
Marc Leclair ed45675755 Added strings and keys to XML 2022-06-29 00:54:30 +00:00
Marc Leclair f35e03f726 Added start and stop dialog fo navigation xml 2022-06-29 00:54:30 +00:00
Marc Leclair 739839356a Added profiler option to SettingsFragment 2022-06-29 00:54:30 +00:00
Marc Leclair 2a83d029c8 Added ProfilerUtils 2022-06-29 00:54:30 +00:00
Marc Leclair c0a95805aa Added ProfilerReusableComposable 2022-06-29 00:54:30 +00:00
Marc Leclair b08058e2bd Added ProfilerStopDialogFragment 2022-06-29 00:54:30 +00:00
Michael Comella 985f4ede00 Added ProfilerStartDialogFragment. 2022-06-29 00:54:30 +00:00
Marc Leclair 09a31e03ab For #14854: Added ProfilerViewModel 2022-06-29 00:54:30 +00:00
Gabriel Luong 83e19be385 For #24967 - Enable address autofill for Nightly and Debug 2022-06-28 23:14:16 +00:00
MickeyMoz a4681de2ec Update Android Components version to 104.0.20220628153613. 2022-06-28 13:42:00 -04:00
MatthewTighe d6952cb2aa Fixes #25545: wait to draw Pocket until after first frame 2022-06-28 16:47:51 +00:00
NxOne14 dcc1c43260 For #25771: Update Pontoon broken link 2022-06-28 11:23:38 -04:00
Mozilla L10n Automation Bot 1597231ea1 Import l10n. 2022-06-28 01:27:10 +00:00
MickeyMoz 6f77be973b Update Android Components version to 104.0.20220627211706. 2022-06-27 23:18:17 +00:00
Arturo Mejia 5f1448460e For #21894: Move Tabs Tray to compose: Individual tab viewholders: ListViewHolder. 2022-06-27 21:27:55 +00:00
MickeyMoz 017d1c4d1c Update Android Components version to 103.0.20220627143156. 2022-06-27 19:32:30 +00:00
Gabriel Luong 8f65658e86 For #25767 - Remove all unused strings marked moz:removedIn <= 101 2022-06-27 18:09:25 +00:00
Aaron Train 016c17c11e Create --unit-test.md 2022-06-27 17:36:54 +00:00
Gabriel Luong 41755498b8 Update version.txt to 104.0.0-beta.1 2022-06-27 16:32:07 +00:00
mcarare 6719eeb129 For #24857: Add metrics for addresses autofill. 2022-06-27 10:24:13 +00:00
Mozilla L10n Automation Bot 16dc078d6c Import l10n. 2022-06-27 00:59:40 +00:00
MickeyMoz 70e27fda0c Update Android Components version to 103.0.20220626165233. 2022-06-26 18:55:48 +00:00
Mozilla L10n Automation Bot 4af92436d9 Import l10n. 2022-06-26 00:39:27 +00:00
MickeyMoz 2d16bf69d2 Update Android Components version to 103.0.20220625143046. 2022-06-25 16:53:46 +00:00
Mozilla L10n Automation Bot 09e6f9416d Import l10n. 2022-06-25 00:43:02 +00:00
Gabriel Luong 8fa08f31b9 For #25750 - Use Headline7 for the expandable list headers that appear in cards 2022-06-24 18:45:03 +00:00
Gabriel Luong 2f17888f79 For #25750 - Change Headline8 to 14dp 2022-06-24 18:45:03 +00:00
mcarare 6568b4c278 For #25658: Update data review links. 2022-06-24 18:08:55 +00:00
Mugurell fd28889d71 For #25658 - Track the site permissions prompt and user actions
Track when the prompt is shown and when the permissions are allowed/denied.
2022-06-24 18:08:55 +00:00
MickeyMoz f13a982d64 Update Android Components version to 103.0.20220624143120. 2022-06-24 12:36:14 -04:00
Alexandru2909 4fc65b700a For #25721 - Remove 'Daylight' from the 'About Firefox' screen 2022-06-24 13:47:42 +00:00
AndiAJ fe0165a846 For #25726 fix failing testStrictVisitSheetDetails UI test 2022-06-24 11:38:18 +00:00
AndiAJ fbb678f7da For #25726 and #25345 disable failing UI tests 2022-06-24 07:38:02 +00:00
MickeyMoz 8753249769 Update Android Components version to 103.0.20220623143028. 2022-06-23 16:50:15 +00:00
Mozilla L10n Automation Bot 8794cdb1e2 Import l10n. 2022-06-23 01:00:15 +00:00
Roger Yang 7a5e126f24 Issue #24740: Use unified search bar in bookmark search 2022-06-22 19:27:42 +00:00
Noah Bond 5f7fd5313c For #25491 - Refactor InactiveTabs interactors and controllers 2022-06-22 18:37:06 +00:00
MickeyMoz 717e95a2d0 Update Android Components version to 103.0.20220622143041. 2022-06-22 12:46:03 -04:00
Gabriel Luong d275152789 For #25708 - Change Credit Card preference label to Autofill when address autofill is enabled 2022-06-22 15:43:41 +00:00
mcarare 572838f672 For #25435: Hide accept button just for HSTS error page. 2022-06-22 07:45:33 +00:00
MickeyMoz 4c140dc161 Update Android Components version to 103.0.20220621143056. 2022-06-21 13:33:11 -04:00
Roger Yang 22ac345513 Issue #24740: Use unified search bar in history search 2022-06-21 16:57:39 +00:00
sarah541 8791a25522 For #23966 - Migrate MessageCardViewHolder to Compose 2022-06-21 15:35:10 +00:00
AndiAJ 282ba75652 For #25551 and #25355 disable failing UI tests 2022-06-21 10:08:36 +00:00
sv-ohorvath 2ce3a5e0c5 Removes all registered Idling resources before retrying tests, to prevent crashes. 2022-06-21 08:20:34 +00:00
sv-ohorvath c3bd92c66b For #24843, #24815, #17416: removed idling resources to prevent crashes in tests.
Retrying add-on installation if it fails.
2022-06-21 08:20:34 +00:00
AndiAJ e679f16092 For #25511 fix failing shortcutButtonTest UI test 2022-06-21 06:28:45 +00:00
Mozilla L10n Automation Bot 9c3405cac9 Import l10n. 2022-06-21 00:52:08 +00:00
MickeyMoz 37edae64d9 Update Android Components version to 103.0.20220620190107. 2022-06-20 22:50:24 +00:00
Mozilla L10n Automation Bot 2e0f445076 Import l10n. 2022-06-20 00:44:39 +00:00
MickeyMoz 934d6766fd Update Android Components version to 103.0.20220619143131. 2022-06-19 17:15:26 +00:00
Mozilla L10n Automation Bot 65410d0dca Import l10n. 2022-06-19 00:48:13 +00:00
MickeyMoz e62cd7f3b0 Update Android Components version to 103.0.20220618143140. 2022-06-18 16:50:45 +00:00
Mozilla L10n Automation Bot d35e3830cd Import l10n. 2022-06-18 00:46:14 +00:00
MickeyMoz 1afd7ed0a1 Update Android Components version to 103.0.20220617143026. 2022-06-17 17:18:55 +00:00
Mozilla L10n Automation Bot 759f0bd800 Import l10n. 2022-06-17 00:41:41 +00:00
MickeyMoz 59a2a48f09 Update Android Components version to 103.0.20220616192842. 2022-06-16 22:06:44 +00:00
Alexandru2909 1ff5b8129f Fixes #25622 - PromptFeature use LoginDelegate and CreditCardDelegate as parameters for login and credit card pickers 2022-06-16 22:06:44 +00:00
CHAN, Chak Shing 9a6380d55b For #25183 - Update the Sentry base URL
Update the Sentry base URL to use the new instance
2022-06-16 18:57:10 +00:00
Julien Cristau 42ca23f2b5 stop triggering multiple nightlies off the same revision 2022-06-16 11:57:30 +00:00
Mozilla L10n Automation Bot bef5c3054b Import l10n. 2022-06-16 03:35:10 +00:00
mcarare e782a2fb2d Update Android Components version 2022-06-16 02:14:23 +00:00
mcarare d595e199c9 For #25435: Handle ERROR_BAD_HSTS_CERT error. 2022-06-16 02:14:23 +00:00
Mugurell 0ee911ea8c For #25586 - Allow for localized sumo links for the https-only mode 2022-06-16 01:05:10 +00:00
Ben Dean-Kawamura ad222521be Adding support for app-services error reporting 2022-06-15 23:59:40 +00:00
Arturo Mejia 34b31f8b11 For #25446: Ensure for every message shown we have recordExposure 2022-06-15 22:32:20 +00:00
AndiAJ 8b04752122 For #24092 and #25077 fix flaky emailLinkPWATest and telephoneLinkPWATest UI tests 2022-06-15 08:02:25 +00:00
Alexandru2909 3b4e11b796 For #24969 - Display address autofill prompt 2022-06-15 06:43:17 +00:00
Mozilla L10n Automation Bot 685424de9a Import l10n. 2022-06-15 00:45:00 +00:00
Gabriel Luong 412579f956 No issue - Update .experimenter.yaml 2022-06-14 23:20:07 +00:00
MickeyMoz a28a47fa24 Update Android Components version to 103.0.20220614193213. 2022-06-14 21:44:58 +00:00
Agi Sferro 1c1bbcc343 Upgrade gradle to 7.3. 2022-06-14 20:16:52 +00:00
MickeyMoz 673acf2663 Update Android Components version to 103.0.20220614143131. 2022-06-14 18:16:30 +00:00
Mugurell ed2857bbe0 For #25586 - Update HTTPs-only setting sumo link 2022-06-14 06:49:39 +00:00
Noah Bond 683226541c For #25490 - Remove PrimaryText and SecondaryText 2022-06-13 21:17:58 +00:00
MickeyMoz bd37bef0a9 Update Android Components version to 103.0.20220613143120. 2022-06-13 16:56:37 +00:00
Mozilla L10n Automation Bot 01be73255e Import l10n. 2022-06-13 00:46:52 +00:00
MickeyMoz 941ab35875 Update Android Components version to 103.0.20220612143104. 2022-06-12 16:38:00 +00:00
Mozilla L10n Automation Bot 345f9fd2d2 Import l10n. 2022-06-12 01:24:54 +00:00
MickeyMoz 6ade7305f9 Update Android Components version to 103.0.20220611143110. 2022-06-11 17:04:15 +00:00
Mozilla L10n Automation Bot 2ecfa3bcf7 Import l10n. 2022-06-11 00:41:03 +00:00
MickeyMoz 6538861629 Update Android Components version to 103.0.20220610143138. 2022-06-10 17:12:33 +00:00
Mugurell df5786f1e3 For #25381 - Add a setting allowing to toggle Pocket sponsored stories 2022-06-10 15:01:35 +00:00
Mozilla L10n Automation Bot 13c34f16dd Import l10n. 2022-06-10 00:44:11 +00:00
Jan-Erik Rediger bbf2d427d2 Adjust all telemetry tests to follow new Glean APIs
These are mostly mechanical changes to replace usage of `testHasValue`
with `testGetValue`.
`testGetValue` will now return `null` instead of throwing an exception
if no data is available.
2022-06-09 18:08:04 -04:00
Jan-Erik Rediger ba7028ec6a Upgrade to Glean v50 and adopt new Glean APIs 2022-06-09 18:08:04 -04:00
MickeyMoz 1c706143ed Update Android Components version to 103.0.20220609181205. 2022-06-09 18:08:04 -04:00
MatthewTighe 8a7e8e7b96 for #25545: turn off task continuity in nightly 2022-06-09 20:56:18 +00:00
Mugurell 1f89e11773 For #25413: Update AndroidComponents to integrate changes. 2022-06-09 19:48:40 +03:00
indu 31336c0d87 For #25413: App should not be locked in landscape when a tab or custom tab loads while in pip mode
App should not be locked in landscape while in pip mode when a tab or custom tab loads

Co-Authored-By: Mugurell <Mugurell@users.noreply.github.com>
2022-06-09 19:48:40 +03:00
mcarare e81c38e8fd For #25563: Avoid showing delete all dialog twice. 2022-06-09 15:15:43 +00:00
mcarare 78e4875713 For #25563: Ensure popBackStack does not navigate away from HistoryFragment. 2022-06-09 15:15:43 +00:00
mcarare ed480b24c4 For #25563: Show Snackbar only if fragment is still attached. 2022-06-09 15:15:43 +00:00
MickeyMoz fea25b34a1 Update Android Components version to 103.0.20220608143046. 2022-06-08 17:29:33 +00:00
Mugurell 1a2be2065a For #24744 - Observe and update selector icon while the View is attached
This avoids having to pass another LifecycleOwner from outside and will ensure
the View is update only in the bounds of it being attached.

The observe-update code is moved to bind(..) as that seems like a more
idiomatic callback for updating an already constructed View rather than
createView() which should only create and return a View.
2022-06-08 11:33:25 +00:00
Mozilla L10n Automation Bot 070d6288e1 Import l10n. 2022-06-08 00:47:04 +00:00
MickeyMoz 3c00dfe2fa Update Android Components version to 103.0.20220607143112. 2022-06-07 19:17:02 +00:00
Roger Yang b48123aa50 Issue #24522: Add telemetry for unified search 2022-06-07 14:33:46 +00:00
Arturo Mejia 6f0aea9fd9
For #21102: Build with SDK for Android 12 / API 31 (#25494)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-06-07 09:36:46 +00:00
indu ac31a1ace4 For #25455 : Let A-C handle toolbar expanding when URL changes
This fix allows the toolbar to be visible after the user clicks on a link and scrolls

Co-Authored-By: Mugurell <Mugurell@users.noreply.github.com>
2022-06-07 11:49:16 +03:00
Mozilla L10n Automation Bot ca800f122e Import l10n. 2022-06-07 01:17:38 +00:00
MickeyMoz 5f12e93998 Update Android Components version to 103.0.20220606190207. 2022-06-06 21:08:05 +00:00
MickeyMoz 0e630c52fe Update Android Components version to 103.0.20220606143103. 2022-06-06 18:15:46 +00:00
AndiAJ e977e0292a For #25125 fix flaky downloadMultipleFileTypesTest UI test 2022-06-06 14:20:18 +00:00
sv-ohorvath 9c6a127a40 For #23858: replaces opened app verification with intent matching 2022-06-06 12:57:15 +00:00
sv-ohorvath acb6f5429b Refactor re-usable methods in TabDrawerRobot.kt 2022-06-06 12:21:22 +00:00
sv-ohorvath 24fd376707 Refactor collections UI tests for Compose 2022-06-06 12:21:22 +00:00
sv-ohorvath 9b35c6fd45 Move collections tests to CollectionTest class 2022-06-06 12:21:22 +00:00
AndiAJ fff15ea331 For #25393 fix flaky verifyAboutFirefoxPreview UI test 2022-06-06 11:24:19 +00:00
Mozilla L10n Automation Bot 2cd6e15db8 Import l10n. 2022-06-06 00:40:46 +00:00
MickeyMoz 02fe2da476 Update Android Components version to 103.0.20220605143059. 2022-06-05 16:43:44 +00:00
Arturo Mejia 6a33f29a91 Revert "For #24455 - Migrate NoCollectionsMessageViewHolder to Compose"
This reverts commit 7b895aba
2022-06-05 13:26:43 +00:00
Mozilla L10n Automation Bot f55e21e1df Import l10n. 2022-06-05 00:56:29 +00:00
MickeyMoz 79baa41ff8 Update Android Components version to 103.0.20220604143137. 2022-06-04 16:37:46 +00:00
Mozilla L10n Automation Bot 0e9b9722a1 Import l10n. 2022-06-04 00:48:18 +00:00
Noah Bond fdd77d0e1e For #21897 - Disable leftover UI test code from #24333 2022-06-03 18:49:13 +00:00
Noah Bond 08a84f8353 For #21897 - Convert inactive tabs to compose 2022-06-03 18:49:13 +00:00
MickeyMoz 0cbf4d9b7f Update Android Components version to 103.0.20220603143119. 2022-06-03 17:14:08 +00:00
mcarare 48cb5ec268 For #25505: Clear the stored result in case there is no listener with the same key set.
This is the case when the sharing happens outside the tabs tray.
2022-06-03 14:01:40 +00:00
MickeyMoz e01647a7e8 Update Android Components version to 103.0.20220602231739. 2022-06-03 03:39:25 +00:00
Mozilla L10n Automation Bot 2e5c979ef9 Import l10n. 2022-06-02 21:11:55 -04:00
sunil9211 f89e2f4aca For #20848 - Hide Download List delete icon in multiselect mode 2022-06-02 22:17:56 +00:00
Noah Bond 9520b8c1f3 For #25379 - Plug FenixTypography into ListItem, Button, TextButton, and ExpandableListHeader 2022-06-02 21:23:50 +00:00
Noah Bond 4c118f4816 For #25379 - Create a Compose Typography system 2022-06-02 21:23:50 +00:00
MickeyMoz eb459dca57 Update Android Components version to 103.0.20220602143158. 2022-06-02 13:23:53 -04:00
AndiAJ 8043984f46 For #25394 and #25380 re-enable BrowsingErrorPages UI tests 2022-06-02 16:06:29 +00:00
sv-ohorvath c8eafbd9cc For #15754: Replace UI tests video asset for video with sound 2022-06-02 15:24:38 +00:00
Mugurell df66e159ed For #25472 - Set `context_id` to "application" lifetime.
This change mitigates it being set only once in FenixApplication and then
being reset after the first ping is sent.
By having "application" lifetime once set in FenixApplication will be available
in all future contile pings for that application run.
2022-06-02 14:53:43 +00:00
Mozilla L10n Automation Bot e2fdca8d47 Import l10n. 2022-06-02 01:56:13 +00:00
Michael Comella f9b16c772f Closes #24304 - simplify StartupExcessiveResourceUseTest error message.
It's easier to modify the explanation of the heuristics in code comments
rather than command line strings so I moved the failure explanations
into code comments, allowing me to simplify the test failure error messages.
2022-06-02 01:01:28 +00:00
Michael Comella 4e6e5428ea For #24304 - update StartupExcessiveResourceUseTest documentation.
We want this test to be self service for the fenix team so the meaning
of the documentation was updated. Additionally, we clarified why each
heuristic exists to make the test more accessible to self service.
2022-06-02 01:01:28 +00:00
MickeyMoz ce0c0323a3 Update Android Components version to 103.0.20220601143117. 2022-06-01 18:07:25 +00:00
AndiAJ 5d724f52f4 For #25394 disable failing blockUnwantedSoftwarePageTest UI test 2022-06-01 05:48:37 +00:00
Mozilla L10n Automation Bot c3811199b4 Import l10n. 2022-06-01 01:40:23 +00:00
Roger Yang 519f3f96fc No issue: Cleanup default toolbar menu 2022-05-31 21:36:25 +00:00
MickeyMoz 2103448b61 Update Android Components version to 103.0.20220531143131. 2022-05-31 17:09:00 +00:00
Mugurell 392f585ba0 For #25459 - Show Pocket sponsored stories irrespective of topics selections 2022-05-31 11:07:43 +00:00
mcarare d20ba1d0fe For #25437: Fix label values for labeled counters. 2022-05-31 10:25:06 +00:00
MickeyMoz 47aba0b0ff Update Android Components version to 102.0.20220530143102. 2022-05-31 09:20:03 +00:00
Mozilla L10n Automation Bot efef63afb2 Import l10n. 2022-05-31 06:04:06 +00:00
Roger Yang ff683c67e0 Close #25449: Use "Enter search terms" as hint when using application search engine 2022-05-30 22:56:54 +00:00
Gabriel Luong e9b26a7a0f Update version.txt to 103.0.0-beta.1 2022-05-30 20:33:38 +00:00
Gabriel Luong 980b1f1f7d For #25444 - Remove all unused strings marked moz:removedIn <= 100 2022-05-30 18:17:47 +00:00
Mozilla L10n Automation Bot 5ea4c6533a Import l10n. 2022-05-30 00:59:48 +00:00
MickeyMoz 52897ba484 Update Android Components version to 102.0.20220529143103. 2022-05-29 20:16:08 +00:00
Mozilla L10n Automation Bot b85886eb21 Import l10n. 2022-05-29 15:11:35 -04:00
MickeyMoz f349e32825 Update Android Components version to 102.0.20220528143142. 2022-05-28 16:48:53 +00:00
Arturo Mejia c9240e20ed No issue: Renew/Remove metrics set to expire in v104 2022-05-28 00:39:23 +00:00
sv-ohorvath 1bcb484de7 For #25380: Disable blockHarmfulPageTest UI test 2022-05-27 23:30:00 +00:00
MatthewTighe 3fab791980 fixes #24918: add subregion dropdown to address editor 2022-05-27 22:53:45 +00:00
MatthewTighe 07d4a8599d fixes #25386: turn task continuity on by default for nightly 2022-05-27 22:18:40 +00:00
Gabriel Luong 72a2ee688f For #24300 - Add Tabs to the search engine menu 2022-05-27 21:42:56 +00:00
Alexandru Putanu b9b1124b66
For #25397 - Telemetry for credit card save and update (#25411)
* For #25397 - Telemetry for credit card save and update

* Use Fenix Issue fro Bugs

Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
Co-authored-by: Roger Yang <royang@mozilla.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-05-27 21:11:59 +00:00
Mugurell 849d922038 For #25352 - Add a new FML feature to gate Pocket sponsored stories 2022-05-27 18:16:22 +00:00
MickeyMoz e1c94881f4 Update Android Components version to 102.0.20220527143105. 2022-05-27 13:09:49 -04:00
Roger Yang 229b949650 Issue #24301: Add Bookmarks to the search engine menu 2022-05-27 16:00:29 +00:00
Mugurell 666c839eb7
For #24040: App should not crash when the search widget is clicked while PIP mode is active (#25410)
When the search event is from the search widget while PIP is active, the search fragment opens after the screen is unlocked. This avoids the issue of the search page opening in landscape mode and also the app doesn't crash.

Co-Authored-By: Mugurell <Mugurell@users.noreply.github.com>

Co-authored-by: indu <indu@ramkystech.com>
2022-05-27 16:44:06 +03:00
Mozilla L10n Automation Bot ab36146e3e Import l10n. 2022-05-27 00:42:34 +00:00
Arturo Mejia d2c1893cf9 For #25212: Add tabs prioritization 2022-05-26 20:44:40 +00:00
Mugurell 67d5051264 For #25281 - AC version bump. Address breaking changes. 2022-05-26 18:26:00 +00:00
Mugurell 12070cb7b8 For #25281 - Improve stories impressions recording.
This fixes the following two scenarios resulting in improper recordings:
- sponsored stories were recorded as shown as part of the impressions recording
for all the stories (both recommended and sponsored). Separated the two.
- sponsored stories were not recorded as shown if the user doesn't scroll.
This could happen if just toggling categories which would result in a new list
of stories to show. Will recheck after the time to settle if the composable is
shown.
2022-05-26 18:26:00 +00:00
Mugurell 41a1f31a84 For #25281 - Consider the toolbar when reporting stories visibility
The toolbar may appear over the Pocket stories causing our functionality for
reporting when a specific story is visible to misreport.
At the moment hardcoding the toolbar height in the visibility checks seems like
the best solution to ensure reliable data.
2022-05-26 18:26:00 +00:00
Mugurell 0b972660ca For #25281 - Allow the Pocket section to settle before reporting impressions
Currently just a hack that will ensure more reliable data.
This will have to be re-evaluated after the homescreen is migrated to compose.
2022-05-26 18:26:00 +00:00
Mugurell dfa5281b23 For #25281 - Pace and rotate sponsored stories
A new way to be able to reliably record actual impressions of sponsored stories
was needed and based on this data we can ensure we are promoting fresh stories
(with fewer impressions) or the ones with a higher priority.
2022-05-26 18:26:00 +00:00
Roger Yang 2b777c3428 Issue #24299: Do not show history search engine in the search settings 2022-05-26 14:42:58 +00:00
Mozilla L10n Automation Bot 123a7aba3d Import l10n. 2022-05-26 00:39:56 +00:00
Arturo Mejia b7c1f8ef6b Revert "For #23966 - Migrate MessageCardViewHolder to Compose"
This reverts commit aea6124851.
2022-05-25 23:10:28 +00:00
Noah Bond ebd97f5a34 For #25291 - Swap the new TextButton composable into WallpaperSettings 2022-05-25 22:24:46 +00:00
Noah Bond 2165ae501a For #25291 - Create a TextButton composable component 2022-05-25 22:24:46 +00:00
MickeyMoz a8b985af15 Update Android Components version to 102.0.20220525143101. 2022-05-25 15:34:16 -04:00
Roger Yang 3de38984fd Issue #24299: Sort unified search selector menu items based on user settings 2022-05-25 19:17:44 +00:00
mcarare 0127b39fad For #25313: Handle exceptions when getting ClipData.Item. 2022-05-25 18:25:54 +00:00
Mugurell 2343b7534c For #25311 - Set tokens used when communicating with Pocket 2022-05-25 15:53:24 +00:00
Arturo Mejia 98e3b8bf52 For #25374: Skip action validation for control messages 2022-05-25 14:55:28 +00:00
AndiAJ e0822a6e1e Disable failing useAppWhileTabIsCrashedTest UI test 2022-05-25 13:58:23 +00:00
AndiAJ bbdc7fd3ff For #25002 #25184 and #23417 fix testDownloadCompleteNotification testDownloadPrompt and testCloseDownloadPrompt 2022-05-25 12:38:21 +00:00
AndiAJ 0569816cbb For #23481 fix disabled openLinkInAppTest UI test 2022-05-25 08:49:30 +00:00
Mugurell 64a12574b4 For #25025 - Update AC version to address the breaking changes. 2022-05-25 07:28:57 +00:00
Mugurell 75a2ed8c30 For #25025 - Old imports cleanup.
Importing `R.string` does allow to avoid the `R` when using a String from
Resources but seems like a small gain to break app consistency.
2022-05-25 07:28:57 +00:00
Mugurell 2074131a58 For #25025 - Show sponsored stories on debug only
The design asks for a new row in between the primary and the secondary text so
I went with making "ListItemTabSurface" public allowing for customizing the
content it will show but keeping the same layout and general UX.
2022-05-25 07:28:57 +00:00
Mugurell 06d4384c11 For #25025 - Rename PocketStoriesChange to PocketStoriesClean
PocketStoriesChange was called only once - to clean the shown stories when the
user gets to the homescreen and the Pocket feature is disabled - useful for the
situations in which the user returns after disabling the feature in settings.

Populating the store with recommended stories to show was already happening
based on 'PocketStoriesCategoriesChange' and sponsored stories will be added by
using 'PocketSponsoredStoriesChange' so renaming 'PocketStoriesChange' will
help on reducing any confusion in the future.

Also added documentation for all Pocket related actions from AppStore and
removed the 'UndocumentedPublicClass' detekt suppressions.
2022-05-25 07:28:57 +00:00
Mugurell bd1feeaac9 For #25025 - Download sponsored stories on debug only 2022-05-25 07:28:57 +00:00
Mugurell 1c7e788bae For #25025 - Use the `PocketStory` supertype
This prepares extending support from just `PocketRecommendedStory` to
`PocketSponsoredStory` also.
2022-05-25 07:28:57 +00:00
Mugurell abff68a31b For #25025 - Hardcode showing at max 8 Pocket stories
The default was already 8. This is now being moved closer to the source from
where the stories to be shown are emitted.
With the addition of sponsored stories at fixed positions having to support a
variable number of stories being returned from AppState#getFilteredStories
means increased complexity with no benefit.
2022-05-25 07:28:57 +00:00
AndiAJ 9aec04ede7 For #23600 fix flaky saveLoginsInPWATest UI test 2022-05-25 06:14:13 +00:00
sarah541 aea6124851 For #23966 - Migrate MessageCardViewHolder to Compose 2022-05-25 04:14:10 +00:00
Mozilla L10n Automation Bot a3d930b5e2 Import l10n. 2022-05-25 00:46:21 +00:00
mike a 3904cb9340 Closes #25368: duplicate items in history
Change pagination to be based on loadSize of DataSource
2022-05-24 20:11:16 +00:00
mcarare a0a02e5627 For #25360: Selectively update addresses preference only when needed. 2022-05-24 15:44:52 +00:00
MickeyMoz 014d0e5ad2 Update Android Components version to 102.0.20220524015637. 2022-05-24 04:02:30 +00:00
Mozilla L10n Automation Bot c5b4faf335 Import l10n. 2022-05-24 00:43:23 +00:00
MickeyMoz 38ed7315a2 Update Android Components version to 102.0.20220523143729. 2022-05-23 17:09:45 +00:00
AndiAJ 672510f399 Disable failing audioPlaybackSystemNotificationTest UI test 2022-05-23 10:19:21 +00:00
Alexandru2909 73dcc0c6d6 For #23173 - CheckChanged use a single variable instead of two for checked status 2022-05-23 09:36:24 +00:00
Alexandru2909 bea17a4ab8 For #23670 - Update collection on tab removal 2022-05-23 08:30:56 +00:00
mcarare cb4f8ed0c0 For #24968: Add preference for enabling/disabling addresses autofill.
For #24968: Add preference for enabling/disabling addresses autofill.
2022-05-23 07:30:07 +00:00
Mozilla L10n Automation Bot 25075fe4b3 Import l10n. 2022-05-23 00:45:08 +00:00
MickeyMoz 2ace91321f Update Android Components version to 102.0.20220522143114. 2022-05-22 16:36:35 +00:00
Mozilla L10n Automation Bot 83af557f37 Import l10n. 2022-05-22 00:44:54 +00:00
MickeyMoz 33dec129db Update Android Components version to 102.0.20220521143130. 2022-05-21 16:46:36 +00:00
Robert-Aron293 76ea2fa3e4 For #22310 - Change tab holder's checkbox state when pressing "Select All"/"Deselect All" 2022-05-20 21:20:17 +00:00
Roger Yang d07e37deda Close #25170: Fix flaky search fragment store tests 2022-05-20 19:14:39 +00:00
MickeyMoz 71562dd727 Update Android Components version to 102.0.20220520143143. 2022-05-20 13:05:57 -04:00
Roger Yang 5bb9e50e96 Close #25288: Disable autocomplete for unified history search 2022-05-20 16:51:27 +00:00
JLRoberts 479e44b0a1 For #23700 - HistoryFragment: Exit edit mode when multi-selection is opened in tabs or shared.
This mirrors behavior currently in Bookmarks library with the same actions.
2022-05-20 15:51:07 +00:00
Arturo Mejia 4899241f3b No issue:Update Sentry dependency version to 5.7.3. 2022-05-20 12:57:41 +00:00
Gabriel Luong f25129c8ac For #24991 - Refactor the HomeMenu creation from HomeFragment to HomeMenuBuilder 2022-05-20 07:26:56 +00:00
Mozilla L10n Automation Bot ba2af02407 Import l10n. 2022-05-20 02:19:22 +00:00
MickeyMoz cf227db966 Update Android Components version to 102.0.20220519222019. 2022-05-19 20:30:38 -04:00
MatthewTighe 676d7090f0 Fixes #24917: add country dropdown to address editor 2022-05-19 23:52:05 +00:00
Gabriel Luong 9a965e420d For #25119 - Add Secondary, Tertiary and Destructive Button composable components 2022-05-19 22:19:37 +00:00
MickeyMoz 882494ccfb Update Android Components version to 102.0.20220519143042. 2022-05-19 12:46:17 -04:00
James Hugman 6cec4e2a9d Fixup tests 2022-05-19 15:37:11 +00:00
James Hugman 165ce0151e Filter messaging experiments from the Studies screen 2022-05-19 15:37:11 +00:00
bendk 7d027b2280
Added features to support application-services branch builds (#22945)
- Added support for `localProperties.branchBuild.application-services`
  and `localProperties.branchBuild.android-components`.  These work like
  the autoPublish properties. However, rather than
  auto-building/publishing application-services/android-components as
  part of the fenix build, we build it ahead of time with a specific
  version name, then specify that version in `local.properties` as
  `localProperties.branchBuild.application-services.version`.
- Added support for the `localProperties.branchBuild.fenix` gradle
  property to set the version for fenito set the version for fenix
- Added support for the absolute paths when running the substutition
  scripts.

The plan is to use this feature to build/test fenix using a particular
checkout of application-services and androd-components, with the
versions set to the git commit id.
2022-05-19 14:47:37 +00:00
AndiAJ d26514feda Fix externalLinkPWATest UI test 2022-05-19 08:09:54 +00:00
Gabriel Luong 0001f00f40 For #24936 - Replace ListItemIcon with IconButton and Icon 2022-05-19 02:09:48 +00:00
Mozilla L10n Automation Bot f2e24d66a1 Import l10n. 2022-05-19 00:46:25 +00:00
MickeyMoz c2923d54bd Update Android Components version to 102.0.20220518143120. 2022-05-18 15:59:39 -04:00
Roger Yang 7f29461c75 Issue #24299: Add history to the search engine menu 2022-05-18 19:48:26 +00:00
Gabriel Luong 9e8ee28e40 For #25264 - Refactor toShortUrl extension function from TabSessionState to String 2022-05-18 17:29:13 +00:00
Mugurell a93e434f0d For #24316 - Migrate TabInCollectionViewHolder to Compose 2022-05-18 15:24:52 +00:00
jhugman 30fa80151d
Change FxNimbus/Nimbus startup sequence (#25266)
* Change FxNimbus initialization sequence

Add cache invalidation

* Change ordering of message restoration and Nimbus initialization

* Address reviewer comments
2022-05-18 13:23:26 +00:00
AndiAJ dd5310bdea Disable failing verifyContextMixedVariations UI test 2022-05-18 12:29:21 +00:00
AndiAJ 7def333efa Disable failing selectTabOnLongTapTest UI test 2022-05-18 08:30:29 +00:00
MatthewTighe 922af02d9e for #25167: ignore handleDeleteSingle and handleDeleteMultiple tests due to intermittent failures with coroutines 2022-05-18 01:47:08 +00:00
Mozilla L10n Automation Bot b002de7700 Import l10n. 2022-05-18 00:54:10 +00:00
Arturo Mejia 9a27030f87 For #25209: Avoid trying to download wallpapers without a server URL. 2022-05-17 20:52:14 +00:00
MickeyMoz c1d7d0b29c Update Android Components version to 102.0.20220517171212. 2022-05-17 15:30:54 -04:00
Michael Comella 6107143f16 No issue: remove performance codeowners. 2022-05-17 17:07:16 +00:00
Arturo Mejia d16d61c055 No issue: Add extension function to TabSessionState for shortening urls safely. 2022-05-17 15:54:39 +00:00
sarah541 c09f899da4 For #25176 - Refactor TabTitle and TabSubtitle 2022-05-17 14:58:36 +00:00
Oana Horvath f6f1446129 For #20754: Fix scrolling issues and re-enable verifyAboutFirefoxPreview 2022-05-17 10:57:37 +00:00
dlp 4c223aa540 For #24660 - Overrided contentsSameAs inside TabInCollectionItem class. 2022-05-17 07:02:01 +00:00
Mozilla L10n Automation Bot 5c2207519a Import l10n. 2022-05-17 00:54:05 +00:00
MickeyMoz 09a9a22521 Update Android Components version to 102.0.20220516172914. 2022-05-16 19:37:47 +00:00
Arturo Mejia 073f3ecc30 For #25145: Unify behavior for opening systems setting for updating the default browser preference 2022-05-16 14:46:59 +00:00
Mozilla L10n Automation Bot fc76300325 Import l10n. 2022-05-16 00:58:14 +00:00
Mozilla L10n Automation Bot a304600836 Import l10n. 2022-05-14 00:55:56 +00:00
Arturo Mejia 1384414327 Revert "Change FxNimbus initialization sequence (#25089)"
This reverts commit 51ba7ab463.
2022-05-13 19:42:08 +00:00
jhugman 51ba7ab463
Change FxNimbus initialization sequence (#25089)
* Change FxNimbus initialization sequence

* Add cache invalidation
2022-05-13 18:23:01 +00:00
MickeyMoz 2af9e832ca Update Android Components version to 102.0.20220513143132. 2022-05-13 16:50:42 +00:00
dlp aec6e25a1c For #24666 Changed trackingProtectionLayout's bottomToTop constraint from clearSiteDataLayout clearSiteDataDivider 2022-05-13 12:48:23 +00:00
Mozilla L10n Automation Bot 727bbaf342 Import l10n. 2022-05-13 00:51:43 +00:00
MickeyMoz c55109f7d5 Update Android Components version to 102.0.20220512143419. 2022-05-12 16:40:39 +00:00
Aaron Train 7ef036bd9c For #25200 - Add on-failure notify for unit test to Slack
Add test summary section
2022-05-12 14:49:56 +00:00
Mozilla L10n Automation Bot 16f955fc98 Import l10n. 2022-05-12 00:42:10 +00:00
Gabriel Luong 63ca6791c1 For #25179 - Display a save or update credit card prompt 2022-05-11 23:08:33 +00:00
MickeyMoz 7aa3538e5a Update Android Components version to 102.0.20220511151046. 2022-05-11 20:33:44 +00:00
Mugurell 6a798ebfbc For #24333 - Disable ui tests code affected by the migration
After migrating to compose identifying widgets and interacting with them will
need to be updated.
Checked with Oana about the approach, commenting the code seems better.
2022-05-11 16:03:51 +00:00
Mugurell 1e3319f0e8 For #24333 - Replace the xml based CollectionViewHolder with a composable 2022-05-11 16:03:51 +00:00
Mugurell 2126c7eeb4 For #24333 - Move CollectionViewHolder to home/collections
Doing just a file move in a separate commit will ensure git history of the file
is kept when this will be later updated.
2022-05-11 16:03:51 +00:00
Mugurell aeb45c07a5 For #24333 - Complete removing the broken code for focusing the newly created collection
The removal was initially scheduled to happen in the PR for #24333
but landed separately in https://github.com/mozilla-mobile/fenix/pull/25045.
These are two small leftovers.
2022-05-11 16:03:51 +00:00
AndiAJ b7ebddb11b Disable failing useAddonsInPrivateModeTest UI test 2022-05-11 05:32:49 +00:00
Mozilla L10n Automation Bot 142cbb2688 Import l10n. 2022-05-11 02:00:20 +00:00
MickeyMoz 2f7f5988fc Update Android Components version to 102.0.20220510190142. 2022-05-10 17:07:19 -04:00
sarah541 7b895abab1 For #24455 - Migrate NoCollectionsMessageViewHolder to Compose 2022-05-10 20:06:38 +00:00
Mugurell 7f3aa6a314 For #25167 - Disable "handleDeleteAbnormal" as intermittently failing. 2022-05-10 19:30:04 +00:00
MickeyMoz f0d327cdd6 Update Android Components version to 102.0.20220510143312. 2022-05-10 14:17:05 -04:00
MatthewTighe 483f5a9f12 for #24931: create address label and description based on available data 2022-05-10 18:14:17 +00:00
Aaron Train c15303b67f For #25132 - Catch intermittent RuntimeException in early getInstrumentation() call
fix: ktlint
2022-05-10 17:36:08 +00:00
Mugurell a106585fe0 For #23876 - AC bump to sync the same update from Android Components 2022-05-10 12:03:42 -04:00
Mugurell fc2c1700c9 For #23876 - Update kotlinx-coroutines to 1.6.1. Refactor runBlocking in tests.
After the update `TestCoroutineDispatcher`, `TestCoroutineScope` and
`runBlockingTest` are deprecated.
Instead of these new `TestDispatcher`, `TestScope` and `runTest` APIs are used.

Took the oportunity to also replace most of the `runBlocking` calls with the
new `runTest` specially designed for running coroutines in tests API.
2022-05-10 12:03:42 -04:00
AndiAJ 76bf730782 For #24998 fix flaky deleteDeleteBrowsingHistoryDataTest UI test 2022-05-10 09:00:27 +00:00
mcarare 59c5033529 For #24966: Navigate back to previous screen when the last address is deleted. 2022-05-10 06:51:02 +00:00
mcarare a4a78717af For #24919: Add option menu in the address editor. 2022-05-10 06:51:02 +00:00
mcarare 2192d55da3 For #24854: Add ability to delete an existing address. 2022-05-10 06:51:02 +00:00
mcarare 4369c0b920 For #24855: Allow updating info for an existing address. 2022-05-10 06:51:02 +00:00
bendk e5b0069791
Application services 93.0.1 (#24904)
* Fixup breaking changes from AppServices upgrade to 93.0.0

* android-components RemoteTabsStorage now requires a Context param

* Update Android Components version to 102.0.20220509214046

Co-authored-by: James Hugman <james@hugman.tv>
Co-authored-by: Mark Hammond <mhammond@skippinet.com.au>
Co-authored-by: Jonathan Almeida <jalmeida@mozilla.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-05-10 05:11:00 +00:00
Mozilla L10n Automation Bot fdeb22dd0b Import l10n. 2022-05-10 00:48:02 +00:00
Roger Yang 72b9e7e174 Issue #24738: hide the QR code button when switching to none default search engine 2022-05-09 22:23:58 +00:00
Gabriel Luong d6996b56a0 For #25113 - Remove showClearSiteData feature flag 2022-05-09 19:24:55 +00:00
MickeyMoz 7723afcd13 Update Android Components version to 102.0.20220509143036. 2022-05-09 18:03:17 +00:00
AndiAJ 98455c01ee For #23816 fix disabled verifyMultipleLoginsSelectionsTest UI test 2022-05-09 11:32:27 +00:00
Mozilla L10n Automation Bot 1e03e27e29 Import l10n. 2022-05-09 07:53:02 +00:00
AndiAJ ba4d5446e2 For #24993 and #25085 fix flaky UI tests 2022-05-09 05:07:19 +00:00
MickeyMoz 5f4ba5e349 Update Android Components version to 102.0.20220508143159. 2022-05-08 16:37:49 +00:00
Mozilla L10n Automation Bot c43c79cea6 Import l10n. 2022-05-08 00:43:46 +00:00
Arturo Mejia 40f3c8fce5 For #25142 increase the EXPECTED_NUMBER_OF_INFLATION to count for the messaging framework message. 2022-05-07 04:08:35 +00:00
MickeyMoz 912691d05c Update Android Components version to 102.0.20220506143032. 2022-05-07 04:08:35 +00:00
Arturo Mejia 29e0e34902 For #25142 increase the EXPECTED_RECYCLER_VIEW_CONSTRAINT_LAYOUT_CHILDREN to count for the messaging framework message. 2022-05-07 00:17:36 +00:00
Arturo Mejia 94b934290d Disable intermittent tests #20754. 2022-05-05 20:47:28 -04:00
Arturo Mejia b22a34db2e For #25110: Enable the messaging framework feature 2022-05-05 20:47:28 -04:00
Noah Bond 3e9dbaca35 For #25135 - Replace Button in SyncedTabs with PrimaryButton 2022-05-05 20:45:20 +00:00
MickeyMoz 8567367190 Update Android Components version to 102.0.20220505143135. 2022-05-05 18:11:31 +00:00
Arturo Mejia 7b3574d95a Disable intermittent tests #24843 and #23816 2022-05-05 15:35:21 +00:00
Jan-Erik Rediger 7bbee763a6 Auto-publish & substitute local Glean package
Careful with this: If anything inside Glean Core changes this will still
require a local substitute for the Gecko build.
2022-05-05 15:35:21 +00:00
Alexandru2909 89a1e6367f For #24262 - Filter Amazon/eBay sponsored tiles when the respective search engine is set 2022-05-05 14:25:53 +00:00
Mozilla L10n Automation Bot 35be05d599 Import l10n. 2022-05-05 01:18:27 +00:00
sarah541 2c50a229cc For #25015 - Add a compose version of PrimaryButton
bleh
2022-05-05 00:46:59 +00:00
Gabriel Luong 251acf8db4 For #25117 - Move HomeSectionHeader into its proper package 2022-05-05 00:09:12 +00:00
Gabriel Luong da1c5b9bf7 For #25115 - Remove showWallpapers feature flag 2022-05-04 19:27:13 -04:00
Gabriel Luong 957d9c487c For #25111 - Remove contileFeature feature flag 2022-05-04 22:30:37 +00:00
Alexandru2909 e0a6a9498d For #24971 - Split full name from Address editor into first, middle and last name 2022-05-04 21:08:12 +00:00
Oana Horvath 687d79715f For #22188: fix and re-enable launchPageShortcutInPrivateModeTest 2022-05-04 20:31:40 +00:00
MickeyMoz 71ac549b8b Update Android Components version to 102.0.20220504143122. 2022-05-04 15:00:30 -04:00
AndiAJ 79e6de6511 Disable failing download UI tests 2022-05-04 08:12:48 +00:00
Jonathan Almeida 6752a6ba22 Close #25091: Remove deprecated TrustedWebActivityIntentProcessor 2022-05-04 02:39:38 +00:00
Jonathan Almeida fd4bc0261c Update to Android Components 102.0.20220504005305. 2022-05-04 02:39:38 +00:00
Mozilla L10n Automation Bot 95aba129da Import l10n. 2022-05-04 00:46:04 +00:00
MatthewTighe 2b1606cf34 for #24665: show recent synced tab faster 2022-05-04 00:06:38 +00:00
sunil9211 e56f08c8ca For #23856: Remove deprecated layout_constraintWidth_default 2022-05-03 23:18:52 +00:00
Arturo Mejia 3a7299d301 For #25091: Deprecate TrustedWebActivityIntentProcessor 2022-05-03 16:28:38 -04:00
MickeyMoz 3a7e916d36 Update Android Components version to 102.0.20220503143055. 2022-05-03 16:28:38 -04:00
gmierz f74909deb1 Undo browsertime testing changes. 2022-05-03 17:41:58 +00:00
gmierz 9ed5e55318 Run visual metrics processing within the test task. 2022-05-03 17:41:58 +00:00
Gabriel Luong 5597ed6e98 For #25070 - Remove all unused strings marked moz:removedIn <= 99 2022-05-03 15:14:59 +00:00
AndiAJ 8c880440e3 For #20973 fix and re-enable shortcutButtonTest UI test 2022-05-03 14:32:26 +00:00
AndiAJ f3aee6983d Disable failing openExternalLinksInPrivateTest UI test 2022-05-03 12:55:24 +00:00
mcarare ffa1ecd300 For #21292: Remove unused MetricController parameters. 2022-05-03 09:46:23 +00:00
Arturo Mejia 01a09c83fe Update Android Components version to 102.0.20220502204820. 2022-05-02 22:04:42 -04:00
Arturo Mejia 0208432b5e Update version.txt to 102.0.0-beta.1 2022-05-02 22:04:42 -04:00
Mozilla L10n Automation Bot 0d08ff31af Import l10n. 2022-05-03 01:17:43 +00:00
sunil9211 f13b091bd8 For #23747: Remove deprecated layout_constraintHeight_default 2022-05-03 00:39:59 +00:00
sunil9211 878f5bef8a For #23747: Remove deprecated layout_constraintHeight_default:
Removed usage of layout_constraintHeight_default="wrap" and replaced
with layout_height="WRAP_CONTENT" and layout_constrainedHeight="true"
2022-05-03 00:39:59 +00:00
Mugurell 8b56a2ebc7 For #25044 - Remove the broken code for focusing the newly created collection
This functionality seems broken for a long time now.
It's importance and whether to reimplement it is to be re-assessed in
https://github.com/mozilla-mobile/fenix/issues/24389
2022-05-02 22:50:06 +00:00
MickeyMoz 7a00b0842b Update Android Components version to 101.0.20220502143106. 2022-05-02 16:41:34 +00:00
Mozilla L10n Automation Bot ff1968f5d5 Import l10n. 2022-05-02 09:21:17 +00:00
Alexandru2909 56c31cd675 For #24514 - Remove Fact.toEvent from MetricController 2022-05-02 07:13:08 +00:00
MickeyMoz 2cf9f3fa5c Update Android Components version to 101.0.20220501143106. 2022-05-01 21:29:20 +00:00
Mozilla L10n Automation Bot 37f9653f2d Import l10n. 2022-05-01 00:46:37 +00:00
MickeyMoz f5412a4eb7 Update Android Components version to 101.0.20220430143143. 2022-04-30 16:45:08 +00:00
Mozilla L10n Automation Bot 372b8a0cda Import l10n. 2022-04-30 00:48:51 +00:00
Arturo Mejia d74b4b02df For #25017: Remove promotional wallpapers 2022-04-29 22:19:29 +00:00
Alexandru2909 c9afc739e0 For #25032 - Update detekt-baseline file after event.wrapper removal 2022-04-29 19:24:31 +00:00
AndiAJ 291c8bc85c Disable redirectToAppPermissionsSystemSettingsTest UI test 2022-04-29 18:41:27 +00:00
MickeyMoz d4c9c548a1 Update Android Components version to 101.0.20220429152027. 2022-04-29 13:21:46 -04:00
AndiAJ b5f893ebe9 For #24994 fix and re-enable deleteNonEmptyBookmarkFolderTest UI test 2022-04-29 16:32:31 +00:00
AndiAJ 66b4f5b505 For #22304 re-enable visitedUrlHistoryTest UI test 2022-04-29 13:45:02 +00:00
mcarare f028dbc03b For #25003: Pop back stack on main thread. 2022-04-29 08:38:17 +00:00
Mozilla L10n Automation Bot b76cae83d6 Import l10n. 2022-04-29 07:28:55 +00:00
MickeyMoz aa78f10c5c Update Android Components version to 101.0.20220428143145. 2022-04-28 13:09:21 -04:00
sarah541 538e06d73c No issue: Renew/Remove metrics set to expire in v102
No issue: Renew/Remove metrics set to expire in v102
2022-04-28 16:49:38 +00:00
mcarare d0548ebab5 For #24849: Fix saving phone and email values to an address. 2022-04-28 15:46:59 +00:00
mcarare 24acedf406 For #24707: Remove unused metrics parameter. 2022-04-28 12:57:49 +00:00
AndiAJ 452f82f8d9 Disable failing deleteNonEmptyBookmarkFolderTest UI test 2022-04-28 08:12:22 +00:00
Mozilla L10n Automation Bot 5e246808f5 Import l10n. 2022-04-28 00:46:42 +00:00
MatthewTighe 30666f7c94 Revert #24894: settings should not be used to cache previous auth state 2022-04-27 23:06:15 +00:00
Aaron Train dbfd6e7d76
No issue: Additional UI test disabling on API30 (Firebase) (#24979) 2022-04-27 16:20:20 -04:00
MickeyMoz 3a2d37b5c2 Update Android Components version to 101.0.20220427143055. 2022-04-27 16:48:35 +00:00
Aaron Train 04daad863f
Upgrade AndroidX Espresso Deps and support API 30 (#23904) 2022-04-27 10:53:45 -04:00
mike a 407634d0ce Closes #24741: add top padding for download and bookmark fragment 2022-04-27 03:29:02 +00:00
Mozilla L10n Automation Bot 191b27130e Import l10n. 2022-04-27 00:52:28 +00:00
mike a 8e9464fee3 Closes #24307: add synced history empty fragment, feature flag and history screen showing only local files 2022-04-26 22:10:20 +00:00
mcarare d9b14cfe07 For #24935: Dismiss keyboard on add address fragment stop. 2022-04-26 19:51:42 +00:00
mike a a066dddce9 Closes #24513: add undo snackbar to history group screen 2022-04-26 19:15:23 +00:00
MickeyMoz fd74752597 Update Android Components version to 101.0.20220426143109. 2022-04-26 12:40:37 -04:00
Arturo Mejia 916c931346 For #24949: Remove malformed message when evaluating it. 2022-04-26 16:13:30 +00:00
Mozilla L10n Automation Bot 9d7825cca2 Import l10n. 2022-04-26 00:49:35 +00:00
MickeyMoz 77b943f1cb Update Android Components version to 101.0.20220425190125. 2022-04-25 20:47:05 +00:00
Roger Yang 4a69f4ecf9 Issue #24739: Set QR code button to autohide 2022-04-25 18:43:32 +00:00
MickeyMoz a089bfcaaf Update Android Components version to 101.0.20220424190204. 2022-04-25 16:48:17 +00:00
MickeyMoz 405f406f16 Update Android Components version to 101.0.20220424143100. 2022-04-24 16:34:19 +00:00
Mozilla L10n Automation Bot 313bc8cd55 Import l10n. 2022-04-24 00:45:37 +00:00
MickeyMoz 2e46e65990 Update Android Components version to 101.0.20220423143138. 2022-04-23 16:36:34 +00:00
Mozilla L10n Automation Bot 1aa13efcde Import l10n. 2022-04-23 00:35:21 +00:00
Gabriel Luong a5f5d5fb2d For #24850 - Display an address list for managing existing addresses 2022-04-22 23:44:36 +00:00
MatthewTighe 0f952284e6 for #24929: remove locale restriction for remote firefox wallpapers 2022-04-22 22:56:46 +00:00
Noah Bond cc771df50f For #24524 - Refactor FaviconListItem into SyncedTabs 2022-04-22 21:38:09 +00:00
MickeyMoz 2f725c620d Update Android Components version to 101.0.20220421190113. 2022-04-22 16:45:42 +00:00
Gabriel Luong 25ffce77c0 For #24849 - Add an address editor screen 2022-04-22 02:01:21 +00:00
Mozilla L10n Automation Bot 808ce5a564 Import l10n. 2022-04-22 00:50:47 +00:00
Elise Richards 8c1d1bdf3f For #19955: Update the telemetry description for opening in progress media tabs from home. 2022-04-21 23:10:14 +00:00
Mugurell 5e7e83b20f For #24908 - Reverse the chevrons direction in ExpandableListHeader 2022-04-21 22:36:00 +00:00
MatthewTighe ccb3d33e8b for #24665: cache previous auth status and display placeholders accordingly 2022-04-21 21:59:24 +00:00
MatthewTighe b746295da1 for #24665: remove unused fxaHasSyncedItems setting 2022-04-21 21:59:24 +00:00
mavduevskiy 602f55b5d2
For #23665 - Make the undo snackbar for the library screens work globally (#24398)
* Closes #23665: make snackbar work after leaving the fragment it was initiated from

* Closes #23665: bring back the removed bookmark navigation test, sort imports alphabetically

Co-authored-by: mike a <mavduevskiy@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-04-21 21:28:20 +00:00
Arturo Mejia 61e51b1635 For #24906: Add SURVEY style to nimbus messages FML. 2022-04-21 16:51:06 -04:00
MickeyMoz 5fb458108c Update Android Components version to 101.0.20220421143106. 2022-04-21 17:47:02 +00:00
mcarare 927ab1ccae For #24758: Remove wrapper from browser search metrics. 2022-04-21 16:06:20 +00:00
Arturo Mejia 5982990e17 For #20872: Prevent crash when updating pending Bookmarks to be deleted without a selected folder. 2022-04-21 14:29:43 +00:00
Alexandru2909 86285dfa00 For #24603 - Remove forEach from MediaNotification telemetry test 2022-04-21 11:17:14 +00:00
Mozilla L10n Automation Bot 8cd7eda398 Import l10n. 2022-04-21 01:30:21 +00:00
Mugurell 307e6b961b For #24897 - Move clickable handling to the parent in ExpandableListHeader
ExpandableListHeader provides a consistent UX for similar usecases.

Needed to update it to allow clicks to be handled by a parent and it not
stealing the click or shown an improper Indication.
2022-04-21 00:26:01 +00:00
Aki Sasaki 200a0893cb bug 1764109 - retry ui-tests on exit code 20. 2022-04-20 20:30:37 +00:00
Noah Bond 945dd0d029 For #24873 - Update ListItem with the Favicon Modifier and fix previews 2022-04-20 19:41:07 +00:00
Noah Bond 07a444c5a0 For #24873 - Add a modifier parameter to the Favicon Composable 2022-04-20 19:41:07 +00:00
MickeyMoz 051e3bbd50 Update Android Components version to 101.0.20220420143047. 2022-04-20 18:17:39 +00:00
Roger Yang 42e00548e7 No issue: Update experimenter.yaml 2022-04-20 17:23:11 +00:00
AndiAJ 7cd95dc4a6 For #23136 re-enable selectSearchEnginesShortcutTest UI test 2022-04-20 16:55:16 +00:00
AndiAJ b3acaa3757 For #23817 disable failing toggleSearchSuggestionsTest 2022-04-20 05:37:51 +00:00
Mozilla L10n Automation Bot 20d1928d1b Import l10n. 2022-04-20 00:42:34 +00:00
tristan-jea f1070e05c2 For #23813 - Clear error message for nameOnCardLayout when valid name is submitted 2022-04-19 22:55:10 +00:00
Noah Bond 6df5bd7d74 For #24338 - Make a reusable list item Composable 2022-04-19 21:20:01 +00:00
Gabriel Luong aff4c03d53 For #24856 - Toggle the "Manage addresses" and "Add address" preference label depending on whether there are saved addresses 2022-04-19 18:27:59 +00:00
MickeyMoz d1c43761eb Update Android Components version to 101.0.20220419143104. 2022-04-19 16:39:42 +00:00
Alexandru2909 6efbee7526 For #24759 - Remove forEach from ContextualMenu telemetry test 2022-04-19 14:52:28 +00:00
Alexandru2909 0539efd137 For #24208 - Remove forEach from LoginDialogFacts test 2022-04-19 13:58:57 +00:00
Alexandru2909 c475369d21 For #24836 - Remove GleanMetricsServiceTest 2022-04-19 13:18:24 +00:00
Alexandru2909 6a7f335107 For #24836 - Remove Event.wrapper for RecentlyVisitedHomepage telemetry 2022-04-19 13:18:24 +00:00
Alexandru2909 45d965c5e8 For #24811 - Remove Event.wrapper for Messaging telemetry 2022-04-19 12:09:52 +00:00
AndiAJ 9f60c38560 For #23136 disable failing selectSearchEnginesShortcutTest UI test 2022-04-19 07:08:15 +00:00
AndiAJ 2761aff3ae For #23716 fix and re-enable mediaSystemNotificationInPrivateModeTest 2022-04-19 07:08:15 +00:00
Roger Yang 2b8cf67a97 Issue #24733: Create nimbus feature for Unified Search experimentation 2022-04-19 00:07:37 +00:00
MickeyMoz ff984e88db Update Android Components version to 101.0.20220418190127. 2022-04-18 17:59:42 -04:00
Mugurell 6e8237379c For #24316 - Disable flaky "shortcutButtonTest". 2022-04-18 20:44:51 +00:00
Mugurell a6871f9b7e For #11753 - Update compose to 1.1.1 and Kotlin to 1.6.10
The needed changes are around supporting exhaustive whens for sealed classes
as a new kotlin feature - https://kotlinlang.org/docs/whatsnew1530.html#exhaustive-when-statements-for-sealed-and-boolean-subjects

androidx_activity_compose was removed as a dependency since it isn't used.

Used 1.6.10 for Kotlin although 1.6.20 is available to prevent any issues with
Compose 1.1.1 reported as an error at compile time:
"e: This version (1.1.1) of the Compose Compiler requires Kotlin version 1.6.10
but you appear to be using Kotlin version 1.6.20 which is not known to be
compatible. Please fix your configuration (or
`suppressKotlinVersionCompatibilityCheck` but don't say I didn't warn you!)."
2022-04-18 20:44:51 +00:00
Gabriel Luong a8a3231a50 For #24847 - Part 2: Refactor AutofillFragmentStore into the autofill package 2022-04-18 19:37:02 +00:00
Gabriel Luong 22056752e4 For #24847 - Part 1: Refactor CreditCardsFragmentStore to AutofillFragmentStore 2022-04-18 19:37:02 +00:00
mcarare 644c4cec5c For #24841: Decrement suppression count. 2022-04-18 19:07:26 +00:00
mcarare 3057ae7fd7 For #24841: Remove unused events. 2022-04-18 19:07:26 +00:00
MickeyMoz dfac8b4cd5 Update Android Components version to 101.0.20220418143243. 2022-04-18 17:32:29 +00:00
Gabriel Luong 11448ddd88 For #24845 - Add Address preference category to Autofill settings 2022-04-18 15:57:31 +00:00
Alexandru2909 5a21e75267 For #24760 - Remove Event.wrapper for suggestions telemetry 2022-04-18 14:29:09 +00:00
AndiAJ 84184e03d2 For #22640 re-enable verifyUndoSnackBarTest UI test, add and update RetryTestRule 2022-04-18 10:48:50 +00:00
Alexandru2909 09c93f0fce For #24838 - Remove Event.wrapper for Tabs telemetry 2022-04-18 09:49:09 +00:00
Mozilla L10n Automation Bot d03497a09d Import l10n. 2022-04-18 00:48:08 +00:00
MickeyMoz 786c50a5ef Update Android Components version to 101.0.20220417143202. 2022-04-17 16:58:01 +00:00
Mozilla L10n Automation Bot 5eadcec628 Import l10n. 2022-04-17 00:47:36 +00:00
MickeyMoz 22464e7e6e Update Android Components version to 101.0.20220416143119. 2022-04-16 16:41:51 +00:00
Mozilla L10n Automation Bot 13669dff9b Import l10n. 2022-04-16 00:45:44 +00:00
Noah Bond 774b63f9e8 For #20811 - Fix synced tabs error button width 2022-04-15 19:46:38 +00:00
Gabriel Luong 6b0c8233de For #24780 - Part 4: Refactor AutofillSettingFragment to its own package 2022-04-15 19:14:51 +00:00
Gabriel Luong ed07b8cb61 For #24780 - Part 3: Show the correct toolbar title if address autofill is enabled 2022-04-15 19:14:51 +00:00
Gabriel Luong 61bc862657 For #24780 - Part 2: RenameCreditCardsSettingFragment to AutofillSettingFragment in nav_graph.xml 2022-04-15 19:14:51 +00:00
Gabriel Luong 2b86e25a4a For #24780 - Part 1: Rename CreditCardsSettingFragment to AutofillSettingFragment 2022-04-15 19:14:51 +00:00
MickeyMoz f13978bc3b Update Android Components version to 101.0.20220415143113. 2022-04-15 18:08:38 +00:00
mcarare c28476c9cb For #24206: Fix extra key values for context menu metrics. 2022-04-15 14:52:17 +00:00
Alexandru2909 3678b124e0 For #24790 - Remove Event.wrapper for home screen related telemetry 2022-04-15 13:50:49 +00:00
mcarare 14082b117c For #24789: Remove wrapper from PWA metrics. 2022-04-15 12:42:35 +00:00
Alexandru2909 62b89da057 For #24809 - Remove Event.wrapper for RecentSearches telemetry 2022-04-15 10:57:59 +00:00
Alexandru2909 bdac21e54d For #24786 - Remove Event.wrapper for SearchTerms telemetry 2022-04-15 07:14:10 +00:00
mcarare 68f71c6f1d For #24761: Remove wrapper from autoplay settings metrics. 2022-04-15 06:02:07 +00:00
Mozilla L10n Automation Bot 44fa899154 Import l10n. 2022-04-15 00:42:51 +00:00
MickeyMoz df1f423adb Update Android Components version to 101.0.20220414143137. 2022-04-14 16:54:17 +00:00
Alexandru2909 dea01450e5 For #24759 - Remove Event.wrapper for text selection context menu telemetry 2022-04-14 11:59:50 +00:00
Alexandru2909 1051a98c02 For #24710 - Remove Event.wrapper for RecentBookmarks telemetry 2022-04-14 11:13:28 +00:00
Alexandru2909 9ff4f373ec For #24707 - Remove Event.wrapper for CreditCards telemetry 2022-04-14 08:04:00 +00:00
mcarare b8a59b2602 For #24711: Remove wrapper from recent tabs metrics. 2022-04-14 07:07:30 +00:00
Mozilla L10n Automation Bot 5d72e42e5e Import l10n. 2022-04-14 00:44:53 +00:00
Jan-Erik Rediger 4d48ce04a0 Fix for #24765: Update to JNA 5.8.0 2022-04-13 18:56:04 +00:00
MickeyMoz 1a49d795d2 Update Android Components version to 101.0.20220413143058. 2022-04-13 16:41:33 +00:00
Gabriel Luong cf53a84278 For #24747 - Remove unused store property in SessionControlAdapter and SessionControlView 2022-04-13 15:29:10 +00:00
Alexandru2909 cc893aa641 For #24706 - Remove Event.wrapper for Autofill related telemetry 2022-04-13 09:29:20 +00:00
mcarare eb82cfef78 For #24206: Remove wrapper from context menu metrics. 2022-04-13 06:38:48 +00:00
Arturo Mejia 120113abff Enable messaging framework in nightly 2022-04-13 01:41:49 +00:00
Mozilla L10n Automation Bot 61bffb6685 Import l10n. 2022-04-13 01:08:37 +00:00
MickeyMoz 24f4003473 Update Android Components version to 101.0.20220412190048. 2022-04-12 23:46:14 +00:00
Roger Yang bf7b8f97c4 Issue #24733: Setup search for Unified Search experimentation 2022-04-12 22:35:57 +00:00
Gabriel Luong 8fe9c5bdd1 For #24297 - Add a search engine menu that shows the search engine and search settings 2022-04-12 22:04:15 +00:00
mcarare dfe23e8b77 For #24211: Remove wrapper from search related metrics.
Removes wrapper from search labeled counter and performed search event.
2022-04-12 21:21:21 +00:00
mcarare 00156907c0 For #24211: Remove wrapper from "has open tabs" boolean metric. 2022-04-12 21:21:21 +00:00
Andrei Joltan 8c42f7f6ff
For #24495 fix and re-enable settingsPrivacyItemsTest UI test. (#24705)
* Fix delete browsing data on quit ambiguous matcher

* Add missing HTTPS-Only Mode assertions to settingsPrivacyItemsTest UI test

* SettingsRobot refactoring work

Co-authored-by: AndiAJ <andiaj@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-04-12 20:53:41 +00:00
AndiAJ 6e2fa202e9 For #24381 re-enable firstRunScreenTest UI test 2022-04-12 20:21:58 +00:00
MatthewTighe eca84dfa3d for #24718: add two remote firefox wallpapers 2022-04-12 18:44:04 +00:00
MickeyMoz 52d16c8504 Update Android Components version to 101.0.20220411190423. 2022-04-12 17:21:45 +00:00
Alexandru2909 e558ec279a For #24701 - Remove Event.wrapper for Pocket related telemetry 2022-04-12 13:51:23 +00:00
Alexandru2909 06fba96dfb For #24709 - Remove Event.wrapper for Wallpapers telemetry 2022-04-12 13:14:38 +00:00
mcarare bd599caa83 For #24205: Remove wrapper from set default browser toolbar menu.
This metric is recorded in the context of the default browser experiment.
2022-04-12 11:52:38 +00:00
mcarare 3c8e539366 For #24715: Remove obsolete addon installed metric. 2022-04-12 10:05:32 +00:00
mcarare b0c5148de9 For #24715: Remove wrapper from addons metrics. 2022-04-12 10:05:32 +00:00
Mugurell 13e1a22a8d For #24596 - Only restore Pocket categories selections once
This fixes a regression from migrating from HomeStore to Appstore but
indirectly by ensuring that previous categories selections are only restored
once, not everytime user selects a new category and that change is persisted.
2022-04-12 09:37:21 +00:00
Alexandru2909 120176f3b4 For #24605 - Remove Event.wrapper for MediaState telemetry 2022-04-12 08:13:07 +00:00
Alexandru2909 fd021b2819 For #24642 - Remove Event.wrapper for TopSites metrics 2022-04-12 07:21:45 +00:00
Alexandru2909 b57219b190 For #24708 - Remove Event.wrapper for DarkThemeSelected telemetry 2022-04-12 06:27:49 +00:00
Mozilla L10n Automation Bot e7df75b5af Import l10n. 2022-04-12 01:20:50 +00:00
MatthewTighe 414a54ed02 for #24549: add telemetry for recent synced tab 2022-04-12 00:17:30 +00:00
MickeyMoz 9f1e1b49b5 Update Android Components version to 101.0.20220410190145. 2022-04-11 17:35:23 +00:00
Alexandru2909 08ce8fb3c5 For #24703 - Replace Mockito mocks with Mockk mocks 2022-04-11 15:42:41 +00:00
Mozilla L10n Automation Bot 525188d768 Import l10n. 2022-04-11 00:42:53 +00:00
Mozilla L10n Automation Bot a2289c5b2f Import l10n. 2022-04-10 00:37:41 +00:00
MickeyMoz 42b9e95585 Update Android Components version to 101.0.20220409143109. 2022-04-09 16:31:03 +00:00
MickeyMoz aaad28ad73 Update Android Components version to 101.0.20220408143342. 2022-04-09 03:21:16 +00:00
Mozilla L10n Automation Bot 4bdb49e8c8 Import l10n. 2022-04-09 01:17:42 +00:00
Mugurell e413245b3f For #24618 - Replace a Mockito mock with a Mockk mock
And in such fix seemingly intermittently failing tests preventing the merge.
2022-04-08 14:08:23 +00:00
Mugurell e006538c63 For #24618 - Add WebNotificationIntentProcessor to IntentReceiverActivity
The processor from Android-Components will know how to handle the intent
specific to web notifications clicks.
2022-04-08 14:08:23 +00:00
Mugurell 5383d3ed63 For #24618 - Add Fenix own ServiceWorkerSupport
This replaces the default implementation from Android-Components to add the
functionality to first navigate to the browser fragment before responding to
service workers' requests of opening new tabs.

This will register itself when the main activity is created and unregister
itself when that activity is destroyed to support requests even when the
activity is in background but prevent any leaks.
2022-04-08 14:08:23 +00:00
Alexandru2909 4d0b79192d For #24638 - Remove Event.wrapper for Logins telemetry 2022-04-08 11:12:31 +00:00
Alexandru2909 f170772f0c For #24599 - Remove Event.wrapper for Tab telemetry 2022-04-08 10:35:44 +00:00
Alexandru2909 8c617b7c07 For #24640 - Remove Event.wrapper for VoiceSearch telemetry 2022-04-08 09:14:59 +00:00
Alexandru2909 3c78b14321 For #24215 - Remove Event.wrapper for CustomTab metrics 2022-04-08 08:32:12 +00:00
Alexandru2909 43bed6e765 For #24591 - Remove Event.wrapper for ReaderMode telemetry 2022-04-08 07:40:49 +00:00
Alexandru2909 eaaa5ddcdb For #24603 - Remove Event.wrapper for MediaNotification telemetry 2022-04-08 06:25:26 +00:00
Mozilla L10n Automation Bot dfdf41d9b1 Import l10n. 2022-04-08 00:44:59 +00:00
MickeyMoz 4c25257c5e Update Android Components version to 101.0.20220407143154. 2022-04-07 17:04:04 +00:00
Mozilla L10n Automation Bot 64ddee0da3 Import l10n. 2022-04-07 15:16:06 +00:00
Alexandru2909 e571f0bb3a For #24498 - Remove Event.wrapper for History metrics 2022-04-07 13:32:38 +00:00
MatthewTighe dbfd5ffca0 for #24177: sync tabs when home is shown 2022-04-07 00:20:28 +00:00
Gabriel Luong 38bde17fc4 For #24653 - Fix Text Action Secondary color in FirefoxTheme 2022-04-06 23:00:17 +00:00
Mugurell e485cf508e For #24648 - Add a Modifier extension method to draw a dashed border
Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
2022-04-06 21:24:56 +00:00
Gabriel Luong b6bcbfe346 For #24649 - Fix spelling of shortcuts in @string/snackbar_added_to_shortcuts 2022-04-06 20:27:59 +00:00
Gabriel Luong 6564c510e1 For #24645 - Update dark theme Action Secondary to LightGrey30 2022-04-06 18:39:57 +00:00
MickeyMoz d02f8c3a17 Update Android Components version to 101.0.20220406143104. 2022-04-06 17:38:39 +00:00
mcarare 49f352d52d For #24210: Remove wrapper from preference toggled events. 2022-04-06 15:32:41 +00:00
mcarare ac1eeec57a For #24210: Remove wrapper from opened link event. 2022-04-06 15:32:41 +00:00
mcarare 09e5394af6 For #24210: Remove wrapper from opened synced tab event. 2022-04-06 15:32:41 +00:00
mcarare a9c41774ea For #24210: Remove wrapper from recently closed tabs opened event. 2022-04-06 15:32:41 +00:00
mcarare dbc329f8b6 For #24210: Remove wrapper from copy url event. 2022-04-06 15:32:41 +00:00
mcarare cbcf2d12dd For #24210: Remove wrapper from home button clicked event. 2022-04-06 15:32:41 +00:00
mcarare 496b42db0a For #24210: Remove wrapper from tab list view setting changed event. 2022-04-06 15:32:41 +00:00
mcarare 319d3846c2 For #24210: Remove wrapper from whats new tapped event. 2022-04-06 15:32:41 +00:00
mcarare 668008c341 For #24210: Remove wrapper from uri opened count. 2022-04-06 15:32:41 +00:00
mcarare 6f2de0e2bd For #24210: Remove wrapper from displaying toolbar menu event. 2022-04-06 15:32:41 +00:00
mcarare 1d457a8f2f For #24210: Remove wrapper from "default browser" events. 2022-04-06 15:32:41 +00:00
mcarare 3947a613f4 For #24210: Remove wrapper from "browser menu item tapped" event. 2022-04-06 15:32:41 +00:00
mcarare 3931cd5c1e For #24210: Remove wrapper from "url entered" event. 2022-04-06 15:32:41 +00:00
mcarare 51df82acb1 For #24210: Remove wrapper from "search bar tapped" event. 2022-04-06 15:32:41 +00:00
mcarare 4c738cbf10 For #24210: Remove wrapper from "app opened" event. 2022-04-06 15:32:41 +00:00
AndiAJ f73b2542a4 For #24508 re-enable private browsing UI tests 2022-04-06 02:30:16 +00:00
Mozilla L10n Automation Bot 003211ac8b Import l10n. 2022-04-06 00:50:44 +00:00
Gabriel Luong 8b01528f5b For #24616 - Update all the strings that references "top site" to "shortcut" 2022-04-05 21:06:44 +00:00
Roger Yang a4dc80adbc Issue #24298: Refactor Scan button from the search toolbar into the display toolbar 2022-04-05 20:10:38 +00:00
Arturo Mejia b6dd45798c For #24621: Update HTTP only mode strings 2022-04-05 19:39:21 +00:00
Gabriel Luong c5d6012b91 For #24581 - Fix row spacing between Top Sites 2022-04-05 18:58:26 +00:00
Alexandru2909 ee7c268302 For #24576 - Record delete collection metric 2022-04-05 18:21:03 +00:00
Roger Yang e6ca009e6a Issue #24611: Enable history improvement feature 2022-04-05 17:40:33 +00:00
Gabriel Luong 31e24e96f5 For #24607 - Remove all unused strings marked moz:removedIn <= 98 2022-04-05 17:09:27 +00:00
MickeyMoz d97c20b18c Update Android Components version to 101.0.20220405143128. 2022-04-05 12:03:13 -04:00
James Hugman 733da8694d Move experimenter.json to experimenter.yaml 2022-04-05 15:50:28 +00:00
jknair c38320c7c0 For #24461 - Increase touch target for scan, search engine & voice search button 2022-04-05 14:09:35 +00:00
AndiAJ 4382227b92 Ignore and remove recently_saved_show_all unused resource 2022-04-05 13:24:20 +00:00
AndiAJ 06bef25f0b For #24375 and #24384 fix and re-enable jumpBackInOptionTest and recentBookmarksOptionTest UI tests 2022-04-05 13:24:20 +00:00
Mugurell 526b9a17d7 For #24593 - Initialize Glean on all builds. Avoid Fennec check.
This completes the work for removing the Fennec migration support.
Before that, for Fenix release and beta, apps to which users might update to
from old Fennec builds the Glean initialization was done separately in
MigratingFenixApplication to allow time to first migrate user's telemetry
setting.
With the removal of the migration support it is now safe to initialize Glean in
the same way for all builds and remove that Fennec check.
2022-04-05 11:31:35 +00:00
Ryan VanderMeulen 6136748e36
Update version.txt to 101.0.0-beta.1 2022-04-04 21:06:16 -04:00
Mozilla L10n Automation Bot 4cd2a7fb90 Import l10n. 2022-04-05 00:35:55 +00:00
AndiAJ 2171d47613 For #24436 fix and re-enable home screen UI tests 2022-04-04 20:20:34 +00:00
Roger Yang 36c271cab3 Close #24550: Hide edit suggestion button for history and bookmarks search suggestions 2022-04-04 18:32:42 +00:00
MickeyMoz 70d7e8fc27 Update Android Components version to 100.0.20220404143034. 2022-04-04 16:33:53 +00:00
AndiAJ b20a16f279 For #24462 #24376 #24377 #20418 re-enable top sites UI tests 2022-04-04 12:41:14 +00:00
AndiAJ e3cc090c8a Skip onboarding in TopSitesTest class 2022-04-04 12:41:14 +00:00
AndiAJ 413387c37c Remove duplicate add top site from main menu UI test 2022-04-04 12:41:14 +00:00
MickeyMoz 7ef4a8f7f8 Update Android Components version to 100.0.20220403190302. 2022-04-03 20:30:35 +00:00
MickeyMoz f8f872bbd2 Update Android Components version to 100.0.20220402190340. 2022-04-03 16:51:21 +00:00
MickeyMoz c419d7e0f1 Update Android Components version to 100.0.20220402143120. 2022-04-02 16:36:35 +00:00
Gabriel Luong 81167eb953 For #24556 - Handle preference change for the Contile preference 2022-04-01 19:21:35 +00:00
Sammy Khamis b6a0b41536
Don't crash when receiving a bad uri via send tab (#24326)
* don't crash when receiving a bad uri via send tab

* changed searchfox link to permalink

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-04-01 18:50:47 +00:00
MickeyMoz f497c4e13e Update Android Components version to 100.0.20220401143147. 2022-04-01 12:36:29 -04:00
jhugman 2b36ca75bf Add defaults to FML, add control behaviour 2022-04-01 16:13:39 +00:00
Alexandru2909 480ab3dca7 For #24454 - Remove Event.wrapper for SyncAccount metrics 2022-04-01 12:40:06 +00:00
Alexandru2909 54e17f4e2d For #24512 - Remove Event.wrapper for RecentlyClosedTabs metrics 2022-04-01 11:13:56 +00:00
Alexandru2909 623bfd0a03 For #24452 - Remove MetricController checks from BackgroundServicesTest 2022-04-01 09:45:00 +00:00
Alexandru2909 258f329046 For #24452 - Remove Event.wrapper for SyncAuth metrics 2022-04-01 09:45:00 +00:00
Alexandru2909 82901297cb For #24214 - Move bookmark removal events to BookmarkController 2022-04-01 07:41:45 +00:00
Alexandru2909 0a5b8c49a0 For #24214 - Remove Event.wrapper for BookmarksManagement metrics 2022-04-01 07:41:45 +00:00
Alexandru2909 740566992a For #24099 - Remove Event.wrapper for Collections telemetry 2022-04-01 06:59:55 +00:00
Pedro Coelho e5e286f843 For #22308 - Changed constraint of tab tray overflow 2022-03-31 22:19:02 +00:00
sarah541 3a039ca918 For #23971 - Migrate CollectionHeaderViewHolder to Compose
fix ktlint
2022-03-31 21:05:56 +00:00
Roger Yang 582d8ef52d Issue #24502: Sanitize external intents 2022-03-31 18:39:18 +00:00
MickeyMoz 4d57920b3c Update Android Components version to 100.0.20220331143042. 2022-03-31 13:06:40 -04:00
Mugurell 6fb54b08f2 For #24331 - Support for opening new tabs when requested by service workers
Use the new `ServiceWorkerSupport` AC components for this.
Had to be installed in `FenixApplication` since there is a circular dependency
between the initialization of the required engine the `tabsUseCases` arguments.
2022-03-31 16:20:32 +00:00
Alexandru2909 da723ee2fd For #24209 - Remove Event.wrapper for CustomizeHome telemetry 2022-03-31 14:24:23 +00:00
Alexandru2909 0e5f75bfe2 For #24147 - Remove Event.wrapper for Search widget telemetry 2022-03-31 12:00:27 +00:00
AndiAJ 455e5853a2 Disable failing deleteCollectionTest UI test 2022-03-31 07:41:42 +00:00
Gabriel Luong 8652ff5bcf For #24519 - Add Private theme to FirefoxTheme 2022-03-31 01:02:05 +00:00
Gabriel Luong 33cb72b561 For #24518 - Enable Contile feature flag 2022-03-31 00:23:03 +00:00
MickeyMoz 6b9289b6da Update Android Components version to 100.0.20220330211059. 2022-03-30 22:47:14 +00:00
Grigory Kruglov f1bd1a4ce1 Do not report caught exceptions to Sentry on release channel 2022-03-30 12:14:47 -07:00
Alexandru2909 a1243a8e9f For #24450 - Remove Event.wrapper for ErrorPage metrics 2022-03-30 10:01:51 +00:00
Alexandru2909 7cedc8b440 For #24208 - Remove Event.wrapper for LoginDialogFacts telemetry 2022-03-30 08:15:34 +00:00
Alexandru2909 f924f74434 For #24207 - Remove Event.wrapper for ToolbarSettings telemetry 2022-03-30 06:10:27 +00:00
MickeyMoz ca7fda5406 Update Android Components version to 100.0.20220329220502. 2022-03-29 20:34:00 -04:00
Arturo Mejia 4389da7811 For #24222: Persist user interactions with nimbus messages 2022-03-30 00:18:51 +00:00
Gabriel Luong e950ec3f4d For #24319 - Migrate PrivateBrowsingDescriptionViewHolder to Compose 2022-03-29 22:54:22 +00:00
Eitan Isaacson f9369a5535 For #24490 - Remove index selectors in UI tests. 2022-03-29 20:01:48 +00:00
Mugurell fab6b8d1d8 For #23337 - Customize the https-only mode error page 2022-03-29 19:17:03 +00:00
Roger Yang 26767a79bc No issue: Renew/remove metrics set to expire in v101 2022-03-29 18:39:05 +00:00
MickeyMoz ce0c38cbe9 Update Android Components version to 100.0.20220329143338. 2022-03-29 12:43:40 -04:00
Noah Bond ccd8084dd4 For #24467 - Enable Contile setting telemetry 2022-03-29 16:42:10 +00:00
Alexandru2909 df702a2694 For #24204 - Remove Event.wrapper for Search_shortcuts telemetry 2022-03-29 15:20:14 +00:00
Mugurell dc87226e42 For #16952 - Temporarily disable settingsPrivacyItemsTest ui test
Pending refactoring following the addition of a new setting, work to be done in
https://github.com/mozilla-mobile/fenix/issues/24495
2022-03-29 14:54:01 +00:00
Mugurell 46d757ab54 For #16952 - Https-only mode support.
Default will be disabled with users having the possibility to enable this from
a new setting in the `Privacy and security` section.
If enabled then by default this force https for all tabs with the option for
users to switch to forcing https only on private tabs.
2022-03-29 14:54:01 +00:00
AndiAJ 541b2be184 For #24381 disable failing firstRunScreenTest UI test 2022-03-29 13:48:33 +00:00
Alexandru2909 28db4caa8c For #24212 - Remove Event.wrapper for Preferences metrics 2022-03-29 13:17:23 +00:00
mike a a0f02b27be Closes #24276: add documentation to classes marked as UndocumentedPublicClass by lint 2022-03-29 07:00:09 +00:00
mike a 8ca01de0fa Closes #24276
– capitalize and stylize comments
– fix history items duplication
– fix refresh glitching after removing multiple history items
2022-03-29 07:00:09 +00:00
mike a ebf4ce2fe7 Closes #24276:
– remove unused import
– remove HistoryViewModel
2022-03-29 07:00:09 +00:00
mike a 5b481ad204 Closes #24276:
– make comments inside HistoryDataSource capitalized and informative
– remove scroll to first item in swipe-to-refresh
– change adapter initialization
– fixed SitePermissionsExceptionsFragment flickering empty state
2022-03-29 07:00:09 +00:00
mike a 548ff770f3 Closes #24276: removed unused Log import 2022-03-29 07:00:09 +00:00
mike a 788a478863 Closes #24276: update paging library to the latest, 3.1.1, version 2022-03-29 07:00:09 +00:00
mike a b934f3659c Closes #24276: fix history list displaying empty state until refresh 2022-03-29 07:00:09 +00:00
mike a 386c4da765 Closes #24276: moved getHistory() to suspend 2022-03-29 07:00:09 +00:00
mike a 9f699e2b40 Closes #24276: fixed history tests 2022-03-29 07:00:09 +00:00
mike a 019e244f0d Closes #24276: updated tests 2022-03-29 07:00:09 +00:00
mike a be3c53a73c Closes #24276: removed deprecated paging from SitePermissionsExceptionsFragment 2022-03-29 07:00:09 +00:00
mike a 7b5d3181df Closes #24276: updating pagination library, changing history related classes 2022-03-29 07:00:09 +00:00
Alexandru2909 ffbcaa82de For #24203 - Remove Event.wrapper for Onboarding telemetry 2022-03-29 05:53:29 +00:00
sarah541 3b39b4668f For #23968 - Migrate homescreen recent tabs to compose
For #23968 - Migrate homescreen recent tabs to compose
2022-03-29 01:07:04 +00:00
sarah541 ce7d2d1962 For #23969 - Migrate homescreen recent bookmarks to compose 2022-03-29 01:07:04 +00:00
sarah541 e11c9b2e8f For #23970 - Migrate homescreen recent visits header to compose 2022-03-29 01:07:04 +00:00
Brais Gabín 1f633edd7d For #23046 - Align detekt config between Fenix and Android Components
Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
2022-03-29 00:03:06 +00:00
Noah Bond 57238fa5ca For #24467 - Enable Contile setting telemetry 2022-03-28 22:37:49 +00:00
Michael Comella d9169af323 For #24486: change perf telemetry expiration email. 2022-03-28 21:09:57 +00:00
MatthewTighe 387be0a135 closes #24442: refactor recent tabs to use common composables 2022-03-28 18:30:04 +00:00
MickeyMoz 387371600d Update Android Components version to 100.0.20220328143428. 2022-03-28 12:47:02 -04:00
Arturo Mejia bfeceb562d For #24224: Send telemetry events related to the messaging framework 2022-03-28 15:49:13 +00:00
AndiAJ 20b738c69d For #24375 #23481 #24458 #24462 #24376 disable flaky UI tests 2022-03-28 15:08:42 +00:00
mcarare 1b00141d78 For #24148: Update tests for tracking protection metrics. 2022-03-28 13:08:30 +00:00
mcarare 74eb9b9c1b For #24148: Remove wrapper from tracking protection metrics. 2022-03-28 13:08:30 +00:00
mcarare cb14837bc6 For #24098: Update tests for tabs tray metrics. 2022-03-28 12:30:30 +00:00
mcarare 1f18f62a5a For #24098: Remove wrapper from tabs tray metrics. 2022-03-28 12:30:30 +00:00
AndiAJ 21df5a1a4a For #20418 and #24436 disable failing UI tests 2022-03-28 08:58:05 +00:00
Sebastian Kaspari 834d0ee12d Issue #22489: Remove "Fennec to Fenix" migration code 2022-03-28 06:16:55 +00:00
MickeyMoz b6932dd590 Update Android Components version to 100.0.20220327143103. 2022-03-27 18:23:35 +00:00
Jonathan Almeida f953c5ec94 For #24220 and #24223: Connect GleanPlumb messages with the new tab ui card.
Co-authored-by: Jonathan Almeida <jalmeida@mozilla.com>
2022-03-26 22:14:49 +00:00
MickeyMoz 02728bc260 Update Android Components version to 100.0.20220326143132. 2022-03-26 16:56:46 +00:00
Elise Richards 0b981dde5f
For #23503: Respect studies and telemetry prefs when manually opting in to studies (#23955)
* For #23503: Respect studies pref and telemetry enabled pref when manually opting in to studies

* Add button to snackbar in nimbus secret settings that allows user to go directly to their data collection prefs

* Remove refactoring

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-03-25 21:54:43 +00:00
Noah Bond 280afc9d0b For #24394 - Replace custom synced tabs header with new generic header 2022-03-25 19:55:58 +00:00
Oana Horvath d14a52671b Disables failing tests: selectAndSearchTextTest, recentBookmarksOptionTest 2022-03-25 15:18:40 -04:00
MickeyMoz db58337361 Update Android Components version to 100.0.20220325145327. 2022-03-25 17:26:46 +00:00
Christian Sadilek 47f55924e1 Address breaking changes in A-C 100.0.20220324222826 2022-03-25 01:40:32 +00:00
MickeyMoz be3450cea5 Update Android Components version to 100.0.20220324222826. 2022-03-25 01:40:32 +00:00
Mozilla L10n Automation Bot 0386e4c969 Import l10n. 2022-03-25 00:23:41 +00:00
Roger Yang db46dd3a13 Close #24414: Enable Clear Site Data 2022-03-24 23:45:55 +00:00
Noah Bond f8a4661691 For #24337 - Make a reusable section header for lists in Compose 2022-03-24 22:55:37 +00:00
mike a 61d1ec2eff Closes #23517: add a check to handleDeleteAbnormal() test to also verify
removal of items inside abnormal list
2022-03-24 22:27:51 +00:00
mike a ee79ad629e Closes #23517: updated the tests 2022-03-24 22:27:51 +00:00
mike a 9aa613c443 Closes #23517: history items are not being removed after deletion 2022-03-24 22:27:51 +00:00
Christian Sadilek 8b595fa30c Closes #24407: Allow query parameters in AMO installation URLs 2022-03-24 16:43:35 -04:00
Gabriel Luong 600541efb6 No issue: Update .experimenter.json 2022-03-24 20:09:40 +00:00
Christian Sadilek 26891cd44d Revert to Android Components 100.0.20220321143410 2022-03-24 15:25:27 -04:00
Heitor Neiva c64600525d Bug 1760699 - Revert proxy settings on browsertime task 2022-03-23 12:34:26 -04:00
MickeyMoz a2b43d34b9 Update Android Components version to 100.0.20220323143118. 2022-03-23 11:59:32 -04:00
Oana Horvath a2d93d99b2 For #24377: Disables verifyRenameTopSite UI test 2022-03-23 10:59:55 -04:00
MickeyMoz 389cb91267 Update Android Components version to 100.0.20220322143329. 2022-03-22 12:20:17 -04:00
Julien Cristau 5961ab2ede Notify release management when push-apk fails 2022-03-22 11:06:29 -04:00
Julien Cristau 79639c81e4 Revert "Bug 1760570 - disable nightlies until google play catches up"
This reverts commit 2513e8634d.
2022-03-22 10:45:18 -04:00
Gabriel Luong b4725429e8 For #24334 - Add FeatureFlag for Unified Search feature 2022-03-22 14:29:12 +00:00
MatthewTighe c1d2a9fb70 closes #24366: reset strict mode after locale read 2022-03-22 13:47:04 +00:00
Mozilla L10n Automation Bot 846751009d Import l10n. 2022-03-22 00:48:31 +00:00
Heitor Neiva 9c1e3450c6 Bug 1760699 - Fix proxy on run-task jobs 2022-03-21 23:36:29 +00:00
Gabriel Luong 634ed4f164 For #24114 - Decrease EXPECTED_SUPPRESSION_COUNT value to fix StartupExcessiveResourceUseTest 2022-03-21 20:13:17 +00:00
Gabriel Luong b72c915d77 For #24114 - Dispatch the current mode when the HomeFragment is created 2022-03-21 20:13:17 +00:00
Gabriel Luong 48635fb031 For #24114 - Check feature settings to show and hide home screen sections 2022-03-21 20:13:17 +00:00
Gabriel Luong 4f3e891484 For #24114 - Refactor ext/HomeFragmentStateTest to ext/AppStateTest 2022-03-21 20:13:17 +00:00
Gabriel Luong 15d6d34a01 For #24114 - Change all HomeFragment[Store|State|Action] usage to App[Store|State|Action] in existing tests 2022-03-21 20:13:17 +00:00
Gabriel Luong 6ae4f9b4c5 For #24114 - Refactor HomeFragmenStoreTest to AppStoreTest 2022-03-21 20:13:17 +00:00
Gabriel Luong d7a9e304fb For #24114 - Refactor initial HomeFragmentState into AppState 2022-03-21 20:13:17 +00:00
Gabriel Luong aaa3d7b977 For #24114 - Refactor HomeFragmentStore parameters to AppStore 2022-03-21 20:13:17 +00:00
Gabriel Luong c2e3d251cb For #24114 - Refactor HomeFragmentState into AppState 2022-03-21 20:13:17 +00:00
Gabriel Luong 09df4dd787 For #24114 - Refactor ext/HomeFragmentState to ext/AppState 2022-03-21 20:13:17 +00:00
Heitor Neiva 1647d93591 RELENG-805 - Pull taskgraph from pypi 2022-03-21 18:38:56 +00:00
MickeyMoz 4268c13f89 Update Android Components version to 100.0.20220321143410. 2022-03-21 16:46:20 +00:00
Julien Cristau 2513e8634d Bug 1760570 - disable nightlies until google play catches up 2022-03-21 14:58:54 +00:00
Mugurell 81604e8612 For #24342 - Actually log when Pocket stories are shown
Based on this we'll send telemetry and rotate the stories shown to prioritize
fresh ones instead of the ones already shown.
2022-03-21 08:23:34 +00:00
Mozilla L10n Automation Bot 6d7206a8dd Import l10n. 2022-03-21 00:37:53 +00:00
MickeyMoz 7d524bea98 Update Android Components version to 100.0.20220320190335. 2022-03-20 21:36:32 +00:00
Mozilla L10n Automation Bot 8db26b5b71 Import l10n. 2022-03-20 00:45:41 +00:00
MickeyMoz 57a5f69668 Update Android Components version to 100.0.20220319190038. 2022-03-19 20:44:38 +00:00
MickeyMoz b0b209723b Update Android Components version to 100.0.20220319143149. 2022-03-19 16:45:10 +00:00
Mozilla L10n Automation Bot cd4bed4eab Import l10n. 2022-03-19 00:35:58 +00:00
MickeyMoz fbfd11b6fd Update Android Components version to 100.0.20220318143422. 2022-03-18 16:39:25 +00:00
Arturo Mejia 55c707a412 Closes #24305: Remove false wallpaper NPE Sentry report 2022-03-18 01:45:24 +00:00
Mozilla L10n Automation Bot f3a63c4a60 Import l10n. 2022-03-18 00:55:09 +00:00
MatthewTighe 9d681a9de0 closes #24306: add nav argument to open tabs tray to an initial page 2022-03-17 21:05:08 +00:00
MatthewTighe 9853ca13ae no issue: update accessibility comment for device icon 2022-03-17 18:44:08 +00:00
MickeyMoz 6376b4bf51 Update Android Components version to 100.0.20220317143136. 2022-03-17 16:41:08 +00:00
AndiAJ eb8f118e79 Remove SmokeTest annotation for closeTabCrashedReporterTest and restoreTabCrashedReporterTest 2022-03-17 11:10:31 +00:00
AndiAJ 686bcbfedc New useAppWhileTabIsCrashedTest and privateBrowsingUseAppWhileTabIsCrashedTest UI tests 2022-03-17 11:10:31 +00:00
AndiAJ 06dd147b8a Create new Crash Report test class and move the previously created UI smoke tests and refactoring work 2022-03-17 11:10:31 +00:00
indu 468ab0ffa8 For #24037: Do voice search in a separate task
This allows voice search to open in a separate window instead of opening in the same Picture-In-Picture window,  thereby making it easier to interact with the voice search.
2022-03-17 10:19:13 +00:00
Grigory Kruglov cbd0c07c6f For #23697: Allow pasting plain text in toolbar long press 2022-03-16 22:10:52 +00:00
Grigory Kruglov fc39c187cd For #23697: Treat text/x-moz-url mime type clipboard text as url
It seems like this is the MIME type we're getting from the clipboard in
certain scenarios, e.g. after copying a link from Chrome or Gmail on
some devices.
2022-03-16 22:10:52 +00:00
MatthewTighe 5674a4066b closes #24289: reset strict mode after WallpaperManager construction 2022-03-16 21:41:50 +00:00
Noah Bond 161b971aa6 For #24286 - Create new test for synced tabs error mapping 2022-03-16 21:13:24 +00:00
MickeyMoz ee8a2ee64a Update Android Components version to 100.0.20220316143302. 2022-03-16 18:12:35 +00:00
Arturo Mejia 0aab006a1c For #23489: Update SentryService reference to use the latest Sentry SDK. 2022-03-16 16:24:12 +00:00
mcarare a9bb913653 For #19929: Use AC extension functions for window insets compat. 2022-03-16 14:58:29 +00:00
Mozilla L10n Automation Bot a4fa1f5a52 Import l10n. 2022-03-16 01:54:36 +00:00
Roger Yang ed71b8a92c Close #12717: Add bookmark search 2022-03-16 01:24:57 +00:00
MatthewTighe 3727d55b88 for #24177: add ui wireframe for synced recent tab 2022-03-16 00:51:24 +00:00
Gabriel Luong 221ce814ef For #24235 - Remove Tip from HomeFragmentStore 2022-03-15 23:29:58 +00:00
Gabriel Luong 0448530440 For #24235 - Remove MasterPasswordTipProvider 2022-03-15 23:29:58 +00:00
Gabriel Luong 788b83bfaa For #24229 - Remove unused MigrationTipProvider 2022-03-15 23:29:58 +00:00
MickeyMoz 3d5ae8c132 Update Android Components version to 100.0.20220315143119. 2022-03-15 12:40:57 -04:00
Oana Horvath 5310b220fb For #23716: Disables mediaSystemNotificationInPrivateModeTest 2022-03-15 15:38:09 +00:00
Oana Horvath 6845eef5c3 For #21002: Ads new search group UI tests
Fixed and re-enabled editCustomSearchEngineTest with custom MockWebServer URL
2022-03-15 15:07:32 +00:00
Alexandru2909 787d506c82 For #24187 - Avoid creating multiple inactive CFR dialogs 2022-03-15 09:22:34 +00:00
Mozilla L10n Automation Bot e0999f1bed Import l10n. 2022-03-15 00:36:19 +00:00
MatthewTighe 154ec3402e closes #24194: switch to IO dispatcher when cleaning wallpapers 2022-03-14 22:44:58 +00:00
Gabriel Luong ad95f950bb For #24252 - Rename contrastText attribute to textOnColorPrimary 2022-03-14 22:08:08 +00:00
Gabriel Luong e5d8f1e8d2 For #24252 - Rename unused snackbar attribute 2022-03-14 22:08:08 +00:00
Gabriel Luong a6c8f8b313 For #24252 - Rename destructive attribute to textWarning 2022-03-14 22:08:08 +00:00
Gabriel Luong a59d319eb0 For #24252 - Rename disabled attribute to textDisabled 2022-03-14 22:08:08 +00:00
Gabriel Luong 4263e1fd62 For #24252 - Rename above attribute to layer2 2022-03-14 22:08:08 +00:00
Gabriel Luong 9817be4fd0 For #24252 - Rename foundation attribute to layer1 2022-03-14 22:08:08 +00:00
Gabriel Luong 331dc3a8ec For #24252 - Rename secondaryText attribute to textSecondary 2022-03-14 22:08:08 +00:00
Gabriel Luong f1e7b49425 For #24252 - Rename primaryText attribute to textPrimary 2022-03-14 22:08:08 +00:00
Gabriel Luong a14c437924 For #24264 - Enable Contile feature for Nightly 2022-03-14 21:27:14 +00:00
Noah Bond 75414ae1df For #24219 - Refactor Favicon to fix previews 2022-03-14 20:54:04 +00:00
Gabriel Luong 779660f615 For #24246 - Refactor Tab from HomeFragmentStore 2022-03-14 18:59:59 +00:00
MatthewTighe 10d5bf0e66 no issue: update layer3 dark pallete color to match token 2022-03-14 18:31:56 +00:00
Gabriel Luong 4fada310b7 For #24242 - Update EditText background tint to use Border Primary 2022-03-14 18:04:03 +00:00
MickeyMoz 6592cba38b Update Android Components version to 100.0.20220314143141. 2022-03-14 12:48:56 -04:00
Gabriel Luong ec53937dd9 For #24249 - Use Border Primary for Dividers 2022-03-14 15:39:24 +00:00
Alexandru2909 ef678b4d17 Fixes #24188 - Use app_name for InactiveTabAutoClose message 2022-03-14 09:05:24 +00:00
Alexandru2909 7e1edc828e For #23719 - Replace preference framework strings with string resources 2022-03-14 07:12:57 +00:00
Mozilla L10n Automation Bot 598dd1a86e Import l10n. 2022-03-14 02:11:46 +00:00
MickeyMoz 3ae9de9b86 Update Android Components version to 100.0.20220313190313. 2022-03-13 17:01:47 -04:00
Gabriel Luong cc27bcdf59 No issue - Add license to ic_share_clipboard.xml 2022-03-12 22:14:58 +00:00
MickeyMoz 52f6617f7a Update Android Components version to 100.0.20220311190301. 2022-03-12 17:42:36 +00:00
Roger Yang d45543ec40 Close #14313: Always add copy to clipboard action in share actions 2022-03-12 16:24:15 +00:00
Mozilla L10n Automation Bot df4d7a9004 Import l10n. 2022-03-12 00:35:52 +00:00
Grigory Kruglov 5daa06f7dc For #23697: Avoid NPEs while pasting URLs from the clipboard
It's possible for clipboard contents to have changed in the time between we've constructed
the onClick listeners and when they're actually invoked. Code before assumed that 'text'
will be not-null, and would crash otherwise. With this change, we're capturing contents of
the clipboard before constructing onClick handlers (while also asserting correct behaviour
of 'ClipboardHandler').

With this change, we'll log an error if we were told that clipboard contains a URL, but immediately
after that check 'text' was actually null. This would indicate one of two things:
- issues within the ClipboardHandler
- changing contents of the ClipboardHandler within a tiny time window between our check and querying
2022-03-11 22:23:54 +00:00
Gabriel Luong c9a47d08a8 For #24130 - Change Shortcuts setting to toggle the display of Top Sites 2022-03-11 19:48:08 +00:00
Noah Bond 2ea99c9a1c For #23219 - Add favicons to synced tabs list 2022-03-11 18:54:59 +00:00
Mugurell 06ffc33ca2 For #23415 - Add support for GeckoView Screen Orientation APIs 2022-03-11 18:18:12 +00:00
MickeyMoz 5ede761584 Update Android Components version to 100.0.20220311143109. 2022-03-11 11:50:41 -05:00
Oana Horvath a6c78d8364 For #21002: Ads new wallpapers UI tests 2022-03-11 09:09:29 +00:00
Mozilla L10n Automation Bot 26d2aceb79 Import l10n. 2022-03-11 00:37:38 +00:00
Ryan VanderMeulen 6bc64f2d5d Update minidump-stackwalk artifact name
See https://bugzilla.mozilla.org/show_bug.cgi?id=1758939, all perf jobs are broken at the moment
2022-03-10 18:51:06 +00:00
Gabriel Luong bb94bc86e5 For #24141 - Replace @color/button_text_color with @color/fx_mobile_[text|icon]_color_action_secondary 2022-03-10 18:17:06 +00:00
Gabriel Luong 76c2f1e210 For #24141 - Replace @color/grey_button_color with @color/fx_mobile_action_color_secondary 2022-03-10 18:17:06 +00:00
Gabriel Luong ef0db6fd12 For #24141 - Add Icon Action Primary and Secondary design tokens 2022-03-10 18:17:06 +00:00
MickeyMoz 077150317c Update Android Components version to 100.0.20220310143121. 2022-03-10 16:42:42 +00:00
Mozilla L10n Automation Bot c49eb6deeb Import l10n. 2022-03-10 00:38:13 +00:00
Grigory Kruglov 02dd67b8d1 Remove duplicate 'start' call for the account manager
We are already starting the account manager in BackgroundServices,
so this call is a no-op (its gets dropped by the state machine).
2022-03-09 14:39:41 -08:00
Arturo Mejia be0e2c4111 Update Android Components version to 100.0.20220309130849. 2022-03-09 19:22:46 +00:00
Arturo Mejia ba5a4affb7 For #23489: Update SentryService reference to use legacy component. 2022-03-09 19:22:46 +00:00
Alexandru2909 c1431c5c12 For #22189 - Replace app name with 'Firefox' for Sync strings 2022-03-09 18:01:17 +00:00
Grigory Kruglov 7ca7190199 Bump Android-Components version to 100.0.20220309001717 2022-03-08 22:05:32 -08:00
Grigory Kruglov 6c793e035b Closes #15882: check for account state abnormalities after account manager is ready 2022-03-08 22:05:32 -08:00
Mozilla L10n Automation Bot a320d75b61 Import l10n. 2022-03-09 00:37:40 +00:00
Gabriel Luong 1f935e4bdc For #24108 - Use Layer3 for swipe to delete background color 2022-03-09 00:05:48 +00:00
Gabriel Luong 90e49c71d6 For #24107 - Use Layer1 for tab tray list item background color 2022-03-09 00:05:48 +00:00
Gabriel Luong 61ef3907a4 For #24082 - Use Icon Secondary for the tab tray globe thumbnail icon color 2022-03-09 00:05:48 +00:00
Gabriel Luong 97ecf4e45e For #24082 - Use Layer2 for the tab tray thumbnail item background color 2022-03-09 00:05:48 +00:00
Gabriel Luong 4c699c74d6 For #24156 - Remove all unused strings marked moz:removedIn <= 97 2022-03-08 21:34:54 +00:00
MickeyMoz d678d1f880 Update Android Components version to 100.0.20220308160838. 2022-03-08 13:42:12 -05:00
Roger Yang c4d08dfc95 Update version.txt to 100.0.0-beta.1 2022-03-08 18:41:35 +00:00
MickeyMoz 357208a850 Update Android Components version to 99.0.20220308135846. 2022-03-08 15:30:54 +00:00
Mozilla L10n Automation Bot 1cbf2b2c75 Import l10n. 2022-03-08 00:46:17 +00:00
MickeyMoz bbc06cf5e0 Update Android Components version to 99.0.20220307143349. 2022-03-07 16:54:41 +00:00
Mozilla L10n Automation Bot 9cc28a2f47 Import l10n. 2022-03-07 00:52:38 +00:00
MickeyMoz 3b5025ef8c Update Android Components version to 99.0.20220306143154. 2022-03-06 16:39:04 +00:00
Mozilla L10n Automation Bot b88600f4d6 Import l10n. 2022-03-06 00:44:47 +00:00
MickeyMoz 0907108476 Update Android Components version to 99.0.20220305143059. 2022-03-05 11:19:25 -05:00
Mozilla L10n Automation Bot ded4266928 Import l10n. 2022-03-04 19:54:23 -05:00
Gabriel Luong a0f8c2a1a5 For #24102 - Use Layer Accent Opaque color for the selected tab tray item background in list view 2022-03-04 21:15:30 +00:00
Gabriel Luong 11b440f8f1 For #24102 - Add Layer Accent Opaque design token 2022-03-04 21:15:30 +00:00
Gabriel Luong ab74d55cfe For #24102 - Rename layerNonOpaque to layerAccentNonOpaque in FirefoxThemes 2022-03-04 21:15:30 +00:00
MickeyMoz 2fba91ea79 Update Android Components version to 99.0.20220304190054. 2022-03-04 14:33:34 -05:00
MickeyMoz ca8db28cc8 Update Android Components version to 99.0.20220304143210. 2022-03-04 12:21:22 -05:00
Gabriel Luong 65b1716495 For #23990 - Allow for Nimbus experimentation for Contile top sites 2022-03-04 17:20:38 +00:00
mcarare 094cd63242 For #24075: Add PDF download metrics. 2022-03-04 06:17:57 +00:00
mcarare 653f149cc2 For #24075: Add PDF download metrics. 2022-03-04 06:17:57 +00:00
MickeyMoz f7f475b830 Update Android Components version to 99.0.20220303234408. 2022-03-03 20:48:03 -05:00
Mozilla L10n Automation Bot ae727f1236 Import l10n. 2022-03-04 00:49:43 +00:00
Gabriel Luong 50a7a8499c For #24080 - Use layer accent non opaque for the tabs tray and history selected background color 2022-03-03 22:13:20 +00:00
Gabriel Luong 56022546f2 For #23893 - Add telemetry for Contile services 2022-03-03 20:56:44 +00:00
Gabriel Luong ae1a2f3625 For #24055 - Use Primary Button design colors for Save Collection Primary Button 2022-03-03 18:06:57 +00:00
Gabriel Luong c2bc0eefc4 For #24055 - Replace snackbar attribute with actionPrimary attribute 2022-03-03 18:06:57 +00:00
Gabriel Luong aebd2d4b3a For #24055 - Replace ?inset with Action Primary color Primary Buttons 2022-03-03 18:06:57 +00:00
Gabriel Luong b97d28db59 For #24055 - Replace ?contrastText with Icon On Color color for Primary Buttons 2022-03-03 18:06:57 +00:00
Gabriel Luong d67720d7f3 For #24055 - Replace ?contrastText with Action Primary Text for Primary buttons 2022-03-03 18:06:57 +00:00
Gabriel Luong d19f7a7fad For #24055 - Replace ?accent with Action Primary for Primary Buttons 2022-03-03 18:06:57 +00:00
MickeyMoz bd9c969571 Update Android Components version to 99.0.20220303143224. 2022-03-03 11:40:55 -05:00
mcarare 597cc84a76 For #23399: Add tabs tray multi-select telemetry. 2022-03-03 09:32:38 +00:00
Mozilla L10n Automation Bot fe0e4e9215 Import l10n. 2022-03-03 01:17:15 +00:00
Gabriel Luong bd3f1a420e For #24069 - Use the correct design tokens for Powered by Pocket text 2022-03-03 00:45:31 +00:00
Gabriel Luong 50ab3d451e For #24066 - Use secondary text color for the No Collections description 2022-03-02 22:20:34 +00:00
Gabriel Luong 691e303677 For #24062 - Remove showHomeBehindSearch feature flag 2022-03-02 18:25:18 +00:00
MickeyMoz a1e136b820 Update Android Components version to 99.0.20220302145122. 2022-03-02 17:00:32 +00:00
Roger Yang 38bfb96342 No issue: Add telemetry data renewal helper 2022-03-02 15:53:31 +00:00
Gabriel Luong 09101eb787 For #24051 - Remove showStartOnHomeSettings feature flag 2022-03-02 15:22:35 +00:00
Mozilla L10n Automation Bot 4becaaa8cc Import l10n. 2022-03-02 01:20:56 +00:00
Gabriel Luong ae59f5a7a7 For #23388 - Update scrim to match design system 2022-03-02 00:16:49 +00:00
Arturo Mejia 1c66804c0b Add remote wallpapers 2022-03-01 22:16:52 +00:00
Gabriel Luong b6f066c9ed For #24042- Remove inactive tabs survey 2022-03-01 18:16:05 +00:00
MickeyMoz c05e20b12b Update Android Components version to 99.0.20220301143459. 2022-03-01 16:42:26 +00:00
mcarare 1aac79357a For #22189: Replace placeholder with app name. 2022-03-01 14:27:54 +00:00
Alexandru2909 19d1e227ed For #23936 - Show dialog on credit card delete 2022-03-01 09:29:07 +00:00
mcarare 47077fe2ec For #21743: Use isNumericAddress to validate Ipv4 and Ipv6 for SDK>=29. 2022-03-01 07:57:19 +00:00
Mugurell 4cc9a74c3d Revert "For #23871 - Update compose to 1.1.0 and kotlin to 1.6.10"
This reverts commit 23f41c9c68.
2022-03-01 06:50:28 +00:00
Mozilla L10n Automation Bot 19ea02077c Import l10n. 2022-03-01 00:46:59 +00:00
Noah Bond ae9f3ab074 For #23238 - Refactor synced tabs sections to be collapsible 2022-02-28 21:38:15 +00:00
Noah Bond e3037ad767 For #23991 - Fix synced tabs error text mapping 2022-02-28 19:38:01 +00:00
MatthewTighe f6872407f3 closes #23997: add day/night versions of applicable wallpapers 2022-02-28 19:09:37 +00:00
Gabriel Luong a6b5ab6726 For #24006 - Return a null change payload if the new top sites list is larger than the old 2022-02-28 18:41:20 +00:00
Gabriel Luong e643591338 For #24014 - Replace @color/secondary_text_private_theme with @color/fx_mobile_private_text_color_secondary 2022-02-28 17:55:10 +00:00
Gabriel Luong 41cb226cf7 For #24014 - Replace @color/caption_text_private_theme with @color/fx_mobile_private_text_color_secondary 2022-02-28 17:55:10 +00:00
Gabriel Luong 5872b0a148 For #24014 - Replace @color/caption_text_normal_theme with @color/fx_mobile_text_color_secondary 2022-02-28 17:55:10 +00:00
MickeyMoz 2286358f29 Update Android Components version to 99.0.20220228143604. 2022-02-28 11:27:12 -05:00
AndiAJ 48740095bf Disable rememberAllowAudioVideoPermissionChoiceTest UI test 2022-02-28 16:14:27 +00:00
Gabriel Luong 6fbffa3807 For #24008 - Only refresh the contile top sites cache if feature is enabled 2022-02-28 15:43:57 +00:00
Mozilla L10n Automation Bot 48a93d7ade Import l10n. 2022-02-28 08:20:54 +00:00
Gabriel Luong 9834e818cb For #24017 - Replace @color/foundation_private_theme with @color/fx_mobile_private_layer_color_1 2022-02-28 07:43:48 +00:00
Gabriel Luong 4ae5e8bfb7 For #24022 - Use Border Primary color for Inactive Tabs border 2022-02-28 02:13:52 -05:00
MickeyMoz 435b08f323 Update Android Components version to 99.0.20220227143348. 2022-02-27 12:59:34 -05:00
Mozilla L10n Automation Bot 59a09c1d4c Import l10n. 2022-02-27 00:47:26 +00:00
MickeyMoz 90f145fb81 Update Android Components version to 99.0.20220226143354. 2022-02-26 15:46:40 -05:00
Mozilla L10n Automation Bot 12efddd643 Import l10n. 2022-02-26 00:44:12 +00:00
MatthewTighe 9b4a85942d fixes #23981: open download function and override for test 2022-02-25 18:34:22 +00:00
MickeyMoz b3c93114a1 Update Android Components version to 99.0.20220225143300. 2022-02-25 16:33:48 +00:00
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>
2022-02-25 09:03:25 -05:00
Mozilla L10n Automation Bot a9fb2dc718 Import l10n. 2022-02-25 00:40:32 +00:00
Roger Yang c4c263abcb Close #23894: Simplify distinct history algorithm 2022-02-24 22:46:39 +00:00
Gabriel Luong 5e96a6f233 For #23975 - Replace tooltip gradient with Layer Gradient Start, End design tokens 2022-02-24 21:30:12 +00:00
Andrew Halberstadt c1d44d1327 No issue: remove 'mozilla-mobile/releng' as CODEOWNER of /automation and /.github
These directories are specific to Fenix. After a quick scan and chat
with Releng, we don't have knowledge / motivation to be maintainers
here.

Releng will continue to be CODEOWNERS of core taskcluster files though.
2022-02-24 20:20:22 +00:00
Mickey Moz 04d13e1f1b
Update Android Components version to 99.0.20220224143100. (#23973)
Co-authored-by: Ryan VanderMeulen <rvandermeulen@mozilla.com>
2022-02-24 13:48:23 -05:00
Gabriel Luong 97bf5647c3 For #23880 - Use borderPrimary attribute in empty_session_control_background.xml 2022-02-24 12:21:32 -05:00
Gabriel Luong dfdf386f0b For #23957 - Rename toolbarDivider attribute to borderPrimary 2022-02-24 12:21:32 -05:00
Gabriel Luong f7d317fb4e For #23951 - Replace @color/toolbar_divider_color_private_theme with @color/fx_mobile_private_border_color_divider 2022-02-24 02:04:25 +00:00
Mozilla L10n Automation Bot 4cf82bd8f9 Import l10n. 2022-02-24 01:05:59 +00:00
Roger Yang 77c2ad90b4 Close #13336: Open bookmark in current tab if browsing mode is not private or previous fragment is not home 2022-02-24 00:40:18 +00:00
Gabriel Luong 8fdea8455e For #23949 - Use @color/fx_mobile_private_layer_color_4 for the toolbar gradient in the private theme 2022-02-23 23:56:49 +00:00
Gabriel Luong ed6fe26256 For #23947 - Inline @color/toolbar_menu_transparent 2022-02-23 23:27:11 +00:00
Gabriel Luong 783d2037b6 For #23738 - Integrate the Contile top sites updater 2022-02-23 22:54:12 +00:00
Roger Yang a7442c4474 Close #23804: Use version instead of date for telemetry/metrics expiration 2022-02-23 22:28:12 +00:00
Gabriel Luong 9f04af3557 For #23921 - Remove unused attributes in attrs.xml 2022-02-23 21:59:35 +00:00
Gabriel Luong 2f30442610 For #23905 - Update onboarding icons to use Icon Active color 2022-02-23 21:25:33 +00:00
Gabriel Luong 0f3c82c16b For #23907 - Replace tabTrayItemMediaBackground attribute with accent
tabTrayItemMediaBackground and accent are equivalent
2022-02-23 20:51:12 +00:00
Gabriel Luong d71e31188f For #23888 - Replace @color/white_color with @color/fx_mobile_[icon|text]_color_oncolor
@color/white_color and @color/fx_mobile_[icon|text]_color_oncolor are equivalent
2022-02-23 20:14:22 +00:00
Gabriel Luong f14850bb48 For #23919 - Replace tabRing attribute with accent 2022-02-23 19:45:35 +00:00
Gabriel Luong f71edcd309
Update Android Components version to 99.0.20220223143136. (#23942) 2022-02-23 13:43:37 -05:00
MatthewTighe 9b54df4145 closes #23912: remove sentry reporting from WallpaperDownloader 2022-02-23 18:17:44 +00:00
Christian Sadilek 5ebd4e1569 Revert "For #14321 - Dismiss search dialog buttons on edit cancel"
This reverts commit 2d75ff7d47.
2022-02-23 16:30:27 +00:00
Gabriel Luong 4a7e723009 For #23925 - Update tab counter and reader mode colors to use the design system 2022-02-23 15:59:36 +00:00
mcarare 9a5cd634ab For #23408: Fix pinned top sites count from the cached list. 2022-02-23 14:48:35 +00:00
Gabriel Luong 7a8711247d For #23900 - Update search widget colours to use design tokens 2022-02-23 02:33:00 +00:00
Mozilla L10n Automation Bot e0d1685846 Import l10n. 2022-02-23 01:44:44 +00:00
Roger Yang d1c0e9bf9b Revert "For #13336: Open bookmarks in current tab (#23169)"
This reverts commit e73deb23ac.
2022-02-23 01:17:47 +00:00
Gabriel Luong 1b44f47cd8 For #23902 - Update the top sites pinned icon color to @color/fx_mobile_icon_color_primary 2022-02-23 00:42:21 +00:00
Gabriel Luong 4e8615326e For #23829 - Update private theme design token based on the latest UX changes 2022-02-22 23:36:28 +00:00
MickeyMoz 1c574cd447 Update Android Components version to 99.0.20220222190123. 2022-02-22 17:37:37 -05:00
MatthewTighe 2cc9ca3773 for #23069: add blocklist middleware for home 2022-02-22 22:25:04 +00:00
Gabriel Luong 0b26bac220 For #23839 - Replace @color/contrast_text_normal_theme with @color/fx_mobile_[text|icon]_color_oncolor 2022-02-22 21:45:47 +00:00
Gabriel Luong 8ae31f625c For #23882 - Use textAccent attribute for Smartblock Learn More link 2022-02-22 21:15:38 +00:00
Gabriel Luong 7713305df1 For #23850 - Replace @color/neutral_text with @color/fx_mobile_[icon|text]_color_oncolor 2022-02-22 20:38:02 +00:00
MickeyMoz eb16933692 Update Android Components version to 99.0.20220222143345. 2022-02-22 19:22:52 +00:00
Gabriel Luong d06c1f5cc0 For #23886 - Use @color/fx_mobile_icon_color_active for tabIndicatorColor 2022-02-22 17:49:07 +00:00
Mugurell 23f41c9c68 For #23871 - Update compose to 1.1.0 and kotlin to 1.6.10 2022-02-22 16:55:22 +00:00
Mozilla L10n Automation Bot 81d8c38de5 Import l10n. 2022-02-22 00:43:44 +00:00
MickeyMoz 8478bba6df Update Android Components version to 99.0.20220221143253. 2022-02-21 16:47:23 +00:00
Mozilla L10n Automation Bot 514a8c4437 Import l10n. 2022-02-21 00:38:59 +00:00
MickeyMoz d599cc7375 Update Android Components version to 99.0.20220220143137. 2022-02-20 16:38:00 +00:00
Mozilla L10n Automation Bot be78574669 Import l10n. 2022-02-20 00:38:10 +00:00
MickeyMoz a092297cc0 Update Android Components version to 99.0.20220219143338. 2022-02-19 16:39:15 +00:00
Mozilla L10n Automation Bot c52880ecb9 Import l10n. 2022-02-19 00:39:27 +00:00
Michael Comella ec6e121a8d No issue: review - clarify which files to update in diff
Co-authored-by: Elise Richards <erichards@mozilla.com>
2022-02-18 19:46:49 +00:00
Michael Comella 59d5aa4002 No issue: document building local ac + GV.
Thank you to :agi for showing me this method.
2022-02-18 19:46:49 +00:00
MickeyMoz ea40b2359c Update Android Components version to 99.0.20220218143038. 2022-02-18 18:38:39 +00:00
Noah Bond 15c58b7261 For #23808 - Add secret setting for enabling Task Continuity feature 2022-02-18 17:37:19 +00:00
Alexandru2909 5153cee0e0 For #22189 - Replace the 'Firefox' word in all strings with placeholder 2022-02-18 15:59:03 +00:00
Gabriel Luong f47a428f44
For #23771 - Set correct destructive text color for card editor error messages (#23803)
Co-authored-by: tristan-jea <>
Co-authored-by: Tristan <99796140+tristan-jea@users.noreply.github.com>
2022-02-17 23:44:53 -05:00
Roger Yang ef077c5fb1 No issue: Renew/remove metrics set to expire in April 2022 2022-02-17 21:00:31 +00:00
Noah Bond bd4742004c For #19942 - Add support for sticky headers to the synced tabs list 2022-02-17 20:12:47 +00:00
Kevin Brosnan 977d2f2b3a Update SECURITY.md
Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
2022-02-17 19:42:16 +00:00
Kevin Brosnan e3420215cc Update SECURITY.md 2022-02-17 19:42:16 +00:00
Kevin Brosnan 0f22a7b527 Create SECURITY.md 2022-02-17 19:42:16 +00:00
Geordan Neukum 7271f33eff For #23500: creditcards: focus cardNumberInput in createView
Right now, when the user navigates to the "Add Card" screen, the "Card Number"
title will be focused by default. Instead, let's make it so that the first
field for data entry is focused.

Since we're focusing the first field, let's also make sure that the soft
keyboard opens and that the cursor is placed at the end of whatever text has
already been input.
2022-02-17 18:39:05 +00:00
Geordan Neukum 6b78fa3295 For #23500: creditcards: hide keyboard when pausing fragment
Right now, the soft keyboard will remain open when we exit the "Add Card"
screen. Let's make it so that the soft keyboard is automatically closed when
leaving this screen.
2022-02-17 18:39:05 +00:00
MickeyMoz 2dc95366bf Update Android Components version to 99.0.20220217143352. 2022-02-17 17:38:36 +00:00
Arturo Mejia 64ae748835 For #23752: Address switch is off the screen in the Wallpaper settings. 2022-02-17 16:29:23 +00:00
sunil9211 de4ea0a086 For #23551 - Change the spacing between Pocket header and content to 16dp 2022-02-17 10:50:22 -05:00
Mozilla L10n Automation Bot 208d510ae9 Import l10n. 2022-02-17 02:00:42 +00:00
amedyne f1e25d175d
Update Fenix release checklist (#23730)
* Update Fenix release checklist 

Updating this to reflect the latest process for releases for Firefox for Android.

* Incorporating feedback.

Incorporating review feedback.

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-02-17 01:32:59 +00:00
Roger Yang 7dc969103b No issue: Renew/remove metrics set to expire in March 2022 2022-02-16 19:43:36 -05:00
Roger Yang 20094cd1e9
No issue: Renew/remove metrics set to expire in April 2022 (#23786) 2022-02-16 18:34:48 -05:00
Gabriel Luong c3a2c355a2 For #23769 - Replace @color/destructive_normal_theme with @color/fx_mobile_text_color_warning 2022-02-16 18:06:26 +00:00
MickeyMoz 0602021771 Update Android Components version to 99.0.20220216151234. 2022-02-16 11:53:58 -05:00
Alexandru2909 e1f91aacd3 For #18758 - Update colors on share layout 2022-02-16 15:28:37 +00:00
Gabriel Luong 37683531e7 For #23456 ⁃ Use lifecycleScope in TopSiteItemViewHolder 2022-02-16 15:02:08 +00:00
Mozilla L10n Automation Bot fab2e762c1 Import l10n. 2022-02-16 04:19:35 +00:00
Roger Yang 1559afe7b9 No issue: Update history search string ID 2022-02-16 01:56:44 +00:00
Gabriel Luong 4281dda447 For #23761 - Add Icon Warning Button design token 2022-02-15 22:26:38 +00:00
Gabriel Luong e568f2e151 For #23761 - Add Text Warning Button design token 2022-02-15 22:26:38 +00:00
Gabriel Luong 2ec29b8101 For #23761 - Update Text Warning, Icon Warning and Border Warning light theme to Red70 2022-02-15 22:26:38 +00:00
Gabriel Luong 35212ae6ca For #23761 - Update Action Secondary light theme to LightGrey30 2022-02-15 22:26:38 +00:00
Gabriel Luong bdb6f18d8f For #23761 - Add Text On Color Secondary design token 2022-02-15 22:26:38 +00:00
Gabriel Luong 99d636c23c For #23761 - Rename Text On Color to Text On Color Primary 2022-02-15 22:26:38 +00:00
Roger Yang 3f0b5799f8 Close #23657: Add voice search for history search 2022-02-15 20:43:01 +00:00
Roger Yang 7d8bad05cd Close #23694: Add telemetry for history search 2022-02-15 20:08:54 +00:00
MickeyMoz 80a05bcb37 Update Android Components version to 99.0.20220215152923. 2022-02-15 14:04:09 -05:00
Gabriel Luong cd5be08d2b For #23321 - Replace @color/toolbar_divider_color_normal_theme with @color/fx_mobile_border_color_primary 2022-02-15 18:26:25 +00:00
Matt Tighe 96cda67806 closes #23727: Add a fenix.git tag of the current hash to Sentry reports 2022-02-15 17:46:37 +00:00
Gabriel Luong 3d4340e7ec For #23341 - Replace @color/disabled_normal_theme with @color/fx_mobile_text_color_disabled 2022-02-15 17:15:04 +00:00
Gabriel Luong 869f4c89ee For #23731 - Use the disk cache for the Contile top sites 2022-02-15 16:05:32 +00:00
Mugurell 42282987f8 For #22722 - Rename fragment_crash_reporter to view_crash_reporter
Rename in a separate patch for git to not merge this to previous changes and in
such think that the the old file was deleted and a new one was created.
2022-02-15 08:46:41 +00:00
Mugurell efc57762f6 For #22722 - Rename CrashReporterFragment to CrashContentView
Rename in a separate patch for git to not merge this to previous changes and in
such think that the the old file was deleted and a new one was created.
2022-02-15 08:46:41 +00:00
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.
2022-02-15 08:46:41 +00:00
Mozilla L10n Automation Bot 1e38205f17 Import l10n. 2022-02-15 02:52:41 +00:00
Grigory Kruglov 8f4b303b94 Bump A-C version to 99.0.20220214225657 2022-02-15 01:45:35 +00:00
Grigory Kruglov a42018f124 Convert recently closed tabs code to use light-weight TabState
To lighten-up our memory usage and startup performance, all of the RecentlyClosed
machinery was converted to use a light-weight TabState - specifically, it's missing
EngineSessionState, which is expensive to obtain during startup, and potentially
very costly to keep in-memory.

When we actually need EngineSessionState (at the point of restoration of a tab), we
read and rehydrate it using provided storage implementation.
2022-02-15 01:45:35 +00:00
Noah Bond 48141b25a9 For #21900 - Delete files from Synced Tabs XML implementation 2022-02-15 00:01:57 +00:00
Noah Bond 584b2cd83c For #21900 - Delete files from Synced Tabs XML implementation 2022-02-15 00:01:57 +00:00
Gabriel Luong bf70616d93 For #23713 - Replace @color/secondary_text_normal_theme with @color/fx_mobile_text_color_secondary 2022-02-14 21:15:40 +00:00
MickeyMoz d1fbf309b3 Update Android Components version to 99.0.20220214170500. 2022-02-14 20:21:46 +00:00
Matt Tighe f146cefcb8 closes #23662: replace wallpaper thumbnail lazyverticalgrid with manual scroll layout 2022-02-14 19:14:28 +00:00
Gabriel Luong 5bbf8437b3 For #23711 - Replace @color/primary_text_normal_theme with @color/fx_mobile_text_color_primary 2022-02-14 18:42:11 +00:00
Mozilla L10n Automation Bot 45f530b573 Import l10n. 2022-02-14 17:01:36 +00:00
AndiAJ 1baddfaf2d Save logins and external links in custom tabs UI test 2022-02-14 16:12:36 +00:00
Rohan Maity df0d196759 For #20634 remove some lint issues from baseline 2022-02-14 11:52:37 +00:00
Oana Horvath 3d25de721a For #21002: Adds UI test for Addons in private mode 2022-02-14 11:17:09 +00:00
MickeyMoz 84ef85d326 Update Android Components version to 99.0.20220212143326. 2022-02-12 16:52:31 +00:00
Mozilla L10n Automation Bot 2fee285f77 Import l10n. 2022-02-12 00:48:47 +00:00
Matt Tighe 9643e96244 fixes #23644: reload wallpapers on orientation change 2022-02-11 18:25:11 +00:00
Arturo Mejia 11601770eb For #23679 Update the wallpaper settings switch text 2022-02-11 17:51:20 +00:00
MickeyMoz 50dfd0e802 Update Android Components version to 99.0.20220211143103. 2022-02-11 16:35:49 +00:00
Mozilla L10n Automation Bot 72f0191fcb Import l10n. 2022-02-11 01:54:08 +00:00
MickeyMoz c3a77dc574 Update Android Components version to 99.0.20220210181319. 2022-02-10 20:02:10 +00:00
MickeyMoz 40123882dc Update Android Components version to 99.0.20220210143122. 2022-02-10 17:32:38 +00:00
Mozilla L10n Automation Bot eea4b07cb5 Import l10n. 2022-02-10 01:52:49 +00:00
Gabriel Luong 37a0edceb6 For #23431 - Display the order of Contile Top Sites correctly 2022-02-10 00:54:24 +00:00
Andrew Halberstadt 6c59fd424b For #23614 - Set defaults for custom Fenix parameters
This will allow us to run taskgraph generation locally with the default
set of parameters.
2022-02-09 23:31:22 +00:00
Andrew Halberstadt 7931e12f06 For #23614 - Update taskgraph to latest version 2022-02-09 23:31:22 +00:00
MickeyMoz 974653084a Update Android Components version to 99.0.20220209143350. 2022-02-09 21:46:40 +00:00
Roger Yang 80c9ad9100 No issue: Update history search string 2022-02-09 19:36:16 +00:00
Mugurell 5bd6f1cb8c For #21854 - Split the big ComposeView in 3 smaller ones
This would shorten the time needed to layout all Pocket recommended stories
content in one go, though it may lead to shorten hiccups over a bigger period
of time.
2022-02-09 15:56:27 +00:00
Arturo Mejia 9b7e07ab0e Remove stale strings for version 96 2022-02-09 15:14:23 +00:00
mcarare 18f785ddb9 For #22958: Set content description only when view is visible.
This avoids additional processing.
2022-02-09 14:44:58 +00:00
AndiAJ c0918a3d1a New browser functionalities in custom tabs tests 2022-02-09 10:09:39 +00:00
Alexandru2909 2d75ff7d47 For #14321 - Dismiss search dialog buttons on edit cancel 2022-02-09 09:29:15 +00:00
Alexandru2909 d7803e6dc7 For #14954 - Use TabSessionState.id to check if tab is selected 2022-02-09 09:04:08 +00:00
Mozilla L10n Automation Bot 4c4062362c Import l10n. 2022-02-09 00:51:30 +00:00
Noah Bond c0942eadb2 For #23526 - Add telemetry for Contile interactions 2022-02-08 21:45:16 +00:00
MickeyMoz 4120223589 Update Android Components version to 99.0.20220208145842. 2022-02-08 20:25:11 +00:00
Arturo Mejia 618135ed01 Update version.txt to 99.0.0-beta.1 2022-02-08 18:29:23 +00:00
Julien Cristau c56d2d6926 docker: run get-secret.py with python3 2022-02-08 17:23:30 +00:00
jhugman b230c39a7f
Fixes #23492: Perf regression of calling isFirefoxDefault from main thread (#23556)
* Fixes #23492 — Fixup perf regression of calling isFirefoxDefault from the main thread

* Tightening of near defunct default browser message

* Fixup early crash in debug build

* ktlint
2022-02-08 12:44:07 +00:00
AndiAJ 534838c0fb Add and remove most visited top sites UI test 2022-02-08 11:00:25 +00:00
AndiAJ b77496d59d Refactoring work top sites tests 2022-02-08 11:00:25 +00:00
Mickey Moz d1b3c4979d
Update Android Components version to 98.0.20220208025830. (#23629)
Co-authored-by: Ryan VanderMeulen <ryanvm@gmail.com>
2022-02-07 23:59:09 -05:00
Matt Tighe 0c297dcee2 closes #23540: scale wallpaper and translate to bottom of image 2022-02-08 03:46:41 +00:00
Roger Yang 1d1412c766 Close #23626: Do not exit edit mode in history search toolbar 2022-02-08 01:40:42 +00:00
Mozilla L10n Automation Bot fa8cb6bb34 Import l10n. 2022-02-08 00:48:02 +00:00
Matt Tighe 24d2abd2b2 fixes #23619: use well-defined name for fetching remote wallpaper assets 2022-02-07 23:26:45 +00:00
Sarah Khan 26c7562e62 For #23596 and #23309 - Add deeplink to wallpaper settings 2022-02-07 17:02:46 -05:00
Matt Tighe b7b601eee1 closes #23616: add final path separator to reote path 2022-02-07 19:59:59 +00:00
Jonathan Almeida 4c953bc910 No issue: Update debug app name to Fenix
We don't use the "Preview" naming any more and it's easier to find the app when "Fenix" is in the app name.
2022-02-07 17:38:33 +00:00
MickeyMoz bae20d6505 Update Android Components version to 98.0.20220207143129. 2022-02-07 16:28:03 +00:00
Arturo Mejia c90dcaa314 For #23577: Make description text on the wallpapers settings page align with the start of the switch 2022-02-07 15:01:28 +00:00
Julien Cristau cf0e94204c Fix signing format for mozillaonline builds 2022-02-07 14:16:07 +00:00
AndiAJ 84a8030daa New verifyMultipleLoginsSelectionsTest UI Smoke test 2022-02-07 10:48:54 +00:00
Oana Horvath f45c5876dc Re-write toggleSearchBookmarksAndHistoryTest 2022-02-07 10:11:01 +00:00
Oana Horvath 143df5251f Ads new voice search UI test 2022-02-07 10:11:01 +00:00
Oana Horvath 886b4049cb Re-organize existing tests to their own SettingsSearchTest class 2022-02-07 10:11:01 +00:00
Mozilla L10n Automation Bot 363d0b1937 Import l10n. 2022-02-07 00:44:16 +00:00
MickeyMoz af98e7bc28 Update Android Components version to 98.0.20220206143201. 2022-02-06 16:34:09 +00:00
Mozilla L10n Automation Bot 6473381df7 Import l10n. 2022-02-06 01:24:00 +00:00
Roger Yang 1e90235dcc Close #10046: Add history search 2022-02-05 21:35:30 +00:00
Geordan Neukum 23036680c2 For #16395 - Use Secondary Text for the Site Permissions subtext 2022-02-05 20:10:25 +00:00
MickeyMoz 09a556d12c Update Android Components version to 98.0.20220205170353. 2022-02-05 19:08:56 +00:00
MickeyMoz bc7f467143 Update Android Components version to 98.0.20220205143941. 2022-02-05 16:39:52 +00:00
Mozilla L10n Automation Bot a6acacbcc1 Import l10n. 2022-02-05 00:32:07 +00:00
Arturo Mejia dc3a44d4f9 For #23574: Remove stale partial bitmaps created while downloading wallpapers 2022-02-04 23:47:48 +00:00
Gabriel Luong 1484f77bdb For #23575 - Use design system colors for the Pocket filter and Customize homepage buttons 2022-02-04 21:47:42 +00:00
mcarare de6e2e763e Add VisitInfo.isRemote parameter. 2022-02-04 19:02:18 +00:00
MickeyMoz 95270a03d0 Update Android Components version to 98.0.20220204143127. 2022-02-04 19:02:18 +00:00
Matt Tighe 9b9d08c7d1 closes #23565: expire remote wallpapers but let users keep selected 2022-02-04 17:31:40 +00:00
Arturo Mejia e290bc1bd6 For #23563: Address time out crash when downloading wallpaper 2022-02-04 02:08:11 +00:00
Arturo Mejia 7fc7cf9b9f For #23498 improve logo content description comments for wallpapers 2022-02-04 01:39:40 +00:00
Mozilla L10n Automation Bot 91b7a46b51 Import l10n. 2022-02-04 01:08:35 +00:00
Gabriel Luong 6f2af25a60 For #23558 - Update menu copy for What's new and Customize homepage 2022-02-04 00:28:18 +00:00
Gabriel Luong 7e09be3bf8 For #23554 - Remove Top Sites border 2022-02-03 18:22:18 +00:00
Mugurell 0be470a104 For #21009 - New Recently closed tabs telemetry
This adds a new `recently_closed_tabs` category with then events for all user
interactions on the screen.

The already existent `events.recently_closed_tabs_opened` is still kept for a
bit more time to still have this data available while the new telemetry ride
the trains but can later be removed in favor of this newly added events.
2022-02-03 15:19:46 +00:00
Lucius C e73deb23ac
For #13336: Open bookmarks in current tab (#23169)
* For #13336: Open bookmarks in current tab

* For #13336: Fix tests to verify bookmark opening in current tab

* Change test name for handleBookmarkTapped
2022-02-03 04:58:41 +00:00
Mozilla L10n Automation Bot 39f83e20fa Import l10n. 2022-02-03 00:42:45 +00:00
Matt Tighe 0837197d84 closes #23514: add firefox wallpapers 2022-02-02 19:27:09 +00:00
MickeyMoz 4780ebaf50 Update Android Components version to 98.0.20220202143123. 2022-02-02 16:54:44 +00:00
Mozilla L10n Automation Bot d6cfe0cde0 Import l10n. 2022-02-02 00:35:02 +00:00
Arturo Mejia fdb2006c85 For #23498 add content description for wallpapers 2022-02-01 23:55:15 +00:00
Christian Sadilek 892e65f8e8 Issue #12731: Disable TrimMemoryMiddleware on all channels
This was already disabled in Nightly over two months ago
and seems to work much better combined with latest fixes
in GV (see links inline for details.)
2022-02-01 23:21:05 +00:00
Gabriel Luong 39c6067b03
For #23350 - Revert changes from removing duplicate icons that already exists in ui-icons (#23527)
* Revert "For #23121 - Override @color/mozac_ui_icons_fill with ?primaryText attribute"

This reverts commit 12347c9999.

* Revert "For #23121 - Replace @drawble/ic_share with @drawable/mozac_ic_share"

This reverts commit bbf6ce3f0c.

* Revert "For #23121 - Replace @drawble/ic_storage_enabled with @drawable/mozac_ic_storage"

This reverts commit 930c7bf3b3.

* Revert "For #23121 - Replace @drawble/ic_notifications_enabled with @drawable/mozac_ic_notification"

This reverts commit 9069b57c24.

* Revert "For #23121 - Replace @drawble/ic_microphone_enabled with @drawable/mozac_ic_microphone"

This reverts commit 53216f3f4a.

* Revert "For #23121 - Replace @drawble/ic_location_enabled with @drawable/mozac_ic_location"

This reverts commit 9ee9aafd87.

* Revert "For #23121 - Replace @drawble/ic_autoplay_disabled with @drawable/mozac_ic_autoplay_blocked"

This reverts commit b045a5e203.

* Revert "For #23121 - Replace @drawble/ic_camera_enabled with @drawable/mozac_ic_video"

This reverts commit 62842db131.

* Revert "For #23121 - Replace @drawble/mozac_ic_extensions_black with @drawable/mozac_ic_extensions"

This reverts commit c020a9da10.

* Revert "For #23121 - Replace @drawble/ic_top_sites with @drawable/mozac_ic_pin"

This reverts commit ca67b0a752.

* Revert "For #23121 - Replace @drawble/ic_search with @drawable/mozac_ic_search"

This reverts commit 02d9197945.

* Revert "For #23121 - Replace @drawble/ic_readermode with @drawable/mozac_ic_reader_mode"

This reverts commit cf8592c709.

* Revert "For #23121 - Replace @drawble/ic_menu with @drawable/mozac_ic_menu"

This reverts commit a1ac019024.

* Revert "For #23121 - Replace @drawble/ic_login with @drawable/mozac_ic_login"

This reverts commit 541c56b589.

* Revert "For #23121 - Replace @drawble/ic_internet with @drawable/mozac_ic_globe"

This reverts commit 4d8adce85e.

* Revert "For #23121 - Replace @drawble/ic_download with @drawable/mozac_ic_download"

This reverts commit ef026d3ec2.

* Revert "For #23121 - Replace @drawble/ic_lock with @drawable/mozac_ic_lock"

This reverts commit 18591d5dd8.

* Revert "For #23121 - Replace @drawble/ic_desktop with @drawable/mozac_ic_device_desktop"

This reverts commit ad33e3c1e1.

* Revert "For #23121 - Replace @drawble/ic_close with @drawable/mozac_ic_close"

This reverts commit a9f0fefac2.

* Revert "For #23121 - Replace @drawble/ic_delete with @drawable/mozac_ic_delete"

This reverts commit 33dc752ef2.

* Revert "For #23121 - Replace @drawble/ic_chevron_up with @drawable/mozac_ic_arrowhead_up"

This reverts commit 5bf937cfd3.

* Revert "For #23121 - Replace @drawble/ic_chevron_down with @drawable/mozac_ic_arrowhead_down"

This reverts commit 0fadd68112.

* Revert "For #23121 - Replace @drawble/ic_back_button with @drawable/mozac_ic_back"

This reverts commit bea766e785.

* Revert "For #23121 - Replace @drawable/ic_arrowhead_right with @drawable/mozac_ic_arrowhead_right"

This reverts commit 5a6f349ea8.

* Revert "For #23121 - Replace @drawable/ic_new with @drawable/mozac_ic_new"

This reverts commit ae38410106.

* Revert "For #23121 - Replace @drawable/ic_addons_extensions with @drawable/mozac_ic_extensions"

This reverts commit 9352946afc.
2022-02-01 22:15:31 +00:00
Matthew Tighe 9dc0506ec2
closes #23504: download focus wallpapers at runtime (#23505)
* closes #23504: download focus wallpapers at runtime

* address pr feedback

* only download wallpapers if feature flag is set
2022-02-01 21:45:55 +00:00
Mickey Moz 9b9fab40da
Update Android Components version to 98.0.20220201143153. (#23524) 2022-02-01 11:47:43 -05:00
AndiAJ 02d4d59358 No issue: quick fix for externalLinkPWATest 2022-02-01 11:55:38 +00:00
Gabriel Luong a14e6ddde3 For #23433 - Align the provided top sites to the design spec 2022-02-01 00:46:33 +00:00
Marc-Andre Leclair 2fb8d88381 For #23426:Changed expiring perf probes to never expire
added new data_review url
2022-02-01 00:03:00 +00:00
Gabriel Luong 42ac6feb0c For #23424 - Part 2: Add context menu for contile top sites 2022-01-31 22:14:34 +00:00
Gabriel Luong 532bb9a38a For #23424 - Part 1: Refactor TopSiteItemMenu into its own file 2022-01-31 22:14:34 +00:00
Arturo Mejia 2533c91da5 For #23440,#23441,#23442 remove adapting themes after switching wallpapers 2022-01-31 21:06:06 +00:00
MickeyMoz 7a51dcc304 Update Android Components version to 98.0.20220131143255. 2022-01-31 16:35:50 +00:00
Julien Cristau 57dcc567c4 docker: remove tzdata interactive dialog workaround
Instead set an environment variable to tell apt not to ask questions.
2022-01-31 11:41:39 +00:00
Julien Cristau 56c6ed5f21 docker: pin taskcluster python package to a version compatible with 2.7 2022-01-31 11:41:39 +00:00
Mozilla L10n Automation Bot ca44c34468 Import l10n. 2022-01-31 00:37:18 +00:00
MickeyMoz c9bbeb3908 Update Android Components version to 98.0.20220130143102. 2022-01-30 16:30:45 +00:00
Mozilla L10n Automation Bot 23a5d69375 Import l10n. 2022-01-30 00:45:49 +00:00
MickeyMoz 3bdf1d8122 Update Android Components version to 98.0.20220129143244. 2022-01-29 16:37:53 +00:00
Mozilla L10n Automation Bot c386c98f61 Import l10n. 2022-01-29 00:42:32 +00:00
Elise Richards 6798f6500f
For #22870: Renew/remove metrics set to expire in February (#23453)
* For #22870: Renew/remove metrics set to expire in February

* Add data review and add notification owner for never expire metrics
2022-01-28 23:35:59 +00:00
Aaron Train d1d846a60b
No issue: Update references and doc in parse-ui-test.py (#23354)
* No issue: Update references and doc in parse-ui-test.py

* Update parse-ui-test.py

* Clean up device data

* Revert device output

* Update parse-ui-test.py

* Update parse-ui-test.py

* Update parse-ui-test.py

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-01-28 21:07:34 +00:00
Gabriel Luong 62b10690f8 For #23450 - Add Text Accent Disabled design token 2022-01-28 20:23:17 +00:00
Gabriel Luong cc3c68c24b For #23450 - Rename design token Border Default to Border Primary 2022-01-28 20:23:17 +00:00
MickeyMoz b57585f99a Update Android Components version to 98.0.20220127190345. 2022-01-28 19:19:56 +00:00
AndiAJ 7ed5bf9cc5 New External links PWA tests 2022-01-28 17:22:40 +00:00
jhugman 82a6f8cae4
First use of Nimbus FML plugin (#23400)
* Consume Nimbus FML plugin

* Convert Homescreen to use FML

* Convert nimbusValidation to use FML

* Convert legacy experiments to use the feature API and FML

Remove dead helper code and documentation

* Fixup failing test

Co-authored-by: Grisha Kruglov <gkruglov@mozilla.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-01-28 12:48:05 +00:00
Mozilla L10n Automation Bot e92fe26df7 Import l10n. 2022-01-28 00:41:38 +00:00
Gabriel Luong 15d8ca86d9 For #23448 - Update the address bar color to use @color/fx_mobile_layer_color_3 2022-01-27 23:24:54 +00:00
Gabriel Luong 6596f4c28b For #23432 - Use the imageUrl as the favicon for a provided top site 2022-01-27 20:58:30 +00:00
MickeyMoz bfa8d85bd3 Update Android Components version to 98.0.20220127143434. 2022-01-27 16:48:47 +00:00
Oana Horvath 5c917b58e6 [UI smoke test] For #21002: Ads UI test for browsing error pages 2022-01-27 08:46:49 +00:00
Mozilla L10n Automation Bot 46a228796f Import l10n. 2022-01-27 01:20:20 +00:00
Arturo Mejia 393de99196 For #22851 Add logo animation for wallpapers 2022-01-27 00:28:12 +00:00
Matt Tighe d23fb30151 replace WallpaperFeatureDiscovered probe with WallpaperSettingsOpened 2022-01-26 23:50:56 +00:00
Matt Tighe a419a6963c add events based on feedback 2022-01-26 23:50:56 +00:00
Matt Tighe a5f540568e update based on PR feedback and data review 2022-01-26 23:50:56 +00:00
Matt Tighe eed42ee96b closes #23381: add telemetry for wallpapers feature 2022-01-26 23:50:56 +00:00
MickeyMoz 4c324abfb2 Update Android Components version to 98.0.20220126143158. 2022-01-26 16:49:51 +00:00
AndiAJ 9b1136f9e0 Remove hard-coded package from openAppFromExternalLink 2022-01-26 12:54:02 +00:00
Gabriel Luong e5e7e6dbcf For #23409 - Specify fetchProvidedTopSites parameter for TopSitesConfig 2022-01-26 05:25:03 +00:00
Mozilla L10n Automation Bot d30815fec8 Import l10n. 2022-01-26 00:43:39 +00:00
Matt Tighe 670657b484 fixes #23404: add switch to wallpaper settings to disable tap-to-change 2022-01-25 23:34:25 +00:00
Gabriel Luong dff7c2813c For #23374 - Update Layer 1 and Layer 3 to match design system 2022-01-25 20:29:48 +00:00
Gabriel Luong 245fb03c6a For #23374 - Update description of Layer Accent 2022-01-25 20:29:48 +00:00
Gabriel Luong 0cc1346736 For #23374 - Add Text Action Primary, Secondary, Tertiary, Tertiary Active design tokens 2022-01-25 20:29:48 +00:00
Gabriel Luong ff2a65239e For #23374 - Update Text Inverted, Icon Inverted to Text On Color, Icon On Color 2022-01-25 20:29:48 +00:00
Gabriel Luong 5aa9daeede For #23374 - Add Action Quarternary design token 2022-01-25 20:29:48 +00:00
Gabriel Luong 3958b51685 For #23374 - Update Layer2 dark theme color to DarkGrey30 2022-01-25 20:29:48 +00:00
Gabriel Luong cc0515430b For #23374 - Add Dialog and Banner to Layer 2 description 2022-01-25 20:29:48 +00:00
Gabriel Luong b86c1fc5e7 For #23374 - Update Text Warning and Icon Warning colors to match design system 2022-01-25 20:29:48 +00:00
Gabriel Luong 169fc77256 For #23374 - Update Action Secondary colors and Add Action Tertiary 2022-01-25 20:29:48 +00:00
Gabriel Luong 27cec04f1a For #23374 - Update Border Disabled colors to match design system 2022-01-25 20:29:48 +00:00
Gabriel Luong bcc4d0bbc7 For #23374 - Update Icon Disabled colors to match design system 2022-01-25 20:29:48 +00:00
Gabriel Luong cf55261e13 For #23374 - Update Text Accent color to photonViolet20 2022-01-25 20:29:48 +00:00
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>
2022-01-25 18:54:42 +00:00
MickeyMoz 4a8cfb0d6a Update Android Components version to 98.0.20220125144533. 2022-01-25 16:42:11 +00:00
Sammy Khamis 6f9e725ec5 add invalid URL error to show up when trying to save an invalid bookmark 2022-01-25 15:05:12 +00:00
Sammy Khamis 7d34fbb87d fix fenix crashing when trying to add an invalid bookmark 2022-01-25 15:05:12 +00:00
Mugurell 5c1953d792 For #22314 - Reuse existing tab for search group items 2022-01-25 14:23:36 +00:00
Mozilla L10n Automation Bot ff4b194343 Import l10n. 2022-01-25 00:48:21 +00:00
MickeyMoz 21f239d8de Update Android Components version to 98.0.20220124150849. 2022-01-24 19:18:28 +00:00
Mozilla L10n Automation Bot 3e796726d9 Import l10n. 2022-01-24 00:45:03 +00:00
Arturo Mejia dc0f50b590 For #22851: Load wallpapers dynamically from the assets directory. 2022-01-23 23:03:07 +00:00
MickeyMoz 611a9002b1 Update Android Components version to 98.0.20220123143137. 2022-01-23 16:46:30 +00:00
MickeyMoz 250af1e0e7 Update Android Components version to 98.0.20220121232326. 2022-01-22 02:24:53 +00:00
Mozilla L10n Automation Bot 7ab9c4e250 Import l10n. 2022-01-22 00:33:29 +00:00
Gabriel Luong 73f80d16cc For #23355 - Tint mozac_ic_check to white in checkbox_item.xml 2022-01-21 23:31:36 +00:00
Gabriel Luong 9f57b24082 For #23351 - Refactor collection_icon_colors array into arrays.xml 2022-01-21 21:30:57 +00:00
Gabriel Luong 48f991e512 For #23342 - Replace color values with their photon color equivalent 2022-01-21 21:00:47 +00:00
AndiAJ 4daa6375a1 Save logins in PWA UI test 2022-01-21 18:27:26 +00:00
Gabriel Luong 5954916993 For #23344 - Update mozac_widget_favicon_border_color attribute to use @color/fx_mobile_border_color_default 2022-01-21 18:00:21 +00:00
Julien Cristau 220ec02c38 Remove remnants of github-release support
https://github.com/mozilla-mobile/fenix/pull/22125 stopped listening to
these events but the supporting code was still around.
2022-01-21 17:18:29 +00:00
AndiAJ ee458bd480 Fix mainMenuOpenInAppTest smoke test 2022-01-21 13:43:41 +00:00
AndiAJ 96f6e27b46 Add missing request interceptors to androidTest AppRequestInterceptor 2022-01-21 13:43:41 +00:00
AndiAJ a7e12a4dae Open links in apps UI test 2022-01-21 13:43:41 +00:00
Oana Horvath 05594c48a0 [UI smoke test] For #21002: Ads UI test for 'Open website' button from Saved logins 2022-01-21 09:30:57 +00:00
Grigory Kruglov 9ceb06e55c Account for Int->UInt changes in bookmarks API 2022-01-20 23:57:50 -08:00
Grigory Kruglov 133f7132d5 Bump A-C nightly version 2022-01-20 23:57:50 -08:00
Sammy Khamis 088339c4de changes to fix up issues with places uniffication 2022-01-20 23:57:50 -08:00
Gabriel Luong 12347c9999 For #23121 - Override @color/mozac_ui_icons_fill with ?primaryText attribute 2022-01-21 00:29:08 +00:00
Gabriel Luong bbf6ce3f0c For #23121 - Replace @drawble/ic_share with @drawable/mozac_ic_share 2022-01-21 00:29:08 +00:00
Gabriel Luong 930c7bf3b3 For #23121 - Replace @drawble/ic_storage_enabled with @drawable/mozac_ic_storage 2022-01-21 00:29:08 +00:00
Gabriel Luong 9069b57c24 For #23121 - Replace @drawble/ic_notifications_enabled with @drawable/mozac_ic_notification 2022-01-21 00:29:08 +00:00
Gabriel Luong 53216f3f4a For #23121 - Replace @drawble/ic_microphone_enabled with @drawable/mozac_ic_microphone 2022-01-21 00:29:08 +00:00
Gabriel Luong 9ee9aafd87 For #23121 - Replace @drawble/ic_location_enabled with @drawable/mozac_ic_location 2022-01-21 00:29:08 +00:00
Gabriel Luong b045a5e203 For #23121 - Replace @drawble/ic_autoplay_disabled with @drawable/mozac_ic_autoplay_blocked 2022-01-21 00:29:08 +00:00
Gabriel Luong 62842db131 For #23121 - Replace @drawble/ic_camera_enabled with @drawable/mozac_ic_video 2022-01-21 00:29:08 +00:00
Gabriel Luong c020a9da10 For #23121 - Replace @drawble/mozac_ic_extensions_black with @drawable/mozac_ic_extensions 2022-01-21 00:29:08 +00:00
Gabriel Luong ca67b0a752 For #23121 - Replace @drawble/ic_top_sites with @drawable/mozac_ic_pin 2022-01-21 00:29:08 +00:00
Gabriel Luong 02d9197945 For #23121 - Replace @drawble/ic_search with @drawable/mozac_ic_search 2022-01-21 00:29:08 +00:00
Gabriel Luong cf8592c709 For #23121 - Replace @drawble/ic_readermode with @drawable/mozac_ic_reader_mode 2022-01-21 00:29:08 +00:00
Gabriel Luong a1ac019024 For #23121 - Replace @drawble/ic_menu with @drawable/mozac_ic_menu 2022-01-21 00:29:08 +00:00
Gabriel Luong 541c56b589 For #23121 - Replace @drawble/ic_login with @drawable/mozac_ic_login 2022-01-21 00:29:08 +00:00
Gabriel Luong 4d8adce85e For #23121 - Replace @drawble/ic_internet with @drawable/mozac_ic_globe 2022-01-21 00:29:08 +00:00
Gabriel Luong ef026d3ec2 For #23121 - Replace @drawble/ic_download with @drawable/mozac_ic_download 2022-01-21 00:29:08 +00:00
Gabriel Luong 18591d5dd8 For #23121 - Replace @drawble/ic_lock with @drawable/mozac_ic_lock 2022-01-21 00:29:08 +00:00
Gabriel Luong ad33e3c1e1 For #23121 - Replace @drawble/ic_desktop with @drawable/mozac_ic_device_desktop 2022-01-21 00:29:08 +00:00
Gabriel Luong a9f0fefac2 For #23121 - Replace @drawble/ic_close with @drawable/mozac_ic_close 2022-01-21 00:29:08 +00:00
Gabriel Luong 33dc752ef2 For #23121 - Replace @drawble/ic_delete with @drawable/mozac_ic_delete 2022-01-21 00:29:08 +00:00
Gabriel Luong 5bf937cfd3 For #23121 - Replace @drawble/ic_chevron_up with @drawable/mozac_ic_arrowhead_up 2022-01-21 00:29:08 +00:00
Gabriel Luong 0fadd68112 For #23121 - Replace @drawble/ic_chevron_down with @drawable/mozac_ic_arrowhead_down 2022-01-21 00:29:08 +00:00
Gabriel Luong bea766e785 For #23121 - Replace @drawble/ic_back_button with @drawable/mozac_ic_back 2022-01-21 00:29:08 +00:00
Gabriel Luong 5a6f349ea8 For #23121 - Replace @drawable/ic_arrowhead_right with @drawable/mozac_ic_arrowhead_right 2022-01-21 00:29:08 +00:00
Gabriel Luong ae38410106 For #23121 - Replace @drawable/ic_new with @drawable/mozac_ic_new 2022-01-21 00:29:08 +00:00
Gabriel Luong 9352946afc For #23121 - Replace @drawable/ic_addons_extensions with @drawable/mozac_ic_extensions 2022-01-21 00:29:08 +00:00
Gabriel Luong a1374f1de0 For #23317 - Update tab tray menu button color to @color/fx_mobile_icon_color_primary 2022-01-20 22:21:53 +00:00
Gabriel Luong b61830e680 For #23317 - Update inactive tab tray icon color to @color/fx_mobile_icon_color_primary_inactive 2022-01-20 22:21:53 +00:00
Gabriel Luong 69f4988a9a For #23317 - Update selected tab tray icon color to @color/fx_mobile_icon_color_active 2022-01-20 22:21:53 +00:00
MickeyMoz 33970149fa Update Android Components version to 98.0.20220120143203. 2022-01-20 20:54:35 +00:00
Roger Yang f8b0dd6e7e No issue: Remove showHistorySearchGroups feature flag 2022-01-20 18:39:14 +00:00
Aaron Train 18f70100ce
No issue: Update PWA package name in mainMenuInstallPWATest (#23335) 2022-01-20 12:23:24 -05:00
Oana Horvath d233ec10f7 [UI smoke test] For #21002: Ads new audio-video permissions test 2022-01-20 15:58:05 +00:00
Gabriel Luong a377c35e3e For #23319 - Replace mozac_widget_favicon_background_color to @color/fx_mobile_layer_color_2
@color/mozac_widget_favicon_background_normal_theme and @color/fx_mobile_layer_color_2 are equivalent
2022-01-20 14:03:44 +00:00
Gabriel Luong 954a7b4378 For #23323 - Remove addOnPrivateBrowsingInteriorIconBackground attribute 2022-01-20 12:18:54 +00:00
Oana Horvath c16977b07a [UI smoke test] For #21002: Ads app permissions UI tests 2022-01-20 08:37:18 +00:00
mcarare a6abaf7cf9 Set a minimum number of sites a search group should contain. 2022-01-20 07:38:42 +00:00
Mozilla L10n Automation Bot 242e7a1eb5 Import l10n. 2022-01-20 01:29:21 +00:00
Gabriel Luong 39a16df8bb For #23289 - Update the checkbox background color to @color/fx_mobile_layer_color_accent 2022-01-20 00:50:46 +00:00
Gabriel Luong 70882179a0 For #23304 - Add a setting for enabling Contile 2022-01-20 00:18:11 +00:00
Gabriel Luong 0316ca434a For #23287 - Replace @color/tab_tray_item_divider_normal_theme with @color/fx_mobile_border_color_default 2022-01-19 23:21:51 +00:00
Gabriel Luong d8d1826b86 For #23281 - Replace @color/top_site_pager_dot_selected with @color/fx_mobile_action_color_indicator_active 2022-01-19 22:49:14 +00:00
Gabriel Luong c3b126056c For #23281 - Replace @color/top_site_pager_dot with @color/fx_mobile_action_color_indicator_inactive 2022-01-19 22:49:14 +00:00
Gabriel Luong 803c520439 For #23285 - Replace @color/tab_tray_item_url_normal_theme with @color/fx_mobile_text_color_secondary 2022-01-19 22:11:12 +00:00
Aaron Train e6cd16569c Update assets.md
fix: fixed URL
2022-01-19 20:31:11 +00:00
Aaron Train d2cbd6b591 No issue: Create an asset readme for UI tests 2022-01-19 20:31:11 +00:00
Noah Bond 157acdf7fc For #23159 - Created setting to turn off the Contile feature 2022-01-19 19:58:31 +00:00
Gabriel Luong ce6917a542 For #23293 - Add @color/fx_mobile_icon_color_primary_inactive and @color/fx_mobile_icon_color_active 2022-01-19 19:29:18 +00:00
mcarare 305b527b05 For #23256: Close quick settings sheet when displaying clear dialog. 2022-01-19 18:46:01 +00:00
mcarare 0496249fe4 For #23256: Pass navController instance instead of lambda. 2022-01-19 18:46:01 +00:00
Gabriel Luong 854b3701e3 For #23283 - Replace @color/accent_on_dark_background_normal_theme with @color/fx_mobile_text_color_accent 2022-01-19 18:05:45 +00:00
Mickey Moz 95629c1151
Update Android Components version to 98.0.20220119143109. (#23302) 2022-01-19 11:35:43 -05:00
Alexandru2909 811375275b For #23272 - AddLoginFragment use showKeyboard from Components 2022-01-19 14:46:09 +00:00
Roger Yang af5b2c94d3 Close #22956: Define "tags" for metrics in the app repository
Co-authored-by: William Lachance <wlach@protonmail.com>

Define "tags" for metrics in the app repository

Using the new "tags" feature in Glean, we can remove most of the
manual process/pain of defining tags in a seperate Glean annotations
repository (see: https://github.com/mozilla-mobile/fenix/wiki/Add-a-Glean-Annotation-for-an-event)
and just put them beside the metrics themselves. This should make it
much easier to keep this metadata up to date, since it can be added
in the same pull request as the instrumentation itself.

To keep the list of tags up to date with the Fenix issue labels, a new
script `update-glean-tags.py` has been added to the repository. It
should not need to be run often.

This pull request uses a scraped version of the defined tags in the
Glean annotations repository. After it lands, we can remove those and
just use the tagging information here as the main source of information.
2022-01-18 23:31:11 +00:00
Gabriel Luong 268ba9b39d For #23266 - Update the tabs tray multi-select background color to @color/fx_mobile_layer_color_accent 2022-01-18 23:03:06 +00:00
Roger Yang 829c06ebe4 Close #23250: Remove duplicate sites within a time period in history 2022-01-18 22:17:10 +00:00
Gabriel Luong fe0d704f1c For #23263 - Replace @color/tab_tray_item_media_background_normal_theme with @color/accent_normal_theme 2022-01-18 21:48:21 +00:00
Gabriel Luong b78fb3b2bd For #23263 - Replace @color/tab_tray_heading_icon_normal_theme with @color/accent_normal_theme 2022-01-18 21:48:21 +00:00
Gabriel Luong 26b65a2a23 For #22727 - Add Contile to Top Sites 2022-01-18 20:13:43 +00:00
Gabriel Luong d076110752 For #23255 - Replace @color/disabled_private_theme with @color/fx_mobile_private_text_color_disabled 2022-01-18 18:58:58 +00:00
mcarare 64a8932e3c For #22477: Ignore null and empty values for share data title. 2022-01-18 17:18:35 +00:00
Sarah Khan e9a4272e82 For #23138 - Close recently visited menu on orientation change 2022-01-18 16:43:31 +00:00
Oana Horvath 02d62c8591 For #21002: improve Manage Downloads smoke tests coverage
Add parametrized test for downloading various file types
2022-01-18 15:47:47 +00:00
Christian Sadilek 12a9071fc4 Issue #22256: Ignore intermittent editCustomSearchEngineTest 2022-01-18 00:50:33 +00:00
MickeyMoz 145983dadb Update Android Components version to 98.0.20220117143334. 2022-01-18 00:50:33 +00:00
Gabriel Luong 72cea86304 For #23260 - Remove @color/debug_launcher_background redirection 2022-01-17 22:16:33 +00:00
Gabriel Luong 75d894fef2 For #23260 - Remove @color/nightly_launcher_background redirection 2022-01-17 22:16:33 +00:00
Gabriel Luong 7c6a014224 For #23260 - Remove @color/onboarding_card_background_end_gradient_normal_theme redirection 2022-01-17 22:16:33 +00:00
Gabriel Luong 6081f232e6 For #23260 - Remove @color/onboarding_card_background_end_gradient_private_theme redirection 2022-01-17 22:16:33 +00:00
Gabriel Luong 8dfbb26127 For #23260 - Remove @color/onboarding_card_background_start_gradient_private_theme redirection 2022-01-17 22:16:33 +00:00
Gabriel Luong d6b646e88a For #23260 - Remove @color/onboarding_card_background_start_gradient_normal_theme redirection 2022-01-17 22:16:33 +00:00
Gabriel Luong 477386f4f7 For #23260 - Remove @color/add_on_private_browsing_interior_icon_background_normal_theme redirection 2022-01-17 22:16:33 +00:00
Gabriel Luong b1ca1d06da For #23260 - Remove @color/add_on_private_browsing_exterior_circle_background_private_theme redirection 2022-01-17 22:16:33 +00:00
Gabriel Luong 8e298705b7 For #23260 - Remove @color/add_on_private_browsing_interior_icon_background_private_theme redirection 2022-01-17 22:16:33 +00:00
Gabriel Luong f1ebecf11b For #23260 - Remove @color/tab_history_item_selected_background_private_theme redirection 2022-01-17 22:16:33 +00:00
Gabriel Luong 9f2696e1cd For #23260 - Remove @color/tab_tray_item_text_normal_theme redirection 2022-01-17 22:16:33 +00:00
Gabriel Luong fa8c3fb4cf Update accentBright attribute to @color/photonViolet70 2022-01-17 22:16:33 +00:00
Gabriel Luong afcb449098 For #23248 - Replace @color/menu_item_button_normal_theme with @color/fx_mobile_text_color_accent 2022-01-17 21:46:37 +00:00
Gabriel Luong ff9d94fd75 For #23247 - Replace @color/destructive_private_theme with @color/fx_mobile_private_text_color_warning_dark 2022-01-17 21:21:19 +00:00
Gabriel Luong 0781f108e9 For #23242 - Ignore UnusedResources for @color/mozac_feature_readerview_text_color 2022-01-17 20:26:00 +00:00
Gabriel Luong 9a9984adbc For #23242 - Ignore UnusedResources for @color/mozac_ui_tabcounter_default_[tint|text] 2022-01-17 20:26:00 +00:00
Gabriel Luong 38b85ad889 For #23253 - Use photon color variables for @color/scrim[Start|End]_private_theme 2022-01-17 19:59:34 +00:00
Gabriel Luong 77a5f7fbd4 For #23251 - Consolidate select credit card and login prompt header styles 2022-01-17 19:27:24 +00:00
Gabriel Luong ea68cfdf50 For #23245 - Replace @color/inset_private_theme with @color/fx_mobile_private_layer_color_1 2022-01-17 18:39:09 +00:00
Gabriel Luong 52a642233d For #23245 - Replace @color/above_private_theme with @color/fx_mobile_private_layer_color_1 2022-01-17 18:39:09 +00:00
Gabriel Luong 0c80b196ae For #23240 - Replace @color/contrast_text_private_theme with @color/fx_mobile_private_text_color_primary
@color/contrast_text_private_theme and @color/fx_mobile_private_text_color_primary are the same color
2022-01-17 17:40:37 +00:00
MickeyMoz 5e63aa734d Update Android Components version to 98.0.20220114190159. 2022-01-15 16:21:56 +00:00
Mozilla L10n Automation Bot 0c34bd93b8 Import l10n. 2022-01-15 01:03:14 +00:00
Matt Tighe dd4cf9164d closes #23220: show snackbar on wallpaper selection 2022-01-15 00:26:22 +00:00
MickeyMoz 71a74226c5 Update Android Components version to 98.0.20220114143400. 2022-01-14 23:10:45 +00:00
Jonathan Almeida d99898824b Update lifecycle dependencies to the commons library
Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
2022-01-14 17:04:44 -05:00
Jonathan Almeida 25b6dd52ed Update Android Components version 2022-01-14 17:04:44 -05:00
Matt Tighe 0b99c2e67d fixes #22943: update androidx.lifecycle to 2.4.0 2022-01-14 17:04:44 -05:00
Gabriel Luong 7d0fae8450 For #23193 - Remove @color/default_launcher_background redirection 2022-01-14 20:03:08 +00:00
Gabriel Luong 2baa4efa8d For #23193 - Remove @color/toolbar_[start|center|end]-gradient_normal_theme redirection 2022-01-14 20:03:08 +00:00
Gabriel Luong 608e9ddb81 For #23193 - Remove @color/accent_on_dark_background_private_theme redirection 2022-01-14 20:03:08 +00:00
Gabriel Luong 929697b6e2 For #23193 - Remove @color/fill_link_from_clipboard_private_theme redirection 2022-01-14 20:03:08 +00:00
Gabriel Luong 38c7e53454 For #23193 - Remove @color/onboarding_illustration_selected_private_theme redirection 2022-01-14 20:03:08 +00:00
Gabriel Luong d18115bbff For #23193 - Remove @color/accent_high_contrast_dark_theme redirection 2022-01-14 20:03:08 +00:00
Gabriel Luong ff91a35f1b For #23193 - Remove @color/accent_bright_dark_theme redirection 2022-01-14 20:03:08 +00:00
Gabriel Luong fd055ec97e For #23193 - Remove @color/accent_bright_light_theme redirection 2022-01-14 20:03:08 +00:00
Gabriel Luong a164a2a5ae For #23193 - Remove @color/accent_light_theme redirection 2022-01-14 20:03:08 +00:00
Gabriel Luong f4f2f4d645 For #23203 - Replace @color/snackbar_normal_theme with @color/fx_mobile_action_color_primary 2022-01-14 18:22:31 +00:00
Gabriel Luong 88ed50888d For #23187 - Replace @color/notification_accent_color_normal_theme with @color/fx_mobile_text_color_accent 2022-01-14 17:22:32 +00:00
Gabriel Luong 1e16d60ddf For #23191 - Replace @color/preference_section_header_normal_theme with @color/fx_mobile_text_color_accent 2022-01-14 16:42:09 +00:00
Gabriel Luong f0b37b001f For #23207 - Update the tabs tray FAB color to @color/fx_mobile_layer_color_accent 2022-01-14 16:17:27 +00:00
Gabriel Luong 5864d49f6b For #23209 - Replace @color/above_normal_theme with @color/fx_mobile_layer_color_2 2022-01-14 15:51:59 +00:00
Gabriel Luong 56c1d4472c For #23205 - Replace #66FBFBFE with its photon color @color/photonLightGrey05A40 2022-01-14 14:38:18 +00:00
Alexandru2909 a34711c444 For #20524 - Remove redundant coroutine dispatchers from tests 2022-01-14 08:53:46 +00:00
Alexandru2909 cf83b3050b For #8108 - Add BrowserToolbar option to remove url from TopSites 2022-01-14 07:37:19 +00:00
Mozilla L10n Automation Bot 16d9866024 Import l10n. 2022-01-14 00:32:56 +00:00
Matthew Tighe ce1c4093fa
closes #22831: add wallpaper settings screen (#23145)
* closes #22831: add wallpaper settings screen

* address PR and UX feedback

* rebase upstream and adjust settings correctly
2022-01-13 23:30:13 +00:00
Arturo Mejia d1ace92e64 Revert "For #22851: Add logo animation for wallpapers."
This reverts commit d089f007
2022-01-13 22:17:55 +00:00
Arturo Mejia d089f00793 For #22851: Add logo animation for wallpapers. 2022-01-13 20:11:37 +00:00
Arturo Mejia 2bba66fb58 For #23144 Address regression in COLD start 2022-01-13 19:43:41 +00:00
Gabriel Luong 29127f9690 For #16152 - Add a dark theme for the tabs tray grid view 2022-01-13 19:13:22 +00:00
MickeyMoz d01df3d0b2 Update Android Components version to 98.0.20220113143125. 2022-01-13 16:49:39 +00:00
mcarare afd13fec85 For #21744: Replace InputMethodManager's deprecated toggleSoftInput. 2022-01-13 11:23:45 +00:00
mcarare 58a6fafabc For #22383: Propagate ViewTreeLifecycleOwner to composable view holders. 2022-01-13 10:53:28 +00:00
Roger Yang 047ec890b2 Closes #22550: Refactor search term tab grouping logic to rely on middleware 2022-01-13 03:32:12 +00:00
Michael Comella ba25364895 Closes #23150: remove 'threads' feature setup-startup-profiling.py.
Root cause: Bug 1729815 removed the threads feature and, because of Bug
1749498, we crash if a feature is provided that does not exist.

The immediate solution is to remove the unused threads feature.
2022-01-13 01:21:16 +00:00
Grigory Kruglov d161e46383 Adjust logins diffing logic for recyclerview 2022-01-12 12:45:53 -08:00
Grigory Kruglov e67753fb4b Scroll to top of logins screen after list changes 2022-01-12 12:45:53 -08:00
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.
2022-01-12 12:45:53 -08:00
Mozilla L10n Automation Bot 375837c977 Import l10n. 2022-01-12 01:30:02 +00:00
mcarare 2577e07aff For #22559: Update leak canary version to 2.8.1 2022-01-11 23:38:04 +00:00
Mickey Moz 71c2c7180e
Update Android Components version to 98.0.20220111190103. (#23158)
Co-authored-by: Ryan VanderMeulen <rvandermeulen@mozilla.com>
2022-01-11 16:26:40 -05:00
Gabriel Luong e668c5afc1 For #23128 - Remove @color/mozac_widget_favicon_border_dark_theme redirection 2022-01-11 20:04:49 +00:00
Gabriel Luong 6fbca6de91 For #23128 - Remove @color/mozac_widget_favicon_background_dark_theme redirection 2022-01-11 20:04:49 +00:00
Gabriel Luong 4fcdc46d2a For #23128 - Remove @color/mozac_widget_favicon_border_light_theme redirection 2022-01-11 20:04:49 +00:00
Gabriel Luong 52edfeed8a For #23128 - Remove @color/mozac_widget_favicon_background_light_theme redirection 2022-01-11 20:04:49 +00:00
Gabriel Luong 9d0307cad6 For #23128 - Remove @color/mozac_widget_favicon_[background|border]_private_theme redirection 2022-01-11 20:04:49 +00:00
Gabriel Luong df2e8c885e For #23156 - Remove all unused strings marked moz:removedIn <= 95 2022-01-11 19:38:52 +00:00
Roger Yang 2a859503ef Update version.txt to 98.0.0-beta.1 2022-01-11 19:11:51 +00:00
Brais Gabín 7ec31a25c4 For #23142 - Fix license formatting in tests 2022-01-11 18:32:06 +00:00
MickeyMoz 108d6bebf1 Update Android Components version to 97.0.20220111143152. 2022-01-11 17:11:24 +00:00
Mozilla L10n Automation Bot 622a4f57d0 Import l10n. 2022-01-11 00:43:09 +00:00
Elise Richards 703e8c6558 For #22869: Data review for renewing january metrics 2022-01-10 17:05:49 +00:00
Elise Richards 08087abaf1 For #22869: Renew metrics expiring in January 2022-01-10 17:05:49 +00:00
Mozilla L10n Automation Bot 39a211c1cd Import l10n. 2022-01-10 00:33:03 +00:00
Arturo Mejia 28928e4bdd For #23104: Don't adjust the theme for the default wallpaper. 2022-01-09 20:21:11 +00:00
MickeyMoz 7582bce890 Update Android Components version to 97.0.20220109143152. 2022-01-09 16:47:08 +00:00
MickeyMoz 9efb6239d3 Update Android Components version to 97.0.20220108143302. 2022-01-08 17:21:17 +00:00
Mozilla L10n Automation Bot 0563bf38b2 Import l10n. 2022-01-08 00:45:48 +00:00
MickeyMoz 9d654bd9ed Update Android Components version to 97.0.20220107193451. 2022-01-07 21:50:56 +00:00
Gabriel Luong 9fea89ca19 For #22675 - Replace collection color icon variables with the icon design color tokens 2022-01-07 19:14:49 +00:00
Mickey Moz 34f006308d
Update Android Components version to 97.0.20220107143147. (#23111) 2022-01-07 12:49:32 -05:00
Aaron Train 4263ccf937 No issue: Add shared docs/team links to parse-ui-test.py 2022-01-07 15:59:37 +00:00
Alexandru2909 7b04eba324 For #19567 - Change SavedLogins and LoginDetail fragments to extend SecureFragment 2022-01-07 09:42:21 +00:00
Gabriel Luong 873d8257d1 For #23086 - Add Border Inverted design token 2022-01-07 09:18:24 +00:00
Gabriel Luong a39224e44b For #23086 - Change design token name from Border Selected to Border Accent 2022-01-07 09:18:24 +00:00
Gabriel Luong 2ad2691724 For #23086 - Update Border Divider to Border Default 2022-01-07 09:18:24 +00:00
Gabriel Luong fc9310dc83 For #23086 - Rename design token name from Border Default to Border Form Default 2022-01-07 09:18:24 +00:00
Gabriel Luong 11e0df20df For #23086 - Update the dark theme colors of Action Primary to Violet60
- Updates the description of Action Primary to include "Chip selected"
2022-01-07 09:18:24 +00:00
Gabriel Luong 65b84c10bc For #23086 - Update the dark theme Action Secondary color to DarkGrey10 2022-01-07 09:18:24 +00:00
Gabriel Luong 1b7918f6d0 For #23086 - Change the light theme color for Form Selected, Form On, Icon Button, Layer Accent, Border Selected to Ink20 2022-01-07 09:18:24 +00:00
mcarare 5d1e2f0099 For #22577: Update work manager version to 2.7.1 2022-01-07 08:09:06 +00:00
Mozilla L10n Automation Bot d727206255 Import l10n. 2022-01-07 07:06:24 +00:00
Mickey Moz c8ddd401bb
Update Android Components version to 97.0.20220106193801. (#23094) 2022-01-06 16:37:28 -05:00
Gabriel Luong 27336c2368 For #22975 - Replace aboutLink attribute with Text Accent color token 2022-01-06 18:43:35 +00:00
MickeyMoz 5d8587e5d1 Update Android Components version to 97.0.20220106143323. 2022-01-06 16:40:25 +00:00
Gabriel Luong 76fb147ed8 For #23076 - Clean up unneeded FeatureFlags 2022-01-06 06:53:17 +00:00
MickeyMoz 887544abf4 Update Android Components version to 97.0.20220105190259. 2022-01-06 02:40:06 +00:00
Mozilla L10n Automation Bot c335adcfb6 Import l10n. 2022-01-06 00:35:56 +00:00
Gabriel Luong 44e1cb4b60 For #23071 - Replace @color/tab_tray_selected_mask_normal_theme with @color/fx_mobile_layer_color_accent_nonopaque 2022-01-05 23:49:43 +00:00
Joel Maher 4d60cfa927 Bug 1748687 - remove stale --enable-webrender flag. 2022-01-05 23:06:23 +00:00
MickeyMoz 96b96fbfdb Update Android Components version to 97.0.20220104190053. 2022-01-05 19:02:55 +00:00
Arturo Mejia 09fdee6510 For #22851: Adjust theme based on the selected wallpaper. 2022-01-05 17:55:02 +00:00
Mozilla L10n Automation Bot 32bf020b7c Import l10n. 2022-01-05 01:23:18 +00:00
Gabriel Luong ddc806e8bc For #22978 - Replace @color/foundation_normal_theme with @color/fx_mobile_layer_color_1 2022-01-05 00:39:36 +00:00
Gabriel Luong 7c12e9c970 For #23049 - Update the color for @color/fx_mobile_layer_color_accent_nonopaque 2022-01-05 00:04:18 +00:00
Gabriel Luong f863864c50 For #23049 - Update the colors of @color/fx_mobile_action_color_primary 2022-01-05 00:04:18 +00:00
Gabriel Luong 986a57d40b For #23049 - Consolidate @color/fx_mobile_text_color_accent with @color/fx_mobile_text_color_action
- Removes @color/fx_mobile_text_color_action
- Use the colors from @color/fx_mobile_text_color_action in @color/fx_mobile_text_color_accent
2022-01-05 00:04:18 +00:00
Arturo Mejia 277e94881b For #22995: Address crash when switching languages. 2022-01-04 21:13:00 +00:00
Aaron Train 8edd3f9fa1
No issue: Try out RetryTestRule in SmokeTest UI test class (#22868)
* Add RetryTestRule to SmokeTest UI tests

* fix: newline in RetryTestRule.kt

fix: switch off generic Throwable

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-01-04 20:17:02 +00:00
MickeyMoz eb4c60fe9e Update Android Components version to 97.0.20220103190307. 2022-01-04 16:43:40 +00:00
mcarare cdbe7983f5 For #22879: Filter default engines when sending telemetry.
Filter out custom engines that are not well known search domains.
2022-01-04 10:29:16 +00:00
Gabriel Luong 8a5020123f For #23017 - Ignore ExtraTranslation in our lint-baseline 2022-01-04 01:28:30 +00:00
Mozilla L10n Automation Bot d9711497dc Import l10n. 2022-01-04 00:37:13 +00:00
Andrew Halberstadt 48b7241c75 For #23040 - Add hand curated parameters files to `taskgraph/test/params` 2022-01-03 21:32:52 +00:00
MickeyMoz e7ea5ebdd2 Update Android Components version to 97.0.20220103143211. 2022-01-03 16:41:20 +00:00
Mozilla L10n Automation Bot 9c10f7abb6 Import l10n. 2022-01-03 00:49:41 +00:00
MickeyMoz 68468f86ee Update Android Components version to 97.0.20220102143445. 2022-01-02 16:36:49 +00:00
Mozilla L10n Automation Bot c91be63240 Import l10n. 2022-01-02 00:36:35 +00:00
MickeyMoz 0c48f4469a Update Android Components version to 97.0.20220101143102. 2022-01-01 16:18:51 +00:00
Mozilla L10n Automation Bot 4d0203c60c Import l10n. 2022-01-01 00:34:53 +00:00
Mozilla L10n Automation Bot e7d64d886e Import l10n. 2021-12-31 00:40:16 +00:00
MickeyMoz 14af8a27fd Update Android Components version to 97.0.20211230143407. 2021-12-30 17:00:44 +00:00
mike a 46b5dd2706 Closes #10737: Searching a language/saved password displays a misplaced "x".
Setting max width for the search view in language settings and saved logins screens. Removed SyncAuthClosed event from LocaleSettingsFragment, an apparent copy-paste.
2021-12-30 05:37:58 +00:00
Mozilla L10n Automation Bot acc21f9f7f Import l10n. 2021-12-30 00:38:58 +00:00
MickeyMoz 7a41c19c2d Update Android Components version to 97.0.20211229143445. 2021-12-29 16:59:12 +00:00
Gabriel Luong c8e2fd3847 For #22973 - Remove @color/contrast_text_light_theme redirection 2021-12-28 20:06:05 +00:00
Gabriel Luong 794823c5ec For #22983 - Remove @color/destructive_button_text_color redirection 2021-12-28 19:37:21 +00:00
TasosB 05e6ba40b4 For #21483 - Remove light theme tinting of folder icon in the Bookmark view 2021-12-28 18:56:36 +00:00
TasosB 54ffe7db03 For #21483 - Use primaryText attribute for download icons fill color 2021-12-28 18:56:36 +00:00
MickeyMoz 47a1e37999 Update Android Components version to 97.0.20211228143314. 2021-12-28 17:58:32 +00:00
Gabriel Luong 4078bf7863 For #22971 - Remove @color/above_dark_theme redirection 2021-12-28 16:47:59 +00:00
Mozilla L10n Automation Bot 716e1194a0 Import l10n. 2021-12-28 00:35:39 +00:00
MickeyMoz 3be0847d4a Update Android Components version to 97.0.20211227143407. 2021-12-27 16:48:37 +00:00
Mozilla L10n Automation Bot fa377bf0d6 Import l10n. 2021-12-27 00:35:38 +00:00
MickeyMoz d29304b0b1 Update Android Components version to 97.0.20211224190059. 2021-12-25 16:46:27 +00:00
Mozilla L10n Automation Bot ec9cf0338e Import l10n. 2021-12-25 00:37:17 +00:00
MickeyMoz b061524774 Update Android Components version to 97.0.20211224143444. 2021-12-24 16:44:57 +00:00
rxu 2203ebf923 Pass distribution_id to Socorro crash report 2021-12-24 01:50:32 +00:00
Mozilla L10n Automation Bot 00d18125b2 Import l10n. 2021-12-24 00:44:51 +00:00
Gabriel Luong c50073f7e4 For #22965 - Add Form On, Form Off, Indicator Active, Indicator Inactive color tokens 2021-12-23 21:46:57 +00:00
Gabriel Luong 3ffece2b87 For #22965 - Remove Control Active color token 2021-12-23 21:46:57 +00:00
Gabriel Luong 38c55dbbc0 For #22965 - Update description of Layer Accent color token 2021-12-23 21:46:57 +00:00
Gabriel Luong a7e78a19d0 For #22965 - Update description of Text Inverted color token 2021-12-23 21:46:57 +00:00
Gabriel Luong c9cb55cf3f For #22965 - Remove Control Dark design color token 2021-12-23 21:46:57 +00:00
Gabriel Luong 945dde72e3 For #22965 - Rename Action Disabled to Form Disabled for the design color tokens 2021-12-23 21:46:57 +00:00
Gabriel Luong 97c42ca84e For #22965 - Update Control to Form Surface design colors 2021-12-23 21:46:57 +00:00
Gabriel Luong 5bea4554ad For #22965 - Add Form Selected design color token 2021-12-23 21:46:57 +00:00
Gabriel Luong c9bc38d67c For #22965 - Update Action Teritary to Form Default design colors 2021-12-23 21:46:57 +00:00
Gabriel Luong 1cf91a2ef4 For #22965 - Change Pill button to Chip for Action Secondary design color token description 2021-12-23 21:46:57 +00:00
Gabriel Luong 16bf150fb9 For #22965 - Remove Toolbar background from the description of Layer 3 design color token 2021-12-23 21:46:57 +00:00
Roger Yang 0b0f69ab4e Closes #22754: Customize home button should work on fresh install 2021-12-23 20:34:10 +00:00
MickeyMoz 4059d7828d Update Android Components version to 97.0.20211223143124 2021-12-23 17:55:42 +00:00
Arturo Mejia 27def6fd0c For #22851: Optimize wallpaper testing images. 2021-12-23 10:24:32 +00:00
Roger Yang b9b2bc3c7d Issue #22561: Fix tab group titles colour when in private mode 2021-12-22 22:48:57 +00:00
mcarare 03f1aa3d8b For #22415: Remove element type from content descriptions.
Adding the type to content description is not advised according to a11y guidelines.
2021-12-22 22:23:37 +00:00
Gabriel Luong dc576a2ad7 Revert "For #22777 - Replace about_link_normal_theme with fx_mobile_text_color_action"
This reverts commit 986a48b1db.
2021-12-22 14:43:10 -05:00
isabelrios 90b9da3d9f add reviewer comments 2021-12-22 09:18:30 +00:00
isabelrios bf75af30e0 No bug - Update l10nScreenshotsTests doc 2021-12-22 09:18:30 +00:00
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>
2021-12-22 00:12:44 -08:00
Mozilla L10n Automation Bot 105a2e5fc6 Import l10n. 2021-12-22 00:34:24 +00:00
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.
2021-12-21 19:54:18 +00:00
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.
2021-12-21 19:54:18 +00:00
Mugurell 34c0a17b4d For #22852 - Add a new "Storage access" permission 2021-12-21 17:45:19 +00:00
Arturo Mejia cf31bc408a For #22931 Only enable wallpapers on normal mode 2021-12-21 09:49:12 -05:00
mcarare 00280d3b65 For #20513: Use UrlMetricType for search engine submission url. 2021-12-21 11:25:00 +00:00
Aki Sasaki d0f08b83d4
update which bot is used (#22923) 2021-12-20 21:45:34 +00:00
Roger Yang 22bcdeafe0 Closes #22736: Do not remove focus from toolbar when scrolling 2021-12-20 20:38:04 +00:00
Heitor Neiva a02e05c6ed Add beetmover bucket scope to kind 2021-12-20 20:10:29 +00:00
Heitor Neiva 7a6cea9d2f Added bucket scope config for dep 2021-12-20 20:10:29 +00:00
Heitor Neiva ac99a03c8b Remove reference to beta version on nightly releases 2021-12-20 20:10:29 +00:00
Heitor Neiva 54b27209ad Switch beetmover to use production worker and bucket 2021-12-20 20:10:29 +00:00
MickeyMoz 1f9338719a Update Android Components version to 97.0.20211219190304. 2021-12-20 18:16:56 +00:00
Arturo Mejia 7a44412619 For #22851 toggle wallpapers when tap on the Firefox logo 2021-12-20 15:53:44 +00:00
rxu 073fd89390 Add default topsite MeiTuan for MozillaOnline builds 2021-12-20 01:42:41 +00:00
Mozilla L10n Automation Bot ee34b07ecc Import l10n. 2021-12-20 00:39:20 +00:00
MickeyMoz 6b6e087df7 Update Android Components version to 97.0.20211219143130. 2021-12-19 16:55:15 +00:00
Mozilla L10n Automation Bot 606f2eb100 Import l10n. 2021-12-19 00:32:51 +00:00
MickeyMoz 358881442c Update Android Components version to 97.0.20211217190223. 2021-12-18 16:32:27 +00:00
Mozilla L10n Automation Bot dd64d92b12 Import l10n. 2021-12-18 00:36:17 +00:00
Matt Tighe db71d8dfe7 fixes #22889: add bottom spacer to onboarding adapter 2021-12-17 22:31:18 +00:00
Mugurell eb2ec677ca For #22508 - Increase menu height to avoid it become scrollable
Compose enforces a DropdownMenuItem having at least a 64dp height
(48 dp height + 8dp vertical padding) so we need to ensure the parent
doesn't hardcode a smaller height.
2021-12-17 17:38:22 +00:00
Roger Yang 26198330e9 Closes #22671: Show correct time groups header in history 2021-12-17 16:32:56 +00:00
MickeyMoz c61df57b44 Update Android Components version to 97.0.20211216190144. 2021-12-16 21:39:31 +00:00
Mickey Moz 6b458a1572
Update Android Components version to 97.0.20211216143115. (#22885) 2021-12-16 12:09:00 -05:00
mcarare bbf0ccca54 For #22450: Replace quit icon with AC one. 2021-12-16 09:00:25 +00:00
Mozilla L10n Automation Bot 1c34db22f4 Import l10n. 2021-12-16 00:46:56 +00:00
Grisha Kruglov ba038bac05 Update Android Components version to 97.0.20211215143138. 2021-12-15 22:57:06 +00:00
Grisha Kruglov 33af7d8729 Fix breaking change in KeyProvider
`key` was renamed to `getOrGenerateKey` and is now a `suspend`.
2021-12-15 22:57:06 +00:00
Grisha Kruglov 8de4c0b4db For #22569: Remove allopen plugin and Mockable annotations 2021-12-15 12:59:57 +00:00
rxu b41542dc5e Modify strings for Privacy notice for MozillaOnline builds 2021-12-15 02:54:14 +00:00
Mozilla L10n Automation Bot b96dda5c89 Import l10n. 2021-12-15 00:42:58 +00:00
Gabriel Luong 9e647fd821 For #22858 - Set all @color/tab_tray_item_media_stroke usages to @color/photonWhite 2021-12-14 23:38:53 +00:00
Matt Tighe edcccc2f4c fixes #20833: move home recycler bottom margin into standalone item 2021-12-14 22:31:05 +00:00
Gabriel Luong 59a17894f2 For #22842 - Use gradient color tokens for Reader mode gradient 2021-12-14 21:53:28 +00:00
MickeyMoz 0a5061d3c0 Update Android Components version to 97.0.20211213190046. 2021-12-14 20:40:08 +00:00
Gabriel Luong 2c22622edb For #22836 - Replace primary_text_private_theme with fx_mobile_private_text_color_primary color token 2021-12-14 19:30:00 +00:00
Noah Bond 8ca1a7e271 For #22832 - Added parameters to base Text composables 2021-12-14 18:59:09 +00:00
Arturo Mejia 0ac2899570 For #22851 add wallpapers feature flag 2021-12-14 18:20:43 +00:00
Gabriel Luong cd83cfdda7 For #22839 - Remove unused tabTrayHeadingIcon and tabTrayHeadingIconInactive attributes 2021-12-14 17:07:43 +00:00
Gabriel Luong 07828aa979 For #22839 - Remove @color/tab_tray_heading_icon_inactive_dark_theme redirection 2021-12-14 17:07:43 +00:00
Gabriel Luong d45c092f11 For #22839 - Remove @color/tab_tray_heading_icon_dark_theme redirection 2021-12-14 17:07:43 +00:00
Mozilla L10n Automation Bot 6669363ed9 Import l10n. 2021-12-14 10:23:24 +00:00
Heitor Neiva 8092b0399d Change beetmover destination paths to match firefox 2021-12-13 21:17:42 +00:00
Gabriel Luong b8bc14c0ff For #22808 - Add private theme design tokens 2021-12-13 20:05:38 +00:00
MickeyMoz d703fe3a08 Update Android Components version to 97.0.20211213151530. 2021-12-13 18:43:57 +00:00
Gabriel Luong da0cb197ac For #22809 - Use the design tokens for the Scrim Start/End colors 2021-12-13 17:13:24 +00:00
Gabriel Luong d457050da2 For #22812 - Remove unused shadow attribute 2021-12-13 16:46:07 +00:00
Gabriel Luong 9dd3f58241 For #22800 - Remove unused tabTrayToolbarBackground attribute 2021-12-13 16:12:23 +00:00
Gabriel Luong 8fee873d40 For #22800 - Remove unused tabTrayItemSelectedBackground attribute 2021-12-13 16:12:23 +00:00
Gabriel Luong 0a9590cb23 For #22800 - Remove unused tabTrayItemBackground attribute 2021-12-13 16:12:23 +00:00
Mozilla L10n Automation Bot f7d0c2831a Import l10n. 2021-12-13 00:35:55 +00:00
MickeyMoz eb7046ac0c Update Android Components version to 97.0.20211212143206. 2021-12-12 16:55:44 +00:00
Mozilla L10n Automation Bot 6cfe332e18 Import l10n. 2021-12-12 00:33:02 +00:00
MickeyMoz 4a7d5b82be Update Android Components version to 97.0.20211211143136. 2021-12-11 16:38:37 +00:00
Gabriel Luong 41fd47fc06 For #22793 - Update the colors for Scrim Start/End design tokens 2021-12-11 01:51:26 +00:00
Gabriel Luong 35454ec674 For #22793 - Swap the colors for Gradient Start/End design tokens 2021-12-11 01:51:26 +00:00
Gabriel Luong 29fc9c4ea5 For #22793 - Add Icon Gradient Start/End color tokens 2021-12-11 01:51:26 +00:00
Gabriel Luong 543f2000af For #22793 - Rename fx_mobile_icon_color_notice color token to fx_mobile_icon_color_information 2021-12-11 01:51:26 +00:00
Matt Tighe fee26e62a8 Fixes #22688: remove inactive_tabs_recently_closed probe 2021-12-10 23:20:26 +00:00
Gabriel Luong 986a48b1db For #22777 - Replace about_link_normal_theme with fx_mobile_text_color_action 2021-12-10 17:31:52 +00:00
Heitor Neiva 37635293ba Fix Beetmover paths 2021-12-10 16:56:47 +00:00
Gabriel Luong d6091c9ea4 For #22779 - Remove @color/inset_light_theme redirection 2021-12-10 15:53:50 +00:00
mcarare b4bf7abfb3 For #22784: Show collection snackbar only if fragment is still attached. 2021-12-10 15:09:04 +00:00
mcarare 0cb4059b12 For #17130: Replace hardcoded strings with string resources. 2021-12-10 14:44:39 +00:00
MickeyMoz ef9f3e3d61 Update Android Components version to 97.0.20211209143429. 2021-12-10 12:30:29 +00:00
Mozilla L10n Automation Bot 3058f52578 Import l10n. 2021-12-10 02:12:25 +00:00
Arturo Mejia 5940bc99e5 Update recyclerview version 2021-12-10 00:20:12 +00:00
aime Soriano Pastor 9bfc94b793 For #9294: Add option to clear current site data in quick settings dialog. 2021-12-09 23:08:08 +00:00
Gabriel Luong e150f6118b For #22694 - Remove primary_text_dark_theme usage 2021-12-09 21:13:35 +00:00
Andrew Halberstadt e6cae9b800 RELENG-489 - Add Beetmover functionality
Bug 1614763 - [ci] Create beetmover tasks to publish release artifacts

Added TODO

Added head_tag to try_task_config

Change locale to multi and fix beetmover URL destinations

Bump version

Adjust beetmover kind and add beta + format task label

Allow all build types for beetmover

Bump version

Adjust beetmover destination URL + minor mods

Try task config - nightly

Change try release to beta

Remove try_task_config
2021-12-09 16:07:48 +00:00
MickeyMoz 07d43971c0 Update Android Components version to 97.0.20211208143435. 2021-12-09 11:41:37 +00:00
Mozilla L10n Automation Bot c3cf4ae9e0 Import l10n. 2021-12-09 00:36:22 +00:00
Jonathan Almeida 01ba8959ce Issue #22757: Check the parent cast to AbstractBrowserTrayList first
We re-use the same ViewHolders in search term groups, so when we need to
cast to a AbstractBrowserTrayList for tab reordering, we need to check
our parent correctly first.
2021-12-08 23:54:46 +00:00
Christian Sadilek 6637f61088
Support tab movement/reordering (#22751)
* Adds basic support for tab reordering via drag-and-drop selected tabs

* ktlint/detekt formatting

* Use defaultTabsFilter (now not private) instead of getter

* Convert from position+filter API to target+placeAfter
Unfortunately I still need the filter passed around a bit

* Handle inactive tabs' holder being children of the RecyclerView of the normal tabs
Don't go through LayoutManager needlessly

* Non-working use tabID the whole way. Does not compile.

* Fix to do direct tab ID and use grid setting directly

* Remove non-null assertion. Now fully works for "other" tabs.

* Prevent grouped tabs from being dragged

* Remove unused import

* Add/fix comments

* Do API version check and use deprecated startDrag if too old.

* Build process fails: both outdated and too new, so reverting to just too new

* Use deprecated function and suppress warning

* fix space

* Suppress "TooManyFunctions" on DefaultTabsTrayController

* Repeatedly update tab movement during drag

* Remove multi-tab movement, only allow dragging if tab groups disabled, fix tab positioning during movement
I'm forced to suppress LongParameterList to get the settings information where it needs to go though

* Remove settings argument and corresponding long args suppression: instead get settings from parent AbstractBrowserTrayList's context

* New UI: Select a tab and then, while holding down, start dragging

* Revert to using before/after boolean to accomodate delays
Move drag transparency to start of drag

* Use new BlankDragShadowBuilder and DraggableItemAnimator to handle tab movement

* Replace Pair<>s with data classes

* Only drag if exactly 1 tab selected, don't consume drag event if not used

* Auto-scroll tab tray while dragging near top/bottom edge

* Remove unexpected scrolling on tab bind (triggered when tab is selected)

* Fix broken scroll behavior during dragging

* Cleanup for ktlint/detekt

* Constantly set elevation during drag in case of update
Clean code at drag start

* Add custom drag start behavior

* Add drag distance constant, do all touch-drag behavior in OnTouchListener

* Disable parent vertical scrolling on drag start, fix detekt ComplexCondition

* Minor cleanup/comments

* Revert removal of scroll on bind, this was related to something different

* Correction to prepareForDrop to match documentation- doesn't seem to have any effect

* Simplify via unchecked typecast, use ViewCompat

* Use ViewConfiguration.scaledTouchSlop instead of arbitrary 30px

* Added tabReorderingFeature flag, split drag interactor to separate function to satisfy complexity requirement

Co-authored-by: Steven Knipe <ssk97@case.edu>
Co-authored-by: ssk97 <knipesteven@gmail.com>
Co-authored-by: Sebastian Kaspari <s.kaspari@gmail.com>
2021-12-08 16:36:49 +00:00
Christian Sadilek f919e97445 Closes #21759: Do not render home fragment when launching to tab
Co-authored-by: Sebastian Kaspari <s.kaspari@gmail.com>
2021-12-08 10:51:06 +00:00
Mozilla L10n Automation Bot 910a425cc3 Import l10n. 2021-12-08 01:36:35 +00:00
Gabriel Luong 378f19eb59 For #22741 - Remove all unused strings marked moz:removedIn <= 94 2021-12-07 23:02:57 +00:00
Christian Sadilek 229c410437 Introduce timeout for capturing thumbnail in BrowserAnimator 2021-12-07 22:28:44 +00:00
Christian Sadilek ae0dba29b1 Prevent flash when navigating to home 2021-12-07 22:28:44 +00:00
Christian Sadilek 28222df29c Fix BrowserRobot.goToHomescreen to wait for home screen to be rendered
It was previously just waiting for the application to be idle, which
is not a reliable check in case the navigation to home is triggered
on completion of an async operation i.e., the app / main thread may
be idle, but the navigation to home hasn't completed yet.

goToHomeScreen further needs to wait for the browser fragment's
home button to exist before clicking it.
2021-12-07 22:28:44 +00:00
Gabriel Luong 84c6f88154 Update version.txt to 97.0.0-beta.1 2021-12-07 17:57:09 +00:00
Mugurell 604f188970 For #22445 - Improve the scrolling behavior for Recently visited
One important issue was that the items are smaller that the width of the
screen and so a bit of the next column would be showing also and user could
interact with this only peaking items and a long press would open a dropdown
menu with no place to anchor it.
To mitigate this:
- the items will now snap to the next position when scrolling so that we'll
always show at least one column in it's entirety.
- menus are enabled only if more than half of the item is visible effectively
disabling clicks on that peaking area of neighbour columns.

This patch also updates the divider for history groups which previously wasn't
showing.
2021-12-07 16:23:55 +00:00
Gabriel Luong 67fb033f1b For #22729 - Tag unused strings for removal 2021-12-07 15:38:15 +00:00
Andrei Joltan ee9eab0d8c
[UI Smoke Tests] New undoDeleteBookmarkFolderTest UI test and Improve coverage for deleteNonEmptyBookmarkFolderTest UI test (#22587)
* New undoDeleteBookmarkFolderTest smoke UI test

* Improve coverage for deleteNonEmptyBookmarkFolderTest UI smoke test

Co-authored-by: AndiAJ <andiaj@users.noreply.github.com>
2021-12-07 13:54:05 +00:00
Mozilla L10n Automation Bot e6d1c9a564 Import l10n. 2021-12-07 01:04:32 +00:00
Gabriel Luong 6a28296be7 For #22702 - Replace home_show_all_button_text with fx_mobile_text_color_action color token 2021-12-07 00:36:29 +00:00
Gabriel Luong bf96e2ae60 For #22725 - Regenerate lint-baselint.xml 2021-12-06 23:53:08 +00:00
Gabriel Luong 596072729d For #22701 - Replace whats_new_notification_color with fx_mobile_icon_color_notice color token 2021-12-06 21:46:44 +00:00
Gabriel Luong a4894256f9 For #22712 - Remove unused menuCategoryText attribute 2021-12-06 20:56:43 +00:00
Gabriel Luong 81c42ca7ee For #22696 - Remove unused tab_header.xml resource 2021-12-06 20:16:43 +00:00
Gabriel Luong 83fdf78da1 For #22708 - Remove unused syncedTabsSeparator attribute 2021-12-06 19:37:52 +00:00
Sarah Khan e18cf36117 For #22495 - Disable inactive tabs survey 2021-12-06 18:43:28 +00:00
Aaron Train 77191d8ef2
For #22710 - Disable run-ui in build-contributor-pr workflow (#22720)
* Disable run-ui in build-contributor-pr workflow

Unfortunately the problem with INSTALL_FAILED_INSUFFICIENT_STORAGE is still showcasing itself on v2.21.0 – I'm not aware of any workaround at this moment in time, so I'm disabling this step of the workflow again.

* Update build-contributor-pr.yml
2021-12-06 18:12:55 +00:00
Gabriel Luong 2c5cfb2447 For #22698 - Remove unused mozac_browser_menu_item_switch.xml resource 2021-12-06 13:37:32 +00:00
Mozilla L10n Automation Bot c27714a314 Import l10n. 2021-12-06 00:43:07 +00:00
MickeyMoz 97395115ed Update Android Components version to 96.0.20211204190107. 2021-12-05 16:37:48 +00:00
Mozilla L10n Automation Bot 2a5a2d7b6e Import l10n. 2021-12-05 00:38:09 +00:00
Mozilla L10n Automation Bot 1d5f7db7c7 Import l10n. 2021-12-04 00:31:57 +00:00
Noah Bond 73cfd0b145 For #22691 - Add Composables for Primary and Secondary text 2021-12-03 23:46:51 +00:00
Aaron Train b83bddfb31 Re-enable contributor UI test job
Trying out @v2.21.0 to see if INSTALL_FAILED_INSUFFICIENT_STORAGE is resolved
2021-12-03 20:15:37 +00:00
Gabriel Luong 0078d7fe01 For #22676 - Replace top_site_title_text with fx_mobile_text_color_primary color token 2021-12-03 18:33:48 +00:00
MickeyMoz 745ec1a9f6 Update Android Components version to 96.0.20211203041618. 2021-12-03 17:02:31 +00:00
Oana Horvath b1dab8170c For #21002: Add testETPOffGlobally UI smoke test 2021-12-03 15:17:47 +00:00
Gabriel Luong 4fe3d6db02 For #22654 - Add new color tokens provided by the design systems to colors.xml 2021-12-03 03:34:11 +00:00
Gabriel Luong e20ef25bd1 For #22637 - Add new color tokens provided by the mobile styles to FirefoxTheme 2021-12-03 03:34:11 +00:00
Mozilla L10n Automation Bot caea82864d Import l10n. 2021-12-03 00:35:55 +00:00
Noah Bond 31e86842dd
For #22516 - Fixed alignment of "Show all" buttons on the homescreen (#22650)
* For #22516 - Fixed show all button alignment with section headers on the Homepage

* For #22516 - Added correct content description back in for recently visited show all button

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-12-02 23:00:33 +00:00
Christian Sadilek 26713a58c8 Refactor: Move historymetadata classes in separate package 2021-12-02 22:28:58 +00:00
AndiAJ cb48ff7882 Refactor recently closed tabs UI smoke tests 2021-12-02 19:44:16 +00:00
AndiAJ f6caf507fd Move verifyRecentlyClosedTabsListTest UI test from SmokeTest class 2021-12-02 19:44:16 +00:00
MickeyMoz c784154d67 Update Android Components version to 96.0.20211202143140. 2021-12-02 18:41:08 +00:00
AndiAJ 0ac7bc80ab Disable failing verifyUndoSnackBarTest UI test 2021-12-02 16:15:20 +00:00
Sebastian Kaspari b04eeccf14 Android Autofill: Enable keyboard inline autofill suggestions 2021-12-02 11:43:52 +00:00
Roger Yang 3d33a9422c Close #20701: Dismiss keyboard when scrolling home screen 2021-12-01 23:56:46 +00:00
gmierz 1248f41a0a Add webrender flag for the extra option. 2021-12-01 18:02:47 +00:00
Aaron Train 92dc897b5f No issue: fix URL in ui-test kind.yml
Updating the URL (https://mana.mozilla.org/wiki/x/P_zNBw)
2021-12-01 17:20:04 +00:00
Mozilla L10n Automation Bot 9fa9ae3375 Import l10n. 2021-12-01 03:35:53 +00:00
rxu 4d9a58c156 Add distribution_id into first session ping 2021-12-01 03:05:57 +00:00
Mozilla L10n Automation Bot 514f41fe67 Import l10n. 2021-11-30 23:21:51 +00:00
Gabriel Luong 3c82a34aa1 For #22592 - Refactor hideOnboardingIfNeeded() calls when the home menu items are tapped 2021-11-30 22:48:25 +00:00
Mickey Moz 32ecbef1ca
Update Android Components version to 96.0.20211130143618. (#22635) 2021-11-30 12:27:43 -05:00
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>
2021-11-29 20:12:52 +00:00
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
2021-11-29 18:16:57 +00:00
MickeyMoz fe1e721f0a Update Android Components version to 96.0.20211129143114. 2021-11-29 16:46:50 +00:00
Sebastian Kaspari c62aa8bf24 Closes #22198: Mergify: Replace deprecated "strict mode" merge action 2021-11-29 16:14:34 +01:00
Mozilla L10n Automation Bot 6003e16076 Import l10n. 2021-11-29 00:45:55 +00:00
MickeyMoz 2130172695 Update Android Components version to 96.0.20211128143159. 2021-11-28 17:08:32 +00:00
MickeyMoz b21ae65e40 Update Android Components version to 96.0.20211126190059. 2021-11-27 16:36:00 +00:00
Mozilla L10n Automation Bot cfac710754 Import l10n. 2021-11-27 00:46:13 +00:00
Gabriel Luong 7c2d9bd8a8 For #22595 - Remove unused OnboardingAutomaticSignInViewHolder 2021-11-26 20:44:07 +00:00
MickeyMoz e53845c7eb Update Android Components version to 96.0.20211126143140. 2021-11-26 19:47:39 +00:00
Heitor Neiva 01f88caa49 For #22556 - Update to latest taskgraph revision + path changes 2021-11-26 17:36:27 +00:00
Sebastian Kaspari 1bcf37ba7c Closes #22552: Optimize PNGs with ImageOptim 2021-11-26 12:44:54 +00:00
Gabriel Luong 91da5318e3 For #22211 - Use Hero images for Recent Bookmarks 2021-11-25 20:35:55 +00:00
Arturo Mejia a49f80d5e8 Update Android Components version to 96.0.20211125162700. 2021-11-25 14:26:21 -05:00
Arturo Mejia 3f86a5d6f9 Improve loading URLs 2021-11-25 14:26:21 -05:00
Sebastian Kaspari a6d5d21e0b Issue #22580: Track APK size in perfherder 2021-11-25 16:48:49 +00:00
Sebastian Kaspari e341109ced Issue #12731: Disable suspending of engine sessions under memory pressure in Nightly 2021-11-25 14:44:04 +00:00
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.
2021-11-25 09:16:15 +00:00
Mugurell 685da115c9 For #22442 - Don't display history group if already in Jump back in 2021-11-25 09:16:15 +00:00
AndiAJ 45f1666c6f New text search UI smoke tests 2021-11-25 08:38:27 +00:00
Mugurell 779f4fc704 For #22502 - Keep the previous string resource until safe to remove
See https://github.com/mozilla-mobile/fenix/issues/20871
2021-11-25 08:07:12 +00:00
Matt Tighe 5003c14e7e Closes #22321: Add temporary protoc version workaround for M1 Macbooks 2021-11-25 00:59:13 +00:00
Gabriel Luong dc15ee2415 For #22488 - Fix intermittent test failure with InactiveTabsControllerTest 2021-11-24 19:49:45 +00:00
Gabriel Luong 749da13516 For #22250 - Convert Recent Bookmarks to Jetpack Compose 2021-11-24 19:10:48 +00:00
AndiAJ c9303f44b4 Improve expand/collapse collection UI test coverage 2021-11-24 18:37:25 +00:00
AndiAJ 5934c7d6b2 Improve collection deletion UI coverage 2021-11-24 18:37:25 +00:00
Grisha Kruglov 413ff7cd85 Closes #22499: Emit search group disband action on history group removal
This is needed to prevent removed search groups from coming back after
user interacts with the tab. E.g. if we don't fire this action, upon
interaction with the tab after a corresponding search group was removed
we will end up creating metadat with the deleted 'searchTerms' (they'll
be read from the 'historyMetadata' state on the tab).

At this point we probably want to start encapsulating all of this in a
use case - let's do that separately in
https://github.com/mozilla-mobile/android-components/issues/11309, and
just fix the bug for now.
2021-11-24 17:52:59 +00:00
gmierz d25455ca8b Remove non-webrender browsertime tests. 2021-11-24 16:09:52 +00:00
Oana Horvath aff3e4b9dd For #21002: improves the share tabs smoke tests coverage 2021-11-24 15:01:54 +00:00
MickeyMoz 693a1dd8f7 Update Android Components version to 96.0.20211123143336. 2021-11-23 23:54:41 +00:00
Mozilla L10n Automation Bot de30610aa6 Import l10n. 2021-11-23 22:32:50 +00:00
Arturo Mejia 7b7ef2e661 For issue #22537 crash: BookmarkFragment is attached to a context 2021-11-23 21:53:47 +00:00
MickeyMoz 116a2f0c2b Update Android Components version to 96.0.20211122143347. 2021-11-22 21:06:08 +00:00
Arturo Mejia 74406bef59 For issue #5298 the same page appears in the History section multiple times 2021-11-22 14:18:42 -05:00
Sebastian Kaspari 23ea13a3cf Update Jetpack Compose to 1.0.5 and Activity Compose to 1.4.0 2021-11-22 12:48:46 +00:00
Mugurell 888bbc770e For #22502 - Update "Jump back in" group's subtitle format 2021-11-22 07:50:35 +00:00
MickeyMoz a44b74adcb Update Android Components version to 96.0.20211120190324. 2021-11-21 16:46:44 +00:00
Mozilla L10n Automation Bot 396c51d569 Import l10n. 2021-11-21 00:37:05 +00:00
Mozilla L10n Automation Bot 708b78d3a0 Import l10n. 2021-11-20 15:35:23 +00:00
AndiAJ 378ac03e30 Improve privateTabsTrayWithOpenedTabTest UI test coverage 2021-11-19 16:34:21 +00:00
AndiAJ ec31faef7a Improve verifyOpenTabDetails UI test coverage 2021-11-19 16:34:21 +00:00
AndiAJ 4261ca7ea6 Refactor and improve coverage for empty tabs tray UI tests 2021-11-19 16:34:21 +00:00
Mozilla L10n Automation Bot f0a3653d7b Import l10n. 2021-11-19 00:51:12 +00:00
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.
2021-11-18 15:52:01 +00:00
Oana Horvath 4892f0ddbe For #21002: add missing steps to selectSearchEnginesShortcutTest, addPredefinedSearchEngineTest 2021-11-18 15:08:00 +00:00
Grisha Kruglov 77672dfa15 Post: move group removal logic into PagedHistoryProvider
This moves the group removal logic to the place where the groups are
actually formed. This helps clean-up the fragment code a bit, and
removes the awkward 'allow mutate some random internal state' API from
the provider.
2021-11-17 16:48:25 -05:00
Grisha Kruglov 45d4807bfe Closes #22472: Filter out redirects from History search groups 2021-11-17 16:48:25 -05:00
MickeyMoz 33e266ca67 Update Android Components version to 96.0.20211117143034. 2021-11-17 20:05:28 +00:00
AndiAJ 2c9efac286 Improve mainMenuAddToHomeScreenTest UI test coverage 2021-11-17 18:29:02 +00:00
AndiAJ e265da0cb4 startOnLastTab UI smoke test 2021-11-17 15:33:31 +00:00
AndiAJ 4ff64ad7ca recentBookmarksOption UI smoke test 2021-11-17 15:33:31 +00:00
AndiAJ eee83c9cbd jumpBackInOption UI smoke test 2021-11-17 15:33:31 +00:00
AndiAJ 7460461e16 startOnHomepageTest refactoring work 2021-11-17 15:33:31 +00:00
Mozilla L10n Automation Bot 364fecf9d4 Import l10n. 2021-11-17 02:12:26 +00:00
Christian Sadilek 8c88561d4b Update lastAccess timestamp of selected tab when launching to home 2021-11-17 01:04:22 +00:00
Christian Sadilek db876da118 Upgrade Android Components to 96.0.20211116190344 2021-11-17 01:04:22 +00:00
Roger Yang 24e4452cb5 Close #22402: Add top placeholder for home 2021-11-16 23:05:45 +00:00
Noah Bond dde916038d
MR2 Telemetry: Homescreen view count (#22377)
* For #22146 - Added counter for home screen views

* For #22146 - Added PR number to metrics

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-11-16 22:30:48 +00:00
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.
2021-11-16 21:04:16 +00:00
MickeyMoz 74c7200291 Update Android Components version to 96.0.20211115195835. 2021-11-16 19:53:57 +00:00
Mugurell 17865bdf66 For #22147 - New search term groups telemetry 2021-11-16 16:40:07 +00:00
AndiAJ f91285881d Improve homeThreeDotMenuItemsTest UI test coverage 2021-11-16 13:44:32 +00:00
Mozilla L10n Automation Bot f466d65256 Import l10n. 2021-11-16 01:33:06 +00:00
MickeyMoz e85ff868d5 Update Android Components version to 96.0.20211115143414. 2021-11-15 17:59:00 +00:00
Arturo Mejia 94a543a403 For #22271 Improve URL accessing from the clipboard for Android 12 and above. 2021-11-15 15:24:52 +00:00
Mugurell c42ccb4966 For #22388 - Update content description of the delete button 2021-11-15 08:00:20 +00:00
MickeyMoz 57307794bd Update Android Components version to 96.0.20211114185838. 2021-11-14 20:31:17 +00:00
Mozilla L10n Automation Bot abcafa55f0 Import l10n. 2021-11-14 00:44:24 +00:00
MickeyMoz 5b90fb6fb1 Update Android Components version to 96.0.20211113143401. 2021-11-13 17:00:41 +00:00
MickeyMoz 95bbcc3dec Update Android Components version to 96.0.20211111190349. 2021-11-12 16:42:31 +00:00
Mozilla L10n Automation Bot d29fd55c8b Import l10n. 2021-11-12 00:31:53 +00:00
MickeyMoz c235e46c7f Update Android Components version to 96.0.20211111143126. 2021-11-11 16:41:36 +00:00
Oana Horvath ba91180e85 No issue: creates new SmokeTest annotation.
Updates smoke tests list according to the ones in TestRail.
2021-11-11 09:30:50 +00:00
Mozilla L10n Automation Bot b0ad98a204 Import l10n. 2021-11-11 00:48:58 +00:00
Noah Bond 811f255b71
MR2 Telemetry: Opening screen preference (#22333)
* For #22145 - Added telemetry to the opening screen preference.

* For #22145 - Added PR number to metric

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-11-10 20:13:40 +00:00
Noah Bond 2e5555d034
MR2 telemetry - Inactive tabs CFR (#22301)
* For #22298 - Added telemetry to inactive tabs CFR

* For #22298 - added PR issue number to metrics

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-11-10 19:47:21 +00:00
Jonathan Almeida e3b6e00331 Close #22223: Move to the selected page when switching modes 2021-11-10 18:25:44 +00:00
MickeyMoz 99be352552 Update Android Components version to 96.0.20211110143137. 2021-11-10 16:50:50 +00:00
Mozilla L10n Automation Bot 210587b735 Import l10n. 2021-11-10 00:32:32 +00:00
Grisha Kruglov 9a4a4713ac No issue: clean up code duplication in PagedHistoryProvider 2021-11-09 23:41:54 +00:00
MickeyMoz a32f531de5 Update Android Components version to 96.0.20211109175743. 2021-11-09 19:30:43 +00:00
AndiAJ 1ade096145 For #22256 re-enable editCustomSearchEngineTest UI test 2021-11-09 17:23:31 +00:00
Ben Dean-Kawamura df953b0021 Make findDuplicate() suspend
findLoginToUpdate() should be suspend, but I didn't get mark it that way
on the initial logins work.  Let's make this one suspend, then I can
update findLoginToUpdate() in a-c.
2021-11-09 15:59:33 +00:00
Mozilla L10n Automation Bot e52000bb20 Import l10n. 2021-11-09 00:41:29 +00:00
Jonathan Almeida 8ced675817 No issue: Correct TabsTrayAction naming 2021-11-08 22:28:31 +00:00
Jonathan Almeida 08b15689b1 Close #22305: Use TabsTrayStore for populating adapters 2021-11-08 22:28:31 +00:00
Jonathan Almeida f16300392d Close #22305: Add tab state into the TabsTrayStore 2021-11-08 22:28:31 +00:00
Michael Comella c026d8b28a For #21084: put git hash on About screen in release builds. 2021-11-08 19:15:16 +00:00
Michael Comella 117b35a771 For #21084: add Config.getGitHash. 2021-11-08 19:15:16 +00:00
Michael Comella d35e68726e For #21084: add Runtime.execReadStandardOutOrThrow.
This command makes it a one liner to execute an external command, which will
allow us to easily run git commands in the next section.

Sample error output:

```
* What went wrong:
Execution failed for task ':app:gitHash'.
> command exited with non-zero exit value: 1.
  cmd: git reev-parse --short HEAD
  stderr:
  git: 'reev-parse' is not a git command. See 'git --help'.

  The most similar command is
        rev-parse
```
2021-11-08 19:15:16 +00:00
MickeyMoz aaa4023d8c Update Android Components version to 96.0.20211108143323. 2021-11-08 17:34:46 +00:00
AndiAJ f4e7547190 Improve verifyEmptyTabTray Ui test coverage 2021-11-08 16:08:28 +00:00
Mugurell 953f6feb17 For #22155 - The inactiveTabsCount probe reports actualInactiveTabs number 2021-11-08 12:32:39 +00:00
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.
2021-11-08 12:32:39 +00:00
Mozilla L10n Automation Bot 2089c29fea Import l10n. 2021-11-08 00:43:25 +00:00
Grisha Kruglov 81b70122d4 No issue: rename test resource file that was causing issues on Windows 2021-11-07 10:34:09 -08:00
MickeyMoz 4428d65f12 Update Android Components version to 96.0.20211107143105. 2021-11-07 16:46:48 +00:00
Mozilla L10n Automation Bot 8c2cdaa3ff Import l10n. 2021-11-07 00:35:09 +00:00
MickeyMoz 4f1db49d94 Update Android Components version to 96.0.20211106143105. 2021-11-06 16:29:40 +00:00
Mozilla L10n Automation Bot 06f57fdcfe Import l10n. 2021-11-06 01:13:44 +00:00
mike a d69b5ed456 For #21816: Filename in "Open" PDF dialog overflows screen
Changing the download file name length to the max allowed by AS (251 char, won’t compile if more; max would be 260 for latest windows versions, but generally it is 255), and changing the UI test to check if the long file name is fully visible.
Changing the downloaded dialog layout to properly display really long file names.
2021-11-06 00:23:41 +00:00
Grisha Kruglov 5b889fdb96 For #22342: Make layout constraint for 'recent bookmarks' the same as other sections 2021-11-05 16:49:42 -07:00
Sebastian Kaspari 8c9f0c835a Closes #21695: ThreadPenaltyDeathWithIgnoresListener: Ignore stack traces containing InstrumentationHooks class 2021-11-05 18:21:34 +00:00
MickeyMoz 9ae2fb636f Update Android Components version to 96.0.20211105143418. 2021-11-05 16:57:46 +00:00
Mozilla L10n Automation Bot 7e66c02363 Import l10n. 2021-11-05 00:48:20 +00:00
Roger Yang 04618983aa Close #22299: Add history search term group telemetry 2021-11-04 22:08:56 +00:00
MickeyMoz f8adaae5ca Update Android Components version to 96.0.20211104143116. 2021-11-04 17:53:32 +00:00
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.
2021-11-04 16:02:18 +00:00
Oana Horvath 4d88c521ac For #22304 & #22256: Disabled failing visitedUrlHistoryTest & editCustomSearchEngineTest tests 2021-11-04 15:18:47 +00:00
Mozilla L10n Automation Bot ed0389abe3 Import l10n. 2021-11-04 14:44:09 +00:00
Michael Comella 7d67b84a92 For #22177: add SearchDialogFragmentConstraintLayout; has markers.
Here's a profile with these changes: https://share.firefox.dev/3vTpZha
2021-11-04 05:26:39 +00:00
Michael Comella bc6d8be9c1 For #22177: change onMeasure/onLayout markers into a single track + draw.
When you want to look at one of these markers, you usually want to look
at all three so I found that having them on a single track was easier to
follow. Since they run in sequence, they should never overlap and that
should minimize confusion.
2021-11-04 05:26:39 +00:00
Michael Comella ed8f2c0bc3 For #22177: rename RootLinearLayout -> HomeActivityRoot...
This is so we can be more specific with the detail text in our markers.
2021-11-04 05:26:39 +00:00
Michael Comella f02ebe1650 No issue: change label in perf issue template to `performance`
I recently changed the label from `eng:performance` to `performance`
so this template also has to be updated.
2021-11-04 04:55:07 +00:00
Elise Richards 6296ed939f
For #21313: Renew product telemetry expiring in December (#21316)
* For #21313: Product telemetry renewals for December

* For #21313: Data review for december product telemetry renewals

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-11-04 04:28:52 +00:00
Elise Richards 4f55f16bd7
For #21313: Remove expiring/unused metrics for December (#21789)
* Remove crash reporter metrics

* Remove tab counter menu item probe

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-11-04 03:54:18 +00:00
Christian Sadilek 76bb0c3b37 Closes #21659: Add SERPs to history search groups 2021-11-03 23:19:46 -04:00
Mickey Moz 8b8fb4f00d
Update Android Components version to 96.0.20211103143130. (#22297)
Co-authored-by: Ryan VanderMeulen <rvandermeulen@mozilla.com>
2021-11-03 22:05:43 -04:00
Noah Bond 8caefbe2d5
Recent bookmark count telemetry (#22293)
* For #22075 - Added event to track the count of recent bookmarks

* For #22075 - Added data review issue number

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-11-04 00:14:21 +00:00
Arturo Mejia cff78afe27 For #22078 Selecting search group in Jump back in switches active tab 2021-11-03 22:02:22 +00:00
Matt Boris 1809bea49d For #22281 Fix studies opt out learn more link 2021-11-03 20:19:49 +00:00
Gabriel Luong 6747e9d554 For #21973 - Remove @color/search_suggestion_indicator_icon_color_dark_theme redirection 2021-11-03 19:38:26 +00:00
Gabriel Luong baa8c6582a For #21973 - Remove @color/accent_dark_theme redirection 2021-11-03 19:38:26 +00:00
Gabriel Luong 6770a70bdd For #21973 - Remove @color/foundation_dark_theme redirection 2021-11-03 19:38:26 +00:00
Gabriel Luong f7f942f2d9 For #21973 - Remove @color/tab_tray_selected_mask_dark_theme redirection 2021-11-03 19:38:26 +00:00
Gabriel Luong d6002f3307 For #21973 - Remove @color/tab_tray_item_thumbnail_icon_dark_theme redirection 2021-11-03 19:38:26 +00:00
Gabriel Luong b7c3d0ec5a For #21973 - Remove @color/tab_tray_item_thumbnail_background_dark_theme redirection 2021-11-03 19:38:26 +00:00
Gabriel Luong e304885581 For #21973 - Remove @color/tab_tray_heading_icon_menu_dark_theme redirection 2021-11-03 19:38:26 +00:00
Gabriel Luong 8d9550a6a7 For #21973 - Remove @color/tab_tray_item_media_background_dark_them redirection 2021-11-03 19:38:26 +00:00
Gabriel Luong 2b996a607c For #21973 - Remove @color/tab_tray_item_divider_dark_theme redirection 2021-11-03 19:38:26 +00:00
Gabriel Luong 19a947240b For #21973 - Remove @color/tab_tray_toolbar_background_dark_theme redirection 2021-11-03 19:38:26 +00:00
Gabriel Luong 3fd6f4c420 For #21973 - Remove @color/tab_tray_item_background_dark_theme redirection 2021-11-03 19:38:26 +00:00
Gabriel Luong ee59848064 For #21973 - Remove @color/tab_tray_item_url_dark_theme redirection 2021-11-03 19:38:26 +00:00
Gabriel Luong 498d8ccc19 For #21973 - Remove @color/tab_tray_item_text_dark_theme redirection 2021-11-03 19:38:26 +00:00
Michael Comella 0c079fde91 Closes #22213: add marker for LayoutInflater.inflate.
Here is a profile with this change: https://share.firefox.dev/3mlQSHu
2021-11-03 19:06:48 +00:00
Arturo Mejia 1502af3d71 Update Android Components version to 96.0.20211102173221. 2021-11-03 13:01:05 -04:00
Arturo Mejia 5a11985d22 No issue: Address tracking protection exceptions breaking changes 2021-11-03 13:01:05 -04:00
AndiAJ 1066acbe1e Improve deleteBookmarkInEditModeTest UI test coverage 2021-11-03 06:34:52 +00:00
Mozilla L10n Automation Bot 3f7cd1be8c Import l10n. 2021-11-03 01:04:35 +00:00
Arturo Mejia 2061779938 For #22170 record auto-close prompt telemetry events 2021-11-03 00:26:17 +00:00
Roger Yang 930599407c No issue: Show snackbar when opening non-http URL 2021-11-02 23:44:15 +00:00
Noah Bond a06b04ec6d
MR2 Telemetry: Recent tabs section probe (#22166)
* For #22107 - Added probe to track if the Recent tabs / jump back in section is visible

* For #22107 - Fixed lint errors

* For #22107 - added data review number to metric

* For #22166 - fixed expiration date

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-11-02 23:08:30 +00:00
Gabriel Luong 9a53a12c57 For #21973 - Remove @color/onboarding_illustration_deselected_dark_theme redirection 2021-11-02 22:35:46 +00:00
Gabriel Luong e586d27983 For #21973 - Remove @color/search_suggestion_indicator_icon_bookmark_color_dark_theme redirection 2021-11-02 22:35:46 +00:00
Gabriel Luong 5c32efa9a3 For #21973 - Remove @color/preference_section_header_dark_theme redirection 2021-11-02 22:35:46 +00:00
Gabriel Luong 0cb91151b1 For #21973 - Remove @color/prompt_login_edit_text_cursor_color_dark_theme redirection 2021-11-02 22:35:46 +00:00
Gabriel Luong f436d3ef02 For #21973 - Remove @color/add_on_private_browsing_interior_icon_background_dark_theme redirection 2021-11-02 22:35:46 +00:00
Gabriel Luong 90fd1ea363 For #21973 - Remove @color/add_on_private_browsing_exterior_circle_background_dark_theme redirection 2021-11-02 22:35:46 +00:00
Gabriel Luong 830ade29f9 For #21973 - Remove @color/sync_disconnected_background_dark_theme redirection 2021-11-02 22:35:46 +00:00
Gabriel Luong eb6de2b21c For #21973 - Remove @color/sync_disconnected_icon_fill_dark_theme redirection 2021-11-02 22:35:46 +00:00
Gabriel Luong c9afe46dd6 For #21973 - Remove @color/toolbar_[start|center|end]_gradient_dark_theme redirection 2021-11-02 22:35:46 +00:00
Gabriel Luong 6923a27be7 For #21973 - Remove @color/toolbar_divider_color_dark_theme redirection 2021-11-02 22:35:46 +00:00
Gabriel Luong 37058f596e For #21973 - Remove @color/swipe_delete_background_dark_theme redirection 2021-11-02 22:35:46 +00:00
Gabriel Luong 3cf985d09c For #21973 - Remove @color/onboarding_illustration_selected_dark_theme redirection 2021-11-02 22:35:46 +00:00
Arturo Mejia 3f9fdd6580 Update version.txt to 96.0.0-beta.1 2021-11-02 20:58:48 +00:00
Gabriel Luong d71447a691 For #21973 - Remove @color/onboarding_card_background_[start|end]_gradient_dark_theme redirection 2021-11-02 19:49:20 +00:00
Gabriel Luong 075f3a3dd9 For #21973 - Remove @color/disabled_dark_theme redirection 2021-11-02 19:49:20 +00:00
Gabriel Luong 25592dc25c For #21973 - Remove @color/shadow_dark_theme redirection 2021-11-02 19:49:20 +00:00
Gabriel Luong 35a235c598 For #21973 - Remove @color/neutral_faded_dark_theme redirection 2021-11-02 19:49:20 +00:00
Gabriel Luong 2f4e0e14ba For #21973 - Remove @color/neutral_dark_theme redirection 2021-11-02 19:49:20 +00:00
Gabriel Luong b682f2d5c5 For #21973 - Remove @color/tab_ring_dark_theme redirection 2021-11-02 19:49:20 +00:00
Gabriel Luong 7019e32f40 For #21973 - Remove @color/scrimEnd_dark_theme redirection 2021-11-02 19:49:20 +00:00
Gabriel Luong ee96021f19 For #21973 - Remove @color/scrimStart_dark_theme redirection 2021-11-02 19:49:20 +00:00
Gabriel Luong d516eefb1d For #21973 - Remove @color/recently_used_share_menu_dark_theme redirection 2021-11-02 19:49:20 +00:00
Gabriel Luong ec259fbfd7 For #21973 - Remove @color/tab_history_item_selected_background_light_theme redirection 2021-11-02 19:49:20 +00:00
Gabriel Luong dff26e0ce1 For #21973 - Remove @color/menu_item_button_light_theme redirection 2021-11-02 19:49:20 +00:00
Gabriel Luong e50a2b3cb3 For #21973 - Remove @color/search_suggestion_indicator_icon_bookmark_color_light_theme redirection 2021-11-02 19:49:20 +00:00
Gabriel Luong f5f96d8766 For #21973 - Remove @color/search_suggestion_indicator_icon_color_light_them redirection 2021-11-02 19:49:20 +00:00
Gabriel Luong 679d7e5161 For #21973 - Remove @color/prompt_login_edit_text_cursor_color_light_them redirection 2021-11-02 19:49:20 +00:00
MickeyMoz 789c6feb24 Update Android Components version to 96.0.20211102153458. 2021-11-02 18:40:37 +00:00
Jonathan Almeida 9bb49585ea No issue: Merge our inactive tab interactor/controllers 2021-11-02 17:12:45 +00:00
Jonathan Almeida f363b145f2 No issue: Remove unused InactiveTabState code 2021-11-02 17:12:45 +00:00
Mugurell 207e85e59d For #22155 - Inactive tabs count telemetry
A quantity probe in the metrics ping means we'll loose the granularity events
provided but it will be easier to extract the values.

For reporting whether the inactive tabs feature is enabled or not we already
have the "preferences.inactive_tabs_enabled" probe so I didn't duplicate this.
2021-11-02 16:32:00 +00:00
Roger Yang a46905b5e7 Issue #22057: Add search term groups telemetry 2021-11-02 15:46:29 +00:00
Christian Sadilek 687209fee8 Introduce test rule to work around intermittent mockk failures 2021-11-02 15:14:18 +00:00
AndiAJ ff0befdd1d Improve coverage for cancelCreateBookmarkFolderTest UI test 2021-11-02 11:55:33 +00:00
AndiAJ 979d8a79cd For #18421 re-enable verifyContextOpenImageNewTab, verifyContextOpenLinkNewTab & verifyContextOpenLinkPrivateTab UI tests 2021-11-02 11:16:33 +00:00
Mugurell 018fe15072 For #22138 - Install source metrics probe 2021-11-02 09:12:34 +00:00
Mugurell 9cce30b824 For #22226 - Open grouped history entries the same as individual ones 2021-11-02 07:59:13 +00:00
Roger Yang 4e5c9a3440 Close #22172: Add Recent searches telemetry 2021-11-02 04:17:10 +00:00
Roger Yang 9c970a5276 Close #22103: Add recent bookmarks telemetry 2021-11-02 01:35:36 +00:00
Mozilla L10n Automation Bot b698d6ac77 Import l10n. 2021-11-02 00:47:31 +00:00
Elise Richards 7480e806c7 For #22175: Add data review link 2021-11-01 21:24:00 +00:00
Elise Richards e4cc22fb71 For #22175: Telemetry event for deleting a search term group from the recent searches section on home 2021-11-01 20:40:05 +00:00
Jonathan Almeida 8c43ccc0f6 Issue #20704: Use AppStore for inactive expanded state 2021-11-01 19:23:42 +00:00
Jonathan Almeida 9cef9357b1 Close #20704: Add AppStore to Components 2021-11-01 19:23:42 +00:00
MickeyMoz f2dafeb8b5 Update Android Components version to 95.0.20211101155331. 2021-11-01 17:54:32 +00:00
Oana Horvath cee72a965b For #21397: disabled homescreen features to improve collections visibility 2021-11-01 15:52:42 +00:00
Arturo Mejia 940af156eb For #22192 add telemetry for studies 2021-11-01 14:08:52 +00:00
Mozilla L10n Automation Bot f3bf56ac60 Import l10n. 2021-11-01 07:28:34 +00:00
MickeyMoz 93403b1b91 Update Android Components version to 95.0.20211031143125. 2021-11-01 06:27:45 +00:00
Mozilla L10n Automation Bot ef43107e67 Import l10n. 2021-10-31 17:18:08 +00:00
Mozilla L10n Automation Bot 57c375cea2 Import l10n. 2021-10-30 00:34:58 +00:00
Gabriel Luong e3e0b9c207
For #21973 - Reduce redirection of colors variables between dark and light theme - Part 3 (#22220)
* For #21973 - Remove @color/disabled_light_theme redirection

* For #21973 - Remove @color/scrimStart_light_theme redirection

* For #21973 - Remove @color/scrimEnd_light_theme reddirection

* For #21973 - Remove @color/synced_tabs_separator_light_theme redirection

* For #21973 - Remove @color/toolbar_[start/center/end]_gradient_light_theme redirection

* For #21973 - Remove @color/toolbar_divider_color_light_theme redirection

* For #21973 - Remove @color/fill_link_from_clipboard_light_theme redirection

* For #21973 - Remove @color/sync_disconnected_icon_fill_light_theme redirection

* For #21973 - Remove @color/sync_disconnected_background_light_theme redirection

* For #21973 - Remove @color/swipe_delete_background_light_theme redirection

* For #21973 - Remove @color/onboarding_illustration_selected_light_theme redirection

* For #21973 - Remove @color/onboarding_illustration_deselected_light_theme redirection

* For #21973 - Remove @color/add_on_private_browsing_exterior_circle_background_light_theme redirection

* For #21973 - Remove @color/add_on_private_browsing_interior_icon_background_light_theme redirection

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-10-29 14:08:35 +00:00
Mozilla L10n Automation Bot c2f0b574fd Import l10n. 2021-10-29 13:39:23 +00:00
Oana Horvath f6b83e37b1 For #15624 & #17484: improves tab drawer locator & avoids homescreen refreshing 2021-10-29 16:13:19 +03:00
mike a da10c06290 No issue: updating README.md
Adding extra step to Build Instructions, to change the Debug configuration default "APP from default bundle" value, that causes gecko lib missing a dependency and ultimately crashing the app
2021-10-29 01:17:34 +00:00
Gabriel Luong a99b7d3f71 For #21973 - Remove @color/destructive_light_theme redirection 2021-10-29 00:50:09 +00:00
Gabriel Luong 1eb41ff558 For #21973 - Remove @color/shadow_light_theme redirection 2021-10-29 00:50:09 +00:00
Gabriel Luong 9331b971f8 For #21973 - Remove @color/neutral_faded_light_theme redirection 2021-10-29 00:50:09 +00:00
Gabriel Luong 58e9d3dd08 For #21973 - Remove @color/neutral_light_theme redirection 2021-10-29 00:50:09 +00:00
Gabriel Luong 7c9ae669aa For #21973 - Remove @color/tab_ring_light_theme redirection 2021-10-29 00:50:09 +00:00
Gabriel Luong 00b4688fd5 For #21973 - Remove @color/accent_high_contrast_light_theme redirection 2021-10-29 00:50:09 +00:00
Gabriel Luong cb92e48c0d For #21973 - Remove @color/about_link_dark_theme redirection 2021-10-29 00:50:09 +00:00
Gabriel Luong fe0affa167 For #21973 - Remove @color/above_light_theme redirection 2021-10-29 00:50:09 +00:00
Gabriel Luong 2336f9d9d6 For #21973 - Remove @color/caption_text_light_theme redirection 2021-10-29 00:50:09 +00:00
Gabriel Luong b510a6d0ca For #21973 - Remove @color/secondary_text_light_theme redirection 2021-10-29 00:50:09 +00:00
MickeyMoz 835713f561 Update Android Components version to 95.0.20211028143053. 2021-10-28 23:43:02 +00:00
Christian Sadilek 3e6cd7d821 Closes #21355: Fix intermittent test failures in BookmarkItemMenuTest 2021-10-28 18:15:55 -04:00
Christian Sadilek 75c70ff814 Closes #21952: Ignore intermittently failing FenixSnackbarKtTest 2021-10-28 18:15:55 -04:00
Christian Sadilek f4be38dafc Closes #21438: Ignore intermittently failing ExceptionsListItemViewHolderTest 2021-10-28 18:15:55 -04:00
Christian Sadilek 5d7bb70f55 Closes #22081: Ignore intermittently failing DefaultBrowsingModeManagerTest 2021-10-28 18:15:55 -04:00
Christian Sadilek 99f0aaa834 Closes #21332: Ignore intermittently failing WebPushEngineIntegrationTest 2021-10-28 18:15:55 -04:00
Christian Sadilek 3ffb11fd3b Closes #21952: Ignore intermittently failing FenixSnackbarDelegateTest 2021-10-28 18:15:55 -04:00
Gabriel Luong 09bd9e7ba2 For #21888 - Use Hero images for Jump back in 2021-10-28 21:02:13 +00:00
Arturo Mejia d0d87a6d6d No issue update strings ids 2021-10-28 13:49:58 -04:00
AndiAJ 71d151ef18 For #18421 re-enable verifyContextCopyLink and verifyContextCopyImageLocation UI tests 2021-10-28 15:47:25 +00:00
Gabriel Luong 8f85ef2d5b For #21973 - Remove @color/top_site_title_text_light_theme redirection 2021-10-28 14:19:59 +00:00
Gabriel Luong 28883384a7 For #21973 - Remove @color/inset_dark_theme redirection 2021-10-28 14:19:59 +00:00
Gabriel Luong 9a85545da5 For #21973 - Remove @color/top_site_title_text_dark_theme redirection 2021-10-28 14:19:59 +00:00
Gabriel Luong 59f725d2fb For #21973 - Remove @color/synced_tabs_separator_dark_theme redirection 2021-10-28 14:19:59 +00:00
Gabriel Luong 35c7ef6bb6 For #21973 - Remove @color/toggle_off_knob_light_theme and @color/toggle_off_track_light_theme redirection 2021-10-28 14:19:59 +00:00
Gabriel Luong e2093f2054 For #21973 - Remove redirection of color variables for the collection color variables 2021-10-28 14:19:59 +00:00
Gabriel Luong 4001f4ee6f For #21973 - Remove redirection of color variables for the tabs tray color variables 2021-10-28 14:19:59 +00:00
Gabriel Luong 1a472c3507 For #21973 - Remove @color/caption_text_dark_theme redirection 2021-10-28 14:19:59 +00:00
Gabriel Luong 78e90d5f0e For #21973 - Remove @color/contrast_text_dark_theme redirection 2021-10-28 14:19:59 +00:00
Gabriel Luong 2456e9b5f5 For #21973 - Remove @color/secondary_text_dark_theme redirection 2021-10-28 14:19:59 +00:00
Gabriel Luong 959a142c92 For #21973 - Use destructive_normal_theme in place of R.color.design_color 2021-10-28 14:19:59 +00:00
Mozilla L10n Automation Bot b7bdd94e71 Import l10n. 2021-10-28 00:32:14 +00:00
Michael Comella 9721723af5 For android-components#11161: pass profiler into AwesomeBar.
This will add two new markers:
- SuggestionFetcher.fetch
- Suggestion update

This is a profile with the markers: https://share.firefox.dev/3E4PbEk
2021-10-27 22:02:12 +00:00
MickeyMoz 0723141d08 Update Android Components version to 95.0.20211027143128. 2021-10-27 17:13:13 +00:00
AndiAJ 4fe8921a82 For #18421 fix and re-enable verifyContextShareLink, verifyContextSaveImage and verifyContextMixedVariations UI tests 2021-10-27 14:05:35 +00:00
Arturo Mejia a2c7dfb26e For #22170: Add telemetry for the auto-close prompt 2021-10-27 13:17:35 +00:00
Arturo Mejia 9154371ba5 For #21906 ⁃ Update strings removal version 2021-10-27 02:49:58 +00:00
Mozilla L10n Automation Bot 59a069882d Import l10n. 2021-10-27 00:46:32 +00:00
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>
2021-10-26 16:10:58 -07:00
Elise Richards 347f82f2f5
For #21313: Renew metrics for December - never expire updates (#21788)
* For #21313: Renew metrics for December - never expire updates

* For #21313: data review

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-10-26 22:00:06 +00:00
Arturo Mejia d943be0e53 For #22034: Inactive tabs prompt is redisplayed after dismissing by turning on Auto close 2021-10-26 21:34:50 +00:00
MickeyMoz a4bcecf8c5 Update Android Components version to 95.0.20211026143215.
Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
2021-10-26 20:21:03 +00:00
Gabriel Luong 44666ca2ca For #21776 - Call chain on collection type may be simplified 2021-10-26 18:26:50 +00:00
Gabriel Luong 100547130e For #21776 - Add package path to TabGroupViewHolder 2021-10-26 18:26:50 +00:00
Gabriel Luong b04bf99b7d For #21776 - Remove unused symbols 2021-10-26 18:26:50 +00:00
Gabriel Luong b54698a3f2 For #21776 - Class member can have 'private' visibility 2021-10-26 18:26:50 +00:00
Gabriel Luong 3115f1343f For #21776 - Replace Java static method with Kotlin analog 2021-10-26 18:26:50 +00:00
Gabriel Luong 660300f770 For #21776 - Replace 'isEmpty' with 'ifEmpty' 2021-10-26 18:26:50 +00:00
Gabriel Luong 603ba63962 For #21776 - 'protected' visibility is effectively 'private' in a final class 2021-10-26 18:26:50 +00:00
Gabriel Luong da395d1038 For #21776 - Local 'var' is never modified and can be declared as 'val' 2021-10-26 18:26:50 +00:00
Gabriel Luong 5afe393b8f For #21776 - Remove unused imports 2021-10-26 18:26:50 +00:00
Gabriel Luong 76c746b982 For #21776 - Remove unnecessary type argument 2021-10-26 18:26:50 +00:00
Gabriel Luong 272d31b2b4 For #21776 - Remove unnecessary parentheses from function call with lambda 2021-10-26 18:26:50 +00:00
Gabriel Luong 6d1d4bea93 For #21776 - Remove redundant qualifier name 2021-10-26 18:26:50 +00:00
Gabriel Luong 1039a92281 For #21776 - Remove reductant SAM constructor 2021-10-26 18:26:50 +00:00
Gabriel Luong ed48dc934a For #21776 - Remove reductant 'suspend' modifier from SecurePrefsTelemetry 2021-10-26 18:26:50 +00:00
Gabriel Luong d854c282da For #21776 - Remove val from constructor parameter that are never used as a property 2021-10-26 18:26:50 +00:00
codrut.topliceanu bba787e87e For #21732 - Adds inactive tabs survey on disable + telemetry 2021-10-26 17:50:22 +00:00
Mugurell 6d62aed35f For #21933 - Refresh history items everytime the fragment is opened 2021-10-26 17:24:13 +00:00
Mozilla L10n Automation Bot c9e769544f Import l10n. 2021-10-26 02:55:02 +00:00
Arturo Mejia d67c23511d Update Android Components version to 95.0.20211025134949. 2021-10-26 01:57:47 +00:00
Jonathan Almeida 7666f0e4c2 No issue: Replace TabsTray.Tab with TabSessionState
Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
2021-10-26 01:57:47 +00:00
Jonathan Almeida b2a7877c83 No issue: Disable FenixSnackbarDelegateTest intermittents 2021-10-26 00:21:00 +00:00
Michael Droettboom c1780cf332
For #21025: Set long term business-critical metrics as non-expiring (#21038)
* Set long term business-critical metrics as non-expiring.

* Remove quotes around "never"

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-10-25 23:53:02 +00:00
Sebastian Kaspari ffddd53607 Update Jetpack Compose to 1.0.4 and Kotlin to 1.5.31 2021-10-25 22:25:01 +00:00
Aaron Train bfee2ef0a6 No issue: Update ui-test slackBlocks
Stage a failed test

fix: commit href

fix: test source href

fix: obj ref fix

fix: remove staged test
2021-10-25 21:07:09 +00:00
AndiAJ 6149f9faf8 Use identifiers instead of hard coded strings 2021-10-25 17:37:54 +00:00
AndiAJ d3651eb0fc For #21747 re-enable start on homepage UI test and refactoring work 2021-10-25 17:37:54 +00:00
AndiAJ b10835992d For #21754 re-enable general settings UI test and refactoring work 2021-10-25 17:37:54 +00:00
AndiAJ 4c343b8b3a For #21004 fix and refactor verifyBasicNavigationToolbarFunctionality UI test 2021-10-25 17:13:13 +00:00
Roger Yang 367c5f42d8 No issue: Add external load flag 2021-10-25 18:02:51 +02:00
Sebastian Kaspari 170fa9705e Update Kotlin and Jetpack Compose versions. 2021-10-25 17:59:17 +02:00
Oana Horvath 52facc9723 For #21628: catch ComposeNotIdleException 2021-10-25 15:39:55 +00:00
Ben Hearsum 8ed9944921 Ignore github-release events in Taskcluster
There are no more known use cases for watching them now that we use Ship It for releases, and they sometimes cause issues such as https://github.com/mozilla-mobile/fenix/issues/20815.
2021-10-25 15:15:53 +00:00
Arturo Mejia ee8c4de62d For #21986 Confirmation when people set tabs to auto-close
For #22034 Inactive tabs prompt is redisplayed after dismissing by turning on Auto close
2021-10-25 10:42:22 -04:00
Mayank Agarwal 1a7b486808 Issue #21714: Login button visibility fix on saved logins page 2021-10-25 11:58:51 +02:00
Mugurell e0bf4f31fa For #21771 - Show url when recent tab's title is not available
This is the same previously used approach and the same used for tabs tray.
2021-10-25 09:54:06 +00:00
Mozilla L10n Automation Bot df2652f9b5 Import l10n. 2021-10-25 00:40:41 +00:00
MickeyMoz 19594def90 Update Android Components version to 95.0.20211024143057. 2021-10-24 16:37:54 +00:00
Mozilla L10n Automation Bot a8f42cd363 Import l10n. 2021-10-24 00:54:31 +00:00
MickeyMoz 10e1718180 Update Android Components version to 95.0.20211022190114. 2021-10-23 16:49:57 +00:00
Mozilla L10n Automation Bot 9e1f596c1e Import l10n. 2021-10-23 01:47:59 +00:00
Michael Comella ec1a25dfcf For #21921 - post: switch generic marker skip to BaseBrowserFragment.
Since we instrument the marker with the duration in BaseBrowserFragment,
we should skip on BaseBrowserFragment too, not its subclass,
BrowserFragment.
2021-10-23 01:21:39 +00:00
Michael Comella 788eb2c5de For #21921: add duration for some BrowserFragment lifecycle markers.
Here is a sample profile with all the new markers:
https://share.firefox.dev/3lCGoD2
2021-10-23 01:21:39 +00:00
Michael Comella 3a3c39406a For #21921: add durations for some HomeFragment lifecycle markers. 2021-10-23 01:21:39 +00:00
Michael Comella f65ea1e972 For #21921: add and register MarkersFragmentLifecycleCallbacks. 2021-10-23 01:21:39 +00:00
Michael Comella 99533626f1 For #21921: rename MarkersLifecycleCallbacks to ...ActivityLifecycle...
This is to disamibugate with the MarkersFragmentLifecycleCallbacks that
we'll be adding.
2021-10-23 01:21:39 +00:00
Michael Comella 623914bd89 For #22054: add marker for root view layout/measure.
The onLayout marker may be redundant to onGlobalLayout marker but I'm not
sure yet so let's leave them both in and observe if that's the case.

Here's a profile with the markers: https://share.firefox.dev/3lZaOQb
2021-10-23 00:06:37 +00:00
Oana Horvath 1234d8f518 For #22095: fix intermittent click failure in verifyRateOnGooglePlayRedirect UI test 2021-10-22 18:06:32 +00:00
MickeyMoz 0b46e9693d Update Android Components version to 95.0.20211022143101. 2021-10-22 17:00:45 +00:00
Mugurell acdde511d3 For #22070 - Prevent crash for when a selected topic does not exist anymore
The list of selected topics overwrites old data whenever user selects or
deselects another so the old selections will not leak for long.
2021-10-22 10:53:55 -04:00
Roger Yang 70fc6fc20f Close #22061: Let TabSorter decide if title header should be shown in tabs tray 2021-10-22 14:34:41 +00:00
Mozilla L10n Automation Bot 2d8492d33f Import l10n. 2021-10-22 01:18:49 +00:00
MickeyMoz 515b1ae26b Update Android Components version to 95.0.20211021181213. 2021-10-22 00:01:31 +00:00
Roger Yang b5c15280f7 No issue: Only report telemetry when tabs tray is first opened 2021-10-21 22:34:25 +00:00
Mugurell c4278bfbf6 For #21841 - New telemetry for Google and Baidu top sites removal 2021-10-21 22:10:26 +00:00
Michael Comella a1ace964de No issue - post: fix ProfilerMarkerFactProcessor tests. 2021-10-21 21:21:21 +00:00
Michael Comella 0faa61b744 No issue: use Fact.value as detailText for markers.
This allows Facts emitted from ac to provide more details in markers.
2021-10-21 21:21:21 +00:00
Michael Comella 01e3b4b984 No issue: cache SearchDialogFragment.InlineAutocompleteEditText.
Assuming the InlineAutocompleteEditText is not being recreated (and I
did not verify this), it's unnecessary to traverse the view hierarchy
to find it more than once so this patch removes the unnecessary
traversals.
2021-10-21 20:55:47 +00:00
Oana Horvath 34ca959661 For #20754: fix intermittent click failure in verifyAboutFirefoxPreview test 2021-10-21 20:24:15 +00:00
Andrei Joltan 3af6abff18
For #22065 fix flaky privateTabsTrayWithOpenedTabTest UI test (#22068)
Co-authored-by: AndiAJ <andiaj@users.noreply.github.com>
2021-10-21 11:39:49 -04:00
AndiAJ 560de4f396 For #21207 fix flaky updateSavedLoginTest UI test 2021-10-21 13:37:15 +00:00
Mozilla L10n Automation Bot c0ab0cb1c5 Import l10n. 2021-10-21 00:59:47 +00:00
Gabriel Luong 64ca94b8fa For #22022 - Composify Customize Home Button and update the background color 2021-10-21 00:15:19 +00:00
Gabriel Luong ada3da59ec For #22022 - Update SelectableChip button background colors 2021-10-21 00:15:19 +00:00
xlog-null edd1fd9f2c For #22032 - Fix horizontal margin on private home screen 2021-10-20 23:49:22 +00:00
Gabriel Luong 07a6a386f8 For #21753 - Refactor Pocket out of sessioncontrol 2021-10-20 23:08:14 +00:00
Noah Bond 826249497a
MR2 Inactive tabs telemetry (#21908)
* For #21903 - Added telemetry for interacting with inactive tabs

* For #21903 - Added missing inactive tab delete count event to delete all event

* For #21903 - Added PR numbers to metrics

* For #21903 - Updated broken unit tests. Resolved critical lint warning.

* For #21903 - Fixed inactive tabs setting toggle metric

* For #21903 - Updated FenixApp unit test

* For #21903 - Updated newline character in Metrics. Set inactive tab metrics' lifetime to default. Updated expiration to Nov 2022. Refactored inactive tabs metric to be a single metric.

* PR: addendum for last commit that missed a file

* For #21903 - Changed logic check for reporting inactive tab count

* PR: fixed merge conflict

* For #21903 - Removed tab close tracking when the user closes ALL inactive tabs

* For #21903 - Removed individual tab close metric verify from CLOSE ALL test

* For #21903 - Updated inactive tabs toggle setting expiration to match the expiration of the other events

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-10-20 22:30:59 +00:00
MickeyMoz 38003530c0 Update Android Components version to 95.0.20211019190251. 2021-10-20 21:13:43 +00:00
Gabriel Luong af48553418 For #21935 - Use photonBlue40 in place of #0090ED 2021-10-20 20:11:52 +00:00
Gabriel Luong 8b3d39f0c0 For #21935 - Use photonDarkGrey20 in place of #4A4A55 2021-10-20 20:11:52 +00:00
Gabriel Luong 541ed5cec6 For #21935 - Use photonPink30 in place of #FF6BBA 2021-10-20 20:11:52 +00:00
Gabriel Luong 5a5ba1c095 For #21935 - Use photonBlue30 in place of #00B3F4 2021-10-20 20:11:52 +00:00
Gabriel Luong a81912bd98 For #21935 - Use photonViolet30 in place of #C689FF 2021-10-20 20:11:52 +00:00
Gabriel Luong 475d59b781 For #21935 - Use photonYellow90 in place of #960E18 2021-10-20 20:11:52 +00:00
Gabriel Luong 5a7890497f For #21935 - Use photonRed40 in place of #FF6A75 2021-10-20 20:11:52 +00:00
Gabriel Luong dfd9f7c1ea For #21935 - Use photonDarkGrey50 in place oof #32313C 2021-10-20 20:11:52 +00:00
Gabriel Luong 6010767da7 For #21935 - Use photonBlue50 in place of #0060DF 2021-10-20 20:11:52 +00:00
Gabriel Luong 0e8b797014 For #21935 - Use photonGreen70 in place of #.008787 2021-10-20 20:11:52 +00:00
Gabriel Luong c379d75c7f For #21935 - Use photonInk20 in place of #312A64 2021-10-20 20:11:52 +00:00
Gabriel Luong 4d61277e88 For #21935 - Use photonViolet50 in place of #9059ff 2021-10-20 20:11:52 +00:00
Gabriel Luong a31d638191 For #21935 - Use photonYellow70 in place of #C45A27 2021-10-20 20:11:52 +00:00
Gabriel Luong a02d58dd48 For #21935 - Use photonYellow60 in place of #E27F2E 2021-10-20 20:11:52 +00:00
Gabriel Luong cd6bcb3d47 For #21935 - Use photonGreen60 in place of #2AC3A2 2021-10-20 20:11:52 +00:00
Gabriel Luong 9048af04be For #21935 - Use photonPink60 in place of #E31587 2021-10-20 20:11:52 +00:00
Gabriel Luong bd7ced5867 For #21935 - Use photonDarkGrey90 in place of #15141A 2021-10-20 20:11:52 +00:00
Gabriel Luong e119b8b590 For #21935 - Use photonViolet40 in place of #AB71FF 2021-10-20 20:11:52 +00:00
Gabriel Luong ff829f9f25 For #21935 - Use photonBlue60 in place of #0250BB 2021-10-20 20:11:52 +00:00
Gabriel Luong 26920baf47 For #21935 - Use photonRed70 in place of #C50042 2021-10-20 20:11:52 +00:00
Gabriel Luong 624afa9e53 For #21935 - Use photonPurple50 in place of #B833E1 2021-10-20 20:11:52 +00:00
Gabriel Luong 8d27963ace For #21935 - Use photonViolet60 in place of #7542E5 2021-10-20 20:11:52 +00:00
Gabriel Luong 20ddedd118 For #21935 - Use photonWhite in place of #FFFFFF 2021-10-20 20:11:52 +00:00
Gabriel Luong a673305643 For #21935 - Use photonBlack in place of #FF000000 2021-10-20 20:11:52 +00:00
Gabriel Luong 0ae8e36248 For #21935 - Use photonBlue30 in place of #00B3F4 2021-10-20 20:11:52 +00:00
Christian Sadilek 5df6ec65e7 Deactivate jacoco and coverage report uploads 2021-10-20 15:34:10 -04:00
Mugurell c54e75edec For #22005 - Ensure deleted items are removed from the list 2021-10-20 07:59:35 +00:00
Mozilla L10n Automation Bot f2d5da4e91 Import l10n. 2021-10-20 00:39:06 +00:00
Julien Cristau f5431fbe01 Revert google play track to the default from pushapkscript
With the logins update rollout complete we're ready to push nightly to
production directly.
2021-10-19 18:37:38 +00:00
Mickey Moz d69f082356
Update Android Components version to 95.0.20211019143246. (#22015) 2021-10-19 13:23:00 -04:00
Mugurell d3df7369e0
CI for 21827 (#22004)
* Remove redundant calls to setHasOptionsMenu(false)

Fix memory leaks for credit card and login fragments

* Fixes:

Add link to issue tracker
Use activity?.invalidateOptionsMenu() instead of setHasOptionsMenu(false)
Move it inside of 'if' statement to avoid unintended issues when called improperly
Revert changes to AddLoginFragment.kt

* Fix call invocation to redirectToReAuth() from AddLoginFragment.kt
Fix 'when' statement in redirectToReAuth() to use AddLoginFragment

Co-authored-by: Vitaly V. Pinchuk <vetal.978@gmail.com>
2021-10-19 10:52:01 +00:00
Mozilla L10n Automation Bot 4743146ac4 Import l10n. 2021-10-19 01:25:27 +00:00
Arturo Mejia 846aefc0f4 For #21723 Align the default value of the custom cookie setting with the UI 2021-10-19 00:40:55 +00:00
MickeyMoz 30ce4ddd13 Update Android Components version to 95.0.20211018143318. 2021-10-18 19:50:10 +00:00
AndiAJ 9a3e94eb31 Improve tabsSettingsMenuItemsTest UI test coverage 2021-10-18 14:45:27 +00:00
Mozilla L10n Automation Bot c56214453a Import l10n. 2021-10-18 00:37:31 +00:00
MickeyMoz 5b0b7c2ce2 Update Android Components version to 95.0.20211016190128. 2021-10-17 20:46:27 +00:00
MickeyMoz 38054e5165 Update Android Components version to 95.0.20211017143052. 2021-10-17 16:54:59 +00:00
Mozilla L10n Automation Bot 91b719ed75 Import l10n. 2021-10-17 00:36:57 +00:00
MickeyMoz dcfd81613a Update Android Components version to 95.0.20211016143249. 2021-10-16 16:43:31 +00:00
Mozilla L10n Automation Bot 1c73fc8e20 Import l10n. 2021-10-16 00:34:46 +00:00
MickeyMoz f5b0067bc1 Update Android Components version to 95.0.20211015143255. 2021-10-15 19:21:02 +00:00
Roger Yang 60f7f766da Issue #21893: Keep search group when second to last search term tab is removed 2021-10-15 17:48:23 +00:00
Mozilla L10n Automation Bot 31a0d676ee Import l10n. 2021-10-15 00:35:47 +00:00
Christian Sadilek c3ef16de61 Closes #21944: Top sites rendered slowly on first load of HomeFragment 2021-10-14 18:04:17 -04:00
Marc Leclair 8d5c6f6082 For #21700: linting fixes
For #21700: nit fixes
2021-10-14 21:03:05 +00:00
Marc Leclair 22df40b35c For #21700: Made the class to test argument a requirement 2021-10-14 21:03:05 +00:00
Marc Leclair dede8a1ca4 For #21700: Fixed output path to be in app/build 2021-10-14 21:03:05 +00:00
Marc Leclair 27cd609d0f For #21700: Added option to open in browser instead of automatically doing it 2021-10-14 21:03:05 +00:00
Marc Leclair c5accf6b32 For #21700: fixed comments 2021-10-14 21:03:05 +00:00
Marc Leclair c527decda1 For #21700: Created benchmark script runner and edited benchmark gradle file 2021-10-14 21:03:05 +00:00
Jonathan Almeida 625233f664 Close #21910: Fix intermittent failures in SelectTabUseCaseWrapperTest 2021-10-14 18:52:47 +00:00
Ben Dean-Kawamura ee863623d5 Bumping the AC version
ryanvm requested this one.
2021-10-14 17:34:20 +00:00
Grisha Kruglov 0b5b1a738a Do less work while navigating Logins views
Fetching a set of logins from the store is quite expensive. This commit
avoids doing that while navigating back and forth between the list and
detail views:

- retain processes logins state when navigating into detail view
- use the `get` storage api to obtain specific login, instead of
  `list().filter {...}`
- avoid re-sorting retained logins when navigating back into the list
  view
2021-10-14 17:34:20 +00:00
Grisha Kruglov 56b4491e81 Bump A-C nightly version 2021-10-14 17:34:20 +00:00
Grisha Kruglov 97d93eb564 Make linters happy 2021-10-14 17:34:20 +00:00
Ben Dean-Kawamura cc247c407f Register the logins key provider
This is required for sync to work
2021-10-14 17:34:20 +00:00
Ben Dean-Kawamura 34ec442961 Updating Fenix to work with the new logins API
Switched to always using `Login` instead of the `SavedPassword` alias.

Made `MasterPasswordTipProvider.saveLogins()` call
`importLoginsAsync()`.  This is needed because it's the only method that
inputs a `Login` rather than a `LoginEntry`.

Moved the `SavedLoginsStorageController.kt.syncAndUpdateList` call
to inside `add()` and `update()`.  This simplifies the error handling a
bit.

Refactored dupe-checking code to use findLoginToUpdate()

Refactored `AddLoginFragment` / `EditLoginFragment` to put the username
error handling code all in 1 method.  I think it's easier to follow the
logic of showing/hiding the error labels when it's all in one place.
This fixes issues #24103 and #24104.  I would love to address #24102,
but I'm not sure what the correct behavior is there so I just kept that
the same.
2021-10-14 17:34:20 +00:00
Arturo Mejia 25c784b684 For #21906 ⁃ Remove old copy form inactive tabs section 2021-10-14 16:01:59 +00:00
Julien Cristau 55763073b5 push-apk: set google play track to alpha
This lets us temporarily push nightly builds to the alpha track instead
of production so we can gradually roll out the Logins update.
2021-10-14 15:22:58 +00:00
AndiAJ db2946c78a Fix for ambiguous tabstray_title and with text matcher for audio page 2021-10-14 14:21:08 +00:00
AndiAJ 198f407dd2 For #21769 fix flaky tabMediaControlButtonTest Ui test 2021-10-14 14:21:08 +00:00
Jonathan Almeida 9780dac846 No issue: Always show Make inactive for debug builds 2021-10-14 07:52:39 +00:00
Gabriel Luong e0991f0fe6 For #21887 - Update Home background color to LightGrey20 2021-10-14 03:40:40 +00:00
Roger Yang 4a8f01beea Close #21573: Add shadow to recent bookmarks section 2021-10-14 02:53:35 +00:00
Mozilla L10n Automation Bot f4d026d906 Import l10n. 2021-10-14 00:38:56 +00:00
Roger Yang 2b92860966 Close #21917: Update pocket stories card elevation to match other cards 2021-10-13 22:53:56 +00:00
Jonathan Almeida c554152fba Issue #21707: Correct search grouping logic in extensions
At this moment, we have two extension methods that have duplicate
functionality to construct search term groupings. One on `List<Tab>` and
one on `List<TabSessionState>`. The former is used for everything
related to tabs piped through the `TabsFeature` and the latter is for
consumers of `BrowserState` directly.

The bug occurs because our implementation of search groupings was
updated only on the former extension, but the `HeaderBinding`, that
observes the BrowserState and updates the title visibility, was using
the latter.

Ideally, we remove this duplication when we no longer have separate data
classes for consumers of `TabsFeature`, but this intermediary fix should
suffice.
2021-10-13 22:01:07 +00:00
Gabriel Luong 0b17b443dc For #21760 - Remove some unused resources 2021-10-13 20:42:49 +00:00
Grisha Kruglov 2967513083 Fix up HistoryMetadataController tests 2021-10-13 15:45:00 -04:00
Grisha Kruglov 233f0a8a1d Closes #21871 - Eagerly update UI state after search group removal
Before this patch, this was the behavior - 'remove' button is clicked, we'd ask
the storage to remove metadata (on its IO thread), then navigate to Home
Screen.

This resulted in a race we could end-up on the Home Screen before delete
finishes, so the search groups do not appear to be removed (but,
refreshing the Home Screen again shows that they are removed).

This also resulted in an unnecessary navigation which felt very janky
(screen will "scroll" to the top) and was way more work than necessary.

After this patch, we:
 - dispatch two actions (on browserstore, on homefragmentstore) which
   remove the search groups from any relevant in-memory state; any UI bound to
   this state will be automatically "refreshed"
 - no longer navigate as part of the remove action, so the UI doesn't
   move and removal happens "in-place"
2021-10-13 15:45:00 -04:00
Christian Sadilek 88fbcc05b7 Handle new OptimizedLoadUrlAction in history metadata middleware
Upgrades to A-C 95.0.20211013154351
2021-10-13 15:45:00 -04:00
Jonathan Almeida 722ab9f3ca Issue #21794: Remove rotation; rely on state activated
It seems like we no longer need to use rotation for the chevron, since
we are now using two different icons within the `ic_chevon` that change
depending on the `state_activated`.
2021-10-13 19:27:49 +00:00
MickeyMoz 3093945658 Update Android Components version to 95.0.20211013143158. 2021-10-13 16:28:55 +00:00
sunil9211 05d0bca6a3 For #17393: Dead code removed around Delete downloads 2021-10-13 15:08:07 +00:00
AndiAJ 671dfa59c2 For #21540 fix and re-enable editCustomSearchEngineTest 2021-10-13 14:01:02 +00:00
Arturo Mejia 08256ac68c For #21791 Adds tab auto-close prompt 2021-10-13 12:08:59 +00:00
AndiAJ 58e12b18e6 Disable editCustomSearchEngineTest UI test 2021-10-13 06:37:00 +00:00
Arturo Mejia 9439a65e1e For #21838 wait until experiments have been completely opt-out on the nimbus SDK. 2021-10-12 19:31:35 -04:00
MickeyMoz a0029fa737 Update Android Components version to 95.0.20211012143119. 2021-10-12 15:30:05 -04:00
Aaron Train ebf61b5a33 No issue: Add Slack Notify event for UI test failure
fix: newline EOF

fix: swap channel

fix: broadcast to test-infra-alerts
2021-10-12 16:50:57 +00:00
AndiAJ 979d99342b For #21620 fix for disabled toggleSearchSuggestions UI test 2021-10-12 16:06:09 +00:00
AndiAJ 64d010dcc8 For #19016 re-enable changeThemeSetting Ui test 2021-10-12 15:14:19 +00:00
Mugurell e578226f7f For #21861 - Ignore the UnusedResources lint check for localized strings 2021-10-12 14:48:47 +00:00
AndiAJ c3fdf35c6d For #21540 fix disabled editCustomSearchEngineTest 2021-10-12 14:23:33 +00:00
Oana Horvath e3266ca6e0 For #21006 & #21005: fixed ETP status info display 2021-10-12 06:26:44 +00:00
MickeyMoz ab25f17185 Update Android Components version to 95.0.20211011143313. 2021-10-11 16:47:35 +00:00
MickeyMoz 78d2c73300 Update Android Components version to 95.0.20211010225658. 2021-10-11 00:47:38 +00:00
MickeyMoz b8cf15e6ee Update Android Components version to 95.0.20211010143144. 2021-10-10 17:08:48 +00:00
MickeyMoz 2bb7b13d30 Update Android Components version to 95.0.20211009143308. 2021-10-09 16:49:27 +00:00
Elise Richards 4bd140a0f5 For #21522: Wrap section titles on home 2021-10-09 04:16:40 +00:00
Elise Richards 7e12bd3238 For #21313: Renew fission metrics expiring in December 2021-10-09 03:42:00 +00:00
Roger Yang 4ad494075a Issue #21686: Stop using internally stored tabs list in adapters 2021-10-09 02:43:26 +00:00
Mugurell abcc9dfc67 For #21806 - Set 1dp elevation for ListItemTabLarge
To get smaller shadows.
2021-10-08 23:22:44 +00:00
Mugurell 79a4873843 For #21733 - Simplify test to not depend on store updates. 2021-10-08 18:45:30 -04:00
Mugurell 4d5bd9eca4 For #21733 - Replace mock of an interface with mock of a fake. 2021-10-08 18:45:30 -04:00
Christian Sadilek 4cd67eaef5 Issue #21437: Fix default of start_on_home setting in UI 2021-10-08 18:33:55 -04:00
Gabriel Luong d0bb77fc2b For #21809 - Adjust the padding between the Pocket section 2021-10-08 20:37:56 +00:00
Jonathan Almeida bcc40e8e46 Issue #21794: Reverse chevron for inactive tabs 2021-10-08 20:04:40 +00:00
MickeyMoz 1cbdb6e684 Update Android Components version to 95.0.20211008105820. 2021-10-08 14:17:27 +00:00
AndiAJ 2eae152beb Remove openNewTabAndEnterToBrowser() and replace it with enterURLAndEnterToBrowser() in the UI tests 2021-10-08 11:16:54 +00:00
AndiAJ 19c4186f0a Remove closeTabViaXButton() and replace it with closeTab() in the UI tests 2021-10-08 11:16:54 +00:00
AndiAJ c9ca6f01b5 Fix for ambiguous mozac_browser_tabstray_close and with content description 2021-10-08 11:16:54 +00:00
AndiAJ 66ac309d40 Fix for ambiguous tabstray_title and with text 2021-10-08 11:16:54 +00:00
AndiAJ 8d7e5dd4b7 Fix for ambiguous tabstray_close 2021-10-08 11:16:54 +00:00
AndiAJ 681fc216ac Fix for ambiguous tab_item 2021-10-08 11:16:54 +00:00
codrut.topliceanu 6edd989152 For #20992 - Speculative fix for TopSitesPagerAdapter crash 2021-10-08 07:59:42 +00:00
Jonathan Almeida a75d46dfe1 Update Android Components to 95.0.20211008015247 2021-10-08 05:36:48 +00:00
Jonathan Almeida 74fd043290 Issue #21686: Move submitList calls into TabsAdapter
Co-authored-by: Roger Yang <royang@mozilla.com>
2021-10-08 05:36:48 +00:00
Noah Bond 8c1a64a5e8 For #21773 - Updated "customize homepage" button to go to the new Homepage submenu in Settings 2021-10-07 23:45:43 +00:00
Christian Sadilek 1b463a5c17 Enable pocket stories in CA 2021-10-07 21:57:56 +00:00
Arturo Mejia 3f9d277566 Prepare nimbus features default values for release 95 2021-10-07 20:44:44 +00:00
Rohan Maity a77091dc5b For #20579: Fix the normal browing tab re-used unexpectedly when open links in private tab enabled or same tab is already avaialble in normal browsing mode 2021-10-07 19:48:16 +00:00
MickeyMoz f41857e5e7 Update Android Components version to 95.0.20211006190137. 2021-10-07 18:31:49 +00:00
gmierz 7a08e7acdd Update visual-metrics script to the latest version. 2021-10-07 16:56:54 +00:00
Arturo Mejia 5843fafbb6 For #21765 only activate pocket by default for the right audience 2021-10-07 15:30:18 +00:00
Mugurell 507801e5d5 For #21623 - Pocket recommended stories telemetry 2021-10-07 08:36:00 +00:00
Michael Comella 2c528391da Closes #21424: add marker for StrictMode.resetAfter.
This helps identify file IO. Unfortunately, with this marker, it's
difficult to separate code we own from code we don't own. However, I
wasn't sure what the best implementation would be to address that
(e.g. ideally, we would ignore violations in code we don't own rather than
annotate the markers) so I thought we can land it this simple way and
improve it incrementally.
2021-10-07 07:39:51 +00:00
Gabriel Luong 04e75ace19 For #21756 - Refactor TopSites out of home.sessioncontrol 2021-10-06 21:47:36 +00:00
Noah Bond 1f97ca6ce6
For #21437 - Relocated Home-related settings to its dedicated sub screen (#21722)
* For #21437 - Relocated Home-related settings to its dedicated sub screen

* For #21437 - Updated show top sites toggle text

* PR: Fixed lint warning. Reverted preference keys

* PR: added ignore for UI test

* PR: Added ignore for UI test
2021-10-06 21:01:16 +00:00
Roger Yang 3632ed77d5 No issue: Update Pocket categories spacing to 16dp. 2021-10-06 19:52:55 +00:00
MickeyMoz f4750f3c35 Update Android Components version to 95.0.20211006143357. 2021-10-06 18:28:01 +00:00
Sebastian Kaspari 099e463b4f Issue #21102: Set compileSdkVersion to 31. 2021-10-06 17:30:08 +00:00
Roger Yang 23e51c250a No issue: Small layout update for Pocket Stories 2021-10-06 17:01:32 +00:00
Gabriel Luong dd20d98779 For #21729 - Refactor SectionHeader to use the right font size 2021-10-06 15:38:35 +00:00
Sebastian Kaspari 5208f74cd7 SearchDialogFragment: Start to split consumeFrom() into independent observers that trigger less often 2021-10-06 10:32:59 +00:00
Arturo Mejia 0f07703c3e For #21611: Show the jump back in Contextual Hints independently of the home onboarding dialog. 2021-10-06 03:21:41 +00:00
Arturo Mejia 7e3a2ba89d For #21574: disabled the homescreen onboarding dialog. 2021-10-06 03:21:41 +00:00
Roger Yang fb732cc953 Update version.txt to 95.0.0-beta.1 2021-10-06 02:11:29 +00:00
Mickey Moz 2a31edccf2
Update Android Components version to 95.0.20211005200555. (#21725) 2021-10-05 20:59:32 -04:00
Roger Yang fb345a4131 Close #21573: Update design for jump back in section and recently bookmarked section 2021-10-05 21:43:08 +00:00
codrut.topliceanu b1a5025610 For #21708 - Fixes missing header bottom border
The bottom gray border of the header item from the Inactive Tabs section was correctly set when collapsing or expanding said section, but not on init. So if the section was initialized collapsed the gray border would not be present.
2021-10-05 20:46:16 +00:00
MickeyMoz 8c34ccd8c9 Update Android Components version to 94.0.20211005143407. 2021-10-05 19:06:45 +00:00
Arturo Mejia bd7476cce4 Update feature flags for 94. 2021-10-05 18:02:38 +00:00
AndiAJ 8a8bbd9517 For #20814 fix flaky tabMediaControlButtonTest UI test 2021-10-05 11:09:29 +00:00
Mugurell 6faafe4688 For #21599 - Add UTM parameters for Pocket recommendations links 2021-10-05 10:33:45 +00:00
codrut.topliceanu a53b52b764 For #21565 - Adds inactive tabs onboarding popup 2021-10-05 10:00:33 +00:00
Mugurell 571a2fc88e For #21621 - Add 16dp horizontal spacing to home composables.
Added from the ViewHolders, the same as for XML Views.
2021-10-05 07:03:21 +00:00
Mugurell 2eb5fe2159 For #21621 - Add 16dp horizontal spacing to all normal browsing home items 2021-10-05 07:03:21 +00:00
Mugurell a6b4c3e370 For #21621 - Add 16dp horizontal spacing to the private browsing home description 2021-10-05 07:03:21 +00:00
Mugurell bb498cc223 For #21621 - Add 16dp horizontal spacing to all onboarding items 2021-10-05 07:03:21 +00:00
Mugurell d189b37a09 For #21621 - Remove the parent horizontal padding 2021-10-05 07:03:21 +00:00
Jonathan Almeida f9dd0d9f6f Issue #21582: Use ThumbnailStorage in recent tabs on home 2021-10-05 06:33:18 +00:00
Gabriel Luong a1e6872f6f For #21694 - Remove RoundedCornerShape around the inner Column in RecentlyVisited 2021-10-04 22:48:30 +00:00
Gabriel Luong 5fc979090a For #21694 - Only show the divider line in between items in the Recent Searches 2021-10-04 22:48:30 +00:00
Jonathan Almeida 8c2cbb4e41 Issue #21642: Remove in-progress media tab from homescreen 2021-10-04 18:03:34 -04:00
Christian Sadilek 66e54860bb Move tabs out of search group if direct load occurs
This regressed in our previous fix that made sure child tabs don't
mistakenly get moved out of the group if their parent is navigated
away, or in case the child tabs are redirected.

However, when a subsequent load occurs in any tab in the group the
search terms need to be cleared and the tab removed from the group
to prevent false positives.
2021-10-04 17:30:49 -04:00
Elise Richards f359557ef4
CI for Fix description for home_screen_displayed metric (#21697)
* Fix description for `home_screen_displayed` metric

The current description appears to be incorrect by my reading of the source.

* Update app/metrics.yaml

Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>

Co-authored-by: Will Lachance <wlachance@mozilla.com>
Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
2021-10-04 13:59:02 -07:00
Elise Richards e2c9d9abb1
CI for Docs: Add extra context to events.browser_menu_action (#21696)
* Docs only: Add extra context to `events.browser_menu_action`

This came up as a potential point of confusion in a discussion with DS. This is a docs only change.

* Update metrics.yaml

Co-authored-by: Will Lachance <wrlach@gmail.com>
2021-10-04 20:10:49 +00:00
Gabriel Luong 6abb2fffa1 For #21658 - Don't pass Client into composable functions 2021-10-04 19:06:30 +00:00
MickeyMoz faab3eb7f1 Update Android Components version to 94.0.20211003190228. 2021-10-04 17:39:05 +00:00
Jonathan Almeida b8946f807a Issue #21671: Remove Recently Closed from Inactive Tabs 2021-10-04 15:50:27 +00:00
Mugurell 16a3b92d34 For #21593 - Refactor the coroutine from PocketStoriesShown to outside the middleware
In so this code will no longer have access to the MiddlewareContext which only
makes sense in the thread of the Middleware itself.
2021-10-04 11:54:42 +00:00
Mugurell e4489b8d7d For #21593 - Persist stories categories selections in a Proto DataStore
A fast and easy solution with all the ACID requirements.
Also supports easy migrations if later the data we need persisted changes.
2021-10-04 11:54:42 +00:00
Mugurell 565beb88c9 For #21593 - Refactor out "isSelected" from PocketRecommendedStoriesCategory
Having the list of categories and the list of selected categories separate in
State allows updating them independently.
2021-10-04 11:54:42 +00:00
AndiAJ 84c61e24a7 For #21644 fix disabled alwaysStartOnHomeTest UI test 2021-10-04 10:34:56 +00:00
Jonathan Almeida 061de54291 Issue #21576: Hide 'Other' title when there are no search groups 2021-10-04 08:56:20 +00:00
Mugurell 361673ae3e For #21626 - Avoid showing story invalid properties 2021-10-04 07:33:31 +00:00
Arturo Mejia 2b363b9868 For #21618: Integrate Nimbus with MR2 Home Page to enable experimentation 2021-10-04 00:39:59 +00:00
Arturo Mejia ebd336501b For #21611: Add jump back in Contextual Hints 2021-10-03 23:16:37 +00:00
MickeyMoz b2bf7ca583 Update Android Components version to 94.0.20211003143215. 2021-10-03 16:53:57 +00:00
Jonathan Almeida e5f58eaade
Issue #21632: Correct inactive tabs survey string (#21669) 2021-10-03 14:29:39 +00:00
MickeyMoz a199a48a16 Update Android Components version to 94.0.20211002143316. 2021-10-02 16:41:27 +00:00
Christian Sadilek 8f187af9ae Make search term grouping tolerant to (parent tab) navigation
Co-authored-by: Grisha Kruglov <gkruglov@mozilla.com>
2021-10-02 08:51:25 +00:00
Elise Richards 76c0c4ad14 For #21648: match Pocket sections on home to designs 2021-10-02 08:24:09 +00:00
Jonathan Almeida c877a25400 Issue #21641: Do not add a group of only one tab 2021-10-02 04:00:02 -04:00
Elise Richards b213a51188 For #21653: pre-land section title for tab preferences 2021-10-02 00:53:00 +00:00
Noah Bond aa28b6f142
For #21360 - Added toggle for search term tab groups (#21615)
* For #21360  - Added toggle for search term tab groups

* For #21360 - Lint cleanup

* PR: Added missing licenses and possibly fixed UI test

* PR: Added a "scrollTo" to potentially fix a UI test

* PR: Added potential fix for alwaysStartOnHomeTest

* PR: Added temporary ignore to alwaysStartOnHomeTest

* PR: added missing ignore comment

* For #21360 - Added missing feature flag driven visibility logic

Co-authored-by: Sebastian Kaspari <s.kaspari@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-10-02 00:25:12 +00:00
Elise Richards c7067a50cb For #21646: Update section titles and customize button name on home 2021-10-01 23:51:48 +00:00
MickeyMoz 4863b5627f Update Android Components version to 94.0.20211001190127. 2021-10-01 22:32:42 +00:00
Elise Richards 3a2b9e5d2b
For #21643: Pre-land strings for inactive tabs CFR. Update section title for normal, non-search group tabs. (#21645) 2021-10-01 14:23:24 -07:00
Noah Bond 07b53f1e73
For #21635 - Preland strings for tab auto close message (#21636)
* For #21635 - Prelanded strings for tab auto close message

* PR: Updated String descriptions and added temporary tools ignore
2021-10-01 20:37:51 +00:00
Gabriel Luong 69485da0f8 For #21632 - Preland strings for the inactive tab survey 2021-10-01 19:51:59 +00:00
Biren-Nayak c1effd946d For #16437: Remove unnecessary space for tracking protection exceptions 2021-10-01 19:15:00 +00:00
Mugurell bf876e2593 For #21392 - Update new strings descriptions. 2021-10-01 18:03:12 +00:00
MickeyMoz 903c25095a Update Android Components version to 94.0.20211001125001. 2021-10-01 12:22:42 -04:00
Christian Sadilek fafa72c0ff Allow opening pocket stories when search dialog is active 2021-10-01 16:03:59 +00:00
Oana Horvath a4a04173cc For #21540, #21620: disables failing UI tests 2021-10-01 15:03:35 +00:00
Oana Horvath 526501160c For #21441, #21477, #21500, #21499 #21476, #21474: retry dismissing the search bar 2021-10-01 08:38:03 +00:00
Roger Yang 920376ee5b Close #21610: Update Strings for Tab Settings 2021-10-01 06:31:50 +00:00
Mozilla L10n Automation Bot b9b1e984b5 Import l10n. 2021-10-01 03:27:40 +00:00
Jeff Klukas 782aea2d5b Update language in adjust docs
Cleaning up a bit in advance of this document being linked from the
[Privacy Notice](https://www.mozilla.org/en-US/privacy/firefox/)
as a replacement for the no-longer-existing
https://firefox-source-docs.mozilla.org/mobile/android/adjust.html
2021-09-30 22:52:26 -04:00
Arturo Mejia 6824949a40 For #21611: Add jump back in contextual hint text 2021-09-30 22:40:30 -04:00
Roger Yang 1092383231 No issue: Make sure jump back in group always have more than one tab 2021-09-30 22:33:50 -04:00
Gabriel Luong 15d1a0aa17 For #21551 - Add delete history metadata in the History view
Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
2021-09-30 22:30:19 -04:00
Elise Richards c60de0bc6c For #21287: long press menu on recently visited homescreen groups 2021-09-30 22:00:18 -04:00
Arturo Mejia ca30f518d8 For #21608: Update strings for home screen dialog features 2021-10-01 01:51:07 +00:00
MickeyMoz ef2a491614 Update Android Components version to 94.0.20210930211433. 2021-09-30 20:41:56 -04:00
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.
2021-09-30 18:14:16 -04:00
MickeyMoz 38b6736211 Update Android Components version to 94.0.20210930173134. 2021-09-30 20:51:04 +00:00
Jan-Erik Rediger 2198c0f014 Don't manually exclude glean-native
The latest geckoview-omni package correctly declares its capabilities,
including the `glean-native` one.
Additionally it is able to pick geckoview-omni over glean-native in all
configurations.
2021-09-30 19:51:29 +00:00
Noah Bond 25d0696101
Inactive tabs changes (#21524)
* Issue mozilla-mobile#21319 - Moved inactive tabs to the top of the normal tabs tray.

* Issue mozilla-mobile#21319 - Added a delete icon to delete ALL inactive tabs.

* Issue mozilla-mobile#21319 - Changed default inactive time period to 14 days

* Issue mozilla-mobile#21319 - Hooked inactive tabs setting to UI code

Inactive tabs setting is also disabled when the user has selected the one day or week auto-close tab setting.

* Issue mozilla-mobile#21319 - File and Lint cleanup

* PR: Fixed bug causing grouped tabs to also show in "Other" when marked as inactive but inactive is OFF in Settings

* PR: Fixed lint warnings

* PR: Removed redundant feature check

* PR - Ignore test until search term tab groups switch is done
2021-09-30 19:01:31 +00:00
MickeyMoz 5358552a62 Update Android Components version to 94.0.20210930143139. 2021-09-30 17:57:50 +00:00
Mugurell 53d4336939 For #21592 - Don't topup with general stories 2021-09-30 15:54:21 +00:00
Mugurell ea6d5e3d38 For #21562 - Snap to next item when scrolling
This works by replacing the fling animation with snapping to the next item in
the scroll direction.
2021-09-30 14:57:17 +00:00
Aaron Train 2bde49f911 No issue: Fix AssertionError in openThreeDotMenu
fix: ktlint
2021-09-30 14:06:13 +00:00
AndiAJ f72ab0a4f3 For #21540 fix flaky editCustomSearchEngineTest UI test 2021-09-30 10:30:27 +00:00
Michael Comella 365983d4b0 For #21294: suppress MaxLineLength in Fact.toEvent.
These double comparisons are easier to read and see the pattern of on one line
so I'd rather keep them on one line. Additionally, it's difficult to
test each change individually so I'd rather not make additional changes.
To do this, I suppressed the max line length warning.
2021-09-30 09:13:53 +00:00
Michael Comella c10f41164d For #21294: remove allocations in Fact.toEvent.
This commit was generated primarily by a macro that:
- appends `== component &&`
- appends `== item`
- (if applicable) Skips to the ending brace
- Go down one line and move cursor to the front of the line to prep for repeat

My only intervention was to skip extra lines to line it up to run again
and specify how many times in a row it should run.

---

The `to` in this code is an infix function that calls instantiates a
Pair under the hood. Subjectively observed, when this method is called
it generally hits the else case so 35 Pairs are instantiated each call -
that's 560 bytes. This method is called frequently - for example, an estimated
4 times each time a letter is typed on the homescreen and a measured 116 times
in a simple navigation (see the issue). The latter generates an estimated
63.4 KiB.

It was straightforward to remove these allocations so that's what this
change does.

The primary risk from this change is that it's difficult to test each
case to ensure it's working.
2021-09-30 09:13:53 +00:00
Michael Comella d33e38e020 For #21294: change `when (condition) {` `when {` in Fact.toEvent.
This will not compile. However, it enables the subsequent PR to remove
allocations from Fact.toEvent.
2021-09-30 09:13:53 +00:00
Michael Comella 4c33b1b75c For #21294: add partial test for existing factToEvent code.
When we refactor, this will help ensure we've done it correctly.
2021-09-30 09:13:53 +00:00
codrut.topliceanu 0e88c25df1 For #20762 - Adds grey border to inactive tabs 2021-09-30 08:42:46 +00:00
MickeyMoz 13663043ce Update Android Components version to 94.0.20210929224637. 2021-09-30 02:06:02 +00:00
Mozilla L10n Automation Bot f8edee649a Import l10n. 2021-09-30 00:43:30 +00:00
Elise Richards 02614eb889 For #21574: Move the homescreen onboarding card behind a feature flag 2021-09-29 22:52:42 +00:00
Mugurell e72b7f7cc8 For #21561 - Enable/Disable the feature from the customization menu 2021-09-29 19:55:26 +00:00
Mugurell 0c632dbbdb For #21391 - Final design composables
Fonts are not exactly following the Figma design but do better suit the overall
design since the other fonts are also not respecting the latest specs.
2021-09-29 19:15:07 +00:00
Andrei Joltan d30583e0e7
For #21442 fix flaky deleteMultipleSelectionTest UI test (#21563)
Co-authored-by: AndiAJ <andiaj@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-09-29 13:45:08 -04:00
Roger Yang ddd472d143 No issue: Improve rendering of jump back in 2021-09-29 11:43:49 -04:00
AndiAJ 37e342fd92 For #21478 fix flaky verifyOpenTopSiteNormalTab UI test 2021-09-29 15:21:34 +00:00
Oana Horvath 0ac23486c1 Fixed verifyAboutFirefoxPreview test according with new steps 2021-09-29 16:01:35 +03:00
Oana Horvath 1015072db6 Fixed disabled UI test openExternalLinksInPrivateTest 2021-09-29 16:01:35 +03:00
Roger Yang 53206df9b6 Close #21552: Remove Extra Subtitle In Jump Back In Item 2021-09-29 02:46:34 +00:00
Roger Yang 8193138015
Fix recent tabs intermittent tests (#21557)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-09-28 22:10:47 -04:00
MickeyMoz da006c6cce Update Android Components version to 94.0.20210928190108. 2021-09-29 00:57:46 +00:00
Elise Richards 777f2d1f12
For #21339: update styles for homescreen show all buttons and jump back in spacing (#21342)
For #21339: Add ignores for intermittent ui tests

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-09-28 14:40:22 -07:00
Mugurell c1f0e5a611 For #21275 - Sort items by how many times they were actually shown 2021-09-28 20:25:25 +00:00
Christian Sadilek 4596d4f905
Do not capture search terms when user navigates away via app (#21527)
Co-authored-by: Grisha Kruglov <gkruglov@mozilla.com>

Co-authored-by: Grisha Kruglov <gkruglov@mozilla.com>
2021-09-28 14:20:58 +00:00
AndiAJ bf3b669151 Delete browsing data tests UI tests 2021-09-28 09:50:00 +00:00
AndiAJ 06292ac8d6 Fix disabled toggleSearchSuggestions UI Tets and refactoring work 2021-09-28 07:49:22 +00:00
Elise Richards ab13ae09f2
For #21313: renewing performance awesomebar metrics (#21315) 2021-09-27 15:40:21 -07:00
Roger Yang 8a15e8a681 Close #21451: Add active search term tab groups on home 2021-09-27 21:10:57 +00:00
Arturo Mejia f15291757b For #21493 show onboarding dialog for home sections 2021-09-27 19:22:34 +00:00
codrut.topliceanu f338d64a4c For #20762 - Fixes NPE crash with nullchecks for binding 2021-09-27 13:32:06 -04:00
MickeyMoz aa0ef8a726 Update Android Components version to 94.0.20210927143215. 2021-09-27 17:20:14 +00:00
AndiAJ 10f2074749 Fix disabled shortcutButtonTest UI test 2021-09-27 11:15:28 +00:00
Mugurell ba4c44afcf For #21045: Add categories support 2021-09-27 09:57:15 +00:00
Mugurell ccc0f17e4f For #21045: Cleanup
- stick to one naming scheme: rename articles to stories and use this all
throughout the app.
- add some spacing above the new section (as per the current design)
2021-09-27 09:57:15 +00:00
Mozilla L10n Automation Bot 27d319bc56 Import l10n. 2021-09-27 00:38:26 +00:00
MickeyMoz 83357c673d Update Android Components version to 94.0.20210926133629. 2021-09-26 11:28:55 -04:00
Mozilla L10n Automation Bot 009f2a97b8 Import l10n. 2021-09-26 00:30:23 +00:00
MickeyMoz 79ebdff63e Update Android Components version to 94.0.20210924143217. 2021-09-25 16:49:11 +00:00
Mozilla L10n Automation Bot 8426c399ad Import l10n. 2021-09-25 00:44:49 +00:00
codrut.topliceanu e8c332964d For #21087: Updates Recently Saved design 2021-09-24 07:42:29 +00:00
MickeyMoz 2ea5d30a58 Update Android Components version to 94.0.20210924002420. 2021-09-24 02:20:56 +00:00
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.
2021-09-23 21:15:48 +00:00
Aaron Train 1418d3f2bd Closes #21441: Fix changeAccessibiltySettings 2021-09-23 19:59:59 +00:00
Jonathan Almeida 26dc3ea47e Issue #21366: Speculative fix for failing test in TitleHeaderBindingTest 2021-09-23 18:42:53 +00:00
MickeyMoz 3b92f95373 Update Android Components version to 94.0.20210923143204. 2021-09-23 17:35:34 +00:00
Christian Sadilek d830006984 For #20893: Dedupe urls/site in history groups 2021-09-23 16:09:43 +00:00
Gabriel Luong 976dd6ebe1 For #21460 - Rename "Delete from history" to "Remove" for recent visit dropdown menu 2021-09-23 14:26:46 +00:00
Oana Horvath 43d1cb233e For #17847: adding back editCustomSearchEngineTest UI test 2021-09-23 08:58:52 +00:00
AndiAJ d534adc932 Improve coverage verifyEmptyBookmarksMenuTest and undoDeleteMultipleSelectionTest UI tests 2021-09-23 08:04:40 +00:00
AndiAJ 3ad0ec1302 Fix for disabled saveLoginFromPromptTest 2021-09-23 07:09:15 +00:00
Mozilla L10n Automation Bot 74989db239 Import l10n. 2021-09-23 01:06:49 +00:00
MickeyMoz 11cf4e367e Update Android Components version to 94.0.20210922143147. 2021-09-22 23:44:03 +00:00
Gabriel Luong 90d7927b2f Issue #21117 - Modify layout for items displayed under "Recently Visited" in the HomeScreen to follow latest UX designs 2021-09-22 21:30:45 +00:00
Arturo Mejia c05fbfb6c3 For #21239 improve telemetry values for Allow users to customize their home screen 2021-09-22 16:28:43 +00:00
Oana Horvath 83e3e0b19d No issue: re-enabled swipeToSwitchTabTest 2021-09-22 15:59:28 +00:00
Travis Long ca069a78d2 Fix logic so `isFirstRun` can be called multiple times on first run 2021-09-22 15:35:28 +00:00
Travis Long c9c28b66c8 [SDK-344] Pass in first-run information to Nimbus for targeting 2021-09-22 15:35:28 +00:00
Gabriel Luong 98b218d964 For #21413 - Remove unused OnboardingPrivateBrowsingViewHolder and OnboardingWhatsNewViewHolder 2021-09-22 14:20:16 +00:00
Aaron Train 87e4a250f1 Various UI test fixes and disabling of intermittents 2021-09-22 12:57:26 +00:00
Sebastian Kaspari cd61ef1c1d Issue #21172: Refactor UI tests accessing awesomebar suggestions. 2021-09-22 12:57:26 +00:00
Sebastian Kaspari 6d99c34f12 Issue #21172: Replace BrowserAwesomeBar view with AwesomeBar() composable. 2021-09-22 12:57:26 +00:00
MickeyMoz a586d7e6cd Update Android Components version to 94.0.20210922091950. 2021-09-22 10:41:02 +00:00
Gabriel Luong d9847f9525 For #21408 - Pass the corresponding HistoryMetadataKey to openToBrowserAndLoad and addTab use case 2021-09-22 08:15:08 +00:00
Gabriel Luong 2ae7d5d593 For #20893 - Search term groups in history 2021-09-22 08:15:08 +00:00
AndiAJ 391ff6b5fd Exit onboarding tour UI tests 2021-09-22 07:06:50 +00:00
Mozilla L10n Automation Bot a42ca16167 Import l10n. 2021-09-22 01:59:21 +00:00
Michael Comella 3ab1ca8321 For #21126: process performancetest intent for AC too. 2021-09-21 20:49:12 +00:00
rayanHappy 6a3b9c4b8f Fix QR scan button not showing up when choosing a RTL language 2021-09-21 16:20:56 -04:00
Arturo Mejia 3272de1364 For #21239 add telemetry for Allow users to customize their home screen 2021-09-21 15:55:03 -04:00
Christian Sadilek 6f7f284b55 Make sure to only record view time once for a given tab access
Co-authored-by: Grisha Kruglov <gkruglov@mozilla.com>
2021-09-21 12:37:44 -07:00
MickeyMoz c71467f745 Update Android Components version to 94.0.20210921143125. 2021-09-21 16:45:33 +00:00
Mozilla L10n Automation Bot e00079aeaf Import l10n. 2021-09-21 00:47:29 +00:00
Elise Richards 368d8cc214 No issue: remove escape chars on add logins string 2021-09-20 21:30:16 +00:00
Grisha Kruglov b7b8de1c2f Use UpdateUrlAction to record viewTime observations
We discovered that in a tab restore scenario we were recording view time
observations that were wrong - we'd record time deltas as-if user was
looking at the page while the browser wasn't running.

This happens because when we record a viewTime observation, we compare
current time with lastAccess time of the tab. In a restore scenario,
that lastAccess time happens to be from when the browser was last
running - which could be days ago.

The simplest solution was to not record a viewTime observation if the
url for a tab didn't change during a load event. To achieve this, we
needed to change which action we were using as a proxy for "navigation
events" - UpdateUrlAction contains the new url, allowing us to compare
against the current tab url.

Alternative solutions would be to keep using loading actions, but
dispatch a lastAccess event before performing a metadata update. This
would have worked, but would result in two lastAccess events being
dispatched for each navigation event instead of just one.
2021-09-20 20:14:04 +00:00
Elise Richards b56d8ff545 For #21337: rename recently saved section on home 2021-09-20 19:42:19 +00:00
Christian Sadilek 16085b9008 Closes #21388: Only parse clipboard content when search fragment is attached 2021-09-20 14:31:08 -04:00
Jonathan Almeida e9434a5b11 Close #21366: Fix intermittent test failure in TitleHeaderBindingTest 2021-09-20 17:47:17 +00:00
AndiAJ d4ce149c3e Improve coverage for verifyAboutFirefoxPreview 2021-09-20 09:41:23 +00:00
Mozilla L10n Automation Bot f4397cc85e Import l10n. 2021-09-20 00:38:29 +00:00
MickeyMoz 7291c39941 Update Android Components version to 94.0.20210919202539. 2021-09-19 21:58:50 +00:00
MickeyMoz 609a46b6fd Update Android Components version to 94.0.20210919143155. 2021-09-19 16:32:04 +00:00
Mozilla L10n Automation Bot 65dd9cb079 Import l10n. 2021-09-19 00:34:04 +00:00
MickeyMoz 1e3adbcf33 Update Android Components version to 94.0.20210917190109. 2021-09-18 16:50:12 +00:00
Mozilla L10n Automation Bot a455116d2c Import l10n. 2021-09-18 00:40:46 +00:00
Michael Comella 7232fedb20 For #21296: add ProfilerMarkers.addForDispatchTouchEvent. 2021-09-17 23:06:50 +00:00
Michael Comella bb632c7b3b For #21299: add duration markers for HomeActivity Create/Start.
We only instrument these methods because they're the only ones that
noticeably long running in the current implementation.
2021-09-17 22:34:01 +00:00
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.
2021-09-17 22:34:01 +00:00
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.
2021-09-17 22:34:01 +00:00
Roger Yang 872263cf2d Update tabs tray title header string comment to clarify what it does. 2021-09-17 21:07:30 +00:00
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.
2021-09-17 18:18:03 +00:00
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>
2021-09-17 13:48:08 -04:00
Sebastian Kaspari 6ac10d5209 Issue #21291: SearchDialogFragment: Get URL from clipboard once and not for every state update 2021-09-17 08:10:04 +00:00
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>
2021-09-17 03:26:34 +00:00
MickeyMoz 0b18d04a23 Update Android Components version to 94.0.20210916214430. 2021-09-17 02:01:04 +00:00
Mozilla L10n Automation Bot 030f7d0d44 Import l10n. 2021-09-17 00:26:32 +00:00
Arturo Mejia 19ed21c70b Update strings comments 2021-09-16 22:41:49 +00:00
Michael Comella e6560c229d For #21309: add profiler markers on global layout. 2021-09-16 22:09:44 +00:00
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.
2021-09-16 22:09:44 +00:00
Michael Comella c251e4c5ab For #21309: remove outdated comment regarding async nav graph. 2021-09-16 22:09:44 +00:00
Aaron Train 6fbeff1ca1
Closes #21340: Disable auto Google login in Flank config (#21341) 2021-09-16 17:30:30 -04:00
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.
2021-09-16 20:17:26 +00:00
rxu e6395bff97 Add default topsite 58 for MozillaOnline builds 2021-09-16 19:42:54 +00:00
Arturo Mejia 4e846b3cb6 For #21095 add customize home button on the home screen. 2021-09-16 14:58:45 -04:00
Gabriel Luong 66a31ddbfc Issue #21099 - Update items under "Jump back in" section to the latest designs 2021-09-16 07:07:20 +00:00
Christian Sadilek 2a92bd5942 Sort history metadata on home and allow limiting results 2021-09-16 01:03:29 +00:00
Mozilla L10n Automation Bot 1732b9e087 Import l10n. 2021-09-16 00:32:52 +00:00
Michael Comella aaa14a8208 No issue: add gve to setup-startup-profiling.py. 2021-09-15 21:44:52 +00:00
Michael Comella 0201120c61 No issue: convert to argparse in setup-startup-profiling.py. 2021-09-15 21:44:52 +00:00
MickeyMoz 8cd4db6762 Update Android Components version to 94.0.20210914190126. 2021-09-15 18:09:53 +00:00
Michael Comella 9c97f7c6b6 For #20936: run perftests with conditioned profiles.
We've noticed that geckoview_example is ~300ms faster than fenix in cold page
load tests on arewefastyet for the Pixel 2. We suspect the main
difference is because geckoview_example runs with conditioned profiles
and fenix does not.

This PR is foremost an experiment to see if that's true because, after bug
1587542, we cannot run get results for fenix perftest PRs (i.e. it needs to be
merged into main). If we find that the results are not noisy, however, we
could end up leaving this in the tree. We've previously seen excessive
noise with fenix start up tests with conditioned profiles which is why
conditioned profiles are not currently enabled.
2021-09-15 16:21:44 +00:00
Mugurell a54a4ea20a For #21120 - ImageLoader with a shimmer effect placeholder 2021-09-15 12:00:49 +00:00
AndiAJ abc881f9f8 New deleteBookmarkInEditModeTest UI test 2021-09-15 07:01:59 +00:00
AndiAJ 9546e50451 Improve coverage for copyBookmarkURLTest 2021-09-15 06:27:55 +00:00
Mozilla L10n Automation Bot 1e99d133e4 Import l10n. 2021-09-15 00:59:20 +00:00
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
2021-09-14 18:21:06 +00:00
Christian Sadilek c1289f657d Fix history metadata API breakage in unit tests 2021-09-14 13:14:36 -04:00
Jan-Erik Rediger 276626e5ba Ensure glean-native is excluded 2021-09-14 13:14:36 -04:00
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.
2021-09-14 13:14:36 -04:00
Christian Sadilek 30cffc0b28 Update Android Components to 94.0.20210914144027 2021-09-14 13:14:36 -04:00
Rohan Maity a2a10556b1 For #20634: remove some unused color resources 2021-09-14 13:10:03 -04:00
AndiAJ d33df2bedd Improve coverage for addPrivateBrowsingShortcut Ui test 2021-09-14 15:20:25 +00:00
Arturo Mejia cbb8f808c1 For #18629: add support for SmartBlock exceptions 2021-09-13 21:26:47 +00:00
MickeyMoz eba500558f Update Android Components version to 94.0.20210913143315. 2021-09-13 16:42:26 +00:00
Arturo Mejia fe914dc964 For #21226 only show the "Customize Home" menu on home screen. 2021-09-13 03:23:43 +00:00
Arturo Mejia de59a3ec48 For #21211 hide the ETP in custom tabs. 2021-09-13 02:55:39 +00:00
MickeyMoz 7727a86597 Update Android Components version to 94.0.20210912143220. 2021-09-12 16:40:51 +00:00
Mozilla L10n Automation Bot 46e9631a71 Import l10n. 2021-09-12 00:33:34 +00:00
MickeyMoz 42e8414f08 Update Android Components version to 94.0.20210910190342. 2021-09-11 16:39:54 +00:00
Mozilla L10n Automation Bot a31f859508 Import l10n. 2021-09-11 00:34:58 +00:00
MickeyMoz 0a1f9e0020 Update Android Components version to 94.0.20210910143108. 2021-09-10 16:52:00 +00:00
AndiAJ fc806283a5 For #21133 fix openMainMenuSyncItemTest UI test 2021-09-10 12:22:58 +00:00
MickeyMoz 2d2bac8015 Update Android Components version to 94.0.20210910083224. 2021-09-10 10:40:36 +00:00
bendk 5ba47a90db
Handle breaking changes from a-s 83.0.0 (#21215) 2021-09-09 19:41:55 -07:00
Mozilla L10n Automation Bot cd053f2a9a Import l10n. 2021-09-10 00:36:30 +00:00
Noah Bond b3a86e982d Issue mozilla-mobile#20637 - Fixed bug causing the tabs tray to scroll to the wrong tab when opened 2021-09-09 22:39:02 +00:00
mcarare 70247e9456 For #6968: Use close instead of read to close the response stream. 2021-09-09 22:10:28 +00:00
Jonathan Almeida 3dc1c670d2 Fix TaskCluster badge in README 2021-09-09 21:43:27 +00:00
Mickey Moz 90037df17f
Update Android Components version to 94.0.20210909143340. (#21214)
Co-authored-by: Ryan VanderMeulen <rvandermeulen@mozilla.com>
2021-09-09 16:31:22 -04:00
Arturo Mejia d4a212f235 For #21095 allow users to configure their home screen. 2021-09-09 14:38:26 -04:00
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>
2021-09-09 16:30:33 +00:00
Mozilla L10n Automation Bot 32105f8724 Import l10n. 2021-09-09 00:42:03 +00:00
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.
2021-09-08 23:06:08 +00:00
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.
2021-09-08 23:06:08 +00:00
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.
2021-09-08 23:06:08 +00:00
Arturo Mejia d288502840 For #20892 update connection panel strings 2021-09-08 22:20:00 +00:00
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>
2021-09-08 20:17:54 +00:00
MickeyMoz 14a2ba3ed5 Update Android Components version to 94.0.20210908143400. 2021-09-08 17:43:18 +00:00
Alex Ionescu 3886bd80d5 Issue #21184: Update artifacts format 2021-09-08 16:36:22 +00:00
Arturo Mejia dd1fb24705 For #20881 print if the build is a MozillaOnline 2021-09-08 16:03:59 +00:00
Mozilla L10n Automation Bot 64f5e85ddd Import l10n. 2021-09-08 01:17:08 +00:00
Elise Richards 3e30219fe9 Dont clip bounds on recently saved bookmarks 2021-09-08 00:39:35 +00:00
Roger Yang 494a901019 Set version to 94.0.0 2021-09-07 22:46:07 +00:00
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.
2021-09-07 21:53:43 +00:00
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.
2021-09-07 21:53:43 +00:00
MickeyMoz 4d3e4bb75a Update Android Components version to 94.0.20210907172517. 2021-09-07 20:29:01 +00:00
Roger Yang 5d22bb4707 Issue #18711: Telemetry for credit card autofill 2021-09-07 19:16:04 +00:00
Michael Comella 4a0f29d0a0 Closes #21128: remove measure_start_up.py.
This script was moved to the perf-tools repository for easy to access
from other perf tools & to be accessible for multiple apps:
    https://github.com/mozilla-mobile/perf-tools
2021-09-07 18:01:23 +00:00
MickeyMoz 3593e32583 Update Android Components version to 93.0.20210907143236. 2021-09-07 16:46:14 +00:00
Mozilla L10n Automation Bot fe7f6b8a56 Import l10n. 2021-09-07 00:34:03 +00:00
MickeyMoz 3bc3ff8220 Update Android Components version to 93.0.20210906143419. 2021-09-06 16:50:29 +00:00
Mozilla L10n Automation Bot e74a304f14 Import l10n. 2021-09-06 00:33:56 +00:00
MickeyMoz f15c6e8b54 Update Android Components version to 93.0.20210905143045. 2021-09-05 16:34:33 +00:00
Mozilla L10n Automation Bot ac71f4d929 Import l10n. 2021-09-05 00:33:45 +00:00
MickeyMoz 9458ba294c Update Android Components version to 93.0.20210903190252. 2021-09-04 16:37:08 +00:00
Mozilla L10n Automation Bot 7f08b2d44d Import l10n. 2021-09-04 00:37:01 +00:00
MickeyMoz cbc9bc9d89 Update Android Components version to 93.0.20210903143410. 2021-09-03 16:45:00 +00:00
Mozilla L10n Automation Bot 0a9b70f47d Import l10n. 2021-09-03 08:10:58 +00:00
Arturo Mejia 4357ebb8aa For 20892 Update connection icons in address bar 2021-09-02 23:52:55 +00:00
Christian Sadilek 5cc5a3438c Remove mocked lambdas from AccountSettingsInteractorTest 2021-09-02 21:44:35 +00:00
Christian Sadilek a3cd81e7b8 Add missing androidx.lifecycle dependencies 2021-09-02 21:44:35 +00:00
MickeyMoz 8ab30a7ffd Update Android Components version to 93.0.20210901190054. 2021-09-02 21:44:35 +00:00
Aaron Train bca177541e
Rollback Flank to v21.08.1 (#21123) 2021-09-02 15:52:29 -04:00
Mozilla L10n Automation Bot ffa5668c73 Import l10n. 2021-09-02 11:50:36 +00:00
Sebastian Kaspari 5f99cf14d6 Print Java version in test tasks. 2021-09-02 10:24:51 +00:00
Sebastian Kaspari be6f379eec Force rebuild of Docker image. 2021-09-02 10:24:51 +00:00
czlucius cb6741210b For #18727: Exit PiP when launched externally with Intents 2021-09-02 09:04:13 +00:00
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>
2021-09-01 18:08:19 -04:00
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.
2021-09-01 16:27:07 -04:00
codrut.topliceanu 2805f2e42e For #19166: Increases tab_tray_list bottom padding
... to fit snackbar and FAB
2021-09-01 07:59:16 +00:00
Mozilla L10n Automation Bot 95e18986f3 Import l10n. 2021-09-01 00:47:49 +00:00
Gabriel Luong 9bd6d298f1 For #21078 - Remove unused creditCardsFeature feature flag 2021-08-31 20:10:53 +00:00
Elise Richards 13fd0699cb Include data review for renewed metrics 2021-08-31 18:28:05 +00:00
Elise Richards 6cb872cd98 Remove banner open in app telemetry 2021-08-31 18:28:05 +00:00
Elise Richards c9626019ef Remove search suggestions in private telemetry 2021-08-31 18:28:05 +00:00
Elise Richards 19d8f58b47 Remove user specified search engine telemetry 2021-08-31 18:28:05 +00:00
Elise Richards 7653691d30 Remove private browsing shortcut telemetry 2021-08-31 18:28:05 +00:00
Elise Richards 34fb522f1a Fix data-review listed for default_browser_changed, toolbar_menu_visible, and toolbar_menu_clicked 2021-08-31 18:28:05 +00:00
Elise Richards cb9bbd2650 Remove private browsing mode telemetry 2021-08-31 18:28:05 +00:00
Elise Richards d137becd48 Remove tip telemetry 2021-08-31 18:28:05 +00:00
Elise Richards fa811cb244 Remove enable private search suggestions telemetry 2021-08-31 18:28:05 +00:00
Elise Richards de992994de Remove open links in private tab telemetry 2021-08-31 18:28:05 +00:00
Elise Richards f1cf6f4651 Remove find in page telemetry 2021-08-31 18:28:05 +00:00
Elise Richards 1f94dfa59b Remove total uri count telemetry 2021-08-31 18:28:05 +00:00
Elise Richards 87530ab9a4 Remove about page telemetry 2021-08-31 18:28:05 +00:00
Elise Richards 1b066458d5 Remove downloads management telemetry 2021-08-31 18:28:05 +00:00
Elise Richards 8455886ca8 Remove downloads misc telemetry. 2021-08-31 18:28:05 +00:00
Elise Richards c4ec8aa520 Remove download notification telemetry. 2021-08-31 18:28:05 +00:00
Elise Richards 2392c7e565 Remove master password telemetry. 2021-08-31 18:28:05 +00:00
Elise Richards 0f246bd16d Renew probes set to expire in September 2021-08-31 18:28:05 +00:00
Elise Richards 7c5155568e Renew probes set to expire in October 2021-08-31 18:28:05 +00:00
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
2021-08-31 18:02:09 +00:00
MickeyMoz b5d907622b Update Android Components version to 93.0.20210830220733. 2021-08-31 16:27:29 +00:00
Arturo Mejia 6034adcbc8 Add tint to settings icon on Tracking protection panel 2021-08-31 02:14:24 +00:00
Mozilla L10n Automation Bot 7bd1530d8a Import l10n. 2021-08-31 01:38:53 +00:00
AndiAJ dd889d8c0d For #21002 update and add missing tabs setting validations 2021-08-31 01:09:16 +00:00
Mickey Moz 89e95dc51e
Update Android Components version to 93.0.20210830143255. (#21081) 2021-08-30 20:14:35 -04:00
Oana Horvath fe8f4be9b9 For #20702: fix tests flakiness 2021-08-30 20:33:03 +00:00
Joel Maher 9a0af56953
Upgrade from node 10 -> 12 to support upgraded browsertime toolchain (#21064) 2021-08-30 12:58:36 -07:00
Sebastian Kaspari 846274b7cd Enable Android Autofill support in all build types. 2021-08-30 18:20:22 +00:00
MickeyMoz 4ac1089f4a Update Android Components version to 93.0.20210829143149. 2021-08-30 16:35:11 +00:00
Mozilla L10n Automation Bot 91819626b4 Import l10n. 2021-08-30 00:32:56 +00:00
MickeyMoz af117e4d22 Update Android Components version to 93.0.20210828190210. 2021-08-29 16:36:56 +00:00
Mozilla L10n Automation Bot 19992707c7 Import l10n. 2021-08-29 00:39:20 +00:00
MickeyMoz d23292f7e5 Update Android Components version to 93.0.20210828143405. 2021-08-28 16:37:16 +00:00
MickeyMoz d06d086b56 Update Android Components version to 93.0.20210827143341. 2021-08-27 16:42:50 +00:00
Gabriel Luong e4a25f4123 For #21035 - Refactor HistoryViewInteractor from HistoryView into HistoryInteractor 2021-08-26 21:04:49 +00:00
MickeyMoz 46e87147ba Update Android Components version to 93.0.20210826143110. 2021-08-26 16:32:26 +00:00
Oana Horvath a7c45425d7 For #21002: added page main menu items tests 2021-08-26 08:21:10 +00:00
Christian Sadilek 597b73c732 Dedupe history metadata in groups based on url 2021-08-25 20:19:50 +00:00
Elise Richards 014abc8143
Update search metric expiration dates (#21016) 2021-08-25 14:43:17 -04:00
Mickey Moz 65d84dcc1f
Update Android Components version to 93.0.20210824190140. (#21010)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-08-25 14:42:46 -04:00
Aaron Train cb44773997 No issue: Update Flank to v21.08.1
Flank https://github.com/Flank/flank/releases/tag/v21.08.1 has the fix for avoiding crash one of their API calls that we hit a couple times.
2021-08-25 14:58:48 +00:00
Aaron Train 39c7d4b948
No issue: Fix workflow if statement in build-contributor-pr.yml (#20982) 2021-08-25 09:35:04 -04:00
MickeyMoz 95f4b4670c Update Android Components version to 93.0.20210824190140. 2021-08-25 02:12:17 +00:00
Arturo Mejia 37c26976ac For #20919 add confirm dialog when turning on/off experiments 2021-08-24 23:47:14 +00:00
Arturo Mejia ce0fc5b1af For #20871 mark strings for removal 2021-08-24 23:15:06 +00:00
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
2021-08-24 12:30:13 -07:00
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.
2021-08-24 12:10:58 +00:00
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.
2021-08-24 10:26:36 +00:00
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`
2021-08-24 10:26:36 +00:00
Mugurell 621c388c12 For #17917 - Finish migrating all synthetics usages 2021-08-24 10:26:36 +00:00
codrut.topliceanu 5e13ead750 For #20328 - Adds telemetry for recentlyClosed button
...from tabsTray, inactiveTabs section.
2021-08-24 09:52:33 +00:00
Oana Horvath 84767f84ea For #20716: re-enables mainMenuInstallPWATest UI test 2021-08-24 08:25:34 +00:00
Oana Horvath 9920cbeb1d For #20868, #18764: Update Tracking Protection UI tests 2021-08-24 08:25:34 +00:00
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.
2021-08-23 22:29:46 +00:00
Aaron Train 950b2332d6
Disable run-ui in build-contributor-pr.yml (#20981) 2021-08-23 16:52:53 -04:00
MickeyMoz d6ee05e514 Update Android Components version to 93.0.20210823143136. 2021-08-23 18:02:08 +00:00
codrut.topliceanu 7070bb5607 For #17917: Use View binding in add-ons 2021-08-23 15:49:22 +00:00
Mugurell 05f74eb620 For #20586 - Put everything behing a secret setting
Not ready for prime-time. Lot of work still to be done.
2021-08-23 14:38:06 +00:00
Mugurell 6ae8c90f41 For #20586 - Basic Jetpack Compose implementation.
This is just the basic skeleton for the feature.
2021-08-23 14:38:06 +00:00
Arturo Mejia 4f163e18e7 For #20892 update connection icons in quick settings 2021-08-23 13:35:45 +00:00
mcarare 83b752afef For #20927: Replace icons with AC icons. 2021-08-23 08:16:55 +00:00
rxu f88be38796 Use armeabi-v7a version code for MozillaOnline builds 2021-08-23 05:51:00 +00:00
Arturo Mejia ffad73d646 For #20919 quite the app when turning on/off experiments 2021-08-23 03:39:55 +00:00
MickeyMoz a25a75a833 Update Android Components version to 93.0.20210822143123. 2021-08-22 16:36:51 +00:00
MickeyMoz b80de407a0 Update Android Components version to 93.0.20210820190249. 2021-08-22 02:01:06 +00:00
Rohan Maity 707918cdc1 For #20596 remove startup timeline probes 2021-08-22 00:57:10 +00:00
Jonathan Almeida 7915ef8f3f Close #20945: Fix failing test in AccountSettingsInteractorTest 2021-08-20 21:23:25 +00:00
Jonathan Almeida 693fbef88d Speculative fixes intermittent test in DeleteAndQuitTest 2021-08-20 19:26:42 +00:00
MickeyMoz d235da6cc2 Update Android Components version to 93.0.20210820143116. 2021-08-20 16:34:17 +00:00
Arturo Mejia d3019986a4 For #20919 quit the after removing a study. 2021-08-20 15:07:00 +00:00
codrut.topliceanu bf5b4a5655 For #17917: Use View binding in tabs tray 2021-08-20 14:18:39 +00:00
Mugurell 69fa9abdd2 For #17917 - Migrate `home` from Kotlin synthetics to View Binding. 2021-08-20 13:45:05 +00:00
Mugurell ff4669a759 For #17917 - Migrate `browser` from Kotlin synthetics to View Binding. 2021-08-20 13:15:39 +00:00
codrut.topliceanu 34e063669a For #17917: Use View binding in Login Exceptions 2021-08-20 09:44:12 +00:00
rxu c82af0a97a Add event ping telemetry for the Baidu top site click 2021-08-20 03:46:20 +00:00
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).
2021-08-19 23:07:06 +00:00
Arturo Mejia 8b4190a429 For #20890 when TP is off globally hide TP section on quick settings. 2021-08-19 22:36:25 +00:00
Roger Yang 6855295b61 Restore unused string tab_collection_dialog_negative 2021-08-19 21:46:56 +00:00
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.
2021-08-19 13:30:32 -07:00
MickeyMoz c77881988b Update Android Components version to 93.0.20210818190037. 2021-08-19 18:48:01 +00:00
Roger Yang c9b2f9e866 Issue #2783: Add snackbar to collection deletion 2021-08-19 17:06:45 +00:00
codrut.topliceanu 77e12f9014 For #20716 - Disables Intermittent failing UI test 2021-08-19 16:10:12 +00:00
Sebastian Kaspari 8be900392b metrics.yaml: Add data review URL for Android Autofill metrics 2021-08-19 15:13:37 +00:00
Roger Yang 64cd72871f Update Android Components version 2021-08-19 14:04:18 +00:00
Jonathan Almeida ef036f3ca9 Issue #20864: Speculative fix for HomeFragmentTest failures 2021-08-18 08:55:45 +00:00
codrut.topliceanu 20c9a247f5 For #17917: Use View binding in tracking protection(2) 2021-08-18 07:40:26 +00:00
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
2021-08-18 03:59:44 +00:00
codrut.topliceanu c52b6615e5 For #17917: Use View binding in Share views 2021-08-18 03:27:17 +00:00
codrut.topliceanu 7acd6997f6 For #17917: Use View binding in Onboarding Tests 2021-08-18 02:47:50 +00:00
Mickey Moz eb29433d41
Update Android Components version to 93.0.20210817143149. (#20891) 2021-08-17 21:41:35 -04:00
Arturo Mejia 215ef9d46b For #19886 use block color on disabled permissions 2021-08-17 01:42:42 +00:00
Mozilla L10n Automation Bot 45daeb128a Import l10n. 2021-08-17 00:36:38 +00:00
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).
2021-08-16 22:54:22 +00:00
MickeyMoz 293092fc02 Update Android Components version to 93.0.20210816143131. 2021-08-16 21:41:18 +00:00
Arturo Mejia 512475df9e For #19886 integrate view binding. 2021-08-16 16:42:39 -04:00
Arturo Mejia fd8e6a9c27 For #19886 fix ui tests 2021-08-16 16:42:39 -04:00
Gabriel Luong d1b9744069 For #19886 - Add a back navigation to the Global Quick Settings from the Tracking Protection dialog 2021-08-16 16:42:39 -04:00
Arturo Mejia 34d99f89ac For #19886 - Improve quick setting dialogs navigation 2021-08-16 16:42:39 -04:00
Gabriel Luong 4b2b058b4e For #19886 - Remove tracking protection overlay CFR 2021-08-16 16:42:39 -04:00
Gabriel Luong dbb6819e7d For #19886 - Use the new "Details" text for navigating to ETP details 2021-08-16 16:42:39 -04:00
Arturo Mejia 07bb1113f8 For #19886 - Add connection sub-menu. 2021-08-16 16:42:39 -04:00
Gabriel Luong 63368779df For #19886 - Add favicon to website info view
Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
2021-08-16 16:42:39 -04:00
Gabriel Luong a535a8d031 For #19886 - Add right arrowheader to tracking protection navigators 2021-08-16 16:42:39 -04:00
Gabriel Luong 61dfb40339 For #19886 - Handle toggling tracking protection in quick settings 2021-08-16 16:42:39 -04:00
Gabriel Luong cad0e110dd For #19886 - Add navigation from quick settings to tracking protection panel 2021-08-16 16:42:39 -04:00
Gabriel Luong 465f553ea8 For #19886 - Remove the tracking protection indicator 2021-08-16 16:42:39 -04:00
Mozilla L10n Automation Bot fd1890090c Import l10n. 2021-08-16 16:49:49 +00:00
Jonathan Almeida bd665e2f7e Close #20853: Fix intermittent failing test in HomeFragmentStoreTest 2021-08-16 16:19:38 +00:00
Jonathan Almeida 29b6bab435 Update TabSessionState.createdAt for inactive tabs debugging 2021-08-16 15:53:25 +00:00
Arturo Mejia 22e9e067a1 For #20764 separate learn more string 2021-08-16 11:24:42 -04:00
Sebastian Kaspari b4bcaa0bd3 Android Autofill: Use AppCompat theme for UnlockActivity. 2021-08-16 08:00:13 +00:00
Arturo Mejia eb490a898c Remove duplicated line in TabsSettingsFragment 2021-08-16 07:29:52 +00:00
Sebastian Kaspari 2b53df2ed4 Use theming in debug screen. 2021-08-16 07:03:29 +00:00
Mickey Moz 76a8706e1f
Update Android Components version to 93.0.20210815143147. (#20859) 2021-08-15 22:18:08 -04:00
MickeyMoz 3e2dae1c73 Update Android Components version to 93.0.20210814143348. 2021-08-14 20:47:19 -04:00
Jonathan Almeida 5c328f9616 Close #15168: Remove intermittent failing test in ToolbarViewTest
This test seems to be hacking at the binding between Fenix and the
BrowserToolbar to simulate toolbar events passing to the Fenix
interactor.

This is rather clumsy test that relies on the magic working of mockk
instead of following a general unit testing strategy that would commonly
require the class to be re-written to allow for better testing instead.

It is far safer to remove this test since we are not guaranteeing
anything in it and instead we see intermittent failures that make us
lose more time.

So therefore.. 🔥
2021-08-14 01:52:52 -04:00
Jonathan Almeida 708f024d07 Close #20796: Fix intermittent test failure in TrackingProtectionExceptionsInteractorTest 2021-08-14 01:52:52 -04:00
Jonathan Almeida 0f35700e00 Close #20795: Speculative fix for intermittent test failures in HomeFragmentTest
The expectation is that replacing `return` with `answers` will compute
the return value for the extension function again in order to avoid the
error, "no answer found for: Settings".
2021-08-14 01:52:52 -04:00
Jonathan Almeida 0556e6b1c4 Close #20797: Fix intermittent test failures in ShortcutsSuggestionProviderTest 2021-08-14 01:52:52 -04:00
Jonathan Almeida 545a59ac97 Close #20792: Fix intermittent test failures in QuickSettingsFragmentReducerTest 2021-08-14 01:52:52 -04:00
Mickey Moz 8b80cccd1b
Update Android Components version to 93.0.20210813143343. (#20839)
Co-authored-by: Ryan VanderMeulen <ryanvm@gmail.com>
2021-08-13 21:42:51 -04:00
Aaron Train 5ff2c21849
Filter out test target packages in Flank-x86 (#20841)
* Filter out test target packages in Flank-x86
* Ignore verifyRunBlockingAndStrictModeSuppresionCount
2021-08-13 15:00:10 -04:00
Ben Hearsum 5a8a7f5499 Ship nightlies to Google Play twice a day
This was moved to once per day in https://bugzilla.mozilla.org/show_bug.cgi?id=1628413 when Google Play reviews were very slow. That hasn't been a problem for awhile, and the less frequent nightlies are causing delays getting new Android Components bumps shipped out.
2021-08-13 02:54:28 +00:00
Michael Comella 667ef89220 No issue: move kotlin-allopen outside appVariants loop.
The kotlin-allopen plugin could be getting applied for each variant we
have in the app. With the changed code, it will only get applied once.
2021-08-12 20:39:27 +00:00
Elise Richards ea56dd216b
Use header20 style on collections to match other home items. Add margin above collections. (#20633) 2021-08-12 19:32:38 +00:00
Jonathan Almeida 2426384a2e Update the description for an inactive tabs string 2021-08-12 17:44:56 +00:00
MickeyMoz 46d89ac863 Update Android Components version to 93.0.20210812143121. 2021-08-12 16:46:13 +00:00
Steven Knipe 1f9b1fa0d5 For #4134 Add Forward Back Reload to Toolbar on Tablets 2021-08-12 13:54:13 +00:00
codrut.topliceanu f2862eef6a For #20098: Allow PB PiP video screenshots
...when `Allow screenshots in private browsing` is enabled
2021-08-12 06:49:55 +00:00
Rohan Maity c45703db07 For #20596 remove perf.startup probes 2021-08-11 22:31:52 +00:00
MickeyMoz 70a90a0291 Update Android Components version to 93.0.20210811143137. 2021-08-11 21:15:23 +00:00
Arturo Mejia 463728e007 For #20764 add screen for opting out of experiments 2021-08-11 16:14:13 -04:00
Arturo Mejia 71f1f6b88b Disable intermittent tests. 2021-08-11 19:05:06 +00:00
Arturo Mejia 823c89f4ff For #20672 crash when attempting to disconnect from Mozilla account 2021-08-11 17:39:33 +00:00
codrut.topliceanu 94cf03a1ca For #17917: Use View binding in history screens 2021-08-11 15:29:35 +00:00
MickeyMoz 3112c977fc Update Android Components version to 92.0.20210809190134. 2021-08-11 16:33:04 +02:00
codrut.topliceanu 6a1efacf3a For #17917: Use View binding in collections 2021-08-11 08:01:58 +00:00
Arturo Mejia 33d3aa3226 Set version to 93.0.0 2021-08-10 14:49:47 -04:00
Ben Hearsum 95a0b34d8f Backout mergify changes for bustage 2021-08-10 15:37:34 +02:00
Ben Hearsum 5f64f8e894 Add a default to task-priority to fix issues when forks are named differently 2021-08-10 12:36:12 +00:00
Vitaly V. Pinchuk 5093e7a5d6 Dismisses search dialog if active in (RecentTabsHeaderViewHolder, RecentBookmarksViewHolderTest) and adapts test for the changes. 2021-08-10 12:01:29 +00:00
Michael Comella cc380695b8 No issue: remove unnecessary robolectric annotations.
Theoretically, this should marginally decrease the duration of our unit
test suite. In my testing, for 1 iteration each (i.e. noise is very
possible), the duration changed from 9m 32s to 8m 21s – a 71s
improvement.

---

To identify tests that were running with robolectric that didn't need to
be, I removed the @RunWith(FenixRobo... from all relevant files:
    sed -i '' "/@RunWith(FenixRobolectric/d" app/src/test/**/*.kt

I ran the tests and discovered which ones failed from the Classes tab of
the index.html test result file. Something like:
    tests = document.querySelectorAll('table')[3].querySelectorAll('tr');
    failureElements = tests.querySelectorAll('.failures');
    // TODO: extract the test names

Then I copied these results to a text file and compared them to all the
files that had robolectric test runners to figure out which ones still
pass:
    comm -1 -2 failures.txt changed_files.txt > robolectric_not_needed.txt

And undid the changes to the failing files:
    for i in $(cat robolectric_not_needed.txt); do git checkout $i; done

Then I removed the import statements on those files:
    for i in $(cut changed_files.txt); do sed -i '' "/import.*RunWith/d" $i; done
    for i in $(cat changed_files.txt); do sed -i '' "/import.*RobolectricTestRunner/d" $i; done
2021-08-10 00:22:44 +00:00
MickeyMoz 474e9b035f Update Android Components version to 92.0.20210809143330. 2021-08-09 18:54:46 +00:00
Ben Hearsum (he/him) a769052ccb
Don't rebase GeckoView, Android-Components version bump or l10n bump PRs before landing (#20729) 2021-08-09 12:40:36 -04:00
Elise Richards 7fdad978a3
For FNXV2-17067: always show home in background behind search dialog (#20573)
* Navigate to home on toolbar click. Handle back press from search dialog

Update tests to show home behind search dialog. Remove unused test.

Jump back in show all button is clickable behind search dialog

Recently saved bookmarks show all button is clickable behind search dialog

* Add feature flag

* Past explorations show all button is clickable behind search dialog

Handle keyboard in controllers instead of viewholders. Update tests.

Allow collections to be visible behind search dialog

Dismiss keyboard and search dialog with navigateUp instead of just dismissing the keyboard

Verify navigateUp in tests

Adding ignore for flaky UI test

Only resize home behind search dialog

Add ignore for collection intermittent test

Cleanup
2021-08-09 15:40:41 +00:00
codrut.topliceanu 003a2ce81a For #17917: Use View binding in downloads screen 2021-08-09 11:06:28 +00:00
mcarare 55ccfda759 For #20425: Re-add tests for class BookmarksUseCaseTest. 2021-08-09 09:46:27 +00:00
AndiAJ 7a02db22c3 Start on home UI tests 2021-08-09 07:34:16 +00:00
Mozilla L10n Automation Bot 1c9af7c24a Import l10n. 2021-08-09 00:41:53 +00:00
MickeyMoz f6a6e68cfe Update Android Components version to 92.0.20210808143127. 2021-08-08 16:38:54 +00:00
MickeyMoz b8ec03e076 Update Android Components version to 92.0.20210808010301. 2021-08-08 02:22:09 +00:00
Mozilla L10n Automation Bot 642dd517f9 Import l10n. 2021-08-08 00:40:54 +00:00
MickeyMoz 19139de9e1 Update Android Components version to 92.0.20210807143113. 2021-08-07 16:39:52 +00:00
Jonathan Almeida 8c975c6646 Close #20726: Fix intermittent failure in AddonsManagementViewTest 2021-08-06 22:27:28 +00:00
Jonathan Almeida 5442798b38 Issue #20718: Show url if title is missing for inactive tabs 2021-08-06 22:00:38 +00:00
Elise Richards 70068ee39b Correct search_count telemetry after revert 2021-08-06 21:26:43 +00:00
Roger Yang 3becd30139 Closes #20723: Fix credit card management fragment binding 2021-08-06 20:59:38 +00:00
Michael Comella 4c6566a0d2 Closes #20697: replace mockked lambda in DownloadControllerTest.
This is expected to fix the intermittent failure in this test.
2021-08-06 20:32:16 +00:00
Michael Comella 3994747be9 Closes #20679: revert allowaccessmodification proguard disabling.
We disabled the allowaccessmodification proguard option because it broke
functionality or crashed the app (I can't rememeber). As far as we know,
the R8 bug was fixed in the R8 bundled with the Android Gradle Plugin
v4.1. We're now on AGP v7.0.0-rc1 so we should be able to revert this
now.

This commit reverts the following commits:

Revert "Proguard/r8: Do not allow access modification."
This reverts commit 98bf27fdd4.

Revert "Dump `proguard-android-optimize.txt` into local configuration for later modification"
This reverts commit 88fe3fbf82.
2021-08-06 20:07:32 +00:00
Jonathan Almeida 31081073e9 Issue #19956: Add telemetry for tab view setting changes
This differs from `tab_view_setting` which tells us what the user's tab
setting is at startup. It does not tell us if the user explicitly
changed it instead of just using the default (which was recently
changed in #19809).
2021-08-06 19:33:54 +00:00
Christian Sadilek 01555c2bea
Update Android Components version to 92.0.20210806164329 (#20722)
Addresses breaking change in ShortcutsSuggestionProvider
2021-08-06 14:19:56 -04:00
codrut.topliceanu f9d6380ab3 For #17917: Use View binding in bookmarks screen 2021-08-06 15:52:00 +00:00
Jonathan Almeida d6bc93981d Issue #20663: Make inactive card collapsible
We use make the inactive tabs section of the tabstray collapsible in
this change, with a technical quirk: we want to make the "isExpanded"
state of the tabs stay for the lifetime of the app and not the tabs
tray, but this functionality does not exist.

In this patch, we're storing the UI state in a singleton class that
exists for the lifetime of the app, but a more concrete solution is to
use an AppStore that holds content like this, which we can land in a
future patch.
2021-08-06 15:23:10 +00:00
Mugurell 0bc64e8ca8 For #17917 - Add a Kotlin synthetics Lint detector
This would help ease the current refactoring effort by ensuring no new
synthetics usages.
2021-08-06 14:09:15 +00:00
codrut.topliceanu 4b21f52db4 For #20310 - Adds Recently Closed button to tabsTray 2021-08-06 12:37:44 +00:00
Grisha Kruglov 37be7915d4 Bump a-c version 2021-08-05 17:30:00 -07:00
Grisha Kruglov ec98db4e54 External source support
Adds handling of information about external referrer (package, category)
when dealing with external intents.
2021-08-05 17:30:00 -07:00
Roger Yang 2ac5a38120 Revert "For #18711: Telemetry for credit card autofill (#19548)"
This reverts commit e0b410efdf.
2021-08-05 18:53:46 +00:00
Roger Yang 2ed4115a6c Revert "For #18711 - Refactor credit card telemetry under the Metrics ping (#19733)"
This reverts commit 172a118a51.
2021-08-05 18:53:46 +00:00
Mozilla L10n Automation Bot 691c751db8 Import l10n. 2021-08-05 16:53:04 +00:00
Mugurell 3a33f65bc0 For #20584 - Speculative fix for ToolbarViewTest failing in CI
There was an `java.lang.InstantiationError: kotlin.jvm.functions.Function1`
stemming from line 75. See if avoiding nullability helps.
2021-08-05 15:52:06 +00:00
Mugurell 27d3a3f0dd For #20584 - Use CombinedHistorySuggestionProvider for history suggestions
This should ensure user is always presented with history results for his
searches.
2021-08-05 15:52:06 +00:00
Mozilla L10n Automation Bot 356fd2e029 Import l10n. 2021-08-05 14:48:56 +00:00
Jonathan Almeida ca51ac6168 Issue #20664: Do not consider newly created tabs as inactive 2021-08-05 01:37:43 +00:00
Jonathan Almeida dcd7deffc4 Close #20674: Remove elevation from inactive tabs card 2021-08-05 01:37:43 +00:00
Sebastian Kaspari 145f1898f1 Enable Android Autofill in Beta builds. 2021-08-04 21:07:42 +00:00
MickeyMoz 351ed37edb Update Android Components version to 92.0.20210804145319. 2021-08-04 16:40:38 +00:00
mcarare 066f9d7f5d For #20601: Use View binding in quick settings. 2021-08-04 09:32:08 -04:00
Mozilla L10n Automation Bot fb7af3cdb6 Import l10n. 2021-08-04 01:09:21 +00:00
Arturo Mejia 0b43eb879e For #19970 [Crash] IllegalStateException when navigating to TP panel 2021-08-04 00:17:13 +00:00
Christian Sadilek 56d4e7a72d Fix intermittent test failures in ToolbarViewTest 2021-08-03 23:34:02 +00:00
Roger Yang c55c252f9a Closes #20650: Revert to manually close tab as default setting 2021-08-03 22:44:14 +00:00
Arturo Mejia 525e5e7c25 For #20601: Undo Use View binding in quick Settings. 2021-08-03 15:34:38 -04:00
Michael Comella 1963d502c7 Closes #20461: remove app_received_intent probe. 2021-08-03 18:19:12 +00:00
MickeyMoz 952d622b27 Update Android Components version to 92.0.20210803143316. 2021-08-03 16:33:51 +00:00
Sebastian Kaspari 1cc4ae9ab2 Fix UI tests: SettingsPrivacyTest, DeepLinkTest. 2021-08-03 11:43:25 +00:00
Sebastian Kaspari 7fed8b4ab5 Add preference for enabling/disabling Android Autofill from within the app. 2021-08-03 11:43:25 +00:00
Sebastian Kaspari 4774f8396b Add dialog-like theme for AutofillSearchActivity 2021-08-03 11:10:21 +00:00
MickeyMoz 77f19dd5e2 Update Android Components version to 92.0.20210801190121. 2021-08-03 10:09:46 +00:00
Michael Comella 9889f478ef Closes #20631: remove @Ignore on StorageStats tests.
The errors that caused this to be @Ignored were addressed by a recent PR
landing on master (i.e. the one that renewed the probes this test is
testing).
2021-08-03 08:53:44 +00:00
Sebastian Kaspari 8857a79ca8 Fix intermittent test failures in TabsTouchHelperTest 2021-08-03 01:10:38 +00:00
Mozilla L10n Automation Bot bc220ec85f Import l10n. 2021-08-03 00:36:57 +00:00
Sebastian Kaspari d0a63754c2 Fix intermittent test failures in DefaultBrowserToolbarControllerTest 2021-08-02 23:20:46 +00:00
Sebastian Kaspari ef3ef87ce2 Fix intermittent test failures in DefaultSessionControlControllerTest. 2021-08-02 22:54:05 +00:00
Michael Comella c6a4d0afed Closes #20627: replace mocked lambda in HistoryItemMenuTest.
This will prevent intermittent failures with Java 11.
2021-08-02 22:21:54 +00:00
Michael Comella 700033ee76 For #20518: disable metrics we don't want to renew. 2021-08-02 19:12:25 +00:00
Michael Comella 296dc9c116 For #20518: link to data renewal request. 2021-08-02 19:12:25 +00:00
Michael Comella bbd80b98ea For #20518: renew perf telemetry probes (August expiry).
I used eliserichards' PR https://github.com/mozilla-mobile/fenix/pull/20519 to
renew more easily.
2021-08-02 19:12:25 +00:00
Elise Richards 7fdade49ec
No issue: fix glean metrics tests for expired metrics (#20621)
* Remove references to preferences.open_links_in_private and preferences.private_search_suggestions in tests. These metrics have been expired and may be removed.

* Add ignores for performance metrics that have expired.

* Remove tabs_tray.cfr.dismiss and tabs_tray.cfr.go_to_settings telemetry probes.

* Remove metrics controller from signature and remove in tests
2021-08-02 18:14:17 +00:00
fevziomurtekin a80b7fa329 For issue: #16396 Fix text contrast ratio on "recently closed tabs" 2021-08-02 11:48:11 +02:00
Jonathan Almeida 69d630f46c Issue #20349: Add inactive tab grouping to tabs tray 2021-08-02 11:44:13 +02:00
Jonathan Almeida f8945b3720 Issue #20590: 'Jump back in' should obey feature flags 2021-08-02 10:46:38 +02:00
Christian Sadilek 6f3d21b48d Issue #20533: Fix intermittent test failures of DefaultCollectionCreationControllerTest 2021-08-02 10:45:17 +02:00
Rohan Maity 150a5a739e #7346 update lint-baseline.xml and remove activity_addons.xml as unused resource 2021-08-02 10:22:34 +02:00
MickeyMoz 8ebd3c2db7 Update Android Components version to 92.0.20210730143121. 2021-07-30 17:55:36 -04:00
Gabriel Luong 0f861236c1 Add history metadata feature to the settings menu 2021-07-30 19:31:03 +00:00
Christian Sadilek 1de7e22080 Issue #20533: Fix intermittent failures of DefaultSessionControlControllerTest 2021-07-30 16:56:44 +00:00
Gabriel Luong cbe79d78cc Add more context for the Past Exploration localization comment 2021-07-30 15:20:33 +00:00
Christian Sadilek 27a7396a42 Keep history metadata for 14 days 2021-07-30 14:50:33 +00:00
Sebastian Kaspari 51cec928b2 Fix intermittent test failures of ModeTest 2021-07-30 11:58:02 +00:00
Sebastian Kaspari b314135357 Rebuild toolchain when root build.gradle is updated. 2021-07-30 11:58:02 +00:00
Sebastian Kaspari 971b419d77 Run ktlintFormat to adapt to latest formatting rules. 2021-07-30 11:58:02 +00:00
Sebastian Kaspari 94f9c23721 Add ktlintFormat Gradle task. 2021-07-30 11:58:02 +00:00
Sebastian Kaspari 632cdbebb9 Update ktlint. 2021-07-30 11:58:02 +00:00
Sebastian Kaspari 24e9f64cff Add telemetry for Android Autofill feature. 2021-07-30 09:37:43 +00:00
Christian Sadilek 8fd409b721 Fix intermittent test failures of LoginExceptionFragmentStoreTest 2021-07-30 09:12:00 +00:00
Christian Sadilek 0cd08dc9b1 Issue #20533: Fix intermittent test failures of ExceptionsListItemViewHolderTest 2021-07-30 09:12:00 +00:00
Christian Sadilek 9d92e61ff4 Issue #20533: Fix intermittent test failures in SearchDialogControllerTest 2021-07-30 09:12:00 +00:00
Christian Sadilek 58e8cdfedb Issue #20533: Fix intermittent failures of DefaultTabsTrayControllerTest 2021-07-30 09:12:00 +00:00
mcarare cca7892e91 For #17917: Use View binding in settings screens. 2021-07-30 08:20:58 +00:00
Mozilla L10n Automation Bot 84d9f272af Import l10n. 2021-07-30 00:28:28 +00:00
Elise Richards a901341259
For #20516: Renew product telemetry probes expiring in August (#20517)
* Renew product telemetry probes expiring in august 2021

* Add placeholder for data reviews

* Allow unneeded metrics to expire in August. To be re-evaluated later.

* Add link to data review

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-07-29 19:14:31 +00:00
MickeyMoz 4d5e3f0e50 Update Android Components version to 92.0.20210729143123. 2021-07-29 18:13:17 +00:00
mcarare 26e41be02e For #19955 #20393: Add telemetry for home screen recent tabs. 2021-07-29 15:46:02 +00:00
Christian Sadilek fbd9221c0c Fix intermittent test failures in WebPushEngineIntegrationTest 2021-07-29 14:46:17 +00:00
Christian Sadilek b3f5c87585 Fix intermittent test failures in FenixSnackbarKtTest 2021-07-29 14:46:17 +00:00
mcarare 8b13e382fd For #17917: Use View binding in lists. 2021-07-29 14:10:36 +00:00
MickeyMoz aa0781306c Update Android Components version to 92.0.20210728190116. 2021-07-29 11:20:48 +00:00
Sebastian Kaspari 00b3994611 Use stable version of Jetpack Compose and related tooling/dependencies. 2021-07-29 10:26:05 +00:00
Christian Sadilek 30c890c457 Issue #20531: Fix intermittent test failures in DefaultQuickSettingsControllerTest 2021-07-29 08:07:49 +00:00
Jonathan Almeida e81c20bc26 Close #19785: Let WebAuthnFeature ride the trains 2021-07-29 06:52:07 +00:00
Arturo Mejia 7e5644036b Put the Start On home setting behind a feature flag. 2021-07-28 16:53:03 -04:00
Christian Sadilek 2dde8c2388 Fix intermittent test failures in NavigationInteractorTest 2021-07-28 17:52:53 +00:00
Christian Sadilek 458e8b3cd7 Fix intermittent test failures in PagedHistoryProviderTest 2021-07-28 17:52:53 +00:00
Christian Sadilek b3895e5fde Fix intermittent test failures in TrackingProtectionExceptionsInteractorTest 2021-07-28 17:52:53 +00:00
Christian Sadilek d0c75740b7 Fix intermittent test failures in BookmarkControllerTest 2021-07-28 17:52:53 +00:00
Christian Sadilek f03f7c6071 Closes #20533: Fix intermittent failures of HistoryControllerTest 2021-07-28 17:52:53 +00:00
Sebastian Kaspari 41f21fc0f8 RemoveTabUseCaseWrapperTest: Do not mock lambdas. 2021-07-28 17:52:53 +00:00
Sebastian Kaspari 7859d4d681 DefaultRecentlyClosedControllerTest: Do not mock functions 2021-07-28 17:52:53 +00:00
Sebastian Kaspari 9ffd53ee04 Do not mock lambdas in TrackingProtectionPanelInteractorTest. 2021-07-28 17:52:53 +00:00
Christian Sadilek 2f27797530 Closes #20531: Fix intermittent failures of DefaultBrowserToolbarMenuControllerTest 2021-07-28 17:52:53 +00:00
Michael Comella f7b85a6e95 Closes #20540: always swipe twice to openSettings in ThreeDotMenuMainRobot. 2021-07-28 15:29:03 +00:00
Mozilla L10n Automation Bot a07775f187 Import l10n. 2021-07-28 14:26:32 +00:00
Stefan Arentz 6a3adb5aeb
Fixes #11427 - Rename master branch to main (#20457)
* Fixes #11427 - Rename master branch to main (Automation/TC)

* Fixes #11427 - Rename master branch to main (GitHub Workflows)

* Fixes #11427 - Rename master branch to main (GitHub Workflows)

* Fixes #11427 - Rename master branch to main (GitHub Issue Templates)

* Fixes #11427 - Rename master branch to main (Jenkins)

* Fixes #11427 - Rename master branch to main (README & Documentation)

* Fixes #11427 - Rename master branch to main (Jenkins)

* Fixes #11427 - Rename master branch to main (Random)
2021-07-28 08:20:14 -04:00
Michael Comella 173786d6b6 Closes #16855: disable jetifier. 2021-07-28 09:55:55 +00:00
codrut.topliceanu e2af42a497 For #20440 - Forces TopSitePager bind if no. of pages changed 2021-07-27 16:19:31 +00:00
Sebastian Kaspari 1cd04cd05e Render debug info screen with Jetpack Compose. 2021-07-27 09:54:24 +00:00
Christian Sadilek 84fdf62240 Fix init order in TrackingProtectionExceptionsViewTest 2021-07-27 10:08:32 +02:00
Christian Sadilek 00d0ed53e0 Fix race condition in ShareViewModelTest 2021-07-27 10:08:32 +02:00
Christian Sadilek 9320700fd7 Remove unused imports in PwaOnboardingObserverTest.kt 2021-07-27 10:08:32 +02:00
Christian Sadilek 4d8d1b4ea2 Use MainCoroutineRule in PwaOnboardingObserverTest 2021-07-27 10:08:32 +02:00
Sebastian Kaspari 7840aac3ba Update Robolectric and mockk. 2021-07-27 10:08:32 +02:00
Sebastian Kaspari e3740b1e24 GitHub workflow (run-ui): Use Java 11. 2021-07-27 10:08:32 +02:00
Sebastian Kaspari 781813ab50 Remove over-eager protobuf stripping. 2021-07-27 10:08:32 +02:00
Sebastian Kaspari 287dfaf92d Allow insecure protocol usage when using local Nexus in CI. 2021-07-27 10:08:32 +02:00
Sebastian Kaspari 08afc2ed5a Update to Gradle 7 and Android plugin 7. 2021-07-27 10:08:32 +02:00
Sebastian Kaspari 21c023d001 Use new lint API. 2021-07-27 10:08:32 +02:00
Sebastian Kaspari fc7ac5b475 gradle.properties: Remove R8 properties to use default config. 2021-07-27 10:08:32 +02:00
Sebastian Kaspari 8d8b6e6d36 Issue #19662: Use Java 11. 2021-07-27 10:08:32 +02:00
Oana Horvath f37abbe4ae For #20297: close tab to avoid saving the same tab to collection 2021-07-27 07:12:37 +00:00
Mozilla L10n Automation Bot 95f0c48dbf Import l10n. 2021-07-27 00:30:24 +00:00
Michael Comella e0c1c51b6a For perf-frontend-issues#211: support focus in measure_start_up.py. 2021-07-26 23:54:39 +00:00
Michael Comella 72159260a2 For perf-frontend-issues#211: dynamically resolve activity in measure_start_up. 2021-07-26 23:54:39 +00:00
Michael Comella d5263138c3 For perf-frontend-issues#211: add pycodestyle to pre-push hook. 2021-07-26 23:54:39 +00:00
Michael Comella ba86dff942 For perf-frontend-issues#211: add pycodestyle config to tools, fix existing errors. 2021-07-26 23:54:39 +00:00
codrut.topliceanu 302ad8ae85 For #20449 - Fixes `Show most visited sites` crash on disable 2021-07-26 21:23:56 +00:00
Florin Strugariu 9d17643045 Bug 1721329 - Fix perma fail on browsertime tests.
Replace  bbc with dailymail and jianshu with sina
2021-07-26 19:39:18 +00:00
MickeyMoz 3c243b4fbe Update Android Components version to 92.0.20210726143050. 2021-07-26 16:37:57 +00:00
mcarare a5a4a7f6d9 For #20425: Update AC version 2021-07-26 13:59:46 +00:00
mcarare c094e1a457 For #20425: Do not show recent bookmarks older than 10 days. 2021-07-26 13:59:46 +00:00
Mozilla L10n Automation Bot e60de9df5b Import l10n. 2021-07-26 00:30:01 +00:00
Mozilla L10n Automation Bot 4f7424ce4b Import l10n. 2021-07-25 00:35:01 +00:00
Mozilla L10n Automation Bot 67c9d74432 Import l10n. 2021-07-24 00:37:36 +00:00
Mugurell 52e152300d For #20420 - Re-enable shortcutButtonTest
The issue affecting this was resolved in AC.
2021-07-23 10:47:33 +00:00
Mugurell 2c8c6d29ea For #20402 - Re-enable "in progress media tab"
The crash for when media starts playing in a custom tab is now resolved in AC.
2021-07-22 22:28:54 +00:00
Gabriel Luong 973070ab50 For #20259 - Add HistoryMetadataSuggestionProvider in AwesomeBar 2021-07-22 22:28:54 +00:00
Gabriel Luong 9b22b2baa4 For #20438 - Display a list of history metadata groups 2021-07-22 19:19:50 +00:00
MickeyMoz 3f975952e2 Update Android Components version to 92.0.20210721180104. 2021-07-22 17:38:59 +00:00
Mozilla L10n Automation Bot ac0f3cc3ad Import l10n. 2021-07-22 16:24:18 +00:00
Michael Comella 30a6e29b25 For #19901: correct spacing in comment on how to run
Co-authored-by: Jonathan Almeida <git@jonalmeida.com>
2021-07-22 15:24:35 +00:00
Michael Comella 343ff924d7 For #19901: add benchmark.gradle to CODEOWNERS. 2021-07-22 15:24:35 +00:00
Michael Comella 6d609bc651 For #19901: integrate Jetback Benchmark (microbenchmark). 2021-07-22 15:24:35 +00:00
Christian Sadilek 589f166b29 Issue #16330: Remove remaining usages of Sentry.capture 2021-07-21 20:07:30 +00:00
Aaron Train a516bb6681
No issue: Update Flank to v21.07.1 (#20456)
* Update Flank to v21.07.1
* Update approach to downloading Flank
* Update parse-ui-test.py
2021-07-21 14:10:14 -04:00
MickeyMoz 8ba91b9c61 Update Android Components version to 92.0.20210720190111. 2021-07-21 16:33:47 +00:00
Mozilla L10n Automation Bot 43aff29816 Import l10n. 2021-07-21 14:36:56 +00:00
codrut.topliceanu 2040af6a5d For #20367 - Fixes removeAllTabs adding to recently closed
`removeAllTabs` will now no longer allow `UndoMiddleware` from recovering the tabs.
2021-07-20 22:00:04 +00:00
Arturo Mejia d6ad8ba413 Update Android Components version to 92.0.20210720182827. 2021-07-20 22:00:04 +00:00
Arturo Mejia 87f73c0109 Fix search_add_custom_engine_search_string_example lint warning. 2021-07-20 22:00:04 +00:00
jhugman 097fa68964
Allow branch enrollment and unenrollment in Nimbus secret menu (#20050)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-07-20 15:45:37 +00:00
codrut.topliceanu bc723e0a9b For #15499 - Smoothly updates topSites list on remove
To remove the flash on refresh of the topsites list we have to use submitList, however using this too high up in the hierarchy of our listAdapters within listAdapters will cause children to refresh at once. The solution to this is to use submitList lower. Using it in TopSitesPagerAdapter.kt to update the TopSitesAdapter is the way to go. I've also had to use a dummy item for the "removed" Topsite ( with id = -1) so I can manually diff that before using submitList.
2021-07-20 15:07:16 +00:00
Mozilla L10n Automation Bot 55fc014071 Import l10n. 2021-07-20 00:40:11 +00:00
MickeyMoz adbf1f4cf5 Update Android Components version to 92.0.20210719094322. 2021-07-19 11:23:36 +00:00
Mugurell 094413578c For #20420 - Temporarily disable SearchTest#shortcutButtonTest 2021-07-19 10:12:41 +00:00
Sebastian Kaspari 140274c192 Update to Kotlin 1.5.20, Android Gradle plugin 4.2.2 and Gradle 6.7.1. 2021-07-19 09:20:50 +00:00
Sebastian Kaspari 8b5aef7def Update Kotlin to 1.5.10 (and Coroutines to 1.5.0). 2021-07-19 09:20:50 +00:00
Jonathan Almeida 41ba94b951 Issue #20402: Disable LastMediaAccessMiddleware temporarily
The reducer in this middleware assumes the SessionState is always a
TabSessionState which holds the lastMediaAccess. This is true for the
lastAccess long which is a persistent state.

The list of MediaSessionActions however can also come from Custom Tabs
which relies on a CustomTabSessionState.

For now, the temporary fix is to disable this feature by removing the
middleware and no longer adding the last accessed media to the
recent tabs list ("Jump back in") to avoid crashing users while we think
of a real fix.
2021-07-17 01:21:13 +00:00
Mozilla L10n Automation Bot 9ef8515528 Import l10n. 2021-07-17 00:27:34 +00:00
Mozilla L10n Automation Bot fb15f1774c Import l10n. 2021-07-16 00:34:42 +00:00
Roger Yang c4347a9492 Closes #19847: Add telemetry for the default browser notification 2021-07-15 19:35:45 +00:00
Oana Horvath 81849ec6d0 No issue: adds warning comment to beta & release running tests 2021-07-15 19:03:13 +00:00
MickeyMoz 1bf89b6b01 Update Android Components version to 92.0.20210715150233. 2021-07-15 19:50:21 +02:00
Roger Yang 049811fabb Issue #20307: Clear sharedViewModel selectedFolder when backing out of bookmark fragment 2021-07-15 15:28:29 +00:00
Roger Yang 80721e2d73 Issue #19989: Add rounded corners to recently tabs' icon 2021-07-15 14:20:11 +00:00
Mugurell 1251894933 For #19933 - Show a media tab item on homescreen for the last tab with media 2021-07-15 10:05:20 +03:00
Roger Yang 68b56ff240 Issue #19846: Make sure default browser notification only happens once 2021-07-15 02:17:24 +00:00
Mozilla L10n Automation Bot 317cbe9c7b Import l10n. 2021-07-15 00:29:47 +00:00
MickeyMoz f9aae4b4e5 Update Android Components version to 92.0.20210714143306. 2021-07-14 16:28:42 +00:00
Mugurell f95567912f For #20229 - Use the AC common implementation for ads/search telemetry
Everything should work exactly as before.
2021-07-14 17:55:24 +03:00
mcarare b2a5723bad For #20292: Use tint for home button icon. 2021-07-14 07:48:13 +00:00
mcarare b25f807eea For #17808: Remove deprecated systemUiVisibility and flags. 2021-07-14 07:19:25 +00:00
Mozilla L10n Automation Bot 9b3f312301 Import l10n. 2021-07-14 00:59:46 +00:00
Jonathan Almeida 9552ae0ab7 Update version.txt to 92.0.0-beta.1 2021-07-14 00:31:09 +00:00
Jonathan Almeida 833e8fb32b Remove outdated README sections 2021-07-13 19:12:26 +00:00
MickeyMoz 17d9034013 Update Android Components version to 91.0.20210712190108. 2021-07-13 16:25:00 +00:00
Oana Horvath df960c4187 For #10915: fix tests by removing existing session 2021-07-13 08:18:50 +00:00
Rohan Maity f8599860dd For #1268 Add Unit test for PrivateShortcutCreateManager 2021-07-13 10:48:52 +03:00
Mozilla L10n Automation Bot 7975309952 Import l10n. 2021-07-13 00:39:50 +00:00
Mozilla L10n Automation Bot 41a6234765 Import l10n. 2021-07-12 23:27:16 +00:00
Jonathan Almeida 4b4c86551d Close #20320: Use scope from testDispatcher in RecentBookmarksFeatureTest 2021-07-12 23:05:03 +00:00
Jonathan Almeida b877430bad Close #20267: Filter out network errors from Nimbus 2021-07-12 22:42:05 +00:00
Marc Leclair 298ec5cce1 For #19804: Restore logic to original behavior 2021-07-12 22:20:03 +00:00
Marc Leclair 871cde764e For #19804: checkDefaultBrowser moved to helper function 2021-07-12 22:20:03 +00:00
Marc Leclair db01fab8a9 For 19804:Fixed call order in the 2021-07-12 22:20:03 +00:00
Marc Leclair b8bbdb45bc For #19804: Changed `var isDefaultBrowser` to a function
The change to the function makes it so when the Settings.kt class is initialized, the isDefaultBrowser, which calls the
BrowserCache, won't get called right away. `isDefaultBrowser()` is known to take quite a while on start up on the G5+ (approx
30-40ms).
2021-07-12 22:20:03 +00:00
Michael Comella 79fcbcba83 Closes #20127: fix app_received_intent extras.
Apparently, it had been using the wrong mapping this whole time. I can't
wrap my head around fenix's glean wrapper so I'm not sure if this
resulted in bugs or if my change changes the behavior. However, I don't
think anyone is using this probe so I'm requesting to remove it. If we
don't end up removing it, then we can check for bugs/changes in
behavior. This isn't ideal but I'd rather not spend the time on it if we
don't have to.
2021-07-12 21:53:54 +00:00
Michael Comella 7f4ac14f66 For #20127: remove app_opened_all_startup from metrics.yaml. 2021-07-12 21:53:54 +00:00
Michael Comella be64ee4159 For #20127: remove app_opened_all_startup integration. 2021-07-12 21:53:54 +00:00
MickeyMoz 2c1d0ea185 Update Android Components version to 91.0.20210712143111. 2021-07-12 16:37:59 -04:00
MickeyMoz bbea03e27c Update Android Components version to 91.0.20210710190117. 2021-07-11 16:34:39 +00:00
Mozilla L10n Automation Bot 273d7ce947 Import l10n. 2021-07-11 00:30:23 +00:00
Mozilla L10n Automation Bot 64038252e6 Import l10n. 2021-07-10 00:33:37 +00:00
Jonathan Almeida 76f24a7e13 Use bug report template with data validation
Github supports a more useful templating system that can provide
hints, descriptions, and simple data validation.

We can try to use this to increase the quality of our bug reports.
2021-07-09 23:07:25 +00:00
Roger Yang 142730faaa Closes #20285: Remove unused GeckoProvider 2021-07-09 22:40:26 +00:00
MickeyMoz 67862c2849 Update Android Components version to 91.0.20210709143119. 2021-07-09 21:34:14 +00:00
Elise Richards 9bfe9b0787
For FNX-22339: Recently saved bookmarks (#19835)
* Title and button for home screen recently saved bookmarks section

Create bookmark item view with favicon and title

* View holders and interactors for recently saved bookmarks

Recent bookmark item view holder binding

Create adapter for recent bookmarks. Implement controller methods. Implement view holder bindings for items

Top level adapter for recent bookmarks section

Retrieve list of recent bookmarks on home

View holders and interactors for recently saved bookmarks

Recent bookmark item view holder binding

Create adapter for recent bookmarks. Implement controller methods. Implement view holder bindings for items

Top level adapter for recent bookmarks section

Retrieve list of recent bookmarks on home

Update list on app start and when bookmarks are added

View holders and interactors for recently saved bookmarks

Recent bookmark item view holder binding

Create adapter for recent bookmarks. Implement controller methods. Implement view holder bindings for items

Top level adapter for recent bookmarks section

Retrieve list of recent bookmarks on home

Update list on app start and when bookmarks are added

Make a use case for retrieving and updating the list of recently saved bookmarks

Add adapter items and define header viewholder binding

Use session interactor for header button clicks. Bind in the adapter

* Retrieve list of bookmarks asynchronously on home

Interactor and controller tests

Address review comments

Split up tests for recent bookmarks

Update to new interactors

Dark mode and light mode styles

Refactor bookmarks home stuff

* Add RecentBookmarksFeature to home

Move interactor to SessionControlInteractor

Clean up lint, styles, and dimens.

* Bookmarks use case tests for retrieving recently saved bookmarks. Linting.

* View holder tests

* Match ux to designs for colors, margins, and scrolling

* Clean up clean up

* Tests for the view bound feature

* Controller test

* Clean up: check state of store in feature tests; ellipsize textviews for bookmark item; remove unused attr; format

Co-authored-by: Jonathan Almeida <jalmeida@mozilla.com>
2021-07-09 19:36:20 +00:00
Mozilla L10n Automation Bot ff9aa36885 Import l10n. 2021-07-09 00:35:12 +00:00
Roger Yang d4af9401d1 Closes #19846: Update default browser notification strings 2021-07-08 22:04:13 +00:00
Roger Yang 6d1a44e259 Closes #19846: Only add default browser notification work if work is not pending 2021-07-08 18:36:14 +00:00
Roger Yang 0133f42a15 Closes #19846: Show Default Browser Notification if browser is not default 2021-07-08 17:52:08 +00:00
MickeyMoz 4053a60212 Update Android Components version to 91.0.20210708143124. 2021-07-08 16:35:41 +00:00
codrut.topliceanu 3ae6472e16 For #20257 - Sets min no. of grid columns to 2 in TabsTray 2021-07-08 14:54:43 +00:00
codrut.topliceanu 083d50aafd For #20250 - Adds FLAG_SECURE to TabsTray dialog 2021-07-08 08:49:06 +00:00
codrut.topliceanu d530f5b773 For #17855 - Stops SecureWindowFeature from removing FLAG_SECURE 2021-07-08 08:02:35 +00:00
Mozilla L10n Automation Bot 5e7b422433 Import l10n. 2021-07-08 00:38:02 +00:00
Gabriel Luong e1a28eaa7f Update docs/experiments.md 2021-07-07 22:59:37 +00:00
amedyne 5a54a093bb Update experiments.md
Provide updated links for experiments.
2021-07-07 22:59:37 +00:00
amedyne efe11bf595 Update to refer to latest instructions
Providing link to the new experiments instructions.
2021-07-07 22:59:37 +00:00
MickeyMoz e1cdb83e94 Update Android Components version to 91.0.20210707175247. 2021-07-07 19:16:25 +00:00
MickeyMoz a44bea1482 Update Android Components version to 91.0.20210707143115. 2021-07-07 16:36:43 +00:00
Grisha Kruglov 946fda55aa Closes #20276: Fall-back to URL parsing for tabs with parents to obtain search terms 2021-07-07 15:01:26 +00:00
Oana Horvath ea3e4c9956 No issue: New UI smoke test for the Language menu 2021-07-07 12:18:16 +00:00
mcarare b43db5f2b6 For #20029: Remove animations when recreating activity on locale change. 2021-07-07 10:12:51 +00:00
codrut.topliceanu 9693507ffb For #19131 - Adds kdoc to TopSitePagerPayload 2021-07-07 07:22:45 +00:00
codrut.topliceanu a7f3d34538 For #19131 - Fixes top sites refresh and interactability 2021-07-07 07:22:45 +00:00
Mozilla L10n Automation Bot 4a0cd8a25a Import l10n. 2021-07-07 00:36:50 +00:00
Roger Yang 702e3e6886 Closes #20274: Limit about:config to Nightly and Beta 2021-07-06 23:32:16 +00:00
Roger Yang e69f3dfbbb Closes #19090: Show snackbar on adding to bookmarks from tabs tray 2021-07-06 22:13:38 +00:00
Ben Hearsum df563819c5 Don't send notification for android-test-mozillaonline tasks 2021-07-06 21:00:20 +00:00
MickeyMoz 94a639b9d8 Update Android Components version to 91.0.20210705190256. 2021-07-06 17:58:39 +00:00
mcarare 36b50ea8d9 For #17917: Use View binding in onboarding cards. 2021-07-06 16:29:09 +00:00
Aaron Train 29111a4cf2
No issue: Remove workaround; update runner in build-contributor-pr.yml (#20172) 2021-07-05 19:38:05 -04:00
Christian Sadilek 7c57898c76 Closes #20123: PlacesException when recording history metadata 2021-07-05 17:12:54 -04:00
Jonathan Almeida 4bab66bb21 Move Nimbus strings to static_strings
Goes with 6bb89f346e01edd431056bfcd7472bc3082a39a5
2021-07-05 19:30:58 +00:00
MickeyMoz 05f4006f57 Update Android Components version to 91.0.20210704190120. 2021-07-05 16:29:54 +00:00
mcarare 0c720ba500 For #20219: Fix constraints in sign-in onboarding card. 2021-07-05 08:38:30 +00:00
mcarare a7a45df8fb For #20154: Override AC fill colors for icons. 2021-07-05 08:15:34 +00:00
Mozilla L10n Automation Bot 0a5be636f9 Import l10n. 2021-07-05 00:31:23 +00:00
MickeyMoz c9dba23325 Update Android Components version to 91.0.20210704143049. 2021-07-04 16:32:38 +00:00
Mozilla L10n Automation Bot 0e43a42c1e Import l10n. 2021-07-04 00:32:48 +00:00
MickeyMoz d9972ec52b Update Android Components version to 91.0.20210703143052. 2021-07-03 16:27:15 +00:00
MickeyMoz f747123651 Update Android Components version to 91.0.20210702143051. 2021-07-02 16:41:34 +00:00
Mozilla L10n Automation Bot 4bdd54d065 Import l10n. 2021-07-02 00:29:59 +00:00
MickeyMoz ccaf299d75 Update Android Components version to 91.0.20210701143050. 2021-07-01 16:33:09 +00:00
codrut.topliceanu ce0773fcdc For #19558 - Adds proper tint to "Report Site Issue" 2021-07-01 14:40:03 +00:00
Oana Horvath d20bebc2a3 For #20000: Re-try swipe on collection items 2021-07-01 11:45:22 +00:00
Mozilla L10n Automation Bot 852034d77a Import l10n. 2021-07-01 00:35:28 +00:00
MickeyMoz 5f19a79c2f Update Android Components version to 91.0.20210630143114. 2021-06-30 17:28:37 +00:00
Codrut Topliceanu af1c00a645
For #20195 - Adds tabsTray allowScreenshotsInPrivateMode check (#20203)
* For #20195 - Adds tabsTray allowScreenshotsInPrivateMode check
2021-06-30 18:37:16 +03:00
mcarare 4101974415 For #20190: Mirror back button in RTL. 2021-06-30 15:35:11 +03:00
mcarare 023e1b4b30 For #20154: Override AC fill colors for icons. 2021-06-30 15:04:08 +03:00
MickeyMoz ad293d13f3 Update Android Components version to 91.0.20210629143047. 2021-06-29 16:42:06 +00:00
Mozilla L10n Automation Bot cb5468cfe4 Import l10n. 2021-06-29 00:32:15 +00:00
MickeyMoz a4ff652340 Update Android Components version to 91.0.20210628143102. 2021-06-28 16:28:45 +00:00
Mozilla L10n Automation Bot 384e8f84df Import l10n. 2021-06-28 00:30:01 +00:00
MickeyMoz b8c690f11a Update Android Components version to 91.0.20210627143046. 2021-06-27 16:34:38 +00:00
Mozilla L10n Automation Bot 736789bd2a Import l10n. 2021-06-27 00:34:31 +00:00
MickeyMoz abaf49e281 Update Android Components version to 91.0.20210626143102. 2021-06-26 16:39:18 +00:00
Mozilla L10n Automation Bot daa1767317 Import l10n. 2021-06-26 00:30:31 +00:00
MickeyMoz fcf82b6b7c Update Android Components version to 91.0.20210625143048. 2021-06-25 16:35:49 +00:00
Mozilla L10n Automation Bot 5921c631f2 Import l10n. 2021-06-25 13:01:07 +00:00
Oana Horvath c830ed9986 For #20123: Disable historyMetadataFeature flag 2021-06-25 10:11:03 +00:00
MickeyMoz 94623e41b4 Update Android Components version to 91.0.20210624143054. 2021-06-24 22:02:48 +00:00
Aki Sasaki 4f25184054
possibly fix if statement in sync-strings (#20163) 2021-06-24 09:26:14 -07:00
Aaron Train dd218c3fa1
No issue: Apply workaround for run-ui in contributor workflow (#20161) 2021-06-24 11:52:18 -04:00
Mozilla L10n Automation Bot 2c99bb8031 Import l10n. 2021-06-24 00:37:38 +00:00
Travis Long a2984e6863 [SDK-279] Adds a way to switch to the "preview" collection in Nimbus
This adds a toggle/switch to the debug settings menu that causes Nimbus to use the "preview" collection rather than the "main" collection when it initializes.  Since it is only applied during init, it does require a restart in order to take effect.
2021-06-23 22:20:31 +00:00
Mickey Moz 9d9761e267
Update Android Components version to 91.0.20210623143047. (#20139)
Co-authored-by: Ryan VanderMeulen <ryanvm@gmail.com>
2021-06-23 14:36:46 -04:00
Gabriel Luong 7aea29d57b For #19951 - Use Proton icon for new home button 2021-06-23 17:34:31 +00:00
Aki Sasaki d24e3b9410
use prod signers for {beta,release}-mozillaonline (#20134) 2021-06-23 09:39:36 -07:00
Arturo Mejia 29f5567869 For #19922 Fix the default autoplay setting to be block audio only 2021-06-23 09:02:04 -04:00
Mozilla L10n Automation Bot f24072c915 Import l10n. 2021-06-23 00:28:26 +00:00
Mugurell 5d62fe11a6 For #20046 - Show the last accessed tab in Jump back in 2021-06-22 22:03:33 +00:00
MickeyMoz a0c8047c9d Update Android Components version to 91.0.20210622143139. 2021-06-22 16:36:53 +00:00
jhugman 8b32f7dcda
Add error reporting via sentry to Nimbus caught exceptions (#20049) 2021-06-22 13:27:32 +00:00
cschanaj f78d95d5a7 For #19221, Use ISO-8601 format build date in About Firefox 2021-06-22 10:44:16 +02:00
Roger Yang cabd004390 Closes #19182: Close Tabs Tray when sharing completes 2021-06-22 02:53:02 +00:00
Roger Yang 74c1cc82fb Closes #19921: Update appcompat and fragment dependencies to 1.3.x 2021-06-22 01:39:52 +00:00
Mozilla L10n Automation Bot 7dbfca2d2e Import l10n. 2021-06-22 00:29:33 +00:00
Arturo Mejia 1d76bc7ca2 For #19922 Update the default autoplay setting to be block audio only 2021-06-21 16:46:54 -04:00
Jonathan Almeida 15df06b294 Issue #20054: Update recent tab on title or icon changes 2021-06-21 18:27:33 +00:00
Arturo Mejia 10adf31e85 Update Android Components version to 91.0.20210621121625. 2021-06-21 17:21:16 +00:00
Arturo Mejia 251bfc7fe9 Improvements to site permissions 2021-06-21 17:21:16 +00:00
codrut.topliceanu 37e2c6ceeb For #19739 - Adds start tabsTray with multiSelect support 2021-06-21 16:17:09 +00:00
codrut.topliceanu 2c538dbb5d For #16330 - Replaces Sentry.capture with submitCaughtException 2021-06-21 09:05:33 +00:00
Sebastian Kaspari 8a33d56dfa Mergify: Add rules for landing PRs 2021-06-21 10:40:19 +02:00
Mozilla L10n Automation Bot 841265e39d Import l10n. 2021-06-21 00:59:30 +00:00
MickeyMoz 2d8580ed3b Update Android Components version to 91.0.20210620143110. 2021-06-20 16:39:14 +00:00
Mozilla L10n Automation Bot cf0fab08f5 Import l10n. 2021-06-20 00:29:50 +00:00
MickeyMoz 2f6c1e4dca Update Android Components version to 91.0.20210619143112. 2021-06-19 16:32:35 +00:00
Mozilla L10n Automation Bot 79229ebdbd Import l10n. 2021-06-19 00:31:15 +00:00
Mugurell b3a6dcccd7 For #19797 - Remove FenixAccountManager#authenticatedAccount
This api had a bug stemming from the property name - authenticatedAccount which
may return even an unauthenticated account.
After the recent refactorings it was left unused so best to remove it to
prevent from future misuses.
2021-06-18 17:09:25 +03:00
Mugurell ce64c2439d For #19797 - Use the FXA email only if the account is authenticated
An account may exist but it may need to be re-authenticated.
In this case also the email should not be exposed to the app.
2021-06-18 17:09:25 +03:00
Mugurell 19af5e9b15 For #19797 - Remove FenixAccountManager#signedInToFxa
After the changes from this patch this api is not used anymore so to prevent
future misuses of it this is removed in favor of the new "accountState".
2021-06-18 17:09:25 +03:00
Mugurell 1fc3bb84ca For #19797 - Home menu: go to problems page if account exists but not signed in 2021-06-18 17:09:25 +03:00
Mugurell 3d071dd049 For #19797 - Browser menu: go to problems page if account exists but not signed in 2021-06-18 17:09:25 +03:00
Mugurell d663383cf7 For #19797 - New FenixAccountManager#getAccountState()
This new method allows a single source of truth for getting the up-to-date
account status without clients interesting in this needing to know what to
check for.
2021-06-18 17:09:25 +03:00
Elise Richards 80de7fd7ba
Define the width/height for homescreen empty collections button (#20082) 2021-06-17 17:57:21 -05:00
Grisha Kruglov 2198298df5 Obtain searchTerms from previous page in tab's history
Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
2021-06-17 18:02:36 -04:00
Elise Richards 1a8ae21250
Define the width/height for sync sign in button on tabs tray (#20080) 2021-06-17 16:49:03 -05:00
bharat0to 6de3062738
For #18581 ETP Standard option is truncated (#18586) 2021-06-17 16:42:08 -05:00
Michael Comella 3905859fcb No issue: increase sleep duration in cold_view_nav_start benchmark. 2021-06-17 14:03:38 -07:00
Elise Richards 79af077b2f
Update glean notification emails to new email group (#20070) 2021-06-17 14:48:34 -05:00
Michael Comella 1b996e3b4b For #20017: add cold_main_session_restore test type to measure. 2021-06-17 12:24:03 -07:00
Michael Comella f7c59bd395 For #20017: use 'in' syntax for test name checks. 2021-06-17 12:24:03 -07:00
MickeyMoz a436be4cd0 Update Android Components version to 91.0.20210617143333. 2021-06-17 19:10:45 +00:00
Arturo Mejia c2439914fa For #19881 add telemetry for start on Home. 2021-06-17 13:09:28 -04:00
Jonathan Almeida aee14d8c19 Close #19950: Fix intermittent failure in SearchDialogControllerTest 2021-06-17 11:37:05 -04:00
Mihai Adrian Carare 9c9e26953f
For #19813: Invalidate tab tray adapter structure on screen rotation. (#20044) 2021-06-17 13:57:50 +03:00
Jonathan Almeida 854da1ac9d Issue #20053: Disabling collection smoke tests temporarily
The changes from #19090 did not fix the issue consistently, and are
causing failures intermittently on-unrelated PRs.

Disabling these tests again until we have another fix for #19090.
2021-06-17 10:25:08 +03:00
Christian Sadilek b123b50df7 HistoryMetadataMiddleware: Use state ext. functions from A-C 2021-06-16 19:22:56 -07:00
Mozilla L10n Automation Bot 03b797efb7 Import l10n. 2021-06-17 00:28:28 +00:00
mcarare df2efcf310 For #20024: Visit FAB after synced tabs in a11y traversal.
This helps focus on FAB without going through whole tab lists.
2021-06-16 19:01:24 -04:00
MickeyMoz 83a7ddcb3f Update Android Components version to 91.0.20210616143051. 2021-06-16 17:54:16 -04:00
Jonathan Almeida 5be35df969 Revert "For #19739 - Adds start tabsTray with multiSelect support"
This reverts commit d8288f5e89.
2021-06-16 16:57:59 -04:00
Jonathan Almeida aeb186f79c Revert "For #19739 - Moves argument to initial state init"
This reverts commit f198e110d7.
2021-06-16 16:57:59 -04:00
codrut.topliceanu f198e110d7 For #19739 - Moves argument to initial state init 2021-06-16 13:16:18 -04:00
codrut.topliceanu d8288f5e89 For #19739 - Adds start tabsTray with multiSelect support 2021-06-16 13:16:18 -04:00
MickeyMoz 8c88a8b016 Update Android Components version to 91.0.20210615190137. 2021-06-16 16:34:42 +00:00
Mihai Adrian Carare 83a5aa2838
For #20007: Multiselect title is important for a11y just in select mode. (#20008) 2021-06-16 13:13:42 +03:00
mcarare 77023db091 For #19820: Specify usage of labels for a11y services. 2021-06-16 08:49:12 +03:00
Mozilla L10n Automation Bot e969afaed7 Import l10n. 2021-06-16 00:43:59 +00:00
Elise Richards c32ae710dd
For #19923: renew telemetry probes (#19924) 2021-06-15 18:08:01 -05:00
Gabriel Luong c0329f3c26 For #19988 - Part 2: Load tab icon from BrowserIcons cache if needed for the recent tab
Co-authored-by: Jonathan Almeida <jalmeida@mozilla.com>
2021-06-15 18:33:20 -04:00
Gabriel Luong ad91f91eb6 For #19988 - Part 1: Move RecentTabsListFeature into recenttabs package
Co-authored-by: Jonathan Almeida <jalmeida@mozilla.com>
2021-06-15 18:33:20 -04:00
AndiAJ 78edf06a7a Text selection tests 2021-06-15 17:07:13 +03:00
MickeyMoz 82e2367e70 Update Android Components version to 91.0.20210615083632. 2021-06-15 11:24:44 +00:00
Mugurell a1fa1a5df6 For #19135 - Offer more context for why STATE_HALF_EXPANDED is not used 2021-06-15 10:01:49 +03:00
Mugurell abeb8b5576 For #19135 - Set different offsets for expanded trays
As in the previous version of tabs tray when tray is expanded while in portrait
it should have a 40dp offset and when the tray is expanded while in landscape
it should have a 0dp offset - effectively making it fullscreen.

These values were set in code, always overriding the xml set value so I
removed that xml declaration.
2021-06-15 10:01:49 +03:00
Mugurell 3cbb67da5c For #19135 - Expand the tabs tray in landscape
Track the current orientation and collapse / expand it the tabs tray depending
on the orientation and the number of opened tabs.
2021-06-15 10:01:49 +03:00
Mugurell d7544337b8 For #19135 - Refactor the behavior code to support more functionality later
Setup a new TabSheetBehaviorManager with all the dependencies it needs to
set the initial tray's behavior.
This same manager will later be called to update behavior's properties.
2021-06-15 10:01:49 +03:00
Grisha Kruglov c3001fff41 Bump A-C nightly version 2021-06-14 23:54:29 -07:00
Sammy Khamis 950e36c053 changes required for uniffi-ing logins component= 2021-06-14 23:54:29 -07:00
Christian Sadilek ba19960b7e Issue FNX-22435: Introduce History metadata
Co-authored-by: Grisha Kruglov <gkruglov@mozilla.com>
2021-06-14 16:30:00 -04:00
MickeyMoz 7959b427c8 Update Android Components version to 91.0.20210614181350. 2021-06-14 19:51:19 +00:00
mcarare d43acbd03d For #19938: Remove a11y workaround for tab tray new tab button.
Historically, button was introduced in a3dc565c10,
because FAB was not selectable by a11y in previous implementation of tab tray.
2021-06-14 22:34:58 +04:00
Ben Hearsum (he/him) 4de1edaa19
RELENG-588: Add notifications for Mozilla Online builds (#20010) 2021-06-14 14:07:02 -04:00
Jan-Erik Rediger d55f55d70c Suppress deprecation warnings for now-deprecated Glean APIs
Glean v39 allows to specify types for event extra keys.
The old API is therefore deprecated.
To avoid to much churn right now and keep the build going let's suppress
the deprecation warnings.
2021-06-14 13:32:46 -04:00
mcarare 2d2be26fbc For #19915: Add telemetry for the toolbar Home screen button. 2021-06-14 19:23:24 +03:00
Ben Hearsum (he/him) 2601709575
Fix typo in mozillaonline build option (#20006) 2021-06-14 10:21:25 -04:00
Mozilla L10n Automation Bot 8bd5ebfabc Import l10n. 2021-06-14 00:25:37 +00:00
MickeyMoz 0e18bd11d6 Update Android Components version to 91.0.20210613143120. 2021-06-13 16:42:49 +00:00
Mozilla L10n Automation Bot cc6bbcdf9c Import l10n. 2021-06-12 00:29:54 +00:00
Elise Richards e373f507a1
For FNX-22339: UI components for recently added bookmarks (#19953)
* Top level layout with recyclerview for recent bookmarks

* Add layout for recent bookmarked item, including strings and styles.

* Header layout for recently saved bookmarks

* Address review comments

* Include the header for recent bookmarks in the component layout

* Add dark theme colors for button and title styles

* Recent bookmark card title text color for dark mode/light mode
2021-06-11 15:03:58 -05:00
MickeyMoz efea115694 Update Android Components version to 91.0.20210611143123. 2021-06-11 16:36:57 +00:00
Oana Horvath 6278a2b07d For #19090: Re-enable createFirstCollectionTest, shareCollectionTest, deleteCollectionTest 2021-06-11 15:25:40 +03:00
Oana Horvath c5962b2502 For #10587: Fix and re-enable old CollectionTest.kt 2021-06-11 15:25:40 +03:00
AndiAJ 51517bea7e For #19585: disables failing restoreTabCrashedReporterTest UI test 2021-06-11 12:20:38 +03:00
sflorean 02972f7a5c No issue: Fenix manual testing process doc. 2021-06-11 10:35:11 +03:00
Gabriel Luong 9d3cf79051 For #19916 - Add last viewed tab to home screen
Co-authored-by: Jonathan Almeida <jalmeida@mozilla.com>
2021-06-10 16:22:57 -04:00
Ben Hearsum (he/him) 42d87d1a7a
Fix unicode issue in release promotion code (#19954) 2021-06-10 16:01:59 -04:00
Sebastian Kaspari c0531ffa82
Update Android Components to 91.0.20210610143711. (#19946) 2021-06-10 15:36:44 -04:00
Christian Sadilek 0c1e712ca8 Issue #17800: Cleanup and fix request desktop site from home 2021-06-10 12:49:13 -04:00
Ben Hearsum (he/him) 2ebc71f7f1
RELENG-586: Add mozillaonline builds & signing (#19898)
* Add general support for adding extra gradle options from kinds

* Add mozillaonline builds and signing
2021-06-09 16:37:56 -04:00
Arturo Mejia 0acd776f46 Update Android Components version to 91.0.20210609190338 2021-06-09 16:34:42 -04:00
Arturo Mejia 2f879f8e9d Fix site permissions breaking changes 2021-06-09 16:34:42 -04:00
Andrew Halberstadt 2339ab664e
For #19801 - Run taskgraph generation with Python 3 (#19802)
* For #19801 - Update to latest version of taskgraph

* For #19801 - Update to latest decision-mobile image

We need to explicitly set the Java version as Java 11 now co-exists in
the decision-mobile image.

* For #19801 - Run decision task with Python 3
2021-06-09 12:52:28 -07:00
Sebastian Kaspari 4753a1d494 Complete browser-state migration and remove browser-session dependency.
Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
2021-06-09 18:30:21 +02:00
Aaron Train 3b6434d7f6
Test full-junit-result in Flank config (#19897) 2021-06-09 10:55:39 -04:00
Aaron Train e6e7b1ab92
Add matrix outcome details to parse-ui-test.py (#19900) 2021-06-09 10:55:08 -04:00
Oana Horvath 1e05e23b23 For #18986: re-enable changeAccessibiltySettings UI test, not failing anymore 2021-06-09 13:52:47 +03:00
Mozilla L10n Automation Bot c523d28212 Import l10n. 2021-06-09 07:56:14 +00:00
Codrut Topliceanu c74bf4e8fe
For #19815 - Keeps tabTray FAB from obstructing last tab (#19891)
* For #19815 - Keeps tabTray FAB from obstructing last tab
2021-06-09 10:16:47 +03:00
Gabriel Luong ace835d1e8 For #19876 - Part 3: Add a FeatureFlag to keep the Home screen button in Nightly 2021-06-08 18:05:14 -04:00
Gabriel Luong 044c9a5b40 For #19876 - Part 2: Add a Home screen button to the browser toolbar 2021-06-08 18:05:14 -04:00
Gabriel Luong 86a9c56782 For #19876 - Part 1: Refactor BrowserToolbarInteractor
- Renames `BrowserInteractor` to `DefaultBrowserTolbarInteractor`
- Renames `BrowserTooolbarViewInteractor` to `BrowserToolbarInteractor`
- Refactors `BrowserToolbarViewInteractor` interface from `BrowserToolbarView.kt` to  `BrowserToolbarInteractor` as `BrowserToolbarInteractor`
2021-06-08 18:05:14 -04:00
Arturo Mejia 268df1906a
Address typos on start on home strings (#19903) 2021-06-08 18:04:54 -04:00
rxumoz 3a4f73be19
For #10300 - Fix Baidu search telemetry (#19127) 2021-06-08 17:59:14 -04:00
Jonathan Almeida f06e3a6493 Issue #19178: Apply new styling to Synced Tabs list 2021-06-08 20:46:56 +04:00
codrut.topliceanu 5729137ddb For #19738 - Adds tests for SecureTabsTrayBinding.kt 2021-06-08 20:29:37 +04:00
codrut.topliceanu 0572cab97c For #19738 - Secure mode enabled in private tabs tray
Prevents screenshots while tabs tray with private tabs page is open.
2021-06-08 20:29:37 +04:00
Mozilla L10n Automation Bot 3327fc508c Import l10n. 2021-06-08 00:33:38 +00:00
Arturo Mejia f0bb70e354 For #19789 Start on Home after some amount of time 2021-06-07 16:29:36 -04:00
Mihai Adrian Carare f9428759db
For #19820 - Add labels for month and year spinners. (#19870)
This follows the guidelines described in
developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/listbox_role
2021-06-07 16:29:01 -04:00
Gabriel Luong 74a96905a3
For #19495 - Add validation for the name on card (#19836)
- We want to ensure that name on card in the credit card is not empty when submitted. Display an appropriate error when the field is invalid.
2021-06-07 15:44:49 -04:00
Aki Sasaki 9b6d7b623e
cancel sync-strings on non-beta versions (#19776)
* cancel sync-strings on non-beta versions

* use fenix-beta-version 2.0.0
2021-06-07 12:02:18 -07:00
Christian Sadilek 679535cdee Update Android Components version to 91.0.20210607143102 2021-06-07 12:03:32 -04:00
Oana Horvath 597c8812f4 Changes to #17416, #19686, #19770 UI smoke tests to remove flakiness 2021-06-07 17:20:25 +03:00
Kevin Brosnan 103598dfce Prevents stale bot from closing issues for disabled tests 2021-06-07 10:23:35 +03:00
Mozilla L10n Automation Bot 6c19473c0e Import l10n. 2021-06-07 00:26:13 +00:00
Christian Sadilek 68a761388a Suppress TooGenericExceptionCaught for NimbusApi.withExperiment 2021-06-06 09:56:16 -04:00
James Hugman 5981a92148 Re-instate catch-all to withExperiment 2021-06-06 09:56:16 -04:00
Mozilla L10n Automation Bot d53d21956b Import l10n. 2021-06-06 00:51:45 +00:00
Mozilla L10n Automation Bot e19a428edd Import l10n. 2021-06-05 00:29:39 +00:00
Jonathan Almeida a64cac6c7f Issue #19792: Add content description for tab tray action button 2021-06-05 02:44:33 +04:00
Roger Yang 2e4635334a
Closes #19090: Show snackbar on adding to bookmarks from tabs tray (#19807) 2021-06-04 14:45:20 -04:00
Jonathan Almeida 811dd3e618 Issue #19809: Change default tab tray view to grid layout 2021-06-04 22:26:22 +04:00
Jonathan Almeida 27280e6683 Issue #19809: Remove Grid layout info banner in tabs tray 2021-06-04 22:26:22 +04:00
codrut.topliceanu 85c438798e For #19191 - Fixes missing multi-select checkmarks 2021-06-04 19:56:10 +04:00
Oana Horvath f901f7e92f For #18647: Fixed and re-enabled customTrackingProtectionSettingsTest UI test 2021-06-04 15:54:14 +03:00
Jonathan Almeida bf3f81d271 Issue #19112: Remove old Synced Tabs code 2021-06-04 02:18:37 +04:00
Jonathan Almeida dc11c334b6 Issue #19112: Remove old tab tray code 2021-06-04 02:18:37 +04:00
Neha Binwal bf605c02d9
For #19307: Increased contrast ratio of chevron symbol in Collections (For Dark theme) (#19377)
* For #19307: Increased contrast ratio of chevron symbol in Collections (Dark Theme)

- Made a code change in collection_home_list_row.xml which fixes the colour of the chevron symbol in Dark theme

* Replaced android:src with app:srcCompat to pass Lint check
2021-06-03 13:54:55 -05:00
Neha Binwal 69e9e35fff
Increased text contrast ratio of TextViews in 'Share tab' (#18880)
- Changed share_tab_url color to @color/photonLightGrey60
- Changed appName and recent_apps_link_header color to @color/photonDarkGrey10
2021-06-03 13:54:05 -05:00
Mugurell 0455cc3cd4
For #18877 - Support updated PromptRequest AC APIs (#19767)
* For #18877 - Support updated PromptRequest AC APIs

This issue stemming from a race condition is fully resolved in AC by adding
support for having multiple prompts at a time.
Fenix needs just a small change to support the AC refactoring.

* Update Android Components version to 91.0.20210603145049

Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
2021-06-03 12:13:43 -04:00
Gabriel Luong a5110f8c0a
For #19746 - Remove FeatureFlags.nimbusExperiments (#19771) 2021-06-03 11:35:05 -04:00
ZianeA e4fa71fde7 For #[15083]: Add multi select to recently closed tabs 2021-06-03 05:23:59 +04:00
Mozilla L10n Automation Bot 7d5582a5bf Import l10n. 2021-06-03 00:39:39 +00:00
Elise Richards 6dbe5acc5b
For #19746 - Remove feature flag for the three-dot menu redesign (#19750)
* Remove feature flag for the three-dot menu redesign

* Remove menu feature flag from unit tests
2021-06-02 14:19:00 -05:00
Stefan Arentz eaf74a1868
Fixes #19773 - Add a needs:review label to the automatic String Sync PRs (#19774) 2021-06-02 12:49:02 -04:00
codrut.topliceanu 13f9a35131 For #19571 - Adds gdprForgetMe when stopping Adjust 2021-06-02 19:02:28 +04:00
Mihai Adrian Carare 318aace1eb
For #19419 - Label edit boxes for a11y services. (#19762) 2021-06-02 10:56:30 -04:00
MickeyMoz 5ab3ee60d7 Update Android Components version to 91.0.20210601143118. 2021-06-02 14:21:43 +00:00
Oana Horvath e48d285114 No issue: Add more smoke tests coverage 2021-06-02 10:30:59 +03:00
Oana Horvath f3e3f86388 No issue: Change hardcoded package and app name in tests 2021-06-02 10:30:59 +03:00
Mozilla L10n Automation Bot 63eec5dfec Import l10n. 2021-06-02 00:33:12 +00:00
Michael Comella b3ffdd2a47 For perf-frontend-issues#208: rename to measure_start_up.py. 2021-06-01 14:54:45 -07:00
Michael Comella 23068cd2f7 For perf-frontend-issues#208: clean up help text. 2021-06-01 14:54:45 -07:00
Michael Comella 18f0931d2e For perf-frontend-issues#208: use CHANNEL_TO_PKG directly. 2021-06-01 14:54:45 -07:00
Michael Comella 9fb4366646 For perf-frontend-issues#208: add nav_start test to measure… script. 2021-06-01 14:54:45 -07:00
Gabriel Luong 1bfb05129b
Update version.txt to 91.0.0-beta.1 (#19749) 2021-06-01 14:18:30 -04:00
MickeyMoz 12fa5b7746 Update Android Components version to 90.0.20210531190346. 2021-06-01 18:07:27 +00:00
Mozilla L10n Automation Bot ea049ca801 Import l10n. 2021-06-01 00:32:28 +00:00
Gabriel Luong 33b2789270
For #19734 - Enable Credit cards autofill for Release (#19735) 2021-05-31 17:40:04 -04:00
Gabriel Luong 172a118a51
For #18711 - Refactor credit card telemetry under the Metrics ping (#19733) 2021-05-31 17:35:47 -04:00
Jonathan Almeida fc46ab2804 Close #19731: Track metrics before we dismiss the tabs tray 2021-05-31 21:46:13 +04:00
MickeyMoz 5c28e7d2ba Update Android Components version to 90.0.20210531143146. 2021-05-31 17:36:57 +00:00
Delphine Lebédel 39c193929d
Add Bulgarian (bg), Central Kurdish (ckb), Interlingua (ia), Tatar (tt) locales to Fenix (#19711) 2021-05-31 12:07:23 -04:00
Mihai Adrian Carare e69bf4e26a
For #19564: Explicitly update switch state for a11y event announcements. (#19589) 2021-05-31 16:50:23 +03:00
Aaron Train 4056e7406d
No issue: Update Flank to v21.05.0 (#19690) 2021-05-31 09:28:36 -04:00
MickeyMoz 01fa10ba3e Update Android Components version to 90.0.20210531115932. 2021-05-31 13:10:45 +00:00
Mozilla L10n Automation Bot e035cba4b1 Import l10n. 2021-05-31 00:29:30 +00:00
MickeyMoz 3bc8f24a8a Update Android Components version to 90.0.20210529143142. 2021-05-29 16:28:57 +00:00
Mozilla L10n Automation Bot 5219da71d9 Import l10n. 2021-05-29 01:35:38 +00:00
Gabriel Luong d30ebf86f9
For #19693 - Display a biometric prompt when a credit card is selected to autofill (#19697)
Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
2021-05-28 20:10:03 -04:00
Gabriel Luong b1f7b04332
For #19693 - Add new string for the prompt to authenticate to use a stored credit card (#19708) 2021-05-28 19:04:26 -04:00
Grisha Kruglov daba5595f6 Enable addresses sync for nightly/debug builds 2021-05-28 00:22:32 -07:00
Grisha Kruglov e891139db9 Minor cleanup of the account settings 2021-05-28 00:22:32 -07:00
Elise Richards e0b410efdf
For #18711: Telemetry for credit card autofill (#19548) 2021-05-27 23:54:11 -05:00
MickeyMoz a69a8f26ee Update Android Components version to 90.0.20210528002854. 2021-05-28 01:59:12 +00:00
Ben Hearsum (he/him) 2ae9f40779
Update gpg pub key (#19691) 2021-05-27 20:47:06 -04:00
Mozilla L10n Automation Bot a2b2cd42d6 Import l10n. 2021-05-28 00:29:28 +00:00
Jonathan Almeida c50ed5684c
Close #19459: Use Store.waitUntilIdle in intermittent failing test (#19683) 2021-05-27 18:51:00 -04:00
Gabriel Luong 89a1b0016c
For #19492 - Provide the correct CreditCardNumber type to UpdatableCreditCardFields when updating a credit card (#19692)
We were crashing because we were specifying the wrong `CreditCardNumber` type when constructing the `UpdatableCreditCardFields`.
We only had the plaintext card number from the user input, but was placing it off as an encrypted card number, which resulted in the crash.
2021-05-27 18:44:00 -04:00
Christian Sadilek 965a211fc3 Migrate test code to no longer use Nimbus FeatureConfig 2021-05-27 16:09:44 -04:00
Christian Sadilek 9d1e51dfff Fix breaking change in MetricController 2021-05-27 16:09:44 -04:00
Christian Sadilek 3a57188c35 Fix lint/detekt issues 2021-05-27 16:09:44 -04:00
Christian Sadilek 2cc1a49fb0 Update Android Components version to 90.0.20210527173355 2021-05-27 16:09:44 -04:00
James Hugman ab678a21ff Add an experiment to demontrate the Feature API
This is not visible in production, but only debug. It shows three variables
being used to change the settings screen (title, icon and title-punctuation).
2021-05-27 16:09:44 -04:00
Oana Horvath 4851bf7545 No issue: cleanup of unused tabs related code in HomeScreenRobot.kt
Deleted SmokeTest#selectTabsButtonVisibilityTest, feature removed
2021-05-27 11:13:56 +03:00
Oana Horvath 60a752f75c No issue: added smoke tests from MediaNotificationTest.kt 2021-05-27 11:13:56 +03:00
Elise Richards 279d59897c
For #18264 - Add biometric prompt to credit card settings (#19505) 2021-05-27 03:45:35 -04:00
Oana Horvath bca8b74263 No issue: Added custom tab UI smoke test 2021-05-27 10:22:30 +03:00
Jonathan Almeida 758700cbb0 Issue #19647: Navigate to browser from home via Synced Tabs page 2021-05-27 05:21:57 +04:00
Mozilla L10n Automation Bot b046982744 Import l10n. 2021-05-27 00:48:18 +00:00
Gabriel Luong 338c488fae
For #19680 - Show the card number when editing a credit card (#19681) 2021-05-26 20:22:11 -04:00
Sebastian Kaspari 0eee71d0cf Closes #17819: Remove JCenter from build files. 2021-05-26 17:00:01 -04:00
Gabriel Luong c11335fafc
For #18271 - [Saved cards] Display the credit card provider icon and report the correct card type (#19652) 2021-05-26 16:44:05 -04:00
Mugurell bd8facb025 For #18263 - Allow dynamically toggling credit cards autofill 2021-05-26 19:38:16 +03:00
Ionut Cristian Bedregeanu ac71b47c61 For #19653 - Address 19643 PR comments
Rename handleAddCreditCard to handleAddCreditCardClicked
Rename onClickAddCreditCard to onAddCreditCardClick
Format layout_add_credit_card.xml
2021-05-26 19:06:37 +03:00
Mugurell 272e631b62
For #19638 - Don't show extracted text UI for name when editing cards (#19673)
This comes to ensure consistency with the behavior for when editing the card
number.
2021-05-26 12:05:21 -04:00
Bedregeanu Ionut bf25951a62
For #19654 - Add RTL support for the "Add credit card" button from "Saved cards" (#19666)
Co-authored-by: Ionut Cristian Bedregeanu <ionut.bedregeanu@softvision.ro>
2021-05-26 11:58:49 -04:00
Codrut Topliceanu 02079cd567
For #19569 - Decrease the credit card expiry year width to ensure the month is fully visible (#19582) 2021-05-26 11:16:29 -04:00
Mugurell 3fb40e1f40 For #19475 - Introduce a DefaultTabsTrayInteractor
Refactored the TabsTrayFragment to not implement the TabsTrayInteractor which
among other advantages allowed for easier testing.
2021-05-26 15:45:54 +03:00
Mugurell dc26272381 For #19475 - Cleanup - respect naming scheme in TabsTrayController
In our current MVI implementation the View Interactors are first called in
response to a direct user action and contain methods following the
"onXXHappened" naming scheme and then delegate other Interactors / Controllers
for specific actions.

Controllers contain the business logic for actually updating the app's state
and offer methods following the "handleXXAction" naming scheme.
2021-05-26 15:45:54 +03:00
isabelrios 727d0256e0 Stop depending on JCenter - Screengrab and Falcon 2021-05-26 11:04:58 +02:00
Mozilla L10n Automation Bot 72ac23ddb9 Import l10n. 2021-05-26 00:43:20 +00:00
Sebastian Kaspari 84f4ff0d86 Issue #17819: Update detekt to 1.17.1 2021-05-25 17:19:57 -04:00
Ionut Cristian Bedregeanu 0a226962bb For #18881 - Create a new layout for 'Add credit card' button
Add functionality for 'Add credit card' button

Add unit tests for 'Add credit card' functionality
2021-05-25 20:34:49 +03:00
MickeyMoz 606491994f Update Android Components version to 90.0.20210525143110. 2021-05-25 16:32:46 +00:00
Mugurell d02db131f0 For #19620 - Have MenuScreenShotTest screenshot DefaultBrowser setting again
As a regression from #19590 which added a new setting above the existing
"Set as default browser" setting the settingsTest() needed to be updated to
allow clicking and screenshot of what happens after clicking on the
"Set as default browser" setting which can now be pushed offscreen.
2021-05-25 16:04:39 +03:00
Codrut Topliceanu 5f2b3fec38
For #18270 - Adds ellipses+last 4 digits to CC display (#19420)
* For #18270 - Adds ellipses+last 4 digits to CC display
2021-05-25 14:32:17 +03:00
Oana Horvath 0877e4cbb7 For #19415: fixed private browsing button visibility issue 2021-05-25 10:49:13 +03:00
mcarare 0141d96465 For #19554: Add SyncEngine.CreditCards to sync supportedEngines. 2021-05-25 09:44:03 +03:00
Mozilla L10n Automation Bot d9c34e68c3 Import l10n. 2021-05-25 00:32:09 +00:00
mcarare 9400f58e2a For #17538: Perform autofill storage warm-up after visual completeness. 2021-05-24 23:23:15 +03:00
MickeyMoz 23fa3073a8 Update Android Components version to 90.0.20210524143115. 2021-05-24 18:53:23 +00:00
Oana Horvath 5c026d4e7b For #18603: Fix and re-enable startBrowsingButtonTest 2021-05-24 19:26:37 +03:00
AndiAJ 3fc4848aef Fix settingsPrivacyItemsTest 2021-05-24 14:12:35 +03:00
mcarare 9f81754fab For #19600: Set manage cards preference visible by default. 2021-05-24 13:10:57 +03:00
mcarare a862824697 For #19600: Change manage cards preference UI dynamically. 2021-05-24 11:09:59 +03:00
mcarare bcf6b901ee For #19600: Change manage cards preference UI dynamically. 2021-05-24 11:09:59 +03:00
Oana Horvath 9fd7fe3df1 For #15754: Get playback state using MediaSession in MediaNotificationTests 2021-05-24 09:48:49 +03:00
Mozilla L10n Automation Bot 8ffc619d8d Import l10n. 2021-05-24 00:29:05 +00:00
MickeyMoz ef01e9d6ff Update Android Components version to 90.0.20210523143136. 2021-05-23 16:38:37 +00:00
Mozilla L10n Automation Bot f1c703b29f Import l10n. 2021-05-23 00:30:49 +00:00
MickeyMoz c3adb970d5 Update Android Components version to 90.0.20210522143202. 2021-05-22 16:32:15 +00:00
MickeyMoz 92c8b643c9 Update Android Components version to 90.0.20210522000521. 2021-05-22 01:51:40 +00:00
Mozilla L10n Automation Bot a9c76fbe0b Import l10n. 2021-05-22 00:25:29 +00:00
MickeyMoz d16ffb0e8d Update Android Components version to 90.0.20210521143109. 2021-05-21 17:28:05 +00:00
Mugurell bbc25e430e
For #19590 - Enable credit card autofill in Debug and Nightly (#19601) 2021-05-21 11:37:49 -04:00
Mozilla L10n Automation Bot 2d38ca8913 Import l10n. 2021-05-21 12:03:21 +00:00
Codrut Topliceanu d83d05670d
For #19570 - Set appropriate theme color for delete card button (#19581) 2021-05-20 19:38:14 -04:00
MickeyMoz 8f9bc7ead4 Update Android Components version to 90.0.20210520143152. 2021-05-20 16:29:05 +00:00
MickeyMoz 527b78bb2c Update Android Components version to 90.0.20210520013552. 2021-05-20 16:22:54 +02:00
Sebastian Kaspari 761752e382 AutofillConfiguration: Correctly specify autofill confirm activity. 2021-05-20 16:06:59 +02:00
Mozilla L10n Automation Bot b98c7b940b Import l10n. 2021-05-20 02:18:05 +00:00
MickeyMoz 91bb79fe0d Update Android Components version to 90.0.20210519143042. 2021-05-19 17:55:21 +00:00
Mihai Adrian Carare d96415111b
For #19054 - Navigate to the Credit card screen when deleting last card. (#19451) 2021-05-19 12:55:15 -04:00
Tim D. Smith 26cb37b27c
Fix case of item extras in browser_menu_action event (#19487)
* Fix case of item extras in browser_menu_action event

Update the event description to match the values observed in telemetry.

* Line length
2021-05-19 11:12:27 -05:00
Mihai Adrian Carare 11efbaacc4
For #18507 - Prevent screenshots on credit card screens. (#19560) 2021-05-19 12:07:33 -04:00
mcarare 888b45b079 For #8370: Remove extra characters from name mapping. 2021-05-19 14:15:11 +03:00
Mozilla L10n Automation Bot a5a50d6fcc Import l10n. 2021-05-19 00:32:03 +00:00
MickeyMoz d2ac678625 Update Android Components version to 90.0.20210518143104. 2021-05-18 16:28:48 +00:00
Arturo Mejia 52587753a5 Remove feature flag for proton icons re-design #18132 2021-05-18 07:24:22 -04:00
Mozilla L10n Automation Bot 791e3673ee Import l10n. 2021-05-18 00:26:01 +00:00
MickeyMoz e4288239cb Update Android Components version to 90.0.20210516190059. 2021-05-17 16:34:19 +00:00
mcarare fca8fca446 For #19418: Allow multiple lines title for sync cards preference. 2021-05-17 13:39:39 +03:00
Mozilla L10n Automation Bot a6de827ac2 Import l10n. 2021-05-17 00:27:21 +00:00
MickeyMoz 4adff205dc Update Android Components version to 90.0.20210516143141. 2021-05-16 16:34:05 +00:00
MickeyMoz a750be1b01 Update Android Components version to 90.0.20210514190120. 2021-05-15 16:31:26 +00:00
MickeyMoz 2b7cc426fb Update Android Components version to 90.0.20210513190129. 2021-05-14 16:43:55 +00:00
Michael Comella 51d10734c7
Closes #19496: Remove glean metrics docs check from pre-push hook. (#19497) 2021-05-13 21:18:59 -04:00
Gabriel Luong 75fc116043
For #18287 - Display a credit card autofill prompt (#19477) 2021-05-13 21:18:18 -04:00
Arturo Mejia bf42a1786e For issue AC#10231 update proton icons third batch 2021-05-13 21:16:21 -04:00
MickeyMoz f0895c2b23 Update Android Components version to 90.0.20210513164638. 2021-05-13 20:35:57 +00:00
Priyanka 841f1cd265
created string resource for close (#19500)
Co-authored-by: priyanka0906 <priyanka02amb@reddiffmail.com>
2021-05-13 14:25:33 -05:00
Elise Richards 6459a859b9
For #17537: Add preferences for syncing credit cards and addresses (#19471)
* Add preferences for enable/disable sync for cc and addresses

* Set pref visibility based on feature flags

* Helper function for pin warning preferences and set default values for cc and addresses to false.

* Kdocs for relevant sync functions in account settings

* Default visibility to false for credit cards and addresses in account settings
2021-05-13 14:08:46 -05:00
Jonathan Almeida ede909e858
Issue #19176: Exit select mode when removing tab (#19486) 2021-05-13 09:31:04 +03:00
Mozilla L10n Automation Bot 8edcaab7ce Import l10n. 2021-05-13 00:32:41 +00:00
mcarare 4dd4e35982 For #19258: Replace default Android back button with a custom icon. 2021-05-12 16:56:49 +03:00
AndiAJ 889cf2e718 For #19468 and #19478 fix intermittent UI tests 2021-05-12 15:18:54 +03:00
Mozilla L10n Automation Bot 726db20390 Import l10n. 2021-05-12 08:56:08 +00:00
MickeyMoz 33deb368f4 Update Android Components version to 90.0.20210511143058. 2021-05-12 08:05:15 +00:00
Codrut Topliceanu d08b00717a
For #19091 - Fix Undo of close multiple tabs (#19466)
Fixes the issue where closing multiple selected tabs and then pressing Undo would only restore one of the tabs.
2021-05-12 10:12:03 +03:00
Roger Yang f13560ae52 Issue #19147: Move set startup metrics off main thread 2021-05-12 06:44:31 +04:00
Jonathan Almeida f0d352f47e Issue #19002: Correct naming of pager viewholders 2021-05-11 19:40:14 +04:00
Jonathan Almeida a95a26b2c6 Issue #19002: Use a single BrowserTrayList for normal/private list
We now have a BrowserTrayList.
 - Renamed from `BaseBrowserTrayList`.
 - Removed the abstract `configuration` and used a `lateinit var`
 instead.
 - Removed `NormalBrowserTrayList` and `PrivateBrowserTrayList`.
2021-05-11 19:40:14 +04:00
Jonathan Almeida bd753d3f94 Issue #19002: Correct browser viewholder naming 2021-05-11 19:40:14 +04:00
Jonathan Almeida 809c82a9f9 Issue #19002: Move TabsTrayViewHolder to browser package 2021-05-11 19:40:14 +04:00
Jonathan Almeida 78af3d80b3 Issue #19002: Remove unused TrayItem interface 2021-05-11 19:40:14 +04:00
Jonathan Almeida e66983d093 Issue #19002: Use AbstractBinding from lib-state 2021-05-11 19:39:50 +04:00
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
Michael Comella 49240b239b For #19436: rm Application and FeatureFlags from perf code owners. 2021-05-10 15:58:33 -07: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
MickeyMoz fda8fd398e Update Android Components version to 90.0.20210510143050. 2021-05-10 16:35:56 +00: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
MickeyMoz 07fd5ca9e6 Update Android Components version to 90.0.20210509143123. 2021-05-09 16:31:12 +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
MickeyMoz d0db5091a7 Update Android Components version to 90.0.20210504190127. 2021-05-05 17:19:12 +00: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
MickeyMoz 2bd933054f Update Android Components version to 90.0.20210504143147. 2021-05-05 06:51:24 +00: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
MickeyMoz d71df4d505 Update Android Components version to 90.0.20210503143138. 2021-05-03 16:36:16 +00:00
Mozilla L10n Automation Bot bd9d5597fa Import l10n. 2021-05-03 00:28:38 +00:00
MickeyMoz d55758345d Update Android Components version to 90.0.20210502143118. 2021-05-02 16:41:41 +00:00
Mozilla L10n Automation Bot 2f5937aeb3 Import l10n. 2021-05-02 00:32:00 +00:00
MickeyMoz df616a2e10 Update Android Components version to 90.0.20210501143136. 2021-05-01 16:37:56 +00:00
Mozilla L10n Automation Bot 622f7ab4a8 Import l10n. 2021-05-01 00:27:28 +00:00
Gregory Mierzwinski 879f1b9e97
Bug 1708631 - Update visual metrics script to the latest. (#19332) 2021-04-30 14:22:44 -04:00
MickeyMoz 49025e4669 Update Android Components version to 90.0.20210430143137. 2021-04-30 16:40:29 +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
MickeyMoz 66049b074e Update Android Components version to 90.0.20210429143130. 2021-04-29 16:33:48 +00: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
MickeyMoz 6537471783 Update Android Components version to 90.0.20210428143111. 2021-04-28 17:27:02 +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
Mihai Adrian Carare 02b59d1a8c
For #19243 - Update metrics documentation. (#19269) 2021-04-27 16:04: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
Arturo Mejia 816e8bebc0 Update Android Components version 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
MickeyMoz 883cb7c730 Update Android Components version to 90.0.20210424190049. 2021-04-26 10:34:30 +00:00
Grisha Kruglov 4e16c46b27 Fix breaking changes introduced by credit card encryption APIs 2021-04-26 10:41:45 +02:00
Sebastian Kaspari 239b5c4b6d Update Mozilla Android Components to 90.0.20210422163756 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
Gregory Mierzwinski fc4eada9fd
Bug 1706913 - Fix node archive name change caused by bug 1611513. (#19190)
* Bug 1706913 - Fix node archive name change caused by bug 1611513.

* Undo test run.
2021-04-22 13:21:48 -04: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
Sebastian Kaspari 0ad7677309 update_android_components.sh: Watch different component.
`browser-engine-gecko-nightly` doesn't exist anymore. Let's watch `browser-engine-gecko` instead.
2021-04-21 19:35:34 +02:00
Aaron Train 29fa49ff12
No issue: add Android Emulator action for contributor PRs (#18901) 2021-04-21 10:20:34 -04: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
Stefan Arentz 056326904b
Update the sync-strings workflow (#19149) 2021-04-20 22:42:45 -04:00
Stefan Arentz 118f53d6d7
Run the sync-strings workflow daily at 2am (#19148) 2021-04-20 22:16:13 -04: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
Andrew Halberstadt 088b26b20a [taskcluster] Use string.capitalize() rather than custom utility function 2021-04-20 12:17:15 -04: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
MickeyMoz 48460ce42c Update Android Components version to 75.0.20210419143149. 2021-04-19 20:50:59 +00: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
Aaron Train 83b04f8b64
No issue: test one shard per UI test on FTL (#18998) 2021-04-19 12:22:01 -04: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
Ryan VanderMeulen 5872d7a849
Update A-C to 75.0.20210417143049 (#19097) 2021-04-17 13:23:09 -04: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
Ryan VanderMeulen 1a36230a85
Update A-C to 75.0.20210416190104 (#19083) 2021-04-16 17:43:18 -04: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
Stefan Arentz 0d37471b0a
Update A-C to 75.0.20210415143144 (#19069) 2021-04-15 23:39:47 -04: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
Mickey Moz bf33543573
Update Android Components version to 75.0.20210412143103. (#19067)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-04-15 19:26:31 -04: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
Stefan Arentz 5db2f7568f Fixes #18995 - Upgrade the sync-strings action to v1.0.1 2021-04-13 21:47:52 +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
Stefan Arentz e8d405b48f
Workflow to sync strings (#18965) 2021-04-12 21:50:06 -04: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
Dave Hunt b41082ac63 Bug 1670902 - Use WebRender platforms for Raptor performance tests 2021-04-12 13:56:50 -07:00
MickeyMoz 242fb78de1 Update Android Components version to 75.0.20210412143103. 2021-04-12 20:19:34 +00: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
MickeyMoz f50f66a1a4 Update Android Components version to 75.0.20210412114437. 2021-04-12 13:00:51 +00:00
Mozilla L10n Automation Bot d7f7f817c9 Import l10n. 2021-04-12 00:38:10 +00:00
MickeyMoz f6e466175f Update Android Components version to 75.0.20210410143112. 2021-04-11 01:53:33 +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
MickeyMoz b17b99eae8 Update Android Components version to 75.0.20210409143104. 2021-04-09 18:59:09 +00: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
Sebastian Kaspari 85257dbb0a Issue #17819: Pull trove4j from Maven Central instead of JCenter. 2021-04-08 23:29:49 -04: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
MickeyMoz 950072828f Update Android Components version to 75.0.20210407190141. 2021-04-08 18:04:28 +00: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
Oana Horvath b43a11e9f6 Added UI smoke tests to run on Beta builds. 2021-04-08 11:07:36 +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
MickeyMoz 00178e04c6 Update Android Components version to 75.0.20210407143059. 2021-04-07 16:26:04 +00: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
Mihai Adrian Carare 233b909b81
For #17361 - Update metrics documentation. (#18842) 2021-04-07 11:08:53 -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
Dave Hunt df3dff5346 Bug 1701764 - Remove --no-conditioned-profile from Raptor tests now that they are disabled by default 2021-04-06 14:58:53 -07: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
Grisha Kruglov 3e37426375 Closes #17361: Extend perf.awesomebar.* metrics 2021-04-06 11:50:08 -07:00
Gabriel Luong db993196c6
For #18819 - Hide the Credit Card preference by default (#18820) 2021-04-06 13:43:51 -04:00
Mozilla L10n Automation Bot 568bad0f48 Import l10n. 2021-04-06 17:28:45 +00:00
MickeyMoz f7f6f2333b Update Android Components version to 75.0.20210406143106. 2021-04-06 16:30:58 +00:00
Roger Yang 01568d5859
Closes #18513: Re-add menu to tabs tray (#18756) 2021-04-06 10:26:41 -04:00
Jonathan Almeida a443509c8b Issue #18535: Set the span count for grid view 2021-04-06 09:57:33 +04:00
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.
2021-04-06 09:57:33 +04:00
Jonathan Almeida 8ccc4648a9 Issue #18535: Move list/grid viewholders to browser package 2021-04-06 09:57:33 +04:00
Kate Glazko 841dacb69e For 17798: Sync Menu Item 2021-04-05 14:34:34 -07:00
Jonathan Almeida 92a99542e6
Close #17821: Add TabsTrayStore with actions and reducer (#18773) 2021-04-05 15:12:07 -04:00
Jonathan Almeida af3a5b0a17
No issue - Make TabLayoutMediator lifecycle aware (#18779) 2021-04-05 15:10:29 -04:00
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>
2021-04-05 12:30:25 -04:00
MickeyMoz 86d950bd0d Update Android Components version to 75.0.20210405143037. 2021-04-05 16:29:29 +00:00
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
2021-04-05 09:15:06 +03:00
Mozilla L10n Automation Bot 8916e567bc Import l10n. 2021-04-05 00:28:16 +00:00
MickeyMoz 1632e981e4 Update Android Components version to 75.0.20210403190112. 2021-04-04 16:27:05 +00:00
Mozilla L10n Automation Bot 10d2623bb6 Import l10n. 2021-04-04 00:29:06 +00:00
MickeyMoz a4baa49d59 Update Android Components version to 75.0.20210403143100. 2021-04-03 16:24:46 +00:00
Gabriel Luong fe06d88e7e
Use photon colors from ui-color (#18760) 2021-04-03 10:26:53 -04:00
Gabriel Luong 1f320fd2ad
No issue - Remove generic strings for more specificity (#18769) 2021-04-02 15:24:28 -04:00
MickeyMoz f5c1e082b9 Update Android Components version to 75.0.20210402143051. 2021-04-02 17:33:34 +00:00
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.
2021-04-02 18:45:27 +03:00
Gabriel Luong 1008ca2b4a
For #18265 - [Add card] Integrate the credit card storage and handle adding a new credit card (#18719) 2021-04-02 10:40:44 -04:00
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
2021-04-01 13:19:49 -07:00
MickeyMoz 21c5eba310 Update Android Components version to 75.0.20210401143103. 2021-04-01 16:32:28 +00:00
Gabriel Luong 3f21a63c3c
For #18729 - Use consistent string naming for generic strings (#18730) 2021-03-31 18:20:04 -04:00
Aki Sasaki 235be0badc
relpro tasks_for, but for master (#18625) 2021-03-31 14:45:39 -07:00
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
2021-03-31 16:05:44 -05:00
Michael Comella 35de7056b3 No issue: enable CPU usage in profiler. 2021-03-31 08:37:42 -07:00
mcarare 2687092f90 For #18717: Use normal theme color for tab tray synced tabs. 2021-03-31 18:30:05 +04:00
Mugurell 304e471801 For #18617 - Use the new EngineView#getInputResultDetail()
All functionality should remain the same.
2021-03-31 15:36:38 +03:00
AndiAJ e03ffff3b8 Disable failing UI Tests 2021-03-31 13:06:18 +03:00
mcarare 6f17e329c4 For #17797: Add bookmarks menu item. 2021-03-31 11:12:58 +03:00
Roger Yang c7cb0fd5a0
Closes #18706 - Remove unneeded add-on telemetry calls (#18707) 2021-03-30 16:19:00 -04:00
rxumoz 51c41f84d5
Closes #18386 - Change language display name to traditional/simplified Chinese for Chinese locale (#18387) 2021-03-30 16:18:31 -04:00
Mihai Adrian Carare ccfb275b03
For #17800 - Request desktop site from home screen. (#18653) 2021-03-30 16:12:46 -04:00
Roger Yang caf8ac8207
Closes #18514: Re-add tab counter in tabs tray (#18659) 2021-03-30 15:43:07 -04:00
Michael Comella 89088aa595 For #18426: add data review links. 2021-03-30 10:38:44 -07:00
Michael Comella ac34432176 For #18426: warn about flaw in `app_opened_all_startup` probe. 2021-03-30 10:38:44 -07:00
Michael Comella ade38246be For #18426: record cold start duration telemetry. 2021-03-30 10:38:44 -07:00
Michael Comella 2be9fb61d0 For #18426: add StartupActivityStateProvider.
This will be used to filter conditions for the start up telemetry we're
adding.
2021-03-30 10:38:44 -07:00
Michael Comella edd49b286d For #18426: add ApplicationStartReasonProvider.
We need to know this state to add a correct COLD MAIN probe.
2021-03-30 10:38:44 -07:00
Michael Comella 520634165e For #18426: add DefaultActivityLifecycleCallbacks.
We'll extend this in subsequent commits.
2021-03-30 10:38:44 -07:00
Oana Horvath 246348501c For #18644: fix metod to verify system notifications 2021-03-30 18:19:02 +03:00
Jonathan Almeida d167bc7b67 Issue #14117: Add Synced Tabs as a page in the tabs tray 2021-03-30 19:09:50 +04:00
Oana Horvath aacb5e3ebb For #18421: Ignore the ContextMenusTest class because of test failures 2021-03-30 17:12:49 +03:00
Gabriel Luong ae625e60cf For #18247 - [Add card] Populate the Credit card expiry year drop down 2021-03-29 21:37:03 -04:00
Gabriel Luong 4763d8c9e5 For #18246 - [Add card] Populate the Credit card expiry month drop down 2021-03-29 21:37:03 -04:00
Gabriel Luong 46a267a494 For #18243 - Add a credit card editor screen 2021-03-29 21:37:03 -04:00
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.
2021-03-30 03:08:01 +04:00
Jonathan Almeida e41344aa1f Close #18668: Add stable ID cache for TabAdapter.getItemId 2021-03-30 02:58:54 +04:00
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>
2021-03-29 17:06:29 -05:00
MickeyMoz 69dbbdd122 Update Android Components version to 75.0.20210329143119. 2021-03-29 20:58:44 +00:00
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.
2021-03-29 12:52:34 -07:00
Michael Droettboom 50ae7826ad
Bug 1689162: Update Glean metrics.yaml schema (#18683) 2021-03-29 11:53:45 -04:00
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.
2021-03-29 18:14:15 +03:00
MickeyMoz ec07eec62f Update Android Components version to 75.0.20210328204653. 2021-03-28 23:25:40 +00:00
MickeyMoz db873719be Update Android Components version to 75.0.20210328143118. 2021-03-28 16:30:48 +00:00
Arturo Mejia 367413cd20 For #15372 Improve Onboarding strings 2021-03-27 08:48:13 -04:00
Jonathan Almeida 26c176a75e Issue #18443: Move viewholders to separate files and package 2021-03-27 03:42:34 +04:00
Jonathan Almeida 917783a141 Issue #18443: Fix changes between grid/list viewholders 2021-03-27 03:42:34 +04:00
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>
2021-03-27 03:42:34 +04:00
Gabriel Luong 5d0af34537
For #17291 - Display a list of all active Nimbus experiments (#17515) 2021-03-26 13:58:30 -04:00
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.
2021-03-26 18:25:56 +02:00
rxumoz 46af52d254
Update top sites to add PDD for MozillaOnline builds (#18615) 2021-03-26 12:18:46 -04:00
Mihai Adrian Carare a539f69cb2
For #18260 - Add pin to default sites. (#18618) 2021-03-26 11:36:27 -04:00
Roger Yang c21b44e0a3
Closes #18535: Re-add grid layout to tabs tray (#18638) 2021-03-26 10:33:46 -04:00
Oana Horvath 1c0360af7b Disable customTrackingProtectionSettingsTest 2021-03-26 16:25:14 +02:00
Oana Horvath 11d410de0b Re-enable working UI tests from #18644 2021-03-26 16:25:14 +02:00
Mozilla L10n Automation Bot cc0fdd1109 Import l10n. 2021-03-26 11:39:00 +00:00
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.
2021-03-26 13:06:05 +02:00
Arturo Mejia 869c99afaa For #15372 Optimize the order and messages of onboarding cards 2021-03-24 22:16:00 -04:00
Aaron Train 246c192de3
Closes #18623: Fix Gradle task name in gradlewbuild.py (#18624) 2021-03-24 15:33:17 -04:00
Roger Yang 34a7bc0baa
For #17644: Record when user taps on a add-on's setting (#18504) 2021-03-24 14:31:39 -04:00
MickeyMoz fc220da336 Update Android Components version to 75.0.20210324143047. 2021-03-24 16:32:38 +00:00
Mozilla L10n Automation Bot cd0efaca40 Import l10n. 2021-03-24 00:25:33 +00:00
Jonathan Almeida 2c23941823 Issue #18538: Add BrowserTabsAdapter for tabs tray 2021-03-24 02:37:06 +04:00
Gabriel Luong 3b11b9a700
For #18242 - Wire up "Sync cards across devices" preference with SyncPreferenceView (#18605) 2021-03-23 16:00:41 -04:00
mcarare 90fea8ba5e For #17790: Remove app from recents screen on quit. 2021-03-23 23:02:01 +04:00
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>
2021-03-23 14:16:30 -04:00
Gabriel Luong 578d6b5205
For #18240 - Add a Credit Card preference screen (#18410)
- Removes an unused preference key "pref_key_credit_cards_addresses"
2021-03-23 11:59:32 -04:00
Ryan VanderMeulen 83018c813b
Update version.txt to 89.0.0-beta.1 (#18602) 2021-03-23 11:08:18 -04:00
Roger Yang a8c53c6bf1
Closes #17791: Use updated URL with custom tabs when copying to clipboard (#18590) 2021-03-23 10:31:53 -04:00
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.
2021-03-23 15:54:24 +02:00
Vitaly V. Pinchuk 43c54b7006
For #18395: Dismiss contextual menu when entering/exiting Reader Mode 2021-03-23 11:46:10 +02:00
mcarare d0a45bab21 For #17799: Add extensions submenu item. 2021-03-23 09:52:45 +02:00
Arturo Mejia 54db8f3fde Revert "For #17805 - Fix adjustResize deprecation (#18252)"
This reverts commit 38f906a6
2021-03-22 16:32:20 -04:00
MickeyMoz 5c0c4117b5 Update Android Components version to 74.0.20210322143147. 2021-03-22 16:33:51 +00:00
2303 changed files with 194938 additions and 84952 deletions

View File

@ -11,30 +11,29 @@ jobs:
target-tasks-method: nightly
when:
- {hour: 5, minute: 0}
# This is a temporary hook in order to not overload Google Play.
# See bug 1628413 for more context.
- name: nightly-on-google-play
- {hour: 17, minute: 0}
- name: nightly-test
job:
type: decision-task
treeherder-symbol: Nd-gp
target-tasks-method: nightly-on-google-play
treeherder-symbol: Nt
target-tasks-method: nightly-test
when:
- {hour: 17, minute: 0}
- {hour: 5, minute: 0}
- name: fennec-production
job:
type: decision-task
treeherder-symbol: fennec-production
target-tasks-method: fennec-production
when: [] # Force hook only
- name: bump-android-components
job:
type: decision-task
treeherder-symbol: bump-ac
target-tasks-method: bump_android_components
when: [{hour: 15, minute: 30}]
- name: screenshots
job:
type: decision-task
treeherder-symbol: screenshots-D
target-tasks-method: screenshots
when: [{weekday: 'Monday', hour: 10, minute: 0}]
- name: legacy-api-ui-tests
job:
type: decision-task
treeherder-symbol: legacy-api-ui
target-tasks-method: legacy_api_ui_tests
when: [] # temporarily unscheduled

View File

@ -1,4 +1,6 @@
[*.{kt,kts}]
# Disabling rules that were added in the latest versions of ktlint
# tracking here: https://github.com/mozilla-mobile/fenix/issues/4861
disabled_rules=import-ordering
ij_kotlin_allow_trailing_comma_on_call_site=true
ij_kotlin_allow_trailing_comma=true
[*]
insert_final_newline = true

108
.experimenter.yaml Normal file
View File

@ -0,0 +1,108 @@
---
cookie-banners:
description: Features for cookie banner handling.
hasExposure: true
exposureDescription: ""
variables:
sections-enabled:
type: json
description: This property provides a lookup table of whether or not the given section should be enabled.
growth-data:
description: A feature measuring campaign growth data
hasExposure: true
exposureDescription: ""
variables:
enabled:
type: boolean
description: "If true, the feature is active"
homescreen:
description: The homescreen that the user goes to when they press home or new tab.
hasExposure: true
exposureDescription: ""
variables:
sections-enabled:
type: json
description: "This property provides a lookup table of whether or not the given section should be enabled. If the section is enabled, it should be toggleable in the settings screen, and on by default."
messaging:
description: "Configuration for the messaging system.\n\nIn practice this is a set of growable lookup tables for the\nmessage controller to piece together.\n"
hasExposure: true
exposureDescription: ""
variables:
actions:
type: json
description: A growable map of action URLs.
message-under-experiment:
type: string
description: Id or prefix of the message under experiment.
messages:
type: json
description: A growable collection of messages
notification-config:
type: json
description: Configuration of the notification worker for all notification messages.
on-control:
type: string
description: What should be displayed when a control message is selected.
enum:
- show-next-message
- show-none
styles:
type: json
description: "A map of styles to configure message appearance.\n"
triggers:
type: json
description: "A collection of out the box trigger expressions. Each entry maps to a valid JEXL expression.\n"
mr2022:
description: Features for MR 2022.
hasExposure: true
exposureDescription: ""
variables:
sections-enabled:
type: json
description: This property provides a lookup table of whether or not the given section should be enabled.
nimbus-validation:
description: A feature that does not correspond to an application feature suitable for showing that Nimbus is working. This should never be used in production.
hasExposure: true
exposureDescription: ""
variables:
settings-icon:
type: string
description: The drawable displayed in the app menu for Settings
settings-punctuation:
type: string
description: The emoji displayed in the Settings screen title.
settings-title:
type: string
description: The title of displayed in the Settings screen and app menu.
pre-permission-notification-prompt:
description: A feature that shows the pre-permission notification prompt.
hasExposure: true
exposureDescription: ""
variables:
enabled:
type: boolean
description: "if true, the pre-permission notification prompt is shown to the user."
re-engagement-notification:
description: A feature that shows the re-enagement notification if the user is inactive.
hasExposure: true
exposureDescription: ""
variables:
enabled:
type: boolean
description: "If true, the re-engagement notification is shown to the inactive user."
search-term-groups:
description: A feature allowing the grouping of URLs around the search term that it came from.
hasExposure: true
exposureDescription: ""
variables:
enabled:
type: boolean
description: "If true, the feature shows up on the homescreen and on the new tab screen."
unified-search:
description: A feature allowing user to easily search for specified results directly in the search bar.
hasExposure: true
exposureDescription: ""
variables:
enabled:
type: boolean
description: "If true, the feature shows up in the search bar."

5
.git-blame-ignore-revs Normal file
View File

@ -0,0 +1,5 @@
# .git-blame-ignore-revs
# For #27667 - Remove import-ordering from the list of disabled ktlint rules (#27680)
9654b4dfb122b54b04369fe80a2f9c95811478e8
# For #26844: Fix ktlint issues and remove them from baseline. (#26901)
ffcef5ff2e3f78b6972dd16551f3f653b7035ccc

33
.github/CODEOWNERS vendored
View File

@ -26,35 +26,6 @@
* @mozilla-mobile/ACT @mozilla-mobile/fenix
/.cron.yml @mozilla-mobile/releng @mozilla-mobile/fenix
/.taskcluster.yml @mozilla-mobile/releng @mozilla-mobile/fenix
/automation/ @mozilla-mobile/releng @mozilla-mobile/fenix
/automation/ @mozilla-mobile/fenix
/taskcluster/ @mozilla-mobile/releng @mozilla-mobile/fenix
/.github/ @mozilla-mobile/releng @mozilla-mobile/fenix
# --- PERFORMANCE START --- #
# The performance team would like to monitor some files to understand
# when performance-impacting changes occur. Our intent is not to block
# these changes (for now) but to be aware of them. Please let us know
# if the CODEOWNERS system makes this impractical. We're available at
# #perf-android-frontend on Matrix.
# The perf team is relying on CODEOWNERS to catch regressions. If
# there is a single syntax error in the file, no rules will work.
# Therefore, we make the Perfomance team code owners of this file.
/.github/CODEOWNERS @mozilla-mobile/Performance
# Own /perf/ src directories which typically includes perf code architecture
# or code that monitors for perf regressions. This is our main way to own code
# because it's simpler and less fragile than listing many specific files to own.
/**/src/**/perf/** @mozilla-mobile/Performance
# Possible regressions throughout the app
*.pro @mozilla-mobile/Performance
*proguard* @mozilla-mobile/Performance
# Possible startup regressions
*Application.kt @mozilla-mobile/Performance
# We want to be aware of new features behind flags as well as features
# about to be enabled.
FeatureFlags.kt @mozilla-mobile/Performance
# --- PERFORMANCE END --- #
/.github/ @mozilla-mobile/fenix

View File

@ -1,23 +0,0 @@
---
name: "\U0001F41E Bug report"
about: Create a report to help us improve
title: "[Bug]"
labels: "\U0001F41E bug"
assignees: ''
---
[comment]: # (Please do your best to search for duplicate issues before filing a new issue so we can keep our issue board clean)
[comment]: # (Every issue should have the exact bug and steps to reproduce described in it. Please do not file feedback list tickets as it is difficult to parse them and address their individual points)
[comment]: # (Read https://github.com/mozilla-mobile/fenix#i-want-to-file-an-issue for more information)
## Steps to reproduce
### Expected behavior
### Actual behavior
### Device information
* Device vendor / model and Android version: ?
* Firefox for Android version: ? (go to Settings -> About Firefox)

View File

@ -0,0 +1,91 @@
name: "\U0001F41E Bug report"
description: Create a report to help us improve.
title: "[Bug]: "
labels: ["\U0001F41E bug", "needs:triage"]
body:
- type: markdown
attributes:
value: |
- Please do your best to search for duplicate issues before filing a new issue so we can keep our issue board clean.
- Have a look at ["I want to file an issue!"][info] for more information.
- Read the [Community Participation Guidelines][guidelines] and the [Bugzilla Etiquette guidelines][bugzilla] before filing an issue.
[info]: https://github.com/mozilla-mobile/fenix#i-want-to-file-an-issue
[guidelines]: https://www.mozilla.org/en-US/about/governance/policies/participation/
[bugzilla]: https://bugzilla.mozilla.org/page.cgi?id=etiquette.html
- type: textarea
attributes:
label: Steps to reproduce
description: Steps to reproduce the behaviour.
placeholder: |
1. Have a tab open..
2. Go to..
3. Click on..
4. Observe..
validations:
required: true
- type: textarea
attributes:
label: Expected behaviour
placeholder: A menu should open..
validations:
required: true
- type: textarea
attributes:
label: Actual behaviour
placeholder: The app closes unexpectedly..
validations:
required: true
- type: markdown
attributes:
value: |
# Device information
- type: input
attributes:
label: Device name
description: The name of the device model and manufacturer.
placeholder: Google Pixel 2
validations:
required: false
- type: input
attributes:
label: Android version
description: You can find the Android version information in the About section of your device's system settings.
placeholder: Android 10
validations:
required: true
- type: dropdown
attributes:
label: Firefox release type
description: You can find this information in Settings -> About Firefox.
options:
- Firefox Nightly
- Firefox Beta
- Firefox
validations:
required: true
- type: input
attributes:
label: Firefox version
description: You can find this information in Settings -> About Firefox.
placeholder: 89.0.10
validations:
required: true
- type: textarea
attributes:
label: Device logs
description: |
Device logs or crash information can greatly aid in debugging. You can find some details here on how to [retrieve device logs or crash IDs][log].
[log]: https://github.com/mozilla-mobile/fenix/wiki/Logging-Crash-Information
validations:
required: false
- type: textarea
attributes:
label: Additional information
description: |
If you have any additional information for us, use the field below.
Please note, you can attach screenshots or screen recordings here, by
dragging and dropping files in the field below.
validations:
required: false

View File

@ -2,7 +2,7 @@
name: "⌛ Performance issue"
about: Create a performance issue if the app is slow or it uses too much memory, disk space, battery, or network data
title: ""
labels: "eng:performance"
labels: "performance"
assignees: ''
---

13
.github/ISSUE_TEMPLATE/--unit-test.md vendored Normal file
View File

@ -0,0 +1,13 @@
---
name: "\U0001F6A8 Intermittent Unit Test Issue"
about: Create an issue to help log a Unit Test failure
labels: "eng:intermittent-test"
title: "Intermittent Unit Test failure - <Classname.testName>"
assignees: ''
---
### Test Run:
Provide a test run report link here showcasing the problem (e.g, Taskcluster), and a link to the source Github event
### Stacktrace:
### Build:

View File

@ -1,69 +1,37 @@
## Overview ##
Firefox for Android roughly follows the [Firefox Gecko release schedule](https://wiki.mozilla.org/Release_Management/Calendar#Calendars).
This means we cut a beta at the end of every two sprints, with a full cycle (~4 weeks) of baking on Beta before going to release. Uplifts must be approved by Release Owner (st3fan).
This means we cut a Beta every 4 weeks, with a full cycle (~4 weeks) of baking on Beta before going to Production release.
The [Firefox for Android release schedule](https://docs.google.com/spreadsheets/d/1HotjliSCGOp2nTkfXrxv8qYcurNpkqLWBKbbId6ovTY/edit#gid=0) contains more details related to specific Mobile handoffs.
| Monday | Tuesday | Wednesday | Thursday | Friday |
|-----------------|---------------------------|--------------------------------|-------------------|-----------------|
| (week 1) | | (Y.2 sprint ended) |Sprint **X.1** starts | |
| (week 2) | | | | |
| (week 3) | | Cut **X.1-beta** 12PST | **X.1-beta** QA / Sprint X.2 starts ||
| (week 4) | | | | |
| (week 5) | | Uplift L10N to **X.1-beta** | Sprint Z.1 starts | |
| (week 6) | Build X.1-RC with GV Prod for QA | | | |
| (week 7) | Release X.1 - 5% | Release X.1 20% / Cut Z.1-beta | Release X.1 100% | |
### Requirements
- JIRA access
- Bugzilla account
- Sentry access
## Release Checklist
There are two releases this covers: the current sprint that is going out to Beta, and the previous Beta that is going to Production.
## Firefox for Android Release
There are two releases this covers: the current changes in the Fenix Nightly channel that is going out to Beta, and the current Beta that is going to Production.
## Start of Sprint X.1 [Thursday, 1st week of sprint]
- [ ] [Create an issue](https://github.com/mozilla-mobile/fenix/issues/new?template=release_checklist.md&title=Releng+for+) "Releng for v[release]" to track the current sprint.
## Cutting a Beta
## Sprint X.1 End [Wednesday, 2nd week] Cutting a Beta
- [ ] Make a new Beta
- [ ] Create a branch off of master (DO NOT PUSH YET) for the *current* milestone of format `releases_v85.0.0`. After that, anything landing in master will be part of the next release.
- ⚠️ Please **do not** use `/` in branch names anymore: Taskcluster silently ignores them and doesn't output tasks at the right index.
- [ ] Bump `version.txt` to match the new version number
- [ ] Grant [mozilla-release-automation-bot](https://github.com/mozilla-release-automation-bot) write access to this branch.
- [ ] On the new Beta branch, pin the AC version to the stable version ([example](https://github.com/mozilla-mobile/fenix/commit/e413da29f6a7a7d4a765817a9cd5687abbf27619)) with commit message "Issue #`<this releng issue>`: Pin to stable AC `<version>` for release v85"
- [ ] Update the title to include this AC version "Releng for v[release] with AC [version]"
- Note: You will need code review to make changes to the release branch after this point, because it is a protected branch.
- [ ] Push the branch.
- [ ] Review [FeatureFlags](https://github.com/mozilla-mobile/fenix/blob/main/app/src/main/java/org/mozilla/fenix/FeatureFlags.kt) to determine if there are features that need to be enabled (or disabled) for Beta and Production release of Fenix. This will be a discussion with PO, PMs, EMs.
- [ ] Make a new Beta: Follow instructions [here](https://github.com/mozilla-mobile/fenix/wiki/Creating-a-release-branch) and notify the Release Management team (slack: #releaseduty-mobile). QA team is notified that a Beta release has been captured and they will run tests for Beta release sign-off
- [ ] Once there is GREEN QA signoff, the Release Management team (slack: #releaseduty-mobile) pushes the Beta version in the [Google Play Console](https://play.google.com/console/)
- [ ] Check Sentry each day for issues on [Firefox Beta](https://sentry.prod.mozaws.net/operations/firefox-beta/) and if nothing concerning, Release Management team bumps releases to 25%. Subsequent Beta builds are bumped to 100% assuming no blocking issues arise.
### Bugfix uplifts / Beta Product Integrity
- [ ] If bugs are considered release blocker then find someone to fix them on main and the milestone branch (cherry-pick / uplift)
- [ ] Add the uplift request to the appropriate row in the [Uplifts document](https://docs.google.com/spreadsheets/d/1qIvHpcQ3BqJtlzV5T4M1MhbWVxkNiG-ToeYnWEBW4-I/edit#gid=0). Ask for approval of uplift from Release Owner [amedyne](https://github.com/amedyne) and then notify Release Management team (slack: #releaseduty-mobile) of the uplift changes
- Note: Beta release versions are captured at least once a week during the Beta cycle.
- [ ] Tell Release Management the first beta is ready to be shipped. They'll use https://shipit.mozilla-releng.net/new to kick off a new release. This replaces the process that involved GitHub releases. Now Github releases are automatically created by [mozilla-release-automation-bot](https://github.com/mozilla-release-automation-bot)
- [ ] Send an email to QA at mozilla-mobile-qa@softvision.com with a link to the Taskcluster build (subdirectory of the [Fenix CI](https://firefox-ci-tc.services.mozilla.com/tasks/index/mobile.v2.fenix.beta))
### Bugfix uplifts / Beta Product Integrity (Beta Release until PI green signoff)
- [ ] If bugs are considered release blocker then find someone to fix them on master and the milestone branch (cherry-pick / uplift)
- [ ] Add the uplift request to the appropriate row in the [Uplifts document](https://docs.google.com/spreadsheets/d/1qIvHpcQ3BqJtlzV5T4M1MhbWVxkNiG-ToeYnWEBW4-I/edit#gid=0).
- [ ] If needed, ship a new beta version (e.g. v1.0-beta.2) and follow the submission checklist again.
- [ ] Once there is GREEN QA signoff, file a [release management bugzilla for rollout](https://bugzilla.mozilla.org/show_bug.cgi?id=1664366)
- [ ] Check Sentry each day for issues on [Firefox Beta](https://sentry.prod.mozaws.net/operations/firefox-beta/) and if nothing concerning, bump release in the bugzilla (5%, 20%, 100%)
### Production Release Candidate
- Production Release Candidate is captured on the third week of Beta by the Release Management team (slack: #releaseduty-mobile). This is then sent to Quality Assurance for Production Release Testing Sign-off.
### Uplifting L10N strings to Beta [Wednesday, 2 weeks after sprint end]
- [ ] Find the issue ([example](https://github.com/mozilla-mobile/fenix/issues/16381)) filed by L10N / delphine saying string are ready for uplift (it takes 2 weeks for localizers to prepare localization).
- [ ] If there are new locales that are ready to be added to Release, add them to [l10n-release.toml](https://github.com/mozilla-mobile/fenix/blob/master/l10n-release.toml)
- [ ] Run the [L10N uplift script](https://github.com/mozilla-mobile/fenix/blob/master/l10n-uplift.py) against the releases/vX.1 branch (releases/v85.0.0). There will likely be conflicts, but if you are confused, they should match the strings in [main/Nightly](https://github.com/mozilla-mobile/fenix/tree/master/app/src/main/res)
- [ ] Once all conflicts are resolved, tag a new Beta to be released.
- [ ] Notify delphine in the L10N issue that the strings have been uplifted, and string quarantine can be lifted
### Production Release Candidate [Tuesday, 3 weeks after X.1 Beta was cut]
- [ ] In android-components: Create a dot release with the GeckoView Production release candidate.
- [ ] Open a PR against the release branch (releases/v85.0.0) with the AC version bump "Pin to stable AC `<version>` for release v85`. You will need code review.
- [ ] Modify `version.txt` to now follow the pattern: `vX.X.X-rc.1` (e.g.: v85.0.0-rc.1)
- [ ] Tell Release Management you would like to ship a new release.
- [ ] Send an email to QA at mozilla-mobile-qa@softvision.com with a link to the Taskcluster build (subdirectory of the [Fenix CI](https://firefox-ci-tc.services.mozilla.com/tasks/index/mobile.v2.fenix.release))
## Production Release
- [ ] Once there is GREEN QA signoff, the Production Release Candidate is pushed to the Alpha testing track in [Google Play Console](https://play.google.com/console/u/0/developers/7083182635971239206/app/4972519468758466290/releases/overview) by the Release Management team (slack: #releaseduty-mobile)
- [ ] If nothing is concerning, release management officially tags the Release Candidate as Production release, (usually 1 week after 1st Release Candidate)
- [ ] Check Sentry for new crashes. Follow instructions for [Crash Monitoring](https://github.com/mozilla-mobile/fenix/wiki/Crash-Monitoring). File issues and triage.
- [ ] If nothing concerning, release management bumps releases(5%, 25%, 100%)
### Production Release [Release day, from [release calendar](https://docs.google.com/spreadsheets/d/1HotjliSCGOp2nTkfXrxv8qYcurNpkqLWBKbbId6ovTY/edit#gid=0)]
- [ ] Modify `version.txt` to now follow the pattern: `vX.1.X` (e.g.: v85.1.0)
- [ ] File Bugzilla ticket for [release management](https://bugzilla.mozilla.org/show_bug.cgi?id=1672212)
- [ ] Check Sentry for new crashes. File issues and triage.
- [ ] Each day, bump the release rollout if nothing concerning (5%, 20%, 100%)

View File

@ -6,8 +6,18 @@
- [ ] **Screenshots**: This PR includes screenshots or GIFs of the changes made or an explanation of why it does not
- [ ] **Accessibility**: The code in this PR follows [accessibility best practices](https://github.com/mozilla-mobile/shared-docs/blob/master/android/accessibility_guide.md) or does not include any user facing features. In addition, it includes a screenshot of a successful [accessibility scan](https://play.google.com/store/apps/details?id=com.google.android.apps.accessibility.auditor&hl=en_US) to ensure no new defects are added to the product.
### To download an APK when reviewing a PR:
1. click on Show All Checks,
2. click Details next to "Taskcluster (pull_request)" after it appears and then finishes with a green checkmark,
3. click on the "Fenix - assemble" task, then click "Run Artifacts".
4. the APK links should be on the left side of the screen, named for each CPU architecture
### QA
<!-- Before submitting the PR, please address each item -->
- [x] **QA Needed**
### To download an APK when reviewing a PR (after all CI tasks finished running):
1. Click on `Checks` at the top of the PR page.
2. Click on the `firefoxci-taskcluster` group on the left to expand all tasks.
3. Click on the `build-debug` task.
4. Click on `View task in Taskcluster` in the new `DETAILS` section.
5. The APK links should be on the right side of the screen, named for each CPU architecture.
### GitHub Automation
<!-- Do not add anything below this line -->
Used by GitHub Actions.

1
.github/stale.yml vendored
View File

@ -14,6 +14,7 @@ onlyLabels: []
exemptLabels:
- pin
- "feature request 🌟"
- "eng:disabled-test"
# Set to true to ignore issues in a project (defaults to false)
exemptProjects: false

View File

@ -3,14 +3,14 @@ on: [pull_request]
jobs:
run-build:
runs-on: ubuntu-20.04
if: github.event.pull_request.head.repo.full_name != github.repository && github.actor != 'MickeyMoz'
if: ${{ false }}
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Setup Java
uses: actions/setup-java@v1
with:
java-version: 1.8
java-version: 11
- name: "Clean & Assemble Debug"
uses: eskatos/gradle-command-action@v1
with:
@ -29,7 +29,7 @@ jobs:
- name: Setup Java
uses: actions/setup-java@v1
with:
java-version: 1.8
java-version: 11
- name: "Test Debug Unit Tests"
uses: eskatos/gradle-command-action@v1
with:
@ -48,7 +48,7 @@ jobs:
- name: Setup Java
uses: actions/setup-java@v1
with:
java-version: 1.8
java-version: 11
- name: "Detekt"
uses: eskatos/gradle-command-action@v1
with:
@ -72,7 +72,7 @@ jobs:
- name: Setup Java
uses: actions/setup-java@v1
with:
java-version: 1.8
java-version: 11
- name: "Ktlint"
uses: eskatos/gradle-command-action@v1
with:
@ -91,7 +91,7 @@ jobs:
- name: Setup Java
uses: actions/setup-java@v1
with:
java-version: 1.8
java-version: 11
- name: "Lint Debug"
uses: eskatos/gradle-command-action@v1
with:
@ -105,3 +105,29 @@ jobs:
name: lintDebug report
path: app/build/reports/lint-results-debug.html
run-ui:
runs-on: macos-11
if: ${{ false }}
timeout-minutes: 60
strategy:
matrix:
api-level: [28]
target: [google_apis]
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Run subset of UI Tests
uses: reactivecircus/android-emulator-runner@v2.21.0
with:
api-level: ${{ matrix.api-level }}
target: ${{ matrix.target }}
arch: x86_64
profile: pixel_2
script:
"JAVA_HOME=$JAVA_HOME_11_X64 && ./gradlew connectedDebugAndroidTest -Pandroid.testInstrumentationRunnerArguments.class=\
org.mozilla.fenix.ui.NavigationToolbarTest#visitURLTest"
- name: Upload Test Artifacts
uses: actions/upload-artifact@v2
with:
name: test-report
path: app/build/reports

View File

@ -0,0 +1,44 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/
name: "Fenix - Sync Strings"
on:
schedule:
- cron: '0 2 * * *'
jobs:
main:
name: "Sync Strings"
runs-on: ubuntu-20.04
steps:
- name: "Discover Fenix Beta Version"
id: fenix-beta-version
uses: mozilla-mobile/fenix-beta-version@4.1.0
- name: "Skip non-beta versions"
uses: andymckay/cancel-action@0.2
if: ${{ steps.fenix-beta-version.outputs.beta_version == '' }}
- name: "Checkout Master Branch"
uses: actions/checkout@v2
with:
path: main
ref: main
- name: "Checkout Beta Branch"
uses: actions/checkout@v2
with:
path: beta
ref: "releases_v${{ steps.fenix-beta-version.outputs.beta_version }}.0.0"
- name: "Sync Strings"
uses: mozilla-mobile/sync-strings-action@1.0.1
with:
src: main
dst: beta
- name: Create Pull Request
uses: peter-evans/create-pull-request@v3
with:
token: ${{ secrets.GITHUB_TOKEN }}
path: beta
branch: automation/sync-strings-${{ steps.fenix-beta-version.outputs.beta_version }}
title: "Sync Strings from main to releases_${{steps.fenix-beta-version.outputs.beta_version}}.0"
body: "This (automated) PR syncs strings from `main` to `releases_${{steps.fenix-beta-version.outputs.beta_version}}.0.0`"

23
.github/workflows/fenix-update-ac.yml vendored Normal file
View File

@ -0,0 +1,23 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/
name: "Fenix - Update Android-Components"
on:
schedule:
- cron: '*/15 * * * *'
jobs:
main:
name: "Update Android-Components"
runs-on: ubuntu-20.04
steps:
- name: "Update Android-Components"
uses: mozilla-mobile/relbot@5.0.2
if: github.repository == 'mozilla-mobile/fenix'
with:
project: fenix
command: update-android-components
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

View File

@ -0,0 +1,42 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/
name: "Fenix - Update Nimbus Experiments"
on:
schedule:
- cron: '*/30 * * * *'
workflow_dispatch: {}
jobs:
update-nimbus-experiments:
name: "Update Nimbus Experiments"
runs-on: ubuntu-latest
steps:
- name: "Checkout Main Branch"
uses: actions/checkout@v2
with:
path: fenix
ref: main
fetch-depth: 0
- name: "Update Experiments JSON"
id: update-experiments-json
uses: mozilla-mobile/update-experiments@v2
with:
repo-path: fenix
output-path: app/src/main/res/raw/initial_experiments.json
experimenter-url: https://experimenter.services.mozilla.com/api/v6/experiments-first-run/
app-name: fenix
branch: automation/update-nimbus-experiments
- name: Create Pull Request
uses: peter-evans/create-pull-request@v3
if: steps.update-experiments-json.outputs.changed == 1 && steps.update-experiments-json.outputs.changed-branch == 1
with:
token: ${{ secrets.GITHUB_TOKEN }}
path: fenix
branch: automation/update-nimbus-experiments
commit-message: "update initial_experiments.json based on the current first-run experiments in experimenter"
title: "Update initial experiments JSON for Nimbus"
body: "This (automated) PR updates the initial_experiments.json on the `main` branch"
delete-branch: true

View File

@ -0,0 +1,10 @@
---
name: Glean probe-scraper
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
glean-probe-scraper:
uses: mozilla/probe-scraper/.github/workflows/glean.yaml@main

21
.github/workflows/issue-linker.yml vendored Normal file
View File

@ -0,0 +1,21 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/
name: Issue Linker
on:
pull_request_target:
branches:
- main
jobs:
issue_linker:
runs-on: ubuntu-latest
steps:
- name: Issue Linker
uses: gabrielluong/issue-linker@1.0.0
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
commit-regexp: "#(\\d+)+"
section: "### GitHub Automation"

20
.github/workflows/milestone.yml vendored Normal file
View File

@ -0,0 +1,20 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/
name: Tag Milestone
on:
issues:
types:
- closed
jobs:
milestone:
runs-on: ubuntu-latest
if: github.actor == 'mergify[bot]'
steps:
- name: Tag Milestone
uses: gabrielluong/milestone@1.0.0
with:
github-token: ${{ secrets.GITHUB_TOKEN }}

22
.github/workflows/qa-needed.yml vendored Normal file
View File

@ -0,0 +1,22 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/
name: QA Needed
on:
pull_request_target:
branches:
- main
jobs:
qa_needed:
runs-on: ubuntu-latest
steps:
- name: QA Needed
uses: gabrielluong/qa-needed@1.0.1
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
label: "eng:reopen-for-qa"
check-regexp: "- \\[([ xX]?)\\] \\*\\*QA Needed\\*\\*"
commit-regexp: "#(\\d+)+"

View File

@ -0,0 +1,21 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/
name: Reopen for QA Needed
on:
issues:
types:
- closed
jobs:
reopen_qa_needed:
runs-on: ubuntu-latest
steps:
- name: Reopen for QA Needed
uses: gabrielluong/reopen-for-qa-needed@1.0.0
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
reopen-label: "eng:reopen-for-qa"
qa-label: "eng:qa:needed"

View File

@ -1,23 +0,0 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/
name: "Update Android-Components"
on:
schedule:
- cron: '*/15 * * * *'
jobs:
main:
name: "Update Android-Components"
runs-on: ubuntu-20.04
steps:
- name: "Update Android-Components"
uses: mozilla-mobile/relbot@master
if: github.repository == 'mozilla-mobile/fenix'
with:
project: fenix
command: update-android-components
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

3
.gitignore vendored
View File

@ -80,11 +80,12 @@ gen-external-apklibs
.DS_Store
# Secrets files, e.g. tokens
.leanplum_token
.adjust_token
.sentry_token
.mls_token
.nimbus
.wallpaper_url
.pocket_consumer_key
# Python Byte-compiled / optimized / DLL files
__pycache__/

View File

@ -1,3 +1,9 @@
queue_rules:
- name: default
conditions:
- or:
- status-success=complete-pr
- status-success=complete-push
pull_request_rules:
- name: Resolve conflict
conditions:
@ -5,83 +11,86 @@ pull_request_rules:
actions:
comment:
message: This pull request has conflicts when rebasing. Could you fix it @{{author}}? 🙏
- name: MickeyMoz - Auto Merge
- name: Android-Components bump - Auto Merge
conditions:
- author=MickeyMoz
- status-success=pr-complete
- files~=(Gecko.kt|AndroidComponents.kt)
- and:
- files=buildSrc/src/main/java/AndroidComponents.kt
- -files~=^(?!buildSrc/src/main/java/AndroidComponents.kt).+$
- author=github-actions[bot]
- status-success=complete-push
- or:
- and:
- base=main
- head~=^relbot/AC-Nightly-.+
- and:
- base~=^releases[_/].*
- head~=^relbot/fenix-\d+
actions:
review:
type: APPROVE
message: MickeyMoz 💪
merge:
message: 🚢
queue:
method: rebase
strict: smart
name: default
rebase_fallback: none
- name: L10N - Auto Merge
conditions:
- author=mozilla-l10n-automation-bot
- status-success=pr-complete
- files~=(strings.xml|l10n.toml)
- and:
- files~=^(l10n.toml|app/src/main/res/values[A-Za-z-]*/strings\.xml)$
# /!\ The line above doesn't prevent random files to be changed alongside
# l10n ones. That's why the additional condition exists below. For more
# information: https://docs.mergify.com/conditions/#how-to-match-lists
- -files~=^(?!(l10n.toml|app/src/main/res/values[A-Za-z-]*/strings\.xml)).+$
- or:
- and:
- author=mozilla-l10n-automation-bot
- base=main
- head=import-l10n
- status-success=complete-pr
- and:
- author=github-actions[bot]
- base~=^releases[_/].*
- head~=^automation/sync-strings-\d+
- status-success=complete-push
# Taskcluster only runs on git-push events because github-actions[bot] is not considered
# a collaborator, so pull request events are triggered. That said, github-actions[bot]
# doesn't create the PR on a separate fork (unlike mozilla-l10n-automation-bot). That's
# why git-push events are taken into account
actions:
review:
type: APPROVE
message: LGTM 😎
merge:
method: rebase
strict: smart
- name: Release automation (Old)
queue:
method: squash
name: default
rebase_fallback: none
- name: Needs landing - Rebase
conditions:
- base~=releases[_/].*
- author=github-actions[bot]
# Listing checks manually beause we do not have a "push complete" check yet.
- check-success=build-android-test-debug
- check-success=build-debug
- check-success=build-nightly-simulation
- check-success=lint-compare-locales
- check-success=lint-detekt
- check-success=lint-ktlint
- check-success=lint-lint
- check-success=signing-android-test-debug
- check-success=signing-debug
- check-success=signing-nightly-simulation
- check-success=test-debug
- check-success=ui-test-x86-debug
- files~=(AndroidComponents.kt)
- or:
- check-success=complete-pr
- check-success=complete-push
- label=pr:needs-landing
- "#approved-reviews-by>=1"
- -draft
- label!=pr:work-in-progress
- label!=pr:do-not-land
actions:
review:
type: APPROVE
message: 🚢
merge:
queue:
method: rebase
strict: smart
delete_head_branch:
force: false
- name: Release automation (New)
name: default
rebase_fallback: none
- name: Needs landing - Squash
conditions:
- base~=releases[_/].*
- author=github-actions[bot]
# Listing checks manually beause we do not have a "push complete" check yet.
- check-success=build-android-test-beta
- check-success=build-android-test-debug
- check-success=build-beta-firebase
- check-success=build-debug
- check-success=build-nightly-simulation
- check-success=lint-compare-locales
- check-success=lint-detekt
- check-success=lint-ktlint
- check-success=lint-lint
- check-success=signing-android-test-beta
- check-success=signing-beta-firebase
- check-success=signing-nightly-simulation
- check-success=test-debug
- check-success=ui-test-x86-beta
- files~=(AndroidComponents.kt)
- or:
- check-success=complete-pr
- check-success=complete-push
- label=pr:needs-landing-squashed
- "#approved-reviews-by>=1"
- -draft
- label!=pr:work-in-progress
- label!=pr:do-not-land
actions:
review:
type: APPROVE
message: 🚢
merge:
method: rebase
strict: smart
delete_head_branch:
force: false
queue:
method: squash
name: default
rebase_fallback: none

View File

@ -6,333 +6,288 @@ policy:
pullRequests: collaborators
tasks:
- $let:
taskgraph:
branch: taskgraph
revision: a458418ef7cdd6778f1283926c6116966255bc24
trustDomain: mobile
trustDomain: mobile
# Github events have this stuff in different places...
ownerEmail:
$if: 'tasks_for in ["cron", "action"]'
then: '${tasks_for}@noreply.mozilla.org'
else:
$if: 'tasks_for == "github-push"'
then:
$if: 'event.pusher.email'
then: '${event.pusher.email}'
else: '${event.pusher.name}@users.noreply.github.com'
else:
$if: 'tasks_for == "github-pull-request"'
then: '${event.pull_request.user.login}@users.noreply.github.com'
baseRepoUrl:
$if: 'tasks_for == "github-push"'
then: '${event.repository.html_url}'
else:
$if: 'tasks_for == "github-pull-request"'
then: '${event.pull_request.base.repo.html_url}'
else:
$if: 'tasks_for in ["cron", "action"]'
then: '${repository.url}'
repoUrl:
$if: 'tasks_for == "github-push"'
then: '${event.repository.html_url}'
else:
$if: 'tasks_for == "github-pull-request"'
then: '${event.pull_request.head.repo.html_url}'
else:
$if: 'tasks_for in ["cron", "action"]'
then: '${repository.url}'
project:
$if: 'tasks_for == "github-push"'
then: '${event.repository.name}'
else:
$if: 'tasks_for == "github-pull-request"'
then: '${event.pull_request.head.repo.name}'
else:
$if: 'tasks_for in ["cron", "action"]'
then: '${repository.project}'
head_branch:
$if: 'tasks_for == "github-pull-request"'
then: ${event.pull_request.head.ref}
else:
$if: 'tasks_for == "github-push"'
then: ${event.ref}
else:
$if: 'tasks_for in ["action", "cron"]'
then: '${push.branch}'
head_sha:
$if: 'tasks_for == "github-push"'
then: '${event.after}'
else:
$if: 'tasks_for == "github-pull-request"'
then: '${event.pull_request.head.sha}'
else:
$if: 'tasks_for in ["action", "cron"]'
then: '${push.revision}'
ownTaskId:
$if: '"github" in tasks_for'
then: {$eval: as_slugid("decision_task")}
else:
$if: 'tasks_for in ["cron", "action"]'
then: '${ownTaskId}'
pullRequestAction:
$if: 'tasks_for == "github-pull-request"'
then: ${event.action}
else: 'UNDEFINED'
in:
$let:
# Github events have this stuff in different places...
ownerEmail:
$if: 'tasks_for in ["cron", "action"]'
then: '${tasks_for}@noreply.mozilla.org'
else:
$if: 'event.sender.login == "bors[bot]"'
then: 'skaspari+mozlando@mozilla.com' # It must match what's in bors.toml
else:
$if: 'tasks_for == "github-push"'
then: '${event.pusher.email}'
else:
$if: 'tasks_for == "github-pull-request"'
then: '${event.pull_request.user.login}@users.noreply.github.com'
else:
$if: 'tasks_for == "github-release"'
then: '${event.sender.login}@users.noreply.github.com'
baseRepoUrl:
$if: 'tasks_for in ["github-push", "github-release"]'
then: '${event.repository.html_url}'
else:
$if: 'tasks_for == "github-pull-request"'
then: '${event.pull_request.base.repo.html_url}'
else:
$if: 'tasks_for in ["cron", "action"]'
then: '${repository.url}'
repoUrl:
$if: 'tasks_for in ["github-push", "github-release"]'
then: '${event.repository.html_url}'
else:
$if: 'tasks_for == "github-pull-request"'
then: '${event.pull_request.head.repo.html_url}'
else:
$if: 'tasks_for in ["cron", "action"]'
then: '${repository.url}'
project:
$if: 'tasks_for in ["github-push", "github-release"]'
then: '${event.repository.name}'
else:
$if: 'tasks_for == "github-pull-request"'
then: '${event.pull_request.head.repo.name}'
else:
$if: 'tasks_for in ["cron", "action"]'
then: '${repository.project}'
head_branch:
$if: 'tasks_for == "github-pull-request"'
then: ${event.pull_request.head.ref}
else:
$if: 'tasks_for == "github-push"'
then: ${event.ref}
else:
$if: 'tasks_for == "github-release"'
then: '${event.release.target_commitish}'
else:
$if: 'tasks_for in ["action", "cron"]'
then: '${push.branch}'
head_sha:
$if: 'tasks_for == "github-push"'
then: '${event.after}'
else:
$if: 'tasks_for == "github-pull-request"'
then: '${event.pull_request.head.sha}'
else:
$if: 'tasks_for == "github-release"'
then: '${event.release.tag_name}'
else:
$if: 'tasks_for in ["action", "cron"]'
then: '${push.revision}'
head_tag:
$if: 'tasks_for == "github-release"'
then: '${event.release.tag_name}'
else: ''
ownTaskId:
$if: '"github" in tasks_for'
then: {$eval: as_slugid("decision_task")}
else:
$if: 'tasks_for in ["cron", "action"]'
then: '${ownTaskId}'
pullRequestAction:
$if: 'tasks_for == "github-pull-request"'
then: ${event.action}
else: 'UNDEFINED'
releaseAction:
$if: 'tasks_for == "github-release"'
then: ${event.action}
else: 'UNDEFINED'
in:
$if: >
tasks_for in ["action", "cron"]
|| (tasks_for == "github-pull-request" && pullRequestAction in ["opened", "reopened", "synchronize"])
|| (tasks_for == "github-push" && head_branch[:10] != "refs/tags/") && (head_branch != "staging.tmp") && (head_branch != "trying.tmp") && (head_branch[:8] != "mergify/")
|| (tasks_for == "github-release" && releaseAction == "published" && (ownerEmail != "mozilla-release-automation-bot@users.noreply.github.com") && (ownerEmail != "mozilla-release-automation-bot-staging@users.noreply.github.com"))
then:
$let:
level:
$if: 'tasks_for in ["github-push", "github-release", "action", "cron"] && repoUrl == "https://github.com/mozilla-mobile/fenix"'
then: '3'
else: '1'
short_head_branch:
$if: 'head_branch[:11] == "refs/heads/"'
then: {$eval: 'head_branch[11:]'}
in:
$mergeDeep:
- $if: 'tasks_for != "action"'
$if: >
tasks_for in ["action", "cron"]
|| (tasks_for == "github-pull-request" && pullRequestAction in ["opened", "reopened", "synchronize"])
|| (tasks_for == "github-push" && head_branch[:10] != "refs/tags/") && (head_branch != "staging.tmp") && (head_branch != "trying.tmp") && (head_branch[:8] != "mergify/")
then:
$let:
level:
$if: 'tasks_for in ["github-push", "action", "cron"] && repoUrl == "https://github.com/mozilla-mobile/fenix"'
then: '3'
else: '1'
short_head_branch:
$if: 'head_branch[:11] == "refs/heads/"'
then: {$eval: 'head_branch[11:]'}
in:
taskId:
$if: 'tasks_for != "action"'
then: '${ownTaskId}'
taskGroupId:
$if: 'tasks_for == "action"'
then: '${action.taskGroupId}'
else: '${ownTaskId}' # same as taskId; this is how automation identifies a decision task
schedulerId: '${trustDomain}-level-${level}'
created: {$fromNow: ''}
deadline: {$fromNow: '1 day'}
expires: {$fromNow: '1 year 1 second'} # 1 second so artifacts expire first, despite rounding errors
metadata:
$merge:
- owner: "${ownerEmail}"
source: '${repoUrl}/raw/${head_sha}/.taskcluster.yml'
- $if: 'tasks_for in ["github-push", "github-pull-request"]'
then:
taskId: '${ownTaskId}'
- taskGroupId:
$if: 'tasks_for == "action"'
name: "Decision Task"
description: 'The task that creates all of the other tasks in the task graph'
else:
$if: 'tasks_for == "action"'
then:
name: "Action: ${action.title}"
description: |
${action.description}
Action triggered by clientID `${clientId}`
else:
name: "Decision Task for cron job ${cron.job_name}"
description: 'Created by a [cron task](https://firefox-ci-tc.services.mozilla.com/tasks/${cron.task_id})'
provisionerId: "${trustDomain}-${level}"
workerType: "decision-gcp"
tags:
$if: 'tasks_for in ["github-push", "github-pull-request"]'
then:
kind: decision-task
else:
$if: 'tasks_for == "action"'
then:
kind: 'action-callback'
else:
$if: 'tasks_for == "cron"'
then:
kind: cron-task
routes:
$flattenDeep:
- checks
- $if: 'level == "3" || repoUrl == "https://github.com/mozilla-releng/staging-fenix"'
then:
- tc-treeherder.v2.${project}.${head_sha}
# TODO Bug 1601928: Make this scope fork-friendly once ${project} is better defined. This will enable
# staging release promotion on forks.
- $if: 'tasks_for == "github-push"'
then:
- index.${trustDomain}.v2.${project}.branch.${short_head_branch}.latest.taskgraph.decision
- index.${trustDomain}.v2.${project}.branch.${short_head_branch}.revision.${head_sha}.taskgraph.decision
- index.${trustDomain}.v2.${project}.revision.${head_sha}.taskgraph.decision
- $if: 'tasks_for == "cron"'
then:
# cron context provides ${head_branch} as a short one
- index.${trustDomain}.v2.${project}.branch.${head_branch}.latest.taskgraph.decision-${cron.job_name}
- index.${trustDomain}.v2.${project}.branch.${head_branch}.revision.${head_sha}.taskgraph.decision-${cron.job_name}
- index.${trustDomain}.v2.${project}.branch.${head_branch}.revision.${head_sha}.taskgraph.cron.${ownTaskId}
scopes:
$if: 'tasks_for == "github-push"'
then:
# `https://` is 8 characters so, ${repoUrl[8:]} is the repository without the protocol.
- 'assume:repo:${repoUrl[8:]}:branch:${short_head_branch}'
else:
$if: 'tasks_for == "github-pull-request"'
then:
- 'assume:repo:github.com/${event.pull_request.base.repo.full_name}:pull-request'
else:
$if: 'tasks_for == "action"'
then:
# when all actions are hooks, we can calculate this directly rather than using a variable
- '${action.repo_scope}'
else:
- 'assume:repo:${repoUrl[8:]}:cron:${cron.job_name}'
requires: all-completed
priority: lowest
retries: 5
payload:
env:
# run-task uses these to check out the source; the inputs
# to `mach taskgraph decision` are all on the command line.
$merge:
- MOBILE_BASE_REPOSITORY: '${baseRepoUrl}'
MOBILE_HEAD_REPOSITORY: '${repoUrl}'
MOBILE_HEAD_REF: '${head_branch}'
MOBILE_HEAD_REV: '${head_sha}'
MOBILE_REPOSITORY_TYPE: git
MOBILE_PIP_REQUIREMENTS: taskcluster/requirements.txt
MOZ_AUTOMATION: "1"
REPOSITORIES: {$json: {mobile: "Fenix"}}
HG_STORE_PATH: /builds/worker/checkouts/hg-store
ANDROID_SDK_ROOT: /builds/worker/android-sdk
- $if: 'tasks_for in ["github-pull-request"]'
then:
'${action.taskGroupId}'
else:
'${ownTaskId}' # same as taskId; this is how automation identifies a decision task
schedulerId: '${trustDomain}-level-${level}'
created: {$fromNow: ''}
deadline: {$fromNow: '1 day'}
expires: {$fromNow: '1 year 1 second'} # 1 second so artifacts expire first, despite rounding errors
metadata:
$merge:
- owner: "${ownerEmail}"
source: '${repoUrl}/raw/${head_sha}/.taskcluster.yml'
- $if: 'tasks_for in ["github-push", "github-pull-request", "github-release"]'
MOBILE_PULL_REQUEST_NUMBER: '${event.pull_request.number}'
- $if: 'tasks_for == "action"'
then:
ACTION_TASK_GROUP_ID: '${action.taskGroupId}' # taskGroupId of the target task
ACTION_TASK_ID: {$json: {$eval: 'taskId'}} # taskId of the target task (JSON-encoded)
ACTION_INPUT: {$json: {$eval: 'input'}}
ACTION_CALLBACK: '${action.cb_name}'
features:
taskclusterProxy: true
chainOfTrust: true
# Note: This task is built server side without the context or tooling that
# exist in tree so we must hard code the hash
image: mozillareleases/taskgraph:decision-mobile-625975b642c148be4c6f1d8ee5cedf7399f5d0dd33d275ff69d5934e3082d4a9@sha256:bfb26700182486e1c6c52701baea6f386fa39e5e25417423c27845933605ad43
maxRunTime: 1800
command:
- /usr/local/bin/run-task
- '--mobile-checkout=/builds/worker/checkouts/src'
- '--task-cwd=/builds/worker/checkouts/src'
- '--'
- bash
- -cx
- $let:
extraArgs:
$if: 'tasks_for == "cron"'
then: '${cron.quoted_args}'
else: ''
in:
$if: 'tasks_for == "action"'
then: >
taskcluster/scripts/decision-install-sdk.sh &&
ln -s /builds/worker/artifacts artifacts &&
~/.local/bin/taskgraph action-callback
else: >
taskcluster/scripts/decision-install-sdk.sh &&
ln -s /builds/worker/artifacts artifacts &&
~/.local/bin/taskgraph decision
--pushlog-id='0'
--pushdate='0'
--project='${project}'
--message=""
--owner='${ownerEmail}'
--level='${level}'
--base-repository="$MOBILE_BASE_REPOSITORY"
--head-repository="$MOBILE_HEAD_REPOSITORY"
--head-ref="$MOBILE_HEAD_REF"
--head-rev="$MOBILE_HEAD_REV"
--repository-type="$MOBILE_REPOSITORY_TYPE"
--tasks-for='${tasks_for}'
${extraArgs}
artifacts:
'public':
type: 'directory'
path: '/builds/worker/artifacts'
expires:
$fromNow: '1 year'
'public/docker-contexts':
type: 'directory'
path: '/builds/worker/checkouts/src/docker-contexts'
# This needs to be at least the deadline of the
# decision task + the docker-image task deadlines.
# It is set to a week to allow for some time for
# debugging, but they are not useful long-term.
expires:
$fromNow: '7 day'
extra:
$merge:
- treeherder:
$merge:
- machine:
platform: gecko-decision
- $if: 'tasks_for in ["github-push", "github-pull-request"]'
then:
symbol: D
else:
$if: 'tasks_for == "action"'
then:
name: "Decision Task"
description: 'The task that creates all of the other tasks in the task graph'
groupName: 'action-callback'
groupSymbol: AC
symbol: "${action.symbol}"
else:
$if: 'tasks_for == "action"'
then:
name: "Action: ${action.title}"
description: |
${action.description}
Action triggered by clientID `${clientId}`
else:
name: "Decision Task for cron job ${cron.job_name}"
description: 'Created by a [cron task](https://firefox-ci-tc.services.mozilla.com/tasks/${cron.task_id})'
provisionerId: "mobile-${level}"
workerType: "decision"
tags:
$if: 'tasks_for in ["github-push", "github-pull-request"]'
then:
kind: decision-task
else:
$if: 'tasks_for == "action"'
then:
kind: 'action-callback'
else:
$if: 'tasks_for == "cron"'
then:
kind: cron-task
routes:
$flattenDeep:
- checks
- $if: 'level == "3" || repoUrl == "https://github.com/mozilla-releng/staging-fenix"'
then:
- tc-treeherder.v2.${project}.${head_sha}
# TODO Bug 1601928: Make this scope fork-friendly once ${project} is better defined. This will enable
# staging release promotion on forks.
- $if: 'tasks_for == "github-push"'
then:
- index.mobile.v2.${project}.branch.${short_head_branch}.latest.taskgraph.decision
- index.mobile.v2.${project}.branch.${short_head_branch}.revision.${head_sha}.taskgraph.decision
- index.mobile.v2.${project}.revision.${head_sha}.taskgraph.decision
- $if: 'tasks_for == "cron"'
then:
# cron context provides ${head_branch} as a short one
- index.mobile.v2.${project}.branch.${head_branch}.latest.taskgraph.decision-${cron.job_name}
- index.mobile.v2.${project}.branch.${head_branch}.revision.${head_sha}.taskgraph.decision-${cron.job_name}
- index.mobile.v2.${project}.branch.${head_branch}.revision.${head_sha}.taskgraph.cron.${ownTaskId}
scopes:
$if: 'tasks_for == "github-push"'
then:
# `https://` is 8 characters so, ${repoUrl[8:]} is the repository without the protocol.
- 'assume:repo:${repoUrl[8:]}:branch:${short_head_branch}'
else:
$if: 'tasks_for == "github-pull-request"'
then:
- 'assume:repo:github.com/${event.pull_request.base.repo.full_name}:pull-request'
else:
$if: 'tasks_for == "github-release"'
then:
- 'assume:repo:${repoUrl[8:]}:release'
else:
$if: 'tasks_for == "action"'
then:
# when all actions are hooks, we can calculate this directly rather than using a variable
- '${action.repo_scope}'
else:
- 'assume:repo:${repoUrl[8:]}:cron:${cron.job_name}'
requires: all-completed
priority: lowest
retries: 5
payload:
env:
# run-task uses these to check out the source; the inputs
# to `mach taskgraph decision` are all on the command line.
$merge:
- MOBILE_BASE_REPOSITORY: '${baseRepoUrl}'
MOBILE_HEAD_REPOSITORY: '${repoUrl}'
MOBILE_HEAD_REF: '${head_branch}'
MOBILE_HEAD_REV: '${head_sha}'
MOBILE_HEAD_TAG: '${head_tag}'
MOBILE_REPOSITORY_TYPE: git
TASKGRAPH_BASE_REPOSITORY: https://hg.mozilla.org/ci/taskgraph
TASKGRAPH_HEAD_REPOSITORY: https://hg.mozilla.org/ci/${taskgraph.branch}
TASKGRAPH_HEAD_REV: ${taskgraph.revision}
TASKGRAPH_REPOSITORY_TYPE: hg
REPOSITORIES: {$json: {mobile: "Fenix", taskgraph: "Taskgraph"}}
HG_STORE_PATH: /builds/worker/checkouts/hg-store
ANDROID_SDK_ROOT: /builds/worker/android-sdk
- $if: 'tasks_for in ["github-pull-request"]'
then:
MOBILE_PULL_REQUEST_NUMBER: '${event.pull_request.number}'
- $if: 'tasks_for == "action"'
then:
ACTION_TASK_GROUP_ID: '${action.taskGroupId}' # taskGroupId of the target task
ACTION_TASK_ID: {$json: {$eval: 'taskId'}} # taskId of the target task (JSON-encoded)
ACTION_INPUT: {$json: {$eval: 'input'}}
ACTION_CALLBACK: '${action.cb_name}'
- $if: 'tasks_for == "github-release"'
then:
MOBILE_HEAD_TAG: '${event.release.tag_name}'
features:
taskclusterProxy: true
chainOfTrust: true
# Note: This task is built server side without the context or tooling that
# exist in tree so we must hard code the hash
image:
mozillareleases/taskgraph:decision-mobile-682fbaa1ef17e70ddfe3457da3eaf8e776c4a20fe5bfbdbeba0641fd5bceae2a@sha256:bbb2613aaab79d17e590fbd78c072d0643be40fd1237195703f84280ecc3b302
maxRunTime: 1800
command:
- /usr/local/bin/run-task
- '--mobile-checkout=/builds/worker/checkouts/src'
- '--taskgraph-checkout=/builds/worker/checkouts/taskgraph'
- '--task-cwd=/builds/worker/checkouts/src'
- '--'
- bash
- -cx
- $let:
extraArgs: {$if: 'tasks_for == "cron"', then: '${cron.quoted_args}', else: ''}
in:
$if: 'tasks_for == "action"'
then: >
PIP_IGNORE_INSTALLED=0 pip install --user /builds/worker/checkouts/taskgraph &&
PIP_IGNORE_INSTALLED=0 pip install --user mozilla-version &&
taskcluster/scripts/decision-install-sdk.sh &&
ln -s /builds/worker/artifacts artifacts &&
~/.local/bin/taskgraph action-callback
else: >
PIP_IGNORE_INSTALLED=0 pip install --user /builds/worker/checkouts/taskgraph &&
PIP_IGNORE_INSTALLED=0 pip install --user mozilla-version &&
taskcluster/scripts/decision-install-sdk.sh &&
ln -s /builds/worker/artifacts artifacts &&
~/.local/bin/taskgraph decision
--pushlog-id='0'
--pushdate='0'
--project='${project}'
--message=""
--owner='${ownerEmail}'
--level='${level}'
--base-repository="$MOBILE_BASE_REPOSITORY"
--head-repository="$MOBILE_HEAD_REPOSITORY"
--head-ref="$MOBILE_HEAD_REF"
--head-rev="$MOBILE_HEAD_REV"
--head-tag="$MOBILE_HEAD_TAG"
--repository-type="$MOBILE_REPOSITORY_TYPE"
--tasks-for='${tasks_for}'
${extraArgs}
artifacts:
'public':
type: 'directory'
path: '/builds/worker/artifacts'
expires: {$fromNow: '1 year'}
'public/docker-contexts':
type: 'directory'
path: '/builds/worker/checkouts/src/docker-contexts'
# This needs to be at least the deadline of the
# decision task + the docker-image task deadlines.
# It is set to a week to allow for some time for
# debugging, but they are not useful long-term.
expires: {$fromNow: '7 day'}
extra:
$merge:
- treeherder:
$merge:
- machine:
platform: gecko-decision
- $if: 'tasks_for in ["github-push", "github-pull-request"]'
then:
symbol: D
else:
$if: 'tasks_for == "github-release"'
then:
symbol: 'ship_fenix'
else:
$if: 'tasks_for == "action"'
then:
groupName: 'action-callback'
groupSymbol: AC
symbol: "${action.symbol}"
else:
groupSymbol: cron
symbol: "${cron.job_symbol}"
- $if: 'tasks_for == "action"'
then:
parent: '${action.taskGroupId}'
action:
name: '${action.name}'
context:
taskGroupId: '${action.taskGroupId}'
taskId: {$eval: 'taskId'}
input: {$eval: 'input'}
clientId: {$eval: 'clientId'}
- $if: 'tasks_for == "cron"'
then:
cron: {$json: {$eval: 'cron'}}
- tasks_for: '${tasks_for}'
groupSymbol: cron
symbol: "${cron.job_symbol}"
- $if: 'tasks_for == "action"'
then:
parent: '${action.taskGroupId}'
action:
name: '${action.name}'
context:
taskGroupId: '${action.taskGroupId}'
taskId: {$eval: 'taskId'}
input: {$eval: 'input'}
clientId: {$eval: 'clientId'}
- $if: 'tasks_for == "cron"'
then:
cron: {$json: {$eval: 'cron'}}
- tasks_for: '${tasks_for}'

8
Jenkinsfile vendored
View File

@ -1,7 +1,7 @@
pipeline {
agent any
triggers {
cron(env.BRANCH_NAME == 'master' ? 'H 0 * * *' : '')
cron(env.BRANCH_NAME == 'main' ? 'H 0 * * *' : '')
}
options {
timestamps()
@ -9,7 +9,7 @@ pipeline {
}
stages {
stage('test') {
when { branch 'master' }
when { branch 'main' }
steps {
dir('app/src/androidTest/java/org/mozilla/fenix/syncIntegration') {
sh 'pipenv install'
@ -22,7 +22,7 @@ pipeline {
post {
always {
script {
if (env.BRANCH_NAME == 'master') {
if (env.BRANCH_NAME == 'main') {
publishHTML(target: [
allowMissing: false,
alwaysLinkToLastBuild: true,
@ -36,7 +36,7 @@ pipeline {
failure {
script {
if (env.BRANCH_NAME == 'master') {
if (env.BRANCH_NAME == 'main') {
slackSend(
color: 'danger',
message: "FAILED: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]' (${env.BUILD_URL}HTML_20Report/)")

View File

@ -1,14 +1,12 @@
# Firefox for Android
[![Task Status](https://github.taskcluster.net/v1/repository/mozilla-mobile/fenix/master/badge.svg)](https://github.taskcluster.net/v1/repository/mozilla-mobile/fenix/master/latest)
[![codecov](https://codecov.io/gh/mozilla-mobile/fenix/branch/master/graph/badge.svg)](https://codecov.io/gh/mozilla-mobile/fenix)
[![Task Status](https://firefox-ci-tc.services.mozilla.com/api/github/v1/repository/mozilla-mobile/fenix/main/badge.svg)](https://firefox-ci-tc.services.mozilla.com/api/github/v1/repository/mozilla-mobile/fenix/main/latest)
[![codecov](https://codecov.io/gh/mozilla-mobile/fenix/branch/main/graph/badge.svg)](https://codecov.io/gh/mozilla-mobile/fenix)
Fenix (internal codename) is the all-new Firefox for Android browser, based on [GeckoView](https://mozilla.github.io/geckoview/) and [Mozilla Android Components](https://mozac.org/).
<a href="https://play.google.com/store/apps/details?id=org.mozilla.firefox" target="_blank"><img src="https://play.google.com/intl/en_us/badges/images/generic/en-play-badge.png" alt="Get it on Google Play" height="90"/></a>
** Note: The team is currently experiencing heavy triage and review load, so when triaging issues, we will mainly be looking to identify [S1 (high severity)](https://github.com/mozilla-mobile/fenix/labels/S1) issues. See our triage process [here](https://github.com/mozilla-mobile/fenix/wiki/Triage-Process). Please be patient if you don't hear back from us immediately on your issue! **
## Getting Involved
Please read the [Community Participation Guidelines](https://www.mozilla.org/en-US/about/governance/policies/participation/) and the [Bugzilla Etiquette guidelines](https://bugzilla.mozilla.org/page.cgi?id=etiquette.html) before filing an issue. This is our professional working environment as much as it is our bug tracker, and we want to keep our workspace clean and healthy.
@ -25,7 +23,7 @@ Please read the [Community Participation Guidelines](https://www.mozilla.org/en-
* Check out the [project wiki](https://github.com/mozilla-mobile/fenix/wiki) for more information.
* See [our guide on Writing Custom Lint Rules](https://github.com/mozilla-mobile/shared-docs/blob/master/android/writing_lint_rules.md).
* Localization happens on [Pontoon](https://pontoon.mozilla.org/projects/android-l10n/). Please get in touch with delphine (at) mozilla (dot) com directly for more information.
* Localization happens on [Pontoon](https://pontoon.mozilla.org/projects/firefox-for-android/). Please get in touch with delphine (at) mozilla (dot) com directly for more information.
**Beginners!** - Watch out for [Issues with the "Good First Issue" label](https://github.com/mozilla-mobile/fenix/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22). These are easy bugs that have been left for first timers to have a go, get involved and make a positive contribution to the project!
@ -92,6 +90,8 @@ Pre-requisites:
3. Make sure to select the correct build variant in Android Studio. See the next section.
4. Make sure to select "Default APK" under Installation Options inside Run/Debug configuration: see [this bug](https://bugzilla.mozilla.org/show_bug.cgi?id=1529082).
### Build Variants
For general development, we recommend the **debug** build variant. Here's an explanation of each variant:
@ -120,7 +120,6 @@ Before you can install any release builds, **You will need to sign production bu
Some features are disabled by default when Fenix is built locally. This can be problematic at times for checking performance since you might want to know how your code behaves with those features.
The known features that are disabled by default are:
- Sentry
- Leanplum
- Adjust
- Mozilla Location Services (also known as MLS)
- Firebase Push Services
@ -156,7 +155,7 @@ git push <remote> --no-verify
Note: If while pushing you encounter this error "Could not initialize class org.codehaus.groovy.runtime.InvokerHelper" and are currently on Java14 then downgrading your Java version to Java13 or lower can resolve the issue
Steps to downgrade Java Version on Mac with Brew:
Steps to downgrade Java Version on Mac with Brew:
1. Install Homebrew (https://brew.sh/)
2. run ```brew update```
3. To uninstall your current java version, run ```sudo rm -fr /Library/Java/JavaVirtualMachines/<jdk-version>```
@ -200,17 +199,21 @@ raptorEnabled
If you're making changes to these projects and want to test them in Fenix, auto-publication workflow is the fastest, most reliable
way to do that.
In `local.properties`, specify a relative path to your local `android-components` and/or `application-services` checkouts. E.g.:
- `autoPublish.android-components.dir=../android-components`
In `local.properties`, specify a relative path to your local `android-components` and/or `application-services` projects. E.g.:
- `autoPublish.android-components.dir=../firefox-android/android-components`
- `autoPublish.application-services.dir=../application-services`
*Note that the Android Components project was already migrated to the new [firefox-android](https://github.com/mozilla-mobile/firefox-android) repository. Therefore, this auto publication workflow won't be neccessary for Android Components once Fenix is integrated in the new repository as well.*
Once these flags are set, your Fenix builds will include any local modifications present in these projects.
See a [demo of auto-publication workflow in action](https://www.youtube.com/watch?v=qZKlBzVvQGc).
In order to build successfully, you need to check out a commit in the dependency repository that has no breaking changes. The two best ways to do this are:
- Run the `<android-components>/tools/list_compatible_dependency_versions.py` script to output a compatible commit
- Check out the latest commit from master in this repository and the dependency repository. However, this may fail if there were breaking changes added recently to the dependency.
- Check out the latest commit from main in this repository and the dependency repository. However, this may fail if there were breaking changes added recently to the dependency.
If you're trying to build fenix with a local ac AND a local GV, you'll have to use another method: see [this doc](https://github.com/mozilla-mobile/fenix/blob/main/docs/substituting-local-ac-and-gv.md).
### Using Nimbus servers during local development
If you're working with the Nimbus experiments platform, by default for local development Fenix configures Nimbus to not use a server.
@ -221,6 +224,11 @@ If you wish to use a Nimbus server during local development, you can add a `http
Testing experimental branches should be possible without a server.
### Using custom Glean servers during local development
If you wish to use a custom Glean server during local development, you can add a `https://` endpoint to the `local.properties` file.
- `glean.custom.server.url`
### GeckoView
Specify a relative path to your local `mozilla-central` checkout via `dependencySubstitutions.geckoviewTopsrcdir`,
and optional a path to m-c object directory via `dependencySubstitutions.geckoviewTopobjdir`.

5
SECURITY.md Normal file
View File

@ -0,0 +1,5 @@
# Security Policy
## Reporting a Vulnerability
Report all security vunerablites to [Bugzilla Fenix::Security](https://bugzilla.mozilla.org/enter_bug.cgi?product=Fenix&component=Security). If they are not a security bug you will be asked to move your report to [Fenix GitHub](https://github.com/mozilla-mobile/fenix/issues). See the [Mozilla Security Bug Bounty Program](https://www.mozilla.org/en-US/security/bug-bounty/) and the [client security reporting](https://www.mozilla.org/en-US/security/client-bug-bounty/) pages for details. In any case where this document and the Mozilla.org pages differ the Mozilla.org pages are the official documentation.

81
app/benchmark.gradle Normal file
View File

@ -0,0 +1,81 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
// This comment contains the central documentation for how we configured Jetpack Benchmark. Currently:
// - microbenchmark: configured differently than recommended (see inline notes below)
// - macrobenchmark: not configured
//
// To run our benchmarks, you need to set the "benchmark" gradle property. You can:
// - (preferred) Run via the command line (change the class you run on):
// ./gradlew -Pbenchmark app:connectedCheck -Pandroid.testInstrumentationRunnerArguments.class=org.mozilla.fenix.perf.SampleBenchmark
// - Use the IDE. Temporarily set the "benchmark" property in app/build.gradle with "ext.benchmark=true"
// near the top of the file. DO NOT COMMIT THIS.
// - (note: I was unable to get IDE run configurations working)
//
// To get the results, look at this file (we recommend using the median; results are in nanoseconds):
// app/build/outputs/connected_android_test_additional_output/nightlyAndroidTest/connected/<device>/org.mozilla.fenix-benchmarkData.json
//
// I was unable to get the results to print directly in Android Studio (perhaps it's my device).
//
// The official documentation suggests configuring microbenchmark in a separate module. This would
// require any benchmarked code to be in a library module, not the :app module (see below). To avoid
// this requirement, we created the "benchmark" gradle property.
//
// For the most accurate results, the documentation recommends running tests on rooted devices with
// the CPU clock locked.
//
// See https://developer.android.com/studio/profile/benchmark#what-to-benchmark for when writing a
// jetpack microbenchmark is a good fit.
// I think `android` represents this object:
// https://google.github.io/android-gradle-dsl/3.3/com.android.build.gradle.AppExtension.html
ext.maybeConfigForJetpackBenchmark = { android ->
if (!project.hasProperty("benchmark")) {
return
}
// The official documentation https://developer.android.com/studio/profile/benchmark#full-setup
// recommends setting up the Microbenchmark library in a separate module from your app: AFAICT,
// the reason for this is to prevent the benchmarks from being configured against debug
// builds. We chose not to do this because it's a lot of work to pull code out into a
// separate module just to benchmark it. We were able to replicate the outcome by setting
// this testBuildType property.
android.testBuildType "nightly"
// WARNING: our proguard configuration for androidTest is not set up correctly so the tests
// fail if we don't disable minification. DISABLING MINIFICATION PRODUCES BENCHMARKS THAT ARE
// LESS REPRESENTATIVE TO THE USER EXPERIENCE, however, so we made this tradeoff to reduce
// implementation time.
project.ext.disableOptimization = true
android.defaultConfig {
// WARNING: the benchmark framework warns you if you're running the test in a configuration
// that will compromise the accuracy of the results. Unfortunately, I couldn't get everything
// working so I had to suppress some things.
testInstrumentationRunnerArguments = [
// - ACTIVITY-MISSING: we're supposed to use the test instrumentation runner,
// "androidx.benchmark.junit4.AndroidBenchmarkRunner". However, when I do so, I get an error
// that we're unable to launch the activity. My understanding is that this runner will use an
// "IsolationActivity" to reduce the impact of other work on the device from affecting the benchmark
// and to opt into a lower-max CPU frequency on unrooted devices that support it
// - UNLOCKED: ./gradlew lockClocks, which locks the CPU frequency, fails on my device. See
// https://issuetracker.google.com/issues/176836267 for potential workarounds.
'androidx.benchmark.suppressErrors' : 'ACTIVITY-MISSING,UNLOCKED',
// The tests don't always output a JSON file with the data. To make sure it does, we have to
// set androidx.benchmark.output.enable to true.
'androidx.benchmark.output.enable' : 'true',
// We set the the output directory simply for simplicity since the benchmark_runner.py script
// can't know the name of the phone in the /build/outputs/ directory. The system defaults to
// {phone_name} which can be troublesome finding in some case.
//
// NOTE: Jetpack Benchmark outputs to Logcat too. However, the output in the logcat is
// the min of the several repeats, for more statistics. Therefore, to get more stats,
// we refer to the JSON file.
additionalTestOutputDir : '/storage/emulated/0/benchmark'
]
}
}

View File

@ -1,13 +1,17 @@
import org.mozilla.fenix.gradle.tasks.ApkSizeTask
plugins {
id "com.jetbrains.python.envs" version "0.0.26"
id "com.google.protobuf" version "0.8.19"
}
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-parcelize'
apply plugin: 'jacoco'
apply plugin: 'androidx.navigation.safeargs.kotlin'
apply plugin: 'com.google.android.gms.oss-licenses-plugin'
apply plugin: 'androidx.benchmark'
import com.android.build.OutputFile
@ -17,9 +21,12 @@ import org.gradle.internal.logging.text.StyledTextOutputFactory
import static org.gradle.api.tasks.testing.TestResult.ResultType
apply from: 'benchmark.gradle'
android {
compileSdkVersion Config.compileSdkVersion
project.maybeConfigForJetpackBenchmark(it)
if (project.hasProperty("testBuildType")) {
// Allowing to configure the test build type via command line flag (./gradlew -PtestBuildType=beta ..)
// in order to run UI tests against other build variants than debug in automation.
@ -37,9 +44,10 @@ android {
testInstrumentationRunnerArguments clearPackageData: 'true'
resValue "bool", "IS_DEBUG", "false"
buildConfigField "boolean", "USE_RELEASE_VERSIONING", "false"
buildConfigField "String", "GIT_HASH", "\"\"" // see override in release builds for why it's blank.
// This should be the "public" base URL of AMO.
buildConfigField "String", "AMO_BASE_URL", "\"https://addons.mozilla.org\""
buildConfigField "String", "AMO_COLLECTION_NAME", "\"7dfae8669acc4312a65e8ba5553036\""
buildConfigField "String", "AMO_COLLECTION_NAME", "\"Extensions-for-Android\""
buildConfigField "String", "AMO_COLLECTION_USER", "\"mozilla\""
// These add-ons should be excluded for Mozilla Online builds.
buildConfigField "String[]", "MOZILLA_ONLINE_ADDON_EXCLUSIONS",
@ -51,7 +59,8 @@ android {
"\"foxyproxy@eric.h.jung\"," +
"\"{73a6fe31-595d-460b-a920-fcc0f8843232}\"," +
"\"jid1-BoFifL9Vbdl2zQ@jetpack\"," +
"\"woop-NoopscooPsnSXQ@jetpack\"" +
"\"woop-NoopscooPsnSXQ@jetpack\"," +
"\"adnauseam@rednoise.org\"" +
"}"
// This should be the base URL used to call the AMO API.
buildConfigField "String", "AMO_SERVER_URL", "\"https://services.addons.mozilla.org\""
@ -74,9 +83,13 @@ android {
// in automation for UI testing non-debug builds.
shrinkResources !project.hasProperty("disableOptimization")
minifyEnabled !project.hasProperty("disableOptimization")
proguardFiles 'proguard-android-optimize-3.5.0-modified.txt', 'proguard-rules.pro'
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
matchingFallbacks = ['release'] // Use on the "release" build type in dependencies (AARs)
// Changing the build config can cause files that depend on BuildConfig.java to recompile
// so we only set the git hash in release builds to avoid possible recompilation in debug builds.
buildConfigField "String", "GIT_HASH", "\"${Config.getGitHash()}\""
if (gradle.hasProperty("localProperties.autosignReleaseWithDebugKey")) {
signingConfig signingConfigs.debug
}
@ -137,6 +150,10 @@ android {
}
}
buildFeatures {
viewBinding true
}
aaptOptions {
// All JavaScript code used internally by GeckoView is packaged in a
// file called omni.ja. If this file is compressed in the APK,
@ -161,20 +178,6 @@ android {
androidTest {
resources.srcDirs += ['src/androidTest/resources']
}
debug {
java.srcDirs = ['src/geckoNightly/java']
}
nightly {
java.srcDirs = ['src/geckoNightly/java']
}
beta {
java.srcDirs = ['src/migration/java', 'src/geckoBeta/java']
manifest.srcFile "src/migration/AndroidManifest.xml"
}
release {
java.srcDirs = ['src/migration/java', 'src/geckoRelease/java']
manifest.srcFile "src/migration/AndroidManifest.xml"
}
}
splits {
@ -199,6 +202,8 @@ android {
packagingOptions {
exclude 'META-INF/atomicfu.kotlin_module'
exclude 'META-INF/AL2.0'
exclude 'META-INF/LGPL2.1'
}
testOptions {
@ -209,35 +214,30 @@ android {
// reserve more memory and also create a new process after every 80 test classes. This
// is a band-aid solution and eventually we should try to find and fix the leaks
// instead. :)
maxParallelForks = 2
forkEvery = 80
maxHeapSize = "2048m"
maxHeapSize = "3072m"
minHeapSize = "1024m"
}
}
buildFeatures {
compose true
}
composeOptions {
kotlinCompilerExtensionVersion = FenixVersions.androidx_compose_compiler
}
}
android.applicationVariants.all { variant ->
// -------------------------------------------------------------------------------------------------
// Set up kotlin-allopen plugin for writing tests
// -------------------------------------------------------------------------------------------------
boolean hasTest = gradle.startParameter.taskNames.find { it.contains("test") || it.contains("Test") } != null
if (hasTest) {
apply plugin: 'kotlin-allopen'
allOpen {
annotation("org.mozilla.fenix.utils.OpenClass")
}
}
// -------------------------------------------------------------------------------------------------
// Generate version codes for builds
// -------------------------------------------------------------------------------------------------
def isDebug = variant.buildType.resValues['IS_DEBUG']?.value ?: false
def isDebug = variant.buildType.resValues['bool/IS_DEBUG']?.value ?: false
def useReleaseVersioning = variant.buildType.buildConfigFields['USE_RELEASE_VERSIONING']?.value ?: false
def versionName = Config.releaseVersionName(project)
println("----------------------------------------------")
println("Variant name: " + variant.name)
@ -251,17 +251,29 @@ android.applicationVariants.all { variant ->
// same version code. Therefore we need to have different version codes for our ARM and x86
// builds.
def versionName = variant.buildType.name == 'nightly' ? Config.nightlyVersionName() : Config.releaseVersionName(project)
println("versionName override: $versionName")
variant.outputs.each { output ->
def isMozillaOnline = project.hasProperty("mozillaOnline") || gradle.hasProperty("localProperties.mozillaOnline")
def abi = output.getFilter(OutputFile.ABI)
// If it is a Mozilla Online build, use a unified version code of armeabi-v7a
def arch = (isMozillaOnline) ? "armeabi-v7a" : abi
// We use the same version code generator, that we inherited from Fennec, across all channels - even on
// channels that never shipped a Fennec build.
def versionCodeOverride = Config.generateFennecVersionCode(abi)
def versionCodeOverride = Config.generateFennecVersionCode(arch)
println("versionCode for $abi = $versionCodeOverride")
println("versionCode for $abi = $versionCodeOverride, isMozillaOnline = $isMozillaOnline")
output.versionNameOverride = versionName
output.versionCodeOverride = versionCodeOverride
}
} else if (gradle.hasProperty("localProperties.branchBuild.fenix.version")) {
def versionName = gradle.getProperty("localProperties.branchBuild.fenix.version")
println("versionName override: $versionName")
variant.outputs.each { output ->
output.versionNameOverride = versionName
}
}
// -------------------------------------------------------------------------------------------------
@ -315,25 +327,6 @@ android.applicationVariants.all { variant ->
println("--")
}
// -------------------------------------------------------------------------------------------------
// Leanplum: Read token from local file if it exists
// -------------------------------------------------------------------------------------------------
print("Leanplum token: ")
try {
def parts = new File("${rootDir}/.leanplum_token").text.trim().split(":")
def id = parts[0]
def key = parts[1]
buildConfigField 'String', 'LEANPLUM_ID', '"' + id + '"'
buildConfigField 'String', 'LEANPLUM_TOKEN', '"' + key + '"'
println "(Added from .leanplum_token file)"
} catch (FileNotFoundException ignored) {
buildConfigField 'String', 'LEANPLUM_ID', 'null'
buildConfigField 'String', 'LEANPLUM_TOKEN', 'null'
println("X_X")
}
// -------------------------------------------------------------------------------------------------
// MLS: Read token from local file if it exists
// -------------------------------------------------------------------------------------------------
@ -373,6 +366,21 @@ android.applicationVariants.all { variant ->
println("--")
}
// -------------------------------------------------------------------------------------------------
// Glean: Read custom server URL from local.properties of a local file if it exists
// -------------------------------------------------------------------------------------------------
print("Glean custom server URL: ")
if (gradle.hasProperty("localProperties.glean.custom.server.url")) {
def url=gradle.getProperty("localProperties.glean.custom.server.url")
buildConfigField 'String', 'GLEAN_CUSTOM_URL', url
println "(Added from local.properties file)"
} else {
buildConfigField 'String', 'GLEAN_CUSTOM_URL', 'null'
println("--")
}
// -------------------------------------------------------------------------------------------------
// BuildConfig: Set flag for official builds; similar to MOZILLA_OFFICIAL in mozilla-central.
// -------------------------------------------------------------------------------------------------
@ -382,17 +390,62 @@ android.applicationVariants.all { variant ->
} else {
buildConfigField 'Boolean', 'MOZILLA_OFFICIAL', 'false'
}
// -------------------------------------------------------------------------------------------------
// BuildConfig: Set remote wallpaper URL using local file if it exists
// -------------------------------------------------------------------------------------------------
print("Wallpaper URL: ")
try {
def token = new File("${rootDir}/.wallpaper_url").text.trim()
buildConfigField 'String', 'WALLPAPER_URL', '"' + token + '"'
println "(Added from .wallpaper_url file)"
} catch (FileNotFoundException ignored) {
buildConfigField 'String', 'WALLPAPER_URL', '""'
println("--")
}
// -------------------------------------------------------------------------------------------------
// BuildConfig: Set the Pocket consumer key from a local file if it exists
// -------------------------------------------------------------------------------------------------
print("Pocket consumer key: ")
try {
def token = new File("${rootDir}/.pocket_consumer_key").text.trim()
buildConfigField 'String', 'POCKET_CONSUMER_KEY', '"' + token + '"'
println "(Added from .pocket_consumer_key file)"
} catch (FileNotFoundException ignored) {
buildConfigField 'String', 'POCKET_CONSUMER_KEY', '""'
println("--")
}
}
androidExtensions {
experimental = true
}
// Generate Kotlin code and markdown docs for the Fenix Glean metrics.
ext.gleanGenerateMarkdownDocs = true
ext.gleanDocsDirectory = "$rootDir/docs"
// Generate Kotlin code for the Fenix Glean metrics.
apply plugin: "org.mozilla.telemetry.glean-gradle-plugin"
apply plugin: "org.mozilla.components.nimbus-gradle-plugin"
nimbus {
// The path to the Nimbus feature manifest file
manifestFile = "nimbus.fml.yaml"
// The fully qualified class name for the generated features.
// If the classname begins with a '.' this is taken as a suffix to the app's package name
destinationClass = ".nimbus.FxNimbus"
// Map from the variant name to the channel as experimenter and nimbus understand it.
// If nimbus's channels were accurately set up well for this project, then this
// shouldn't be needed.
channels = [
debug: "developer",
nightly: "nightly",
beta: "beta",
release: "release",
]
// This is generated by the FML and should be checked into git.
// It will be fetched by Experimenter (the Nimbus experiment website)
// and used to inform experiment configuration.
experimenterManifest = ".experimenter.yaml"
}
configurations {
// There's an interaction between Gradle's resolution of dependencies with different types
// (@jar, @aar) for `implementation` and `testImplementation` and with Android Studio's built-in
@ -408,202 +461,248 @@ configurations {
// correct runtime classpath when invoked with Android Studio's built-in JUnit test runner.
// Success!
jnaForTest
// Robolectric, through `com.google.android.apps.common.testing.accessibility.framework`
// depends on an old version of protobuf that conflict with the Application Services one.
// See: https://github.com/mozilla/application-services/issues/2952
all*.exclude group: 'com.google.protobuf', module: 'protobuf-java'
}
tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach {
kotlinOptions {
freeCompilerArgs += "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi"
}
}
dependencies {
jnaForTest Deps.jna
jnaForTest FenixDependencies.jna
testImplementation files(configurations.jnaForTest.copyRecursive().files)
debugImplementation Deps.mozilla_browser_engine_gecko_nightly
implementation FenixDependencies.mozilla_browser_engine_gecko
nightlyImplementation Deps.mozilla_browser_engine_gecko_nightly
betaImplementation Deps.mozilla_browser_engine_gecko_beta
releaseImplementation Deps.mozilla_browser_engine_gecko_release
implementation FenixDependencies.kotlin_stdlib
implementation FenixDependencies.kotlin_coroutines
implementation FenixDependencies.kotlin_coroutines_android
testImplementation FenixDependencies.kotlin_coroutines_test
implementation FenixDependencies.androidx_appcompat
implementation FenixDependencies.androidx_constraintlayout
implementation FenixDependencies.androidx_coordinatorlayout
implementation FenixDependencies.google_accompanist_drawablepainter
implementation FenixDependencies.google_accompanist_insets
implementation Deps.kotlin_stdlib
implementation Deps.kotlin_coroutines
implementation Deps.kotlin_coroutines_android
testImplementation Deps.kotlin_coroutines_test
implementation Deps.androidx_appcompat
implementation Deps.androidx_constraintlayout
implementation Deps.androidx_coordinatorlayout
implementation FenixDependencies.sentry
implementation Deps.sentry
implementation FenixDependencies.mozilla_compose_awesomebar
implementation Deps.leanplum_core
implementation Deps.leanplum_fcm
implementation FenixDependencies.mozilla_concept_awesomebar
implementation FenixDependencies.mozilla_concept_base
implementation FenixDependencies.mozilla_concept_engine
implementation FenixDependencies.mozilla_concept_menu
implementation FenixDependencies.mozilla_concept_push
implementation FenixDependencies.mozilla_concept_storage
implementation FenixDependencies.mozilla_concept_sync
implementation FenixDependencies.mozilla_concept_toolbar
implementation FenixDependencies.mozilla_concept_tabstray
implementation Deps.mozilla_concept_base
implementation Deps.mozilla_concept_engine
implementation Deps.mozilla_concept_menu
implementation Deps.mozilla_concept_push
implementation Deps.mozilla_concept_storage
implementation Deps.mozilla_concept_sync
implementation Deps.mozilla_concept_toolbar
implementation Deps.mozilla_concept_tabstray
implementation FenixDependencies.mozilla_browser_domains
implementation FenixDependencies.mozilla_browser_icons
implementation FenixDependencies.mozilla_browser_menu
implementation FenixDependencies.mozilla_browser_menu2
implementation FenixDependencies.mozilla_browser_session_storage
implementation FenixDependencies.mozilla_browser_state
implementation FenixDependencies.mozilla_browser_storage_sync
implementation FenixDependencies.mozilla_browser_tabstray
implementation FenixDependencies.mozilla_browser_thumbnails
implementation FenixDependencies.mozilla_browser_toolbar
implementation Deps.mozilla_browser_awesomebar
implementation Deps.mozilla_feature_downloads
implementation Deps.mozilla_browser_domains
implementation Deps.mozilla_browser_icons
implementation Deps.mozilla_browser_menu
implementation Deps.mozilla_browser_menu2
implementation Deps.mozilla_browser_search
implementation Deps.mozilla_browser_session
implementation Deps.mozilla_browser_session_storage
implementation Deps.mozilla_browser_state
implementation Deps.mozilla_browser_storage_sync
implementation Deps.mozilla_browser_tabstray
implementation Deps.mozilla_browser_thumbnails
implementation Deps.mozilla_browser_toolbar
implementation FenixDependencies.mozilla_feature_addons
implementation FenixDependencies.mozilla_feature_accounts
implementation FenixDependencies.mozilla_feature_app_links
implementation FenixDependencies.mozilla_feature_autofill
implementation FenixDependencies.mozilla_feature_awesomebar
implementation FenixDependencies.mozilla_feature_contextmenu
implementation FenixDependencies.mozilla_feature_customtabs
implementation FenixDependencies.mozilla_feature_downloads
implementation FenixDependencies.mozilla_feature_intent
implementation FenixDependencies.mozilla_feature_media
implementation FenixDependencies.mozilla_feature_prompts
implementation FenixDependencies.mozilla_feature_push
implementation FenixDependencies.mozilla_feature_privatemode
implementation FenixDependencies.mozilla_feature_pwa
implementation FenixDependencies.mozilla_feature_qr
implementation FenixDependencies.mozilla_feature_search
implementation FenixDependencies.mozilla_feature_session
implementation FenixDependencies.mozilla_feature_syncedtabs
implementation FenixDependencies.mozilla_feature_toolbar
implementation FenixDependencies.mozilla_feature_tabs
implementation FenixDependencies.mozilla_feature_findinpage
implementation FenixDependencies.mozilla_feature_logins
implementation FenixDependencies.mozilla_feature_site_permissions
implementation FenixDependencies.mozilla_feature_readerview
implementation FenixDependencies.mozilla_feature_tab_collections
implementation FenixDependencies.mozilla_feature_recentlyclosed
implementation FenixDependencies.mozilla_feature_top_sites
implementation FenixDependencies.mozilla_feature_share
implementation FenixDependencies.mozilla_feature_accounts_push
implementation FenixDependencies.mozilla_feature_webauthn
implementation FenixDependencies.mozilla_feature_webcompat
implementation FenixDependencies.mozilla_feature_webnotifications
implementation FenixDependencies.mozilla_feature_webcompat_reporter
implementation Deps.mozilla_support_extensions
implementation Deps.mozilla_feature_addons
implementation FenixDependencies.mozilla_service_pocket
implementation FenixDependencies.mozilla_service_contile
implementation FenixDependencies.mozilla_service_digitalassetlinks
implementation FenixDependencies.mozilla_service_sync_autofill
implementation FenixDependencies.mozilla_service_sync_logins
implementation FenixDependencies.mozilla_service_firefox_accounts
implementation(FenixDependencies.mozilla_service_glean)
implementation FenixDependencies.mozilla_service_location
implementation FenixDependencies.mozilla_service_nimbus
implementation Deps.mozilla_feature_accounts
implementation Deps.mozilla_feature_app_links
implementation Deps.mozilla_feature_autofill
implementation Deps.mozilla_feature_awesomebar
implementation Deps.mozilla_feature_contextmenu
implementation Deps.mozilla_feature_customtabs
implementation Deps.mozilla_feature_downloads
implementation Deps.mozilla_feature_intent
implementation Deps.mozilla_feature_media
implementation Deps.mozilla_feature_prompts
implementation Deps.mozilla_feature_push
implementation Deps.mozilla_feature_privatemode
implementation Deps.mozilla_feature_pwa
implementation Deps.mozilla_feature_qr
implementation Deps.mozilla_feature_search
implementation Deps.mozilla_feature_session
implementation Deps.mozilla_feature_syncedtabs
implementation Deps.mozilla_feature_toolbar
implementation Deps.mozilla_feature_tabs
implementation Deps.mozilla_feature_findinpage
implementation Deps.mozilla_feature_logins
implementation Deps.mozilla_feature_site_permissions
implementation Deps.mozilla_feature_readerview
implementation Deps.mozilla_feature_tab_collections
implementation Deps.mozilla_feature_recentlyclosed
implementation Deps.mozilla_feature_top_sites
implementation Deps.mozilla_feature_share
implementation Deps.mozilla_feature_accounts_push
implementation Deps.mozilla_feature_webauthn
implementation Deps.mozilla_feature_webcompat
implementation Deps.mozilla_feature_webnotifications
implementation Deps.mozilla_feature_webcompat_reporter
implementation FenixDependencies.mozilla_support_extensions
implementation FenixDependencies.mozilla_support_base
implementation FenixDependencies.mozilla_support_rusterrors
implementation FenixDependencies.mozilla_support_images
implementation FenixDependencies.mozilla_support_ktx
implementation FenixDependencies.mozilla_support_rustlog
implementation FenixDependencies.mozilla_support_utils
implementation FenixDependencies.mozilla_support_locale
implementation Deps.mozilla_service_digitalassetlinks
implementation Deps.mozilla_service_sync_autofill
implementation Deps.mozilla_service_sync_logins
implementation Deps.mozilla_service_firefox_accounts
implementation Deps.mozilla_service_glean
implementation Deps.mozilla_service_location
implementation Deps.mozilla_service_nimbus
implementation FenixDependencies.mozilla_ui_colors
implementation FenixDependencies.mozilla_ui_icons
implementation FenixDependencies.mozilla_lib_publicsuffixlist
implementation FenixDependencies.mozilla_ui_widgets
implementation FenixDependencies.mozilla_ui_tabcounter
implementation Deps.mozilla_support_base
implementation Deps.mozilla_support_images
implementation Deps.mozilla_support_ktx
implementation Deps.mozilla_support_rustlog
implementation Deps.mozilla_support_utils
implementation Deps.mozilla_support_locale
implementation FenixDependencies.mozilla_lib_crash
implementation FenixDependencies.lib_crash_sentry
implementation FenixDependencies.mozilla_lib_push_firebase
implementation FenixDependencies.mozilla_lib_state
implementation FenixDependencies.mozilla_lib_dataprotect
debugImplementation FenixDependencies.leakcanary
implementation Deps.mozilla_support_migration
implementation FenixDependencies.androidx_annotation
implementation FenixDependencies.androidx_compose_ui
implementation FenixDependencies.androidx_compose_ui_tooling
implementation FenixDependencies.androidx_compose_foundation
implementation FenixDependencies.androidx_compose_material
implementation FenixDependencies.androidx_legacy
implementation FenixDependencies.androidx_biometric
implementation FenixDependencies.androidx_paging
implementation FenixDependencies.androidx_preference
implementation FenixDependencies.androidx_fragment
implementation FenixDependencies.androidx_navigation_fragment
implementation FenixDependencies.androidx_navigation_ui
implementation FenixDependencies.androidx_recyclerview
implementation FenixDependencies.androidx_lifecycle_common
implementation FenixDependencies.androidx_lifecycle_livedata
implementation FenixDependencies.androidx_lifecycle_process
implementation FenixDependencies.androidx_lifecycle_runtime
implementation FenixDependencies.androidx_lifecycle_viewmodel
implementation FenixDependencies.androidx_core
implementation FenixDependencies.androidx_core_ktx
implementation FenixDependencies.androidx_transition
implementation FenixDependencies.androidx_work_ktx
implementation FenixDependencies.androidx_datastore
implementation FenixDependencies.protobuf_javalite
implementation FenixDependencies.google_material
implementation Deps.mozilla_ui_colors
implementation Deps.mozilla_ui_icons
implementation Deps.mozilla_lib_publicsuffixlist
implementation Deps.mozilla_ui_widgets
implementation Deps.mozilla_ui_tabcounter
implementation FenixDependencies.adjust
implementation FenixDependencies.installreferrer // Required by Adjust
implementation Deps.mozilla_lib_crash
implementation Deps.mozilla_lib_push_firebase
implementation Deps.mozilla_lib_dataprotect
debugImplementation Deps.leakcanary
implementation FenixDependencies.google_ads_id // Required for the Google Advertising ID
implementation Deps.androidx_legacy
implementation Deps.androidx_biometric
implementation Deps.androidx_paging
implementation Deps.androidx_preference
implementation Deps.androidx_fragment
implementation Deps.androidx_navigation_fragment
implementation Deps.androidx_navigation_ui
implementation Deps.androidx_recyclerview
implementation Deps.androidx_lifecycle_livedata
implementation Deps.androidx_lifecycle_runtime
implementation Deps.androidx_lifecycle_viewmodel
implementation Deps.androidx_core
implementation Deps.androidx_core_ktx
implementation Deps.androidx_transition
implementation Deps.androidx_work_ktx
implementation Deps.google_material
// Required for in-app reviews
implementation FenixDependencies.google_play_review
implementation FenixDependencies.google_play_review_ktx
implementation Deps.adjust
implementation Deps.installreferrer // Required by Adjust
implementation Deps.google_ads_id // Required for the Google Advertising ID
implementation Deps.google_play_store // Required for in-app reviews
androidTestImplementation Deps.uiautomator
// Removed pending AndroidX fixes
androidTestImplementation FenixDependencies.uiautomator
androidTestImplementation "tools.fastlane:screengrab:2.0.0"
// androidTestImplementation "br.com.concretesolutions:kappuccino:1.2.1"
// This Falcon version is added to maven central now required for Screengrab
implementation 'com.jraska:falcon:2.2.0'
androidTestImplementation Deps.espresso_core, {
androidTestImplementation FenixDependencies.androidx_compose_ui_test
androidTestImplementation FenixDependencies.espresso_core, {
exclude group: 'com.android.support', module: 'support-annotations'
}
androidTestImplementation(Deps.espresso_contrib) {
androidTestImplementation(FenixDependencies.espresso_contrib) {
exclude module: 'appcompat-v7'
exclude module: 'support-v4'
exclude module: 'support-annotations'
exclude module: 'recyclerview-v7'
exclude module: 'design'
exclude module: 'espresso-core'
exclude module: 'protobuf-lite'
}
androidTestImplementation Deps.androidx_test_core
androidTestImplementation Deps.espresso_idling_resources
androidTestImplementation Deps.espresso_intents
androidTestImplementation FenixDependencies.androidx_test_core
androidTestImplementation FenixDependencies.espresso_idling_resources
androidTestImplementation FenixDependencies.espresso_intents
androidTestImplementation Deps.tools_test_runner
androidTestImplementation Deps.tools_test_rules
androidTestUtil Deps.orchestrator
androidTestImplementation Deps.espresso_core, {
androidTestImplementation FenixDependencies.tools_test_runner
androidTestImplementation FenixDependencies.tools_test_rules
androidTestUtil FenixDependencies.orchestrator
androidTestImplementation FenixDependencies.espresso_core, {
exclude group: 'com.android.support', module: 'support-annotations'
}
androidTestImplementation Deps.androidx_junit
androidTestImplementation Deps.androidx_work_testing
androidTestImplementation Deps.mockwebserver
testImplementation Deps.mozilla_support_test
testImplementation Deps.mozilla_support_test_libstate
testImplementation Deps.androidx_junit
testImplementation Deps.androidx_work_testing
testImplementation (Deps.robolectric) {
androidTestImplementation FenixDependencies.androidx_junit
androidTestImplementation FenixDependencies.androidx_test_extensions
androidTestImplementation FenixDependencies.androidx_work_testing
androidTestImplementation FenixDependencies.androidx_benchmark_junit4
androidTestImplementation FenixDependencies.mockwebserver
testImplementation FenixDependencies.mozilla_support_test
testImplementation FenixDependencies.mozilla_support_test_libstate
testImplementation FenixDependencies.androidx_junit
testImplementation FenixDependencies.androidx_test_extensions
testImplementation FenixDependencies.androidx_work_testing
testImplementation (FenixDependencies.robolectric) {
exclude group: 'org.apache.maven'
}
testImplementation 'org.apache.maven:maven-ant-tasks:2.1.3'
implementation Deps.mozilla_support_rusthttp
implementation FenixDependencies.mozilla_support_rusthttp
testImplementation Deps.mockk
androidTestImplementation FenixDependencies.mockk_android
testImplementation FenixDependencies.mockk
// For the initial release of Glean 19, we require consumer applications to
// depend on a separate library for unit tests. This will be removed in future releases.
testImplementation "org.mozilla.telemetry:glean-forUnitTests:${project.ext.glean_version}"
testImplementation "org.mozilla.telemetry:glean-native-forUnitTests:${project.ext.glean_version}"
lintChecks project(":mozilla-lint-rules")
}
protobuf {
// Mac M1 workaround until we can bump the version. Dependent on A-S.
// See https://github.com/mozilla-mobile/fenix/issues/22321
protoc {
if (osdetector.os == "osx") {
artifact = "${FenixDependencies.protobuf_compiler}:osx-x86_64"
} else {
artifact = FenixDependencies.protobuf_compiler
}
}
// Generates the java Protobuf-lite code for the Protobufs in this project. See
// https://github.com/google/protobuf-gradle-plugin#customizing-protobuf-compilation
// for more information.
generateProtoTasks {
all().each { task ->
task.builtins {
java {
option 'lite'
}
}
}
}
}
if (project.hasProperty("coverage")) {
tasks.withType(Test).configureEach {
jacoco.includeNoLocationClasses = true
jacoco.excludes = ['jdk.internal.*']
}
jacoco {
toolVersion = "0.8.7"
}
android.applicationVariants.all { variant ->
@ -739,14 +838,37 @@ if (gradle.hasProperty('localProperties.dependencySubstitutions.geckoviewTopsrcd
apply from: "${topsrcdir}/substitute-local-geckoview.gradle"
}
def acSrcDir = null
if (gradle.hasProperty('localProperties.autoPublish.android-components.dir')) {
ext.acSrcDir = gradle."localProperties.autoPublish.android-components.dir"
apply from: "../${acSrcDir}/substitute-local-ac.gradle"
acSrcDir = gradle.getProperty('localProperties.autoPublish.android-components.dir')
} else if (gradle.hasProperty('localProperties.branchBuild.android-components.dir')) {
acSrcDir = gradle.getProperty('localProperties.branchBuild.android-components.dir')
}
if (acSrcDir) {
if (acSrcDir.startsWith("/")) {
apply from: "${acSrcDir}/substitute-local-ac.gradle"
} else {
apply from: "../${acSrcDir}/substitute-local-ac.gradle"
}
}
def appServicesSrcDir = null
if (gradle.hasProperty('localProperties.autoPublish.application-services.dir')) {
ext.appServicesSrcDir = gradle."localProperties.autoPublish.application-services.dir"
apply from: "../${appServicesSrcDir}/build-scripts/substitute-local-appservices.gradle"
appServicesSrcDir = gradle.getProperty('localProperties.autoPublish.application-services.dir')
} else if (gradle.hasProperty('localProperties.branchBuild.application-services.dir')) {
appServicesSrcDir = gradle.getProperty('localProperties.branchBuild.application-services.dir')
}
if (appServicesSrcDir) {
if (appServicesSrcDir.startsWith("/")) {
apply from: "${appServicesSrcDir}/build-scripts/substitute-local-appservices.gradle"
} else {
apply from: "../${appServicesSrcDir}/build-scripts/substitute-local-appservices.gradle"
}
}
if (gradle.hasProperty('localProperties.autoPublish.glean.dir')) {
ext.gleanSrcDir = gradle."localProperties.autoPublish.glean.dir"
apply from: "../${gleanSrcDir}/build-scripts/substitute-local-glean.gradle"
}
// Define a reusable task for updating the versions of our built-in web extensions. We automate this
@ -769,13 +891,13 @@ ext.updateExtensionVersion = { task, extDir ->
}
}
tasks.register("updateAdsExtensionVersion", Copy) { task ->
updateExtensionVersion(task, 'src/main/assets/extensions/ads')
android.applicationVariants.all { variant ->
tasks.register("apkSize${variant.name.capitalize()}", ApkSizeTask) {
variantName = variant.name
apks = variant.outputs.collect { output -> output.outputFile.name }
dependsOn "package${variant.name.capitalize()}"
}
}
tasks.register("updateCookiesExtensionVersion", Copy) { task ->
updateExtensionVersion(task, 'src/main/assets/extensions/cookies')
}
preBuild.dependsOn "updateAdsExtensionVersion"
preBuild.dependsOn "updateCookiesExtensionVersion"
// Enable expiration by major version.
ext.gleanExpireByVersion = Config.majorVersion(project)

File diff suppressed because it is too large Load Diff

View File

@ -14,7 +14,7 @@
<issue id="PluralsCandidate" severity="ignore" />
<issue id="StringFormatCount" severity="ignore" />
<issue id="TypographyEllipsis" severity="ignore" />
<issue id="ExtraTranslation" severity="warning" />
<issue id="ExtraTranslation" severity="ignore" />
<!-- Lints that are disabled by default -->
<issue id="ConvertToWebp" severity="warning" />
@ -50,7 +50,11 @@
<!-- Performance: checks we'd like to eventually set to error. -->
<issue id="UseCompoundDrawables" severity="warning" />
<issue id="Overdraw" severity="warning" />
<issue id="UnusedResources" severity="warning" />
<issue id="UnusedResources" severity="error">
<!-- Using an automated process to remove localized strings after they are removed from the default strings.xml
means the files for localized strings will contain unused resources for a few days after the original removal operation. -->
<ignore path="**/values-*/strings.xml" />
</issue>
<!-- Performance: checks that we're unsure of the value of that we might want to investigate. -->
<issue id="UnpackedNativeCode" severity="informational" />

File diff suppressed because it is too large Load Diff

View File

@ -2,7 +2,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
---
$schema: moz://mozilla.org/schemas/glean/pings/1-0-0
$schema: moz://mozilla.org/schemas/glean/pings/2-0-0
activation:
description: |
@ -17,7 +17,7 @@ activation:
data_reviews:
- https://github.com/mozilla-mobile/fenix/pull/1707#issuecomment-486972209
notification_emails:
- fenix-core@mozilla.com
- android-probes@mozilla.com
first-session:
description: |
@ -29,25 +29,36 @@ first-session:
data_reviews:
- https://github.com/mozilla-mobile/fenix/pull/8074#issuecomment-586512202
notification_emails:
- fenix-core@mozilla.com
- android-probes@mozilla.com
startup-timeline:
topsites-impression:
description: |
This ping is intended to provide an understanding of startup performance.
In addition to being captured on real devices, the ping data was prematurely
optimized into this separate ping to be isolated from other metrics to be
more easily captured by performance testing automation but that hasn't
happened in practice. We would have removed it but implementation
details don't make that possible:
https://github.com/mozilla-mobile/fenix/issues/17972#issuecomment-781002987
include_client_id: true
Recorded when a sponsored top site is rendered and visible on the home
screen. Visibility is qualified as when the homepage is brought to the
front of the Browser, and sponsored tiles are 100% visible on screen.
include_client_id: false
bugs:
- https://github.com/mozilla-mobile/fenix/issues/8803
- https://github.com/mozilla-mobile/fenix/issues/17972
- https://github.com/mozilla-mobile/fenix/issues/23893
data_reviews:
- https://github.com/mozilla-mobile/fenix/pull/9788#pullrequestreview-394228626
- https://github.com/mozilla-mobile/fenix/pull/18043#issue-575389284
- https://github.com/mozilla-mobile/fenix/pull/23945
notification_emails:
- perf-android-fe@mozilla.com
- mcomella@mozilla.com
- android-probes@mozilla.com
spoc:
description: |
Contains data identifying with which Pocket sponsored story the user
interacted with and the type of interaction: story impression or click.
include_client_id: false
reasons:
impression: |
A sponsored story had more than 50% of it's content visible
on the screen.
click: |
A sponsored story was clicked by the user.
bugs:
- https://github.com/mozilla-mobile/fenix/issues/27549
- https://mozilla-hub.atlassian.net/browse/FNXV2-21791
data_reviews:
- https://github.com/mozilla-mobile/fenix/pull/27550#issuecomment-1295027631
notification_emails:
- android-probes@mozilla.com

View File

@ -1,120 +0,0 @@
####################################################################################################
# Copy of `proguard-android-optimize.txt`.
# We need to _remove_ some of the configuration, so the only way to achieve that is to dump it here
# and modify it.
####################################################################################################
# This is a configuration file for ProGuard.
# http://proguard.sourceforge.net/index.html#manual/usage.html
#
# Starting with version 2.2 of the Android plugin for Gradle, this file is distributed together with
# the plugin and unpacked at build-time. The files in $ANDROID_HOME are no longer maintained and
# will be ignored by new version of the Android plugin for Gradle.
# Optimizations: If you don't want to optimize, use the proguard-android.txt configuration file
# instead of this one, which turns off the optimization flags.
# Adding optimization introduces certain risks, since for example not all optimizations performed by
# ProGuard works on all versions of Dalvik. The following flags turn off various optimizations
# known to have issues, but the list may not be complete or up to date. (The "arithmetic"
# optimization can be used if you are only targeting Android 2.0 or later.) Make sure you test
# thoroughly if you go this route.
-optimizations !code/simplification/arithmetic,!code/simplification/cast,!field/*,!class/merging/*
-optimizationpasses 5
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-verbose
# Preserve some attributes that may be required for reflection.
-keepattributes *Annotation*,Signature,InnerClasses,EnclosingMethod
-keep public class com.google.vending.licensing.ILicensingService
-keep public class com.android.vending.licensing.ILicensingService
-keep public class com.google.android.vending.licensing.ILicensingService
-dontnote com.android.vending.licensing.ILicensingService
-dontnote com.google.vending.licensing.ILicensingService
-dontnote com.google.android.vending.licensing.ILicensingService
# For native methods, see http://proguard.sourceforge.net/manual/examples.html#native
-keepclasseswithmembernames class * {
native <methods>;
}
# Keep setters in Views so that animations can still work.
-keepclassmembers public class * extends android.view.View {
void set*(***);
*** get*();
}
# We want to keep methods in Activity that could be used in the XML attribute onClick.
-keepclassmembers class * extends android.app.Activity {
public void *(android.view.View);
}
# For enumeration classes, see http://proguard.sourceforge.net/manual/examples.html#enumerations
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keepclassmembers class * implements android.os.Parcelable {
public static final ** CREATOR;
}
-keepclassmembers class **.R$* {
public static <fields>;
}
# Preserve annotated Javascript interface methods.
-keepclassmembers class * {
@android.webkit.JavascriptInterface <methods>;
}
# The support libraries contains references to newer platform versions.
# Don't warn about those in case this app is linking against an older
# platform version. We know about them, and they are safe.
-dontnote android.support.**
-dontnote androidx.**
-dontwarn android.support.**
-dontwarn androidx.**
# This class is deprecated, but remains for backward compatibility.
-dontwarn android.util.FloatMath
# Understand the @Keep support annotation.
-keep class android.support.annotation.Keep
-keep class androidx.annotation.Keep
-keep @android.support.annotation.Keep class * {*;}
-keep @androidx.annotation.Keep class * {*;}
-keepclasseswithmembers class * {
@android.support.annotation.Keep <methods>;
}
-keepclasseswithmembers class * {
@androidx.annotation.Keep <methods>;
}
-keepclasseswithmembers class * {
@android.support.annotation.Keep <fields>;
}
-keepclasseswithmembers class * {
@androidx.annotation.Keep <fields>;
}
-keepclasseswithmembers class * {
@android.support.annotation.Keep <init>(...);
}
-keepclasseswithmembers class * {
@androidx.annotation.Keep <init>(...);
}
# These classes are duplicated between android.jar and org.apache.http.legacy.jar.
-dontnote org.apache.http.**
-dontnote android.net.http.**
# These classes are duplicated between android.jar and core-lambda-stubs.jar.
-dontnote java.lang.invoke.**

View File

@ -32,17 +32,20 @@
-keep class org.mozilla.gecko.util.DebugConfig { *; }
####################################################################################################
# Force removal of slow Dispatchers.Main ServiceLoader
# kotlinx.coroutines: use the fast service loader to init MainDispatcherLoader by including a rule
# to rewrite this property to return true:
# https://github.com/Kotlin/kotlinx.coroutines/blob/8c98180f177bbe4b26f1ed9685a9280fea648b9c/kotlinx-coroutines-core/jvm/src/internal/MainDispatchers.kt#L19
#
# R8 is expected to optimize the default implementation to avoid a performance issue but a bug in R8
# as bundled with AGP v7.0.0 causes this optimization to fail so we use the fast service loader instead. See:
# https://github.com/mozilla-mobile/focus-android/issues/5102#issuecomment-897854121
#
# The fast service loader appears to be as performant as the R8 optimization so it's not worth the
# churn to later remove this workaround. If needed, the upstream fix is being handled in
# https://issuetracker.google.com/issues/196302685
####################################################################################################
# Allow R8 to optimize away the FastServiceLoader.
# Together with ServiceLoader optimization in R8
# this results in direct instantiation when loading Dispatchers.Main
-assumenosideeffects class kotlinx.coroutines.internal.MainDispatcherLoader {
boolean FAST_SERVICE_LOADER_ENABLED return false;
}
-assumenosideeffects class kotlinx.coroutines.internal.FastServiceLoader {
boolean ANDROID_DETECTED return true;
boolean FAST_SERVICE_LOADER_ENABLED return true;
}
####################################################################################################

View File

@ -1,5 +0,0 @@
History
Bookmarks
Logins
Open Tabs
Settings

View File

@ -0,0 +1,16 @@
<html>
<head>
<meta name="viewport" content="width=device-width">
<title>Address_Form</title>
</head>
<body>
<form>
<p>Street Address: <input id="streetAddress" type="text"></p>
<p>City: <input id="city" type="text"></p>
<p>Zip Code: <input id="zipCode" type="text"></p>
<p>Country: <input id="country" type="text"></p>
<p>Telephone: <input id="telephone" type="text"></p>
<p>Email: <input id="email" type="text"></p>
</form>
</body>
</html>

View File

@ -9,18 +9,5 @@
<source src="../resources/audioSample.mp3">
</audio>
</div>
<div class="playbackState">
</div>
<script>
const audio = document.querySelector('audio');
audio.addEventListener('playing', (event) => {
document.querySelector('.playbackState').innerText="Media file is playing"
});
audio.addEventListener('pause', (event) => {
document.querySelector('.playbackState').innerText="Media file is paused"
});
</script>
</body>
</html>

View File

@ -0,0 +1,13 @@
<html>
<head>
<meta name="viewport" content="width=device-width">
<title>Credit_Card_Form</title>
</head>
<body>
<form>
<p>Card information</p>
<p>Card Number: <input id="cardNumber" type="text" placeholder="1234 1234 1234 1234"></p>
<p>Name on card: <input id="nameOnCard"type="text" placeholder="Name on card"></p>
</form>
</body>
</html>

View File

@ -0,0 +1,8 @@
<html>
<body>
<h2>Cross-site cookies storage access test</h2>
<h3>anti-tracker-test.com</h3>
<h4>different site, cross-origin iframe</h4>
<iframe width=500 height=1000 src="https://mozilla-mobile.github.io/testapp/anti-tracker-test_set_storage_with_sa_api.html"></iframe>
</body>
</html>

View File

@ -1,10 +0,0 @@
<html>
<body>
<a id="link" href="../resources/Globe.svg" download>Page content: Globe.svg</a>
<script>
(function() {
document.getElementById("link").click()
})();
</script>
</body>
</html>

View File

@ -0,0 +1,22 @@
<!DOCTYPE html>
<html>
<head>
<title>Html_Control_Form</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
</head>
<p>Misc Link Types</p>
<section>
<a href="https://duckduckgo.com/">External link</a>
</section>
<section>
<a href="mailto://example@example.com">Email link</a>
</section>
<section>
<a href="tel://1234567890">Telephone link</a>
</section>
</html>

View File

@ -5,6 +5,9 @@
<body>
<h1>
<p id="testContent">Page content: 3</p>
<p>
<a href="https://play.google.com/store/apps/details?id=org.mozilla.fenix">Mozilla Playstore link</a>
</p>
</h1>
</body>
</html>

View File

@ -1,5 +1,6 @@
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Test_Page_4</title>
</head>
<body>

View File

@ -0,0 +1,74 @@
<!DOCTYPE html>
<html>
<head>
<title>Html_Control_Form</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
</head>
<p>Calendar Form</p>
<section>
<input type="date" id="calendar">
<button onclick="printDate()" id="submitDate"> Submit date </button>
<div id="displayDate"></div>
</section>
<p>Clock Form</p>
<section>
<input type="time" id="clock">
<button onclick="printTime()" id="submitTime"> Submit time </button>
<div id="displayTime"></div>
</section>
<p>Color Form</p>
<section>
<input type="color" id="colorPicker">
<button onclick="printColor()" id="submitColor"> Submit color </button>
<div id="displayColor"></div>
</section>
<p>Drop-down Form</p>
<select id="dropDown">
<option type="text" text="The Only Ones">The Only Ones</option>
<option type="text" text="The National">The National</option>
</select>
<button onclick="printOption()" id="submitOption"> Submit drop down option </button>
<div id="displayOption"></div>
<script>
function printOption() {
let dropDown = document.querySelector("#dropDown");
let displayOption = document.querySelector("#displayOption");
displayOption.innerHTML = "Selected option is: " + dropDown.value;
}
</script>
<script>
function printDate() {
let calendar = document.querySelector("#calendar");
let displayDate = document.querySelector("#displayDate");
displayDate.innerHTML = "Selected date is: " + calendar.value;
}
</script>
<script>
function printTime() {
let time = document.querySelector("#clock");
let displayTime = document.querySelector("#displayTime");
displayTime.innerHTML = "Selected time is: " + time.value;
}
</script>
<script>
function printColor() {
let colorPicker = document.querySelector("#colorPicker");
let displayColor = document.querySelector("#displayColor");
displayColor.innerHTML = "Selected color is: " + colorPicker.value;
}
</script>
</html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html>
<html>
<meta name="viewport" content="width=device-width">
<body>
<h1>Storage check</h1>
<script type="text/javascript">
if (sessionStorage.getItem('sessionTest') == 'session storage') {
document.write('<p>Session storage has value</p>');
} else {
document.write('<p>Session storage empty</p>');
}
if (localStorage.getItem('localTest') == 'local storage') {
document.write('<p>Local storage has value</p>');
} else {
document.write('<p>Local storage empty</p>');
}
</script>
</body>
</html>

View File

@ -0,0 +1,28 @@
<!DOCTYPE html>
<html>
<meta name="viewport" content="width=device-width">
<body>
<h1>Storage Write</h1>
<p id="cookies"></p>
<button id="setCookies">Set cookies</button>
<script type="text/javascript">
(function() {
document.getElementById("cookies").textContent = document.cookie?document.cookie:"No cookies set";
})();
document.getElementById("setCookies").addEventListener("click", function() {
document.cookie = "user=android";
document.getElementById("cookies").textContent = document.cookie;
});
sessionStorage.setItem('sessionTest', 'session storage');
localStorage.setItem('localTest', 'local storage');
document.write('<p>Values written to storage</p>');
</script>
</body>
</html>

View File

@ -13,31 +13,31 @@
<h3>Level 1 (Basic) List</h3>
<p>social-track-digest256:</p>
<img
src="https://social-track-digest256.dummytracker.org/test_not_blocked.png"
onerror="this.onerror=null;this.src='https://not-a-tracker.dummytracker.org/test_blocked.png'">
src="https://social-track-digest256.dummytracker.org/test_not_blocked.png" alt="social not blocked"
onerror="this.onerror=null;this.src='https://not-a-tracker.dummytracker.org/test_blocked.png';this.alt='social blocked'">
<br/>
<p>ads-track-digest256:</p>
<img
src="https://ads-track-digest256.dummytracker.org/test_not_blocked.png"
onerror="this.onerror=null;this.src='https://not-a-tracker.dummytracker.org/test_blocked.png'">
onerror="this.onerror=null;this.src='https://not-a-tracker.dummytracker.org/test_blocked.png';this.alt='ads blocked'">
<br/>
<p>analytics-track-digest256:</p>
<img
src="https://analytics-track-digest256.dummytracker.org/test_not_blocked.png"
onerror="this.onerror=null;this.src='https://not-a-tracker.dummytracker.org/test_blocked.png'">
onerror="this.onerror=null;this.src='https://not-a-tracker.dummytracker.org/test_blocked.png';this.alt='analytics blocked'">
<br/>
<p>Fingerprinting:
<pre id="result">test not run</pre>
<script src="https://base-fingerprinting-track-digest256.dummytracker.org/tracker.js"
onerror="this.onerror=null;var result=document.getElementById('result');result.innerHTML='blocked';"
onload="this.onload=null;var result=document.getElementById('result');result.innerHTML='NOT blocked';"
onerror="this.onerror=null;var result=document.getElementById('result');result.innerHTML='Fingerprinting blocked';"
onload="this.onload=null;var result=document.getElementById('result');result.innerHTML='Fingerprinting NOT blocked';"
></script>
</p>
<br/>
<p>Cryptomining:
<img
src="https://base-cryptomining-track-digest256.dummytracker.org/test_not_blocked.png" alt="not blocked"
onerror="this.onerror=null;this.src='https://not-a-tracker.dummytracker.org/test_blocked.png';this.alt='blocked'">
src="https://base-cryptomining-track-digest256.dummytracker.org/test_not_blocked.png" alt="Cryptomining not blocked"
onerror="this.onerror=null;this.src='https://not-a-tracker.dummytracker.org/test_blocked.png';this.alt='Cryptomining blocked'">
</p>
<p><b>Cookie blocking</b>

View File

@ -1,26 +1,14 @@
<html>
<head>
<title>Video_Test_Page</title>
<meta name="viewport" content="width=device-width">
</head>
<body>
<p id="testContent">Page content: video player</p>
<div id="video-container">
<video id="videoSample" width="320" height="240" controls loop>
<source src="../resources/videoSample.webm">
<source src="../resources/clip.mp4">
</video>
</div>
<div class="playbackState">
</div>
<script>
const video = document.querySelector('video');
video.addEventListener('playing', (event) => {
document.querySelector('.playbackState').innerText="Media file is playing";
});
video.addEventListener('pause', (event) => {
document.querySelector('.playbackState').innerHTML="Media file is paused";
});
</script>
</body>
</html>

View File

@ -1,4 +0,0 @@
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path fill="context-fill" d="M8 0a8 8 0 1 0 8 8 8.009 8.009 0 0 0-8-8zm5.163 4.958h-1.552a7.7 7.7 0 0 0-1.051-2.376 6.03 6.03 0 0 1 2.603 2.376zM14 8a5.963 5.963 0 0 1-.335 1.958h-1.821A12.327 12.327 0 0 0 12 8a12.327 12.327 0 0 0-.156-1.958h1.821A5.963 5.963 0 0 1 14 8zm-6 6c-1.075 0-2.037-1.2-2.567-2.958h5.135C10.037 12.8 9.075 14 8 14zM5.174 9.958a11.084 11.084 0 0 1 0-3.916h5.651A11.114 11.114 0 0 1 11 8a11.114 11.114 0 0 1-.174 1.958zM2 8a5.963 5.963 0 0 1 .335-1.958h1.821a12.361 12.361 0 0 0 0 3.916H2.335A5.963 5.963 0 0 1 2 8zm6-6c1.075 0 2.037 1.2 2.567 2.958H5.433C5.963 3.2 6.925 2 8 2zm-2.56.582a7.7 7.7 0 0 0-1.051 2.376H2.837A6.03 6.03 0 0 1 5.44 2.582zm-2.6 8.46h1.549a7.7 7.7 0 0 0 1.051 2.376 6.03 6.03 0 0 1-2.603-2.376zm7.723 2.376a7.7 7.7 0 0 0 1.051-2.376h1.552a6.03 6.03 0 0 1-2.606 2.376z"></path></svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

View File

@ -5,11 +5,17 @@
package org.mozilla.fenix
import android.content.Context
import android.net.ConnectivityManager
import androidx.core.content.getSystemService
import androidx.navigation.NavController
import mozilla.components.browser.errorpages.ErrorPages
import mozilla.components.browser.errorpages.ErrorType
import mozilla.components.concept.engine.EngineSession
import mozilla.components.concept.engine.request.RequestInterceptor
import org.mozilla.fenix.GleanMetrics.ErrorPage
import org.mozilla.fenix.ext.components
import org.mozilla.fenix.ui.robots.appContext
import org.mozilla.fenix.ext.isOnline
import org.mozilla.fenix.helpers.TestHelper.appContext
import java.lang.ref.WeakReference
/**
@ -33,10 +39,178 @@ class AppRequestInterceptor(private val context: Context) : RequestInterceptor {
isSameDomain: Boolean,
isRedirect: Boolean,
isDirectNavigation: Boolean,
isSubframeRequest: Boolean
isSubframeRequest: Boolean,
): RequestInterceptor.InterceptionResponse? {
interceptFxaRequest(
engineSession,
uri,
lastUri,
hasUserGesture,
isSameDomain,
isRedirect,
isDirectNavigation,
isSubframeRequest,
)?.let { response ->
return response
}
interceptAmoRequest(uri, isSameDomain, hasUserGesture)?.let { response ->
return response
}
return context.components.services.appLinksInterceptor
.onLoadRequest(
engineSession,
uri,
lastUri,
hasUserGesture,
isSameDomain,
isRedirect,
isDirectNavigation,
isSubframeRequest,
)
}
override fun onErrorRequest(
session: EngineSession,
errorType: ErrorType,
uri: String?,
): RequestInterceptor.ErrorResponse? {
val improvedErrorType = improveErrorType(errorType)
val riskLevel = getRiskLevel(improvedErrorType)
ErrorPage.visitedError.record(ErrorPage.VisitedErrorExtra(improvedErrorType.name))
val errorPageUri = ErrorPages.createUrlEncodedErrorPage(
context = context,
errorType = improvedErrorType,
uri = uri,
htmlResource = riskLevel.htmlRes,
)
return RequestInterceptor.ErrorResponse(errorPageUri)
}
/**
* Checks if the provided [uri] is a request to install an add-on from addons.mozilla.org and
* redirects to Add-ons Manager to trigger installation if needed.
*
* @return [RequestInterceptor.InterceptionResponse.Deny] when installation was triggered and
* the original request can be skipped, otherwise null to continue loading the page.
*/
private fun interceptAmoRequest(
uri: String,
isSameDomain: Boolean,
hasUserGesture: Boolean,
): RequestInterceptor.InterceptionResponse? {
// First we execute a quick check to see if this is a request we're interested in i.e. a
// request triggered by the user and coming from AMO.
if (hasUserGesture && isSameDomain && uri.startsWith(AMO_BASE_URL)) {
// Check if this is a request to install an add-on.
val matchResult = AMO_INSTALL_URL_REGEX.toRegex().matchEntire(uri)
if (matchResult != null) {
// Navigate and trigger add-on installation.
matchResult.groupValues.getOrNull(1)?.let { addonId ->
navController?.get()?.navigate(
NavGraphDirections.actionGlobalAddonsManagementFragment(addonId),
)
// We've redirected to the add-ons management fragment, skip original request.
return RequestInterceptor.InterceptionResponse.Deny
}
}
}
// In all other case we let the original request proceed.
return null
}
@Suppress("LongParameterList")
private fun interceptFxaRequest(
engineSession: EngineSession,
uri: String,
lastUri: String?,
hasUserGesture: Boolean,
isSameDomain: Boolean,
isRedirect: Boolean,
isDirectNavigation: Boolean,
isSubframeRequest: Boolean,
): RequestInterceptor.InterceptionResponse? {
return appContext.components.services.accountsAuthFeature.interceptor.onLoadRequest(
engineSession, uri, lastUri, hasUserGesture, isSameDomain, isRedirect, isDirectNavigation, isSubframeRequest
engineSession,
uri,
lastUri,
hasUserGesture,
isSameDomain,
isRedirect,
isDirectNavigation,
isSubframeRequest,
)
}
/**
* Where possible, this will make the error type more accurate by including information not
* available to AC.
*/
private fun improveErrorType(errorType: ErrorType): ErrorType {
// This is not an ideal solution. For context, see:
// https://github.com/mozilla-mobile/android-components/pull/5068#issuecomment-558415367
val isConnected: Boolean = context.getSystemService<ConnectivityManager>()!!.isOnline()
return when {
errorType == ErrorType.ERROR_UNKNOWN_HOST && !isConnected -> ErrorType.ERROR_NO_INTERNET
else -> errorType
}
}
private fun getRiskLevel(errorType: ErrorType): RiskLevel = when (errorType) {
ErrorType.UNKNOWN,
ErrorType.ERROR_NET_INTERRUPT,
ErrorType.ERROR_NET_TIMEOUT,
ErrorType.ERROR_CONNECTION_REFUSED,
ErrorType.ERROR_UNKNOWN_SOCKET_TYPE,
ErrorType.ERROR_REDIRECT_LOOP,
ErrorType.ERROR_OFFLINE,
ErrorType.ERROR_NET_RESET,
ErrorType.ERROR_UNSAFE_CONTENT_TYPE,
ErrorType.ERROR_CORRUPTED_CONTENT,
ErrorType.ERROR_CONTENT_CRASHED,
ErrorType.ERROR_INVALID_CONTENT_ENCODING,
ErrorType.ERROR_UNKNOWN_HOST,
ErrorType.ERROR_MALFORMED_URI,
ErrorType.ERROR_FILE_NOT_FOUND,
ErrorType.ERROR_FILE_ACCESS_DENIED,
ErrorType.ERROR_PROXY_CONNECTION_REFUSED,
ErrorType.ERROR_UNKNOWN_PROXY_HOST,
ErrorType.ERROR_NO_INTERNET,
ErrorType.ERROR_HTTPS_ONLY,
ErrorType.ERROR_BAD_HSTS_CERT,
ErrorType.ERROR_UNKNOWN_PROTOCOL,
-> RiskLevel.Low
ErrorType.ERROR_SECURITY_BAD_CERT,
ErrorType.ERROR_SECURITY_SSL,
ErrorType.ERROR_PORT_BLOCKED,
-> RiskLevel.Medium
ErrorType.ERROR_SAFEBROWSING_HARMFUL_URI,
ErrorType.ERROR_SAFEBROWSING_MALWARE_URI,
ErrorType.ERROR_SAFEBROWSING_PHISHING_URI,
ErrorType.ERROR_SAFEBROWSING_UNWANTED_URI,
-> RiskLevel.High
}
internal enum class RiskLevel(val htmlRes: String) {
Low(LOW_AND_MEDIUM_RISK_ERROR_PAGES),
Medium(LOW_AND_MEDIUM_RISK_ERROR_PAGES),
High(HIGH_RISK_ERROR_PAGES),
}
companion object {
internal const val LOW_AND_MEDIUM_RISK_ERROR_PAGES = "low_and_medium_risk_error_pages.html"
internal const val HIGH_RISK_ERROR_PAGES = "high_risk_error_pages.html"
internal const val AMO_BASE_URL = BuildConfig.AMO_BASE_URL
internal const val AMO_INSTALL_URL_REGEX = "$AMO_BASE_URL/android/downloads/file/([^\\s]+)/([^\\s]+\\.xpi)"
}
}

View File

@ -5,8 +5,8 @@
package org.mozilla.fenix.components
import android.content.Context
import mozilla.components.service.fxa.ServerConfig.Server
import mozilla.components.service.fxa.ServerConfig
import mozilla.components.service.fxa.ServerConfig.Server
/**
* Utility to configure Firefox Account stage servers.
@ -14,7 +14,7 @@ import mozilla.components.service.fxa.ServerConfig
object FxaServer {
private const val CLIENT_ID = "a2270f727f45f648"
const val REDIRECT_URL = "urn:ietf:wg:oauth:2.0:oob:oauth-redirect-webchannel"
private const val REDIRECT_URL = "urn:ietf:wg:oauth:2.0:oob:oauth-redirect-webchannel"
@Suppress("UNUSED_PARAMETER")
fun config(context: Context): ServerConfig {

View File

@ -0,0 +1,13 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.customannotations
/**
* A custom annotation to mark the smoke tests corresponding to the ones in TestRail:
* https://testrail.stage.mozaws.net/index.php?/suites/view/3192
*/
@Target(AnnotationTarget.FUNCTION, AnnotationTarget.CLASS)
@Retention(AnnotationRetention.RUNTIME)
annotation class SmokeTest

View File

@ -2,6 +2,8 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
@file:Suppress("DEPRECATION")
package org.mozilla.fenix.glean
import android.content.Context
@ -11,6 +13,7 @@ import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.rule.ActivityTestRule
import androidx.test.uiautomator.UiDevice
import androidx.test.uiautomator.UiSelector
import kotlinx.coroutines.DelicateCoroutinesApi
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.GlobalScope
import kotlinx.coroutines.launch
@ -21,9 +24,11 @@ import mozilla.components.service.glean.net.ConceptFetchHttpUploader
import mozilla.components.service.glean.testing.GleanTestLocalServer
import okhttp3.mockwebserver.RecordedRequest
import org.json.JSONObject
import org.junit.Assert.assertTrue
import org.junit.Assert.assertFalse
import org.junit.Assert.assertTrue
import org.junit.Before
import org.junit.BeforeClass
import org.junit.Ignore
import org.junit.Rule
import org.junit.Test
import org.junit.runner.RunWith
@ -32,9 +37,9 @@ import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.R
import org.mozilla.fenix.helpers.HomeActivityTestRule
import org.mozilla.fenix.helpers.MockWebServerHelper
import java.util.concurrent.TimeUnit
import java.io.BufferedReader
import java.io.ByteArrayInputStream
import java.util.concurrent.TimeUnit
import java.util.zip.GZIPInputStream
/**
@ -66,6 +71,7 @@ fun RecordedRequest.getPlainBody(): String {
@RunWith(AndroidJUnit4::class)
class BaselinePingTest {
private val server = MockWebServerHelper.createAlwaysOkMockWebServer()
private lateinit var mDevice: UiDevice
@get:Rule
val activityRule: ActivityTestRule<HomeActivity> = HomeActivityTestRule()
@ -73,13 +79,21 @@ class BaselinePingTest {
@get:Rule
val gleanRule = GleanTestLocalServer(ApplicationProvider.getApplicationContext(), server.port)
@Before
fun setup() {
mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
}
companion object {
@BeforeClass
@JvmStatic
@OptIn(DelicateCoroutinesApi::class) // GlobalScope usage
fun setupOnce() {
val httpClient = ConceptFetchHttpUploader(lazy {
GeckoViewFetchClient(ApplicationProvider.getApplicationContext())
})
val httpClient = ConceptFetchHttpUploader(
lazy {
GeckoViewFetchClient(ApplicationProvider.getApplicationContext())
},
)
// Fenix does not initialize the Glean SDK in tests/debug builds, but this test
// requires Glean to be initialized so we need to do it manually. Additionally,
@ -89,7 +103,7 @@ class BaselinePingTest {
applicationContext = ApplicationProvider.getApplicationContext(),
uploadEnabled = true,
configuration = Configuration(httpClient = httpClient),
buildInfo = GleanBuildInfo.buildInfo
buildInfo = GleanBuildInfo.buildInfo,
)
}
}
@ -106,7 +120,7 @@ class BaselinePingTest {
private fun waitForPingContent(
pingName: String,
pingReason: String?,
maxAttempts: Int = 3
maxAttempts: Int = 3,
): JSONObject? {
var attempts = 0
do {
@ -130,27 +144,30 @@ class BaselinePingTest {
return null
}
@Ignore("Failing, see: https://bugzilla.mozilla.org/show_bug.cgi?id=1807288")
@Test
fun validateBaselinePing() {
// Wait for the app to be idle/ready.
InstrumentationRegistry.getInstrumentation().waitForIdleSync()
val device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
device.waitForIdle()
mDevice.waitForIdle()
// Wait for 1 second: this should guarantee we have some valid duration in the
// ping.
Thread.sleep(1000)
// Move it to background.
device.pressHome()
mDevice.pressHome()
// Due to bug 1632184, we need move the activity to foreground again, in order
// for a 'background' ping with reason 'foreground' to be generated and also trigger
// sending the ping that was submitted on background. This can go away once bug 1634375
// is fixed.
device.pressRecentApps()
device.findObject(UiSelector().descriptionContains(
ApplicationProvider.getApplicationContext<Context>().getString(R.string.app_name)))
mDevice.pressRecentApps()
mDevice.findObject(
UiSelector().descriptionContains(
ApplicationProvider.getApplicationContext<Context>().getString(R.string.app_name),
),
)
.click()
// Validate the received data.

View File

@ -5,11 +5,6 @@
package org.mozilla.fenix.helpers
import android.graphics.Bitmap
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
import android.graphics.Color
import org.junit.Assert.assertEquals

View File

@ -1,11 +1,47 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.helpers
import org.mozilla.fenix.helpers.TestHelper.getSponsoredShortcutTitle
object Constants {
// Device or AVD requires a Google Services Android OS installation
object PackageName {
const val GOOGLE_PLAY_SERVICES = "com.android.vending"
const val GOOGLE_APPS_PHOTOS = "com.google.android.apps.photos"
const val GOOGLE_QUICK_SEARCH = "com.google.android.googlequicksearchbox"
const val YOUTUBE_APP = "com.google.android.youtube"
const val GMAIL_APP = "com.google.android.gm"
const val PHONE_APP = "com.android.dialer"
const val ANDROID_SETTINGS = "com.android.settings"
}
const val SPEECH_RECOGNITION = "android.speech.action.RECOGNIZE_SPEECH"
const val POCKET_RECOMMENDED_STORIES_UTM_PARAM = "utm_source=pocket-newtab-android"
const val LONG_CLICK_DURATION: Long = 5000
const val LISTS_MAXSWIPES: Int = 3
const val RETRY_COUNT = 3
val searchEngineCodes = mapOf(
"Google" to "client=firefox-b-m",
"Bing" to "firefox&pc=MOZB&form=MOZMBA",
"DuckDuckGo" to "t=fpas",
)
val firstSponsoredShortcutTitle by lazy { getSponsoredShortcutTitle(2) }
val secondSponsoredShortcutTitle by lazy { getSponsoredShortcutTitle(3) }
// Expected for en-us defaults
val defaultTopSitesList by lazy {
mapOf(
"Google" to "Google",
"First sponsored shortcut" to firstSponsoredShortcutTitle,
"Second sponsored shortcut" to secondSponsoredShortcutTitle,
"Top Articles" to "Top Articles",
"Wikipedia" to "Wikipedia",
)
}
}

View File

@ -0,0 +1,19 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.helpers
import org.mozilla.experiments.nimbus.GleanPlumbMessageHelper
import org.mozilla.fenix.ext.components
import org.mozilla.fenix.helpers.TestHelper.appContext
object Experimentation {
val experiments =
appContext.components.analytics.experiments
fun withHelper(block: GleanPlumbMessageHelper.() -> Unit) {
val helper = experiments.createMessageHelper()
block(helper)
}
}

View File

@ -0,0 +1,87 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.helpers
import androidx.test.platform.app.InstrumentationRegistry
import org.mozilla.fenix.ext.settings
/**
* Helper for querying the status and modifying various features and settings in the application.
*/
interface FeatureSettingsHelper {
/**
* Whether the onboarding for existing users should be shown or not.
* It should appear only once on the first visit to homescreen.
*/
var isHomeOnboardingDialogEnabled: Boolean
/**
* Whether the Pocket stories feature is enabled or not.
*/
var isPocketEnabled: Boolean
/**
* Whether the "Jump back in" CFR should be shown or not.
* It should appear on the first visit to homescreen given that there is a tab opened.
*/
var isJumpBackInCFREnabled: Boolean
/**
* Whether the onboarding dialog for choosing wallpapers should be shown or not.
*/
var isWallpaperOnboardingEnabled: Boolean
/**
* Whether the "Jump back in" homescreen section is enabled or not.
* It shows the last visited tab on this device and on other synced devices.
*/
var isRecentTabsFeatureEnabled: Boolean
/**
* Whether the "Recently visited" homescreen section is enabled or not.
* It can show up to 9 history highlights and history groups.
*/
var isRecentlyVisitedFeatureEnabled: Boolean
/**
* Whether the onboarding dialog for PWAs should be shown or not.
* It can show the first time a website that can be installed as a PWA is accessed.
*/
var isPWAsPromptEnabled: Boolean
/**
* Whether the "Site permissions" option is checked in the "Delete browsing data" screen or not.
*/
var isDeleteSitePermissionsEnabled: Boolean
/**
* Enable or disable showing the TCP CFR when accessing a webpage for the first time.
*/
var isTCPCFREnabled: Boolean
/**
* The current "Enhanced Tracking Protection" policy.
* @see ETPPolicy
*/
var etpPolicy: ETPPolicy
fun applyFlagUpdates()
fun resetAllFeatureFlags()
companion object {
val settings = InstrumentationRegistry.getInstrumentation().targetContext.settings()
}
}
/**
* All "Enhanced Tracking Protection" modes.
*/
enum class ETPPolicy {
STANDARD,
STRICT,
CUSTOM,
;
}

View File

@ -0,0 +1,159 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.helpers
import org.mozilla.fenix.R
import org.mozilla.fenix.ext.getPreferenceKey
import org.mozilla.fenix.helpers.ETPPolicy.CUSTOM
import org.mozilla.fenix.helpers.ETPPolicy.STANDARD
import org.mozilla.fenix.helpers.ETPPolicy.STRICT
import org.mozilla.fenix.helpers.FeatureSettingsHelper.Companion.settings
import org.mozilla.fenix.helpers.TestHelper.appContext
import org.mozilla.fenix.onboarding.FenixOnboarding
import org.mozilla.fenix.utils.Settings
/**
* Helper for querying the status and modifying various features and settings in the application.
*/
class FeatureSettingsHelperDelegate : FeatureSettingsHelper {
/**
* The current feature flags used inside the app before the tests start.
* These will be restored when the tests end.
*/
private val initialFeatureFlags = FeatureFlags(
isHomeOnboardingDialogEnabled = settings.showHomeOnboardingDialog,
homeOnboardingDialogVersion = getHomeOnboardingVersion(),
isPocketEnabled = settings.showPocketRecommendationsFeature,
isJumpBackInCFREnabled = settings.shouldShowJumpBackInCFR,
isRecentTabsFeatureEnabled = settings.showRecentTabsFeature,
isRecentlyVisitedFeatureEnabled = settings.historyMetadataUIFeature,
isPWAsPromptEnabled = !settings.userKnowsAboutPwas,
isTCPCFREnabled = settings.shouldShowTotalCookieProtectionCFR,
isWallpaperOnboardingEnabled = settings.showWallpaperOnboarding,
isDeleteSitePermissionsEnabled = settings.deleteSitePermissions,
etpPolicy = getETPPolicy(settings),
)
/**
* The current feature flags updated in tests.
*/
private var updatedFeatureFlags = initialFeatureFlags.copy()
override var isHomeOnboardingDialogEnabled: Boolean
get() = updatedFeatureFlags.isHomeOnboardingDialogEnabled &&
FenixOnboarding(appContext).userHasBeenOnboarded()
set(value) {
updatedFeatureFlags.isHomeOnboardingDialogEnabled = value
updatedFeatureFlags.homeOnboardingDialogVersion = when (value) {
true -> FenixOnboarding.CURRENT_ONBOARDING_VERSION
false -> 0
}
}
override var isPocketEnabled: Boolean by updatedFeatureFlags::isPocketEnabled
override var isJumpBackInCFREnabled: Boolean by updatedFeatureFlags::isJumpBackInCFREnabled
override var isWallpaperOnboardingEnabled: Boolean by updatedFeatureFlags::isWallpaperOnboardingEnabled
override var isRecentTabsFeatureEnabled: Boolean by updatedFeatureFlags::isRecentTabsFeatureEnabled
override var isRecentlyVisitedFeatureEnabled: Boolean by updatedFeatureFlags::isRecentlyVisitedFeatureEnabled
override var isPWAsPromptEnabled: Boolean by updatedFeatureFlags::isPWAsPromptEnabled
override var isTCPCFREnabled: Boolean by updatedFeatureFlags::isTCPCFREnabled
override var etpPolicy: ETPPolicy by updatedFeatureFlags::etpPolicy
override fun applyFlagUpdates() {
applyFeatureFlags(updatedFeatureFlags)
}
override fun resetAllFeatureFlags() {
applyFeatureFlags(initialFeatureFlags)
}
override var isDeleteSitePermissionsEnabled: Boolean by updatedFeatureFlags::isDeleteSitePermissionsEnabled
private fun applyFeatureFlags(featureFlags: FeatureFlags) {
settings.showHomeOnboardingDialog = featureFlags.isHomeOnboardingDialogEnabled
setHomeOnboardingVersion(featureFlags.homeOnboardingDialogVersion)
settings.showPocketRecommendationsFeature = featureFlags.isPocketEnabled
settings.shouldShowJumpBackInCFR = featureFlags.isJumpBackInCFREnabled
settings.showRecentTabsFeature = featureFlags.isRecentTabsFeatureEnabled
settings.historyMetadataUIFeature = featureFlags.isRecentlyVisitedFeatureEnabled
settings.userKnowsAboutPwas = !featureFlags.isPWAsPromptEnabled
settings.shouldShowTotalCookieProtectionCFR = featureFlags.isTCPCFREnabled
settings.showWallpaperOnboarding = featureFlags.isWallpaperOnboardingEnabled
settings.deleteSitePermissions = featureFlags.isDeleteSitePermissionsEnabled
setETPPolicy(featureFlags.etpPolicy)
}
}
private data class FeatureFlags(
var isHomeOnboardingDialogEnabled: Boolean,
var homeOnboardingDialogVersion: Int,
var isPocketEnabled: Boolean,
var isJumpBackInCFREnabled: Boolean,
var isRecentTabsFeatureEnabled: Boolean,
var isRecentlyVisitedFeatureEnabled: Boolean,
var isPWAsPromptEnabled: Boolean,
var isTCPCFREnabled: Boolean,
var isWallpaperOnboardingEnabled: Boolean,
var isDeleteSitePermissionsEnabled: Boolean,
var etpPolicy: ETPPolicy,
)
internal fun getETPPolicy(settings: Settings): ETPPolicy {
return when {
settings.useStrictTrackingProtection -> STRICT
settings.useCustomTrackingProtection -> CUSTOM
else -> STANDARD
}
}
private fun setETPPolicy(policy: ETPPolicy) {
when (policy) {
STRICT -> settings.setStrictETP()
// The following two cases update ETP in the same way "setStrictETP" does.
STANDARD -> {
settings.preferences.edit()
.putBoolean(
appContext.getPreferenceKey(R.string.pref_key_tracking_protection_strict_default),
false,
)
.putBoolean(
appContext.getPreferenceKey(R.string.pref_key_tracking_protection_custom_option),
false,
)
.putBoolean(
appContext.getPreferenceKey(R.string.pref_key_tracking_protection_standard_option),
true,
)
.commit()
}
CUSTOM -> {
settings.preferences.edit()
.putBoolean(
appContext.getPreferenceKey(R.string.pref_key_tracking_protection_strict_default),
false,
)
.putBoolean(
appContext.getPreferenceKey(R.string.pref_key_tracking_protection_standard_option),
true,
)
.putBoolean(
appContext.getPreferenceKey(R.string.pref_key_tracking_protection_custom_option),
true,
)
.commit()
}
}
}
private fun getHomeOnboardingVersion(): Int {
return FenixOnboarding(appContext)
.preferences
.getInt(FenixOnboarding.LAST_VERSION_ONBOARDING_KEY, 0)
}
private fun setHomeOnboardingVersion(version: Int) {
FenixOnboarding(appContext)
.preferences.edit()
.putInt(FenixOnboarding.LAST_VERSION_ONBOARDING_KEY, version)
.commit()
}

View File

@ -2,16 +2,20 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
@file:Suppress("DEPRECATION")
package org.mozilla.fenix.helpers
import android.content.Intent
import android.view.ViewConfiguration.getLongPressTimeout
import androidx.test.espresso.intent.rule.IntentsTestRule
import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.rule.ActivityTestRule
import androidx.test.uiautomator.UiDevice
import androidx.test.uiautomator.UiSelector
import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.helpers.FeatureSettingsHelper.Companion.settings
import org.mozilla.fenix.helpers.TestHelper.appContext
import org.mozilla.fenix.helpers.TestHelper.mDevice
import org.mozilla.fenix.onboarding.FenixOnboarding
import org.mozilla.fenix.ui.robots.appContext
/**
* A [org.junit.Rule] to handle shared test set up for tests on [HomeActivity].
@ -23,20 +27,91 @@ import org.mozilla.fenix.ui.robots.appContext
class HomeActivityTestRule(
initialTouchMode: Boolean = false,
launchActivity: Boolean = true,
private val skipOnboarding: Boolean = false
) :
ActivityTestRule<HomeActivity>(HomeActivity::class.java, initialTouchMode, launchActivity) {
private val skipOnboarding: Boolean = false,
) : ActivityTestRule<HomeActivity>(HomeActivity::class.java, initialTouchMode, launchActivity),
FeatureSettingsHelper by FeatureSettingsHelperDelegate() {
// Using a secondary constructor allows us to easily delegate the settings to FeatureSettingsHelperDelegate.
// Otherwise if wanting to use the same names we would have to override these settings in the primary
// constructor and in that elide the FeatureSettingsHelperDelegate.
constructor(
initialTouchMode: Boolean = false,
launchActivity: Boolean = true,
skipOnboarding: Boolean = false,
isHomeOnboardingDialogEnabled: Boolean = settings.showHomeOnboardingDialog &&
FenixOnboarding(appContext).userHasBeenOnboarded(),
isPocketEnabled: Boolean = settings.showPocketRecommendationsFeature,
isJumpBackInCFREnabled: Boolean = settings.shouldShowJumpBackInCFR,
isRecentTabsFeatureEnabled: Boolean = settings.showRecentTabsFeature,
isRecentlyVisitedFeatureEnabled: Boolean = settings.historyMetadataUIFeature,
isPWAsPromptEnabled: Boolean = !settings.userKnowsAboutPwas,
isTCPCFREnabled: Boolean = settings.shouldShowTotalCookieProtectionCFR,
isWallpaperOnboardingEnabled: Boolean = settings.showWallpaperOnboarding,
isDeleteSitePermissionsEnabled: Boolean = settings.deleteSitePermissions,
etpPolicy: ETPPolicy = getETPPolicy(settings),
) : this(initialTouchMode, launchActivity, skipOnboarding) {
this.isHomeOnboardingDialogEnabled = isHomeOnboardingDialogEnabled
this.isPocketEnabled = isPocketEnabled
this.isJumpBackInCFREnabled = isJumpBackInCFREnabled
this.isRecentTabsFeatureEnabled = isRecentTabsFeatureEnabled
this.isRecentlyVisitedFeatureEnabled = isRecentlyVisitedFeatureEnabled
this.isPWAsPromptEnabled = isPWAsPromptEnabled
this.isTCPCFREnabled = isTCPCFREnabled
this.isWallpaperOnboardingEnabled = isWallpaperOnboardingEnabled
this.isDeleteSitePermissionsEnabled = isDeleteSitePermissionsEnabled
this.etpPolicy = etpPolicy
}
/**
* Update settings after the activity was created.
*/
fun applySettingsExceptions(settings: (FeatureSettingsHelper) -> Unit) {
FeatureSettingsHelperDelegate().also {
settings(it)
applyFlagUpdates()
}
}
private val longTapUserPreference = getLongPressTimeout()
override fun beforeActivityLaunched() {
super.beforeActivityLaunched()
setLongTapTimeout(3000)
applyFlagUpdates()
if (skipOnboarding) { skipOnboardingBeforeLaunch() }
}
override fun afterActivityFinished() {
super.afterActivityFinished()
setLongTapTimeout(longTapUserPreference)
resetAllFeatureFlags()
closeNotificationShade()
}
companion object {
/**
* Create a new instance of [HomeActivityTestRule] which by default will disable specific
* app features that would otherwise negatively impact most tests.
*
* The disabled features are:
* - the Jump back in CFR,
* - the Total Cookie Protection CFR,
* - the PWA prompt dialog,
* - the wallpaper onboarding.
*/
fun withDefaultSettingsOverrides(
initialTouchMode: Boolean = false,
launchActivity: Boolean = true,
skipOnboarding: Boolean = false,
) = HomeActivityTestRule(
initialTouchMode = initialTouchMode,
launchActivity = launchActivity,
skipOnboarding = skipOnboarding,
isJumpBackInCFREnabled = false,
isPWAsPromptEnabled = false,
isTCPCFREnabled = false,
isWallpaperOnboardingEnabled = false,
)
}
}
@ -48,30 +123,143 @@ class HomeActivityTestRule(
* @param launchActivity See [IntentsTestRule]
*/
class HomeActivityIntentTestRule(
class HomeActivityIntentTestRule internal constructor(
initialTouchMode: Boolean = false,
launchActivity: Boolean = true,
private val skipOnboarding: Boolean = false
) :
IntentsTestRule<HomeActivity>(HomeActivity::class.java, initialTouchMode, launchActivity) {
private val skipOnboarding: Boolean = false,
) : IntentsTestRule<HomeActivity>(HomeActivity::class.java, initialTouchMode, launchActivity),
FeatureSettingsHelper by FeatureSettingsHelperDelegate() {
// Using a secondary constructor allows us to easily delegate the settings to FeatureSettingsHelperDelegate.
// Otherwise if wanting to use the same names we would have to override these settings in the primary
// constructor and in that elide the FeatureSettingsHelperDelegate.
constructor(
initialTouchMode: Boolean = false,
launchActivity: Boolean = true,
skipOnboarding: Boolean = false,
isHomeOnboardingDialogEnabled: Boolean = settings.showHomeOnboardingDialog &&
FenixOnboarding(appContext).userHasBeenOnboarded(),
isPocketEnabled: Boolean = settings.showPocketRecommendationsFeature,
isJumpBackInCFREnabled: Boolean = settings.shouldShowJumpBackInCFR,
isRecentTabsFeatureEnabled: Boolean = settings.showRecentTabsFeature,
isRecentlyVisitedFeatureEnabled: Boolean = settings.historyMetadataUIFeature,
isPWAsPromptEnabled: Boolean = !settings.userKnowsAboutPwas,
isTCPCFREnabled: Boolean = settings.shouldShowTotalCookieProtectionCFR,
isWallpaperOnboardingEnabled: Boolean = settings.showWallpaperOnboarding,
isDeleteSitePermissionsEnabled: Boolean = settings.deleteSitePermissions,
etpPolicy: ETPPolicy = getETPPolicy(settings),
) : this(initialTouchMode, launchActivity, skipOnboarding) {
this.isHomeOnboardingDialogEnabled = isHomeOnboardingDialogEnabled
this.isPocketEnabled = isPocketEnabled
this.isJumpBackInCFREnabled = isJumpBackInCFREnabled
this.isRecentTabsFeatureEnabled = isRecentTabsFeatureEnabled
this.isRecentlyVisitedFeatureEnabled = isRecentlyVisitedFeatureEnabled
this.isPWAsPromptEnabled = isPWAsPromptEnabled
this.isTCPCFREnabled = isTCPCFREnabled
this.isWallpaperOnboardingEnabled = isWallpaperOnboardingEnabled
this.isDeleteSitePermissionsEnabled = isDeleteSitePermissionsEnabled
this.etpPolicy = etpPolicy
}
private val longTapUserPreference = getLongPressTimeout()
private lateinit var intent: Intent
/**
* Update settings after the activity was created.
*/
fun applySettingsExceptions(settings: (FeatureSettingsHelper) -> Unit) {
FeatureSettingsHelperDelegate().apply {
settings(this)
applyFlagUpdates()
}
}
override fun getActivityIntent(): Intent? {
return if (this::intent.isInitialized) {
this.intent
} else {
super.getActivityIntent()
}
}
fun withIntent(intent: Intent): HomeActivityIntentTestRule {
this.intent = intent
return this
}
override fun beforeActivityLaunched() {
super.beforeActivityLaunched()
setLongTapTimeout(3000)
applyFlagUpdates()
if (skipOnboarding) { skipOnboardingBeforeLaunch() }
}
override fun afterActivityFinished() {
super.afterActivityFinished()
setLongTapTimeout(longTapUserPreference)
closeNotificationShade()
resetAllFeatureFlags()
}
/**
* Update the settings values from when this rule was first instantiated to account for any changes
* done while running the tests.
* Useful in the scenario about the activity being restarted which would otherwise set the initial
* settings and override any changes made in the meantime.
*/
fun updateCachedSettings() {
isHomeOnboardingDialogEnabled =
settings.showHomeOnboardingDialog && FenixOnboarding(appContext).userHasBeenOnboarded()
isPocketEnabled = settings.showPocketRecommendationsFeature
isJumpBackInCFREnabled = settings.shouldShowJumpBackInCFR
isRecentTabsFeatureEnabled = settings.showRecentTabsFeature
isRecentlyVisitedFeatureEnabled = settings.historyMetadataUIFeature
isPWAsPromptEnabled = !settings.userKnowsAboutPwas
isTCPCFREnabled = settings.shouldShowTotalCookieProtectionCFR
isWallpaperOnboardingEnabled = settings.showWallpaperOnboarding
isDeleteSitePermissionsEnabled = settings.deleteSitePermissions
etpPolicy = getETPPolicy(settings)
}
companion object {
/**
* Create a new instance of [HomeActivityIntentTestRule] which by default will disable specific
* app features that would otherwise negatively impact most tests.
*
* The disabled features are:
* - the Jump back in CFR,
* - the Total Cookie Protection CFR,
* - the PWA prompt dialog,
* - the wallpaper onboarding.
*/
fun withDefaultSettingsOverrides(
initialTouchMode: Boolean = false,
launchActivity: Boolean = true,
skipOnboarding: Boolean = false,
) = HomeActivityIntentTestRule(
initialTouchMode = initialTouchMode,
launchActivity = launchActivity,
skipOnboarding = skipOnboarding,
isJumpBackInCFREnabled = false,
isPWAsPromptEnabled = false,
isTCPCFREnabled = false,
isWallpaperOnboardingEnabled = false,
)
}
}
// changing the device preference for Touch and Hold delay, to avoid long-clicks instead of a single-click
fun setLongTapTimeout(delay: Int) {
val mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
mDevice.executeShellCommand("settings put secure long_press_timeout $delay")
// Issue: https://github.com/mozilla-mobile/fenix/issues/25132
var attempts = 0
while (attempts++ < 3) {
try {
mDevice.executeShellCommand("settings put secure long_press_timeout $delay")
break
} catch (e: RuntimeException) {
e.printStackTrace()
}
}
}
private fun skipOnboardingBeforeLaunch() {
@ -79,3 +267,12 @@ private fun skipOnboardingBeforeLaunch() {
// this API so it can be fragile.
FenixOnboarding(appContext).finish()
}
private fun closeNotificationShade() {
if (mDevice.findObject(
UiSelector().resourceId("com.android.systemui:id/notification_stack_scroller"),
).exists()
) {
mDevice.pressHome()
}
}

View File

@ -1,3 +1,9 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
@file:Suppress("DEPRECATION")
package org.mozilla.fenix.helpers
import androidx.test.espresso.IdlingRegistry
@ -11,16 +17,22 @@ object IdlingResourceHelper {
fun registerAddonInstallingIdlingResource(activityTestRule: ActivityTestRule<HomeActivity>) {
IdlingRegistry.getInstance().register(
AddonsInstallingIdlingResource(
activityTestRule.activity.supportFragmentManager
)
activityTestRule.activity.supportFragmentManager,
),
)
}
fun unregisterAddonInstallingIdlingResource(activityTestRule: ActivityTestRule<HomeActivity>) {
IdlingRegistry.getInstance().unregister(
AddonsInstallingIdlingResource(
activityTestRule.activity.supportFragmentManager
)
activityTestRule.activity.supportFragmentManager,
),
)
}
fun unregisterAllIdlingResources() {
for (resource in IdlingRegistry.getInstance().resources) {
IdlingRegistry.getInstance().unregister(resource)
}
}
}

View File

@ -0,0 +1,85 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.helpers
import androidx.test.uiautomator.UiObject
import androidx.test.uiautomator.UiSelector
import org.junit.Assert.assertTrue
import org.mozilla.fenix.helpers.TestAssetHelper.waitingTime
import org.mozilla.fenix.helpers.TestHelper.mDevice
/**
* Helper for querying and interacting with items based on their matchers.
*/
object MatcherHelper {
fun itemWithResId(resourceId: String) =
mDevice.findObject(UiSelector().resourceId(resourceId))
fun itemContainingText(itemText: String) =
mDevice.findObject(UiSelector().textContains(itemText))
fun itemWithDescription(description: String) =
mDevice.findObject(UiSelector().descriptionContains(description))
fun checkedItemWithResId(resourceId: String, isChecked: Boolean) =
mDevice.findObject(UiSelector().resourceId(resourceId).checked(isChecked))
fun checkedItemWithResIdAndText(resourceId: String, text: String, isChecked: Boolean) =
mDevice.findObject(
UiSelector()
.resourceId(resourceId)
.textContains(text)
.checked(isChecked),
)
fun itemWithResIdAndDescription(resourceId: String, description: String) =
mDevice.findObject(UiSelector().resourceId(resourceId).descriptionContains(description))
fun itemWithResIdAndText(resourceId: String, text: String) =
mDevice.findObject(UiSelector().resourceId(resourceId).text(text))
fun assertItemWithResIdExists(vararg appItems: UiObject) {
for (appItem in appItems) {
assertTrue(appItem.waitForExists(waitingTime))
}
}
fun assertItemContainingTextExists(vararg appItems: UiObject) {
for (appItem in appItems) {
assertTrue(appItem.waitForExists(waitingTime))
}
}
fun assertItemWithDescriptionExists(vararg appItems: UiObject) {
for (appItem in appItems) {
assertTrue(appItem.waitForExists(waitingTime))
}
}
fun assertCheckedItemWithResIdExists(vararg appItems: UiObject) {
for (appItem in appItems) {
assertTrue(appItem.waitForExists(waitingTime))
}
}
fun assertCheckedItemWithResIdAndTextExists(vararg appItems: UiObject) {
for (appItem in appItems) {
assertTrue(appItem.waitForExists(waitingTime))
}
}
fun assertItemWithResIdAndDescriptionExists(vararg appItems: UiObject) {
for (appItem in appItems) {
assertTrue(appItem.waitForExists(waitingTime))
}
}
fun assertItemWithResIdAndTextExists(vararg appItems: UiObject) {
for (appItem in appItems) {
assertTrue(appItem.waitForExists(waitingTime))
}
}
}

View File

@ -44,7 +44,7 @@ fun withBitmapDrawable(bitmap: Bitmap, name: String): Matcher<View>? = BitmapDra
fun nthChildOf(
parentMatcher: Matcher<View>,
childPosition: Int
childPosition: Int,
): Matcher<View> {
return object : TypeSafeMatcher<View>() {
override fun describeTo(description: Description) {

View File

@ -0,0 +1,111 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.helpers
import android.content.Context
import android.location.Location
import android.location.LocationManager
import android.os.Build
import android.os.SystemClock
import android.util.Log
import androidx.test.core.app.ApplicationProvider
import org.junit.rules.ExternalResource
import org.mozilla.fenix.helpers.TestHelper.mDevice
import java.util.Date
import kotlin.random.Random
private const val mockProviderName = LocationManager.GPS_PROVIDER
/**
* Rule that sets up a mock location provider that can inject location samples
* straight to the device that the test is running on.
*
* Credit to the mapbox team
* https://github.com/mapbox/mapbox-navigation-android/blob/87fab7ea1152b29533ee121eaf6c05bc202adf02/libtesting-ui/src/main/java/com/mapbox/navigation/testing/ui/MockLocationUpdatesRule.kt
*
*/
class MockLocationUpdatesRule : ExternalResource() {
private val appContext = (ApplicationProvider.getApplicationContext() as Context)
val latitude = Random.nextDouble(-90.0, 90.0)
val longitude = Random.nextDouble(-180.0, 180.0)
private val locationManager: LocationManager by lazy {
(appContext.getSystemService(Context.LOCATION_SERVICE) as LocationManager)
}
override fun before() {
/* ADB command to enable the mock location setting on the device.
* Will not be turned back off due to limitations on knowing its initial state.
*/
mDevice.executeShellCommand(
"appops set " +
appContext.packageName +
" android:mock_location allow",
)
// To mock locations we need a location provider, so we generate and set it here.
try {
locationManager.addTestProvider(
mockProviderName,
false,
false,
false,
false,
true,
true,
true,
3,
2,
)
} catch (ex: Exception) {
// unstable
Log.w("MockLocationUpdatesRule", "addTestProvider failed")
}
locationManager.setTestProviderEnabled(mockProviderName, true)
}
// Cleaning up the location provider after the test.
override fun after() {
locationManager.setTestProviderEnabled(mockProviderName, false)
locationManager.removeTestProvider(mockProviderName)
}
/**
* Generate a valid mock location data and set with the help of a test provider.
*
* @param modifyLocation optional callback for modifying the constructed location before setting it.
*/
fun setMockLocation(modifyLocation: (Location.() -> Unit)? = null) {
check(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
"MockLocationUpdatesRule is supported only on Android devices " +
"running version >= Build.VERSION_CODES.M"
}
val location = Location(mockProviderName)
location.time = Date().time
location.elapsedRealtimeNanos = SystemClock.elapsedRealtimeNanos()
location.accuracy = 5f
location.altitude = 0.0
location.bearing = 0f
location.speed = 5f
location.latitude = latitude
location.longitude = longitude
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
location.verticalAccuracyMeters = 5f
location.bearingAccuracyDegrees = 5f
location.speedAccuracyMetersPerSecond = 5f
}
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
location.elapsedRealtimeUncertaintyNanos = 0.0
}
modifyLocation?.let {
location.apply(it)
}
locationManager.setTestProviderLocation(mockProviderName, location)
}
}

View File

@ -1,3 +1,7 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.helpers
import androidx.test.espresso.IdlingResource

View File

@ -0,0 +1,102 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.helpers
import androidx.test.espresso.IdlingResourceTimeoutException
import androidx.test.espresso.NoMatchingViewException
import androidx.test.uiautomator.UiObjectNotFoundException
import junit.framework.AssertionFailedError
import kotlinx.coroutines.runBlocking
import org.junit.rules.TestRule
import org.junit.runner.Description
import org.junit.runners.model.Statement
import org.mozilla.fenix.components.PermissionStorage
import org.mozilla.fenix.helpers.IdlingResourceHelper.unregisterAllIdlingResources
import org.mozilla.fenix.helpers.TestHelper.appContext
/**
* Rule to retry flaky tests for a given number of times, catching some of the more common exceptions.
* The Rule doesn't clear the app state in between retries, so we are doing some cleanup here.
* The @Before and @After methods are not called between retries.
*
*/
class RetryTestRule(private val retryCount: Int = 5) : TestRule {
// Used for clearing all permission data after each test try
private val permissionStorage = PermissionStorage(appContext.applicationContext)
@Suppress("TooGenericExceptionCaught", "ComplexMethod")
override fun apply(base: Statement, description: Description): Statement {
return statement {
for (i in 1..retryCount) {
try {
base.evaluate()
break
} catch (t: AssertionError) {
unregisterAllIdlingResources()
runBlocking {
permissionStorage.deleteAllSitePermissions()
}
if (i == retryCount) {
throw t
}
} catch (t: AssertionFailedError) {
unregisterAllIdlingResources()
runBlocking {
permissionStorage.deleteAllSitePermissions()
}
if (i == retryCount) {
throw t
}
} catch (t: UiObjectNotFoundException) {
unregisterAllIdlingResources()
runBlocking {
permissionStorage.deleteAllSitePermissions()
}
if (i == retryCount) {
throw t
}
} catch (t: NoMatchingViewException) {
unregisterAllIdlingResources()
runBlocking {
permissionStorage.deleteAllSitePermissions()
}
if (i == retryCount) {
throw t
}
} catch (t: IdlingResourceTimeoutException) {
unregisterAllIdlingResources()
runBlocking {
permissionStorage.deleteAllSitePermissions()
}
if (i == retryCount) {
throw t
}
} catch (t: RuntimeException) {
unregisterAllIdlingResources()
runBlocking {
permissionStorage.deleteAllSitePermissions()
}
if (i == retryCount) {
throw t
}
} catch (t: NullPointerException) {
unregisterAllIdlingResources()
runBlocking {
permissionStorage.deleteAllSitePermissions()
}
if (i == retryCount) {
throw t
}
}
}
}
}
private inline fun statement(crossinline eval: () -> Unit): Statement {
return object : Statement() {
override fun evaluate() = eval()
}
}
}

View File

@ -0,0 +1,64 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.helpers
import android.os.Handler
import android.os.Looper
import androidx.test.platform.app.InstrumentationRegistry
import okhttp3.mockwebserver.Dispatcher
import okhttp3.mockwebserver.MockResponse
import okhttp3.mockwebserver.MockWebServer
import okhttp3.mockwebserver.RecordedRequest
import okio.Buffer
import okio.source
import java.io.IOException
import java.io.InputStream
/**
* A [MockWebServer] [Dispatcher] that will return a generic search results page in the body of
* requests and responds with status 200.
*
* If the dispatcher is unable to read a requested asset, it will fail the test by throwing an
* Exception on the main thread.
*
* @sample [org.mozilla.fenix.ui.SearchTest]
*/
class SearchDispatcher : Dispatcher() {
private val mainThreadHandler = Handler(Looper.getMainLooper())
override fun dispatch(request: RecordedRequest): MockResponse {
val assetManager = InstrumentationRegistry.getInstrumentation().context.assets
try {
// When we perform a search with the custom search engine, returns the generic4.html test page as search results
if (request.path!!.contains("searchResults.html?search=")) {
MockResponse().setResponseCode(HTTP_OK)
val path = "pages/generic4.html"
assetManager.open(path).use { inputStream ->
return fileToResponse(inputStream)
}
}
return MockResponse().setResponseCode(HTTP_NOT_FOUND)
} catch (e: IOException) {
// e.g. file not found.
// We're on a background thread so we need to forward the exception to the main thread.
mainThreadHandler.postAtFrontOfQueue { throw e }
return MockResponse().setResponseCode(HTTP_NOT_FOUND)
}
}
}
@Throws(IOException::class)
private fun fileToResponse(file: InputStream): MockResponse {
return MockResponse()
.setResponseCode(HTTP_OK)
.setBody(fileToBytes(file))
}
@Throws(IOException::class)
private fun fileToBytes(file: InputStream): Buffer {
val result = Buffer()
result.writeAll(file.source())
return result
}

View File

@ -5,7 +5,6 @@
package org.mozilla.fenix.helpers
import android.net.Uri
import okhttp3.mockwebserver.MockWebServer
import org.mozilla.fenix.helpers.ext.toUri
import java.util.concurrent.TimeUnit
@ -16,7 +15,8 @@ import java.util.concurrent.TimeUnit
object TestAssetHelper {
@Suppress("MagicNumber")
val waitingTime: Long = TimeUnit.SECONDS.toMillis(15)
val waitingTimeShort: Long = TimeUnit.SECONDS.toMillis(1)
val waitingTimeLong = TimeUnit.SECONDS.toMillis(25)
val waitingTimeShort: Long = TimeUnit.SECONDS.toMillis(3)
data class TestAsset(val url: Uri, val content: String, val title: String)
@ -34,7 +34,7 @@ object TestAssetHelper {
TestAsset(
server.url("pages/generic$it.html").toString().toUri()!!,
"Page content: $it",
""
"",
)
}
}
@ -68,17 +68,11 @@ object TestAssetHelper {
return TestAsset(url, content, "")
}
fun getDownloadAsset(server: MockWebServer): TestAsset {
val url = server.url("pages/download.html").toString().toUri()!!
val content = "Page content: Globe.svg"
return TestAsset(url, content, "")
}
fun getEnhancedTrackingProtectionAsset(server: MockWebServer): TestAsset {
val url = server.url("pages/trackingPage.html").toString().toUri()!!
val content = "Level 1 (Basic) List"
return TestAsset(url, "", "")
return TestAsset(url, content, "")
}
fun getImageAsset(server: MockWebServer): TestAsset {
@ -93,6 +87,30 @@ object TestAssetHelper {
return TestAsset(url, "", "")
}
fun getAddressFormAsset(server: MockWebServer): TestAsset {
val url = server.url("pages/addressForm.html").toString().toUri()!!
return TestAsset(url, "", "")
}
fun getCreditCardFormAsset(server: MockWebServer): TestAsset {
val url = server.url("pages/creditCardForm.html").toString().toUri()!!
return TestAsset(url, "", "")
}
fun getHTMLControlsFormAsset(server: MockWebServer): TestAsset {
val url = server.url("pages/htmlControls.html").toString().toUri()!!
return TestAsset(url, "", "")
}
fun getExternalLinksAsset(server: MockWebServer): TestAsset {
val url = server.url("pages/externalLinks.html").toString().toUri()!!
return TestAsset(url, "", "")
}
fun getAudioPageAsset(server: MockWebServer): TestAsset {
val url = server.url("pages/audioMediaPage.html").toString().toUri()!!
val title = "Audio_Test_Page"
@ -108,4 +126,10 @@ object TestAssetHelper {
return TestAsset(url, content, title)
}
fun getStorageTestAsset(server: MockWebServer, pageAsset: String): TestAsset {
val url = server.url("pages/$pageAsset").toString().toUri()!!
return TestAsset(url, "", "")
}
}

View File

@ -2,44 +2,89 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
@file:Suppress("DEPRECATION")
package org.mozilla.fenix.helpers
import android.Manifest
import android.app.ActivityManager
import android.app.PendingIntent
import android.content.ActivityNotFoundException
import android.content.ClipData
import android.content.ClipboardManager
import android.content.Context
import android.content.Intent
import android.content.pm.PackageManager
import android.content.res.Configuration
import android.graphics.Bitmap
import android.graphics.Canvas
import android.graphics.Color
import android.net.Uri
import android.os.Build
import android.os.Environment
import androidx.preference.PreferenceManager
import android.os.storage.StorageManager
import android.os.storage.StorageVolume
import android.provider.Settings
import android.util.Log
import android.view.View
import androidx.annotation.RequiresApi
import androidx.browser.customtabs.CustomTabsIntent
import androidx.test.espresso.Espresso
import androidx.test.espresso.Espresso.onView
import androidx.test.espresso.IdlingRegistry
import androidx.test.espresso.IdlingResource
import androidx.test.espresso.action.ViewActions.longClick
import androidx.test.espresso.assertion.ViewAssertions
import androidx.test.espresso.intent.Intents.intended
import androidx.test.espresso.intent.matcher.IntentMatchers.toPackage
import androidx.test.espresso.matcher.ViewMatchers.hasSibling
import androidx.test.espresso.matcher.ViewMatchers.withChild
import androidx.test.espresso.matcher.ViewMatchers.withId
import androidx.test.espresso.matcher.ViewMatchers.withParent
import androidx.test.espresso.matcher.ViewMatchers.withText
import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.rule.ActivityTestRule
import androidx.test.runner.permission.PermissionRequester
import androidx.test.uiautomator.By
import androidx.test.uiautomator.UiDevice
import androidx.test.uiautomator.UiObject
import androidx.test.uiautomator.UiScrollable
import androidx.test.uiautomator.UiSelector
import androidx.test.uiautomator.Until
import kotlinx.coroutines.runBlocking
import junit.framework.AssertionFailedError
import mozilla.components.browser.state.search.SearchEngine
import mozilla.components.support.ktx.android.content.appName
import org.hamcrest.CoreMatchers
import org.hamcrest.CoreMatchers.allOf
import org.hamcrest.Matcher
import org.junit.Assert
import org.junit.Assert.assertFalse
import org.junit.Assert.assertTrue
import org.mozilla.fenix.Config
import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.R
import org.mozilla.fenix.customtabs.ExternalAppBrowserActivity
import org.mozilla.fenix.ext.components
import org.mozilla.fenix.helpers.TestAssetHelper.waitingTime
import org.mozilla.fenix.helpers.TestAssetHelper.waitingTimeShort
import org.mozilla.fenix.helpers.ext.waitNotNull
import org.mozilla.fenix.helpers.idlingresource.NetworkConnectionIdlingResource
import org.mozilla.fenix.ui.robots.mDevice
import org.mozilla.fenix.ui.robots.BrowserRobot
import org.mozilla.fenix.utils.IntentUtils
import org.mozilla.gecko.util.ThreadUtils
import java.io.File
import java.util.Locale
import java.util.regex.Pattern
object TestHelper {
val packageName = InstrumentationRegistry.getInstrumentation().targetContext.packageName
val appContext: Context = InstrumentationRegistry.getInstrumentation().targetContext
val appName = appContext.appName
var mDevice: UiDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
val packageName: String = appContext.packageName
fun scrollToElementByText(text: String): UiScrollable {
val appView = UiScrollable(UiSelector().scrollable(true))
appView.waitForExists(waitingTime)
appView.scrollTextIntoView(text)
return appView
}
@ -47,25 +92,19 @@ object TestHelper {
fun longTapSelectItem(url: Uri) {
mDevice.waitNotNull(
Until.findObject(By.text(url.toString())),
TestAssetHelper.waitingTime
waitingTime,
)
onView(
allOf(
withId(R.id.url),
withText(url.toString())
)
withText(url.toString()),
),
).perform(longClick())
}
fun setPreference(context: Context, pref: String, value: Int) {
val preferences = PreferenceManager.getDefaultSharedPreferences(context)
val editor = preferences.edit()
editor.putInt(pref, value)
editor.apply()
}
fun restartApp(activity: HomeActivityTestRule) {
fun restartApp(activity: HomeActivityIntentTestRule) {
with(activity) {
updateCachedSettings()
finishActivity()
mDevice.waitForIdle()
launchActivity(null)
@ -74,7 +113,7 @@ object TestHelper {
fun getPermissionAllowID(): String {
return when
(Build.VERSION.SDK_INT > Build.VERSION_CODES.P) {
(Build.VERSION.SDK_INT > Build.VERSION_CODES.P) {
true -> "com.android.permissioncontroller"
false -> "com.android.packageinstaller"
}
@ -83,10 +122,16 @@ object TestHelper {
fun waitUntilObjectIsFound(resourceName: String) {
mDevice.waitNotNull(
Until.findObjects(By.res(resourceName)),
TestAssetHelper.waitingTime
waitingTime,
)
}
fun waitUntilSnackbarGone() {
mDevice.findObject(
UiSelector().resourceId("$packageName:id/snackbar_layout"),
).waitUntilGone(waitingTime)
}
fun verifyUrl(urlSubstring: String, resourceName: String, resId: Int) {
waitUntilObjectIsFound(resourceName)
mDevice.findObject(UiSelector().text(urlSubstring)).waitForExists(waitingTime)
@ -98,7 +143,7 @@ object TestHelper {
val intent = Intent().apply {
action = Intent.ACTION_VIEW
data = Uri.parse(url)
`package` = "org.mozilla.fenix.debug"
`package` = packageName
flags = Intent.FLAG_ACTIVITY_NEW_TASK
}
try {
@ -109,23 +154,24 @@ object TestHelper {
}
}
// Remove test file from the device Downloads folder
@Suppress("Deprecation")
fun deleteDownloadFromStorage(fileName: String) {
runBlocking {
val downloadedFile = File(
Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS),
fileName
)
if (downloadedFile.exists()) {
downloadedFile.delete()
}
@RequiresApi(Build.VERSION_CODES.R)
fun deleteDownloadedFileOnStorage(fileName: String) {
val storageManager: StorageManager? = appContext.getSystemService(Context.STORAGE_SERVICE) as StorageManager?
val storageVolumes = storageManager!!.storageVolumes
val storageVolume: StorageVolume = storageVolumes[0]
val file = File(storageVolume.directory!!.path + "/Download/" + fileName)
try {
file.delete()
Log.d("TestLog", "File delete try 1")
assertFalse("The file was not deleted", file.exists())
} catch (e: AssertionError) {
file.delete()
Log.d("TestLog", "File delete retried")
assertFalse("The file was not deleted", file.exists())
}
}
fun setNetworkEnabled(enabled: Boolean) {
val mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
val networkDisconnectedIdlingResource = NetworkConnectionIdlingResource(false)
val networkConnectedIdlingResource = NetworkConnectionIdlingResource(true)
@ -153,4 +199,266 @@ object TestHelper {
}
}
}
fun createCustomTabIntent(
pageUrl: String,
customMenuItemLabel: String = "",
customActionButtonDescription: String = "",
): Intent {
val appContext = InstrumentationRegistry.getInstrumentation()
.targetContext
.applicationContext
val pendingIntent = PendingIntent.getActivity(appContext, 0, Intent(), IntentUtils.defaultIntentPendingFlags)
val customTabsIntent = CustomTabsIntent.Builder()
.addMenuItem(customMenuItemLabel, pendingIntent)
.setShareState(CustomTabsIntent.SHARE_STATE_ON)
.setActionButton(
createTestBitmap(),
customActionButtonDescription,
pendingIntent,
true,
)
.build()
customTabsIntent.intent.data = Uri.parse(pageUrl)
return customTabsIntent.intent
}
private fun createTestBitmap(): Bitmap {
val bitmap = Bitmap.createBitmap(100, 100, Bitmap.Config.ARGB_8888)
val canvas = Canvas(bitmap)
canvas.drawColor(Color.GREEN)
return bitmap
}
fun isPackageInstalled(packageName: String): Boolean {
return try {
val packageManager = InstrumentationRegistry.getInstrumentation().context.packageManager
packageManager.getApplicationInfo(packageName, 0).enabled
} catch (exception: PackageManager.NameNotFoundException) {
false
}
}
fun assertExternalAppOpens(appPackageName: String) {
if (isPackageInstalled(appPackageName)) {
try {
intended(toPackage(appPackageName))
} catch (e: AssertionFailedError) {
e.printStackTrace()
}
} else {
mDevice.waitNotNull(
Until.findObject(By.text("Could not open file")),
waitingTime,
)
}
}
fun assertNativeAppOpens(appPackageName: String, url: String = "") {
if (isPackageInstalled(appPackageName)) {
mDevice.waitForIdle(waitingTimeShort)
assertTrue(
mDevice.findObject(UiSelector().packageName(appPackageName))
.waitForExists(waitingTime),
)
} else {
BrowserRobot().verifyUrl(url)
}
}
fun assertPlayStoreOpens() {
if (isPackageInstalled(Constants.PackageName.GOOGLE_PLAY_SERVICES)) {
try {
intended(toPackage(Constants.PackageName.GOOGLE_PLAY_SERVICES))
} catch (e: AssertionFailedError) {
BrowserRobot().verifyRateOnGooglePlayURL()
}
} else {
BrowserRobot().verifyRateOnGooglePlayURL()
}
}
/**
* Checks whether the latest activity of the application is used for custom tabs or PWAs.
*
* @return Boolean value that helps us know if the current activity supports custom tabs or PWAs.
*/
fun isExternalAppBrowserActivityInCurrentTask(): Boolean {
val activityManager = appContext.getSystemService(Context.ACTIVITY_SERVICE) as ActivityManager
mDevice.waitForIdle(waitingTimeShort)
return activityManager.appTasks[0].taskInfo.topActivity!!.className == ExternalAppBrowserActivity::class.java.name
}
/**
* Run test with automatically registering idling resources and cleanup.
*
* @param idlingResources zero or more [IdlingResource] to be used when running [testBlock].
* @param testBlock test code to execute.
*/
fun registerAndCleanupIdlingResources(
vararg idlingResources: IdlingResource,
testBlock: () -> Unit,
) {
idlingResources.forEach {
IdlingRegistry.getInstance().register(it)
}
try {
testBlock()
} finally {
idlingResources.forEach {
IdlingRegistry.getInstance().unregister(it)
}
}
}
// exit from Menus to home screen or browser
fun exitMenu() {
val toolbar =
mDevice.findObject(UiSelector().resourceId("$packageName:id/toolbar"))
while (!toolbar.waitForExists(waitingTimeShort)) {
mDevice.pressBack()
}
}
fun UiDevice.waitForObjects(obj: UiObject, waitingTime: Long = TestAssetHelper.waitingTime) {
this.waitForIdle()
Assert.assertNotNull(obj.waitForExists(waitingTime))
}
fun hasCousin(matcher: Matcher<View>): Matcher<View> {
return withParent(
hasSibling(
withChild(
matcher,
),
),
)
}
fun getStringResource(id: Int) = appContext.resources.getString(id, appName)
fun setCustomSearchEngine(searchEngine: SearchEngine) {
with(appContext.components.useCases.searchUseCases) {
addSearchEngine(searchEngine)
selectSearchEngine(searchEngine)
}
}
fun grantPermission() {
if (Build.VERSION.SDK_INT >= 23) {
mDevice.findObject(
By.text(
when (Build.VERSION.SDK_INT) {
Build.VERSION_CODES.R -> Pattern.compile(
"WHILE USING THE APP",
Pattern.CASE_INSENSITIVE,
)
else -> Pattern.compile("Allow", Pattern.CASE_INSENSITIVE)
},
),
).click()
}
}
fun denyPermission() {
if (Build.VERSION.SDK_INT >= 23) {
mDevice.findObject(
By.text(
when (Build.VERSION.SDK_INT) {
Build.VERSION_CODES.R -> Pattern.compile(
"DENY",
Pattern.CASE_INSENSITIVE,
)
else -> Pattern.compile("Deny", Pattern.CASE_INSENSITIVE)
},
),
).click()
}
}
fun isTestLab(): Boolean {
return Settings.System.getString(appContext.contentResolver, "firebase.test.lab").toBoolean()
}
private val charPool: List<Char> = ('a'..'z') + ('A'..'Z') + ('0'..'9')
fun generateRandomString(stringLength: Int) =
(1..stringLength)
.map { kotlin.random.Random.nextInt(0, charPool.size) }
.map(charPool::get)
.joinToString("")
/**
* Changes the default language of the entire device, not just the app.
* Runs on Debug variant as we don't want to adjust Release permission manifests
* Runs the test in its testBlock.
* Cleans up and sets the default locale after it's done.
*/
fun runWithSystemLocaleChanged(locale: Locale, testRule: ActivityTestRule<HomeActivity>, testBlock: () -> Unit) {
if (Config.channel.isDebug) {
/* Sets permission to change device language */
PermissionRequester().apply {
addPermissions(
Manifest.permission.CHANGE_CONFIGURATION,
)
requestPermissions()
}
val defaultLocale = Locale.getDefault()
try {
setSystemLocale(locale)
testBlock()
ThreadUtils.runOnUiThread { testRule.activity.recreate() }
} catch (e: Exception) {
e.printStackTrace()
} finally {
setSystemLocale(defaultLocale)
}
}
}
/**
* Changes the default language of the entire device, not just the app.
*/
private fun setSystemLocale(locale: Locale) {
val activityManagerNative = Class.forName("android.app.ActivityManagerNative")
val am = activityManagerNative.getMethod("getDefault", *arrayOfNulls(0))
.invoke(activityManagerNative, *arrayOfNulls(0))
val config = InstrumentationRegistry.getInstrumentation().context.resources.configuration
config.javaClass.getDeclaredField("locale")[config] = locale
config.javaClass.getDeclaredField("userSetLocale").setBoolean(config, true)
am.javaClass.getMethod(
"updateConfiguration",
Configuration::class.java,
).invoke(am, config)
}
/**
* Creates clipboard data.
*/
fun setTextToClipBoard(context: Context, message: String) {
val clipBoard = context.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager
val clipData = ClipData.newPlainText("label", message)
clipBoard.setPrimaryClip(clipData)
}
/**
* Returns sponsored shortcut title based on the index.
*/
fun getSponsoredShortcutTitle(position: Int): String {
val sponsoredShortcut = mDevice.findObject(
UiSelector()
.resourceId("$packageName:id/top_site_item")
.index(position - 1),
).getChild(
UiSelector()
.resourceId("$packageName:id/top_site_title"),
).text
return sponsoredShortcut
}
}

View File

@ -1,3 +1,7 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.helpers
import android.view.View
@ -5,7 +9,7 @@ import androidx.test.espresso.IdlingResource
class ViewVisibilityIdlingResource(
private val view: View,
private val expectedVisibility: Int
private val expectedVisibility: Int,
) : IdlingResource {
private var resourceCallback: IdlingResource.ResourceCallback? = null
private var isIdle: Boolean = false

View File

@ -1,36 +0,0 @@
package org.mozilla.fenix.helpers.assertions
import android.view.View
import androidx.test.espresso.ViewAssertion
import mozilla.components.browser.awesomebar.BrowserAwesomeBar
class AwesomeBarAssertion {
companion object {
fun suggestionsAreGreaterThan(minimumSuggestions: Int): ViewAssertion {
return ViewAssertion { view, noViewFoundException ->
if (noViewFoundException != null) throw noViewFoundException
val suggestionsCount = getSuggestionCountFromView(view)
if (suggestionsCount <= minimumSuggestions)
throw AssertionError("The suggestion count is less than or equal to the minimum suggestions")
}
}
fun suggestionsAreEqualTo(expectedItemCount: Int): ViewAssertion {
return ViewAssertion { view, noViewFoundException ->
if (noViewFoundException != null) throw noViewFoundException
val suggestionsCount = getSuggestionCountFromView(view)
if (suggestionsCount != expectedItemCount)
throw AssertionError("The expected item count is $expectedItemCount, and the suggestions count within the AwesomeBar is $suggestionsCount")
}
}
private fun getSuggestionCountFromView(view: View): Int {
return (view as BrowserAwesomeBar).adapter?.itemCount
?: throw AssertionError("This view is not of type BrowserAwesomeBar")
}
}
}

View File

@ -16,10 +16,10 @@ import java.net.URISyntaxException
*/
fun String.removePrefixesIgnoreCase(vararg prefixes: String): String {
var value = this
var lower = this.toLowerCase()
var lower = this.lowercase()
prefixes.forEach {
if (lower.startsWith(it.toLowerCase())) {
if (lower.startsWith(it.lowercase())) {
value = value.substring(it.length)
lower = lower.substring(it.length)
}

View File

@ -43,6 +43,6 @@ fun ViewInteraction.clickAtLocationInView(locationInView: GeneralLocation): View
locationInView,
Press.FINGER,
InputDevice.SOURCE_UNKNOWN,
MotionEvent.BUTTON_PRIMARY
)
MotionEvent.BUTTON_PRIMARY,
),
)

View File

@ -16,5 +16,5 @@ import org.mozilla.fenix.helpers.TestAssetHelper
*/
fun UiDevice.waitNotNull(
searchCondition: SearchCondition<*>,
waitTime: Long = TestAssetHelper.waitingTime
waitTime: Long = TestAssetHelper.waitingTime,
) = assertNotNull(wait(searchCondition, waitTime))

View File

@ -1,3 +1,7 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.helpers.idlingresource
import androidx.fragment.app.FragmentManager
@ -6,7 +10,7 @@ import androidx.test.espresso.IdlingResource
import mozilla.components.feature.addons.ui.AddonInstallationDialogFragment
class AddonsInstallingIdlingResource(
val fragmentManager: FragmentManager
private val fragmentManager: FragmentManager,
) :
IdlingResource {
private var resourceCallback: IdlingResource.ResourceCallback? = null
@ -21,8 +25,9 @@ class AddonsInstallingIdlingResource(
}
override fun registerIdleTransitionCallback(callback: IdlingResource.ResourceCallback?) {
if (callback != null)
if (callback != null) {
resourceCallback = callback
}
}
private fun isInstalledAddonDialogShown(): Boolean {

View File

@ -1,3 +1,7 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.helpers.idlingresource
import android.view.View
@ -16,14 +20,16 @@ class AddonsLoadingIdlingResource(val fragmentManager: FragmentManager) : Idling
override fun isIdleNow(): Boolean {
val idle = addonsFinishedLoading()
if (idle)
if (idle) {
resourceCallback?.onTransitionToIdle()
}
return idle
}
override fun registerIdleTransitionCallback(callback: IdlingResource.ResourceCallback?) {
if (callback != null)
if (callback != null) {
resourceCallback = callback
}
}
private fun addonsFinishedLoading(): Boolean {
@ -33,8 +39,9 @@ class AddonsLoadingIdlingResource(val fragmentManager: FragmentManager) : Idling
addonsManagementFragment.view?.findViewById<View>(R.id.add_ons_progress_bar)
} ?: return true
if (progressbar.visibility == VISIBLE)
if (progressbar.visibility == VISIBLE) {
return false
}
return true
}

View File

@ -32,14 +32,16 @@ class NetworkConnectionIdlingResource(private val networkConnected: Boolean) : I
} else {
!isOnline()
}
if (idle)
if (idle) {
resourceCallback?.onTransitionToIdle()
}
return idle
}
override fun registerIdleTransitionCallback(callback: IdlingResource.ResourceCallback?) {
if (callback != null)
if (callback != null) {
resourceCallback = callback
}
}
private fun isOnline(): Boolean {

View File

@ -1,13 +1,17 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.helpers.matchers
import android.graphics.Bitmap
import android.graphics.drawable.BitmapDrawable
import android.graphics.drawable.Drawable
import android.graphics.drawable.StateListDrawable
import android.view.View
import android.widget.ImageView
import androidx.test.espresso.matcher.BoundedMatcher
import org.hamcrest.Description
import android.graphics.drawable.BitmapDrawable
import android.graphics.drawable.StateListDrawable
import android.graphics.drawable.Drawable
class BitmapDrawableMatcher(private val bitmap: Bitmap, private val name: String) :
BoundedMatcher<View, ImageView>(ImageView::class.java) {

View File

@ -28,7 +28,7 @@ class BottomSheetBehaviorHalfExpandedMaxRatioMatcher(private val maxHalfExpanded
override fun describeTo(description: Description?) {
description?.appendText(
"BottomSheetBehavior with an at max halfExpandedRation: " +
"$maxHalfExpandedRatio"
"$maxHalfExpandedRatio",
)
}

View File

@ -1,3 +1,7 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.helpers.matchers
import android.view.View

View File

@ -0,0 +1,38 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.perf
import androidx.benchmark.junit4.BenchmarkRule
import androidx.benchmark.junit4.measureRepeated
import androidx.test.ext.junit.runners.AndroidJUnit4
import org.junit.Ignore
import org.junit.Rule
import org.junit.Test
import org.junit.runner.RunWith
/**
* To run this benchmark:
* - Comment out @Ignore: DO NOT COMMIT THIS!
* - See run instructions in app/benchmark.gradle
*
* See https://developer.android.com/studio/profile/benchmark#write-benchmark for how to write a
* real benchmark, including testing UI code. See
* https://developer.android.com/studio/profile/benchmark#what-to-benchmark for when jetpack
* microbenchmark is a good fit.
*/
@Ignore("This is a sample: we don't want it to run when we run all the tests")
@RunWith(AndroidJUnit4::class)
class SampleBenchmark {
@get:Rule
val benchmarkRule = BenchmarkRule()
@Test
fun additionBenchmark() = benchmarkRule.measureRepeated {
var i = 0
while (i < 10_000_000) {
i++
}
}
}

View File

@ -4,7 +4,6 @@
package org.mozilla.fenix.perf
import android.util.Log
import android.view.View
import android.view.ViewGroup
import androidx.constraintlayout.widget.ConstraintLayout
@ -12,68 +11,92 @@ import androidx.core.view.children
import androidx.recyclerview.widget.RecyclerView
import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.uiautomator.UiDevice
import kotlinx.android.synthetic.main.activity_home.*
import org.junit.Assert.assertEquals
import org.junit.Assert.assertTrue
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.ext.components
import org.mozilla.fenix.helpers.HomeActivityTestRule
// BEFORE INCREASING THESE VALUES, PLEASE CONSULT WITH THE PERF TEAM.
private const val EXPECTED_SUPPRESSION_COUNT = 11
private const val EXPECTED_RUNBLOCKING_COUNT = 2
private const val EXPECTED_COMPONENT_INIT_COUNT = 42
private const val EXPECTED_VIEW_HIERARCHY_DEPTH = 12
private const val EXPECTED_RECYCLER_VIEW_CONSTRAINT_LAYOUT_CHILDREN = 4
private const val EXPECTED_NUMBER_OF_INFLATION = 12
// BEFORE CHANGING EXPECTED_* VALUES, PLEASE READ THE TEST CLASS KDOC.
private val failureMsgStrictMode = getErrorMessage(
shortName = "StrictMode suppression",
implications = "suppressing a StrictMode violation can introduce performance regressions?"
)
private val failureMsgRunBlocking = getErrorMessage(
shortName = "runBlockingIncrement",
implications = "using runBlocking may block the main thread and have other negative performance implications?"
)
private val failureMsgComponentInit = getErrorMessage(
shortName = "Component init",
implications = "initializing new components on start up may be an indication that we're doing more work than necessary on start up?"
)
private val failureMsgViewHierarchyDepth = getErrorMessage(
shortName = "view hierarchy depth",
implications = "having a deep view hierarchy can slow down measure/layout performance?"
) + "Please note that we're not sure if this is a useful metric to assert: with your feedback, " +
"we'll find out over time if it is or is not."
private val failureMsgRecyclerViewConstraintLayoutChildren = getErrorMessage(
shortName = "ConstraintLayout being a common direct descendant of a RecyclerView",
implications = "ConstraintLayouts are slow to inflate and are primarily used to flatten deep " +
"view hierarchies so can be under-performant as a common RecyclerView child?"
) + "Please note that we're not sure if this is a useful metric to assert: with your feedback, " +
"we'll find out over time if it is or is not."
private val failureMsgNumberOfInflation = getErrorMessage(
shortName = "Number of inflation on start up doesn't match expected count",
implications = "The number of inflation can negatively impact start up time. Having more inflations" +
"will most likely mean we're adding extra work on the UI thread."
)
/**
* A performance test to limit the number of StrictMode suppressions and number of runBlocking used
* on startup.
* The number of times a StrictMode violation is suppressed during this start up scenario.
* Incrementing the expected value indicates a potential performance regression.
*
* This test was written by the perf team.
* One feature of StrictMode is to detect potential performance regressions and, in particular, to
* detect main thread IO. This includes network requests (which can block for multiple seconds),
* file read/writes (which generally block for tens to hundreds of milliseconds), and file stats
* (like most SharedPreferences accesses, which block for small amounts of time). Main thread IO
* should be replaced with a background operation that posts to the main thread when the IO request
* is complete.
*
* StrictMode detects main thread IO, which is often indicative of a performance issue.
* It's easy to suppress StrictMode so we wrote a test to ensure we have a discussion
* if the StrictMode count changes.
* Say no to main thread IO! 🙅
*/
private const val EXPECTED_SUPPRESSION_COUNT = 18
/**
* The number of times we call the `runBlocking` coroutine method on the main thread during this
* start up scenario. Increment the expected values indicates a potential performance regression.
*
* RunBlocking is mostly used to return values to a thread from a coroutine. However, if that
* coroutine takes too long, it can lead that thread to block every other operations.
* runBlocking indicates that we're blocking the current thread waiting for the result of another
* coroutine. While the main thread is blocked, 1) we can't handle user input and the user may feel
* Firefox is slow and 2) we can't use the main thread to continue initialization that must occur on
* the main thread (like initializing UI), slowing down start up overall. Blocking calls should
* generally be replaced with a slow operation on a background thread launching onto the main thread
* when completed. However, in a very small number of cases, blocking may be impossible to avoid.
*/
private val EXPECTED_RUNBLOCKING_RANGE = 0..2 // CI has +1 counts compared to local runs: increment these together
/**
* The number of `ConstraintLayout`s we inflate that are children of a `RecyclerView` during this
* start up scenario. Incrementing the expected value indicates a potential performance regression.
* THIS IS AN EXPERIMENTAL METRIC and we are not yet confident reducing this count will mitigate
* start up regressions. If you do not find it useful or if it's too noisy, you can consider
* removing it.
*
* The perf team is code owners for this package so they should be notified when the counts are modified.
* ConstraintLayout is expensive to inflate (though fast to measure/layout) so we want to avoid
* creating too many of them synchronously during start up. Generally, these should be inflated
* asynchronously or replaced with cheaper layouts (if they're not too expensive to measure/layout).
* If the view hierarchy uses Jetpack Compose, switching to that is also an option.
*/
private val EXPECTED_RECYCLER_VIEW_CONSTRAINT_LAYOUT_CHILDREN =
4..6 // The messaging framework is not deterministic and could add to the count.
/**
* The number of layouts we inflate during this start up scenario. Incrementing the expected value
* indicates a potential performance regression. THIS IS AN EXPERIMENTAL METRIC and we are not yet
* confident reducing this count will mitigate start up regressions. If you do not find it useful or
* if it's too noisy, you can consider removing it.
*
* Each layout inflation is suspected of having overhead (e.g. accessing each layout resource from
* disk) so suspect inflating more layouts may slow down start up. Ideally, layouts would be merged
* such that there is one inflation that includes all of the views needed on start up.
*/
private val EXPECTED_NUMBER_OF_INFLATION =
13..14 // The messaging framework is not deterministic and could add a +1 to the count
private val failureMsgStrictMode = getErrorMessage("StrictMode suppression")
private val failureMsgRunBlocking = getErrorMessage("runBlockingIncrement")
private val failureMsgRecyclerViewConstraintLayoutChildren = getErrorMessage(
"ConstraintLayout being a common direct descendant of a RecyclerView",
)
private val failureMsgNumberOfInflation = getErrorMessage("start up inflation")
/**
* A performance test that attempts to minimize start up performance regressions using heuristics
* rather than benchmarking. These heuristics measure occurrences of known performance anti-patterns
* and fails when the occurrence count changes. If the change indicates a regression, we should
* re-evaluate the PR to see if we can avoid the potential regression and, if not, change the
* expected value. If it indicates an improvement, we can change the expected value. The expected
* values can be updated without consulting the performance team.
*
* See `EXPECTED_*` above for explanations of the heuristics this test currently supports.
*
* The benefits of a heuristics-based performance test are that it is uses less CI time to get
* results so we can run it more often (e.g. for each PR) and it is less noisy than a benchmark.
* However, the downsides of this style of test is that if a heuristic value increases, it may not
* represent a real, significant performance regression.
*/
class StartupExcessiveResourceUseTest {
@get:Rule
@ -90,37 +113,25 @@ class StartupExcessiveResourceUseTest {
// causing this number to fluctuate depending on device speed. We'll deal with it if it occurs.
val actualSuppresionCount = activityTestRule.activity.components.strictMode.suppressionCount.get().toInt()
val actualRunBlocking = RunBlockingCounter.count.get()
val actualComponentInitCount = ComponentInitCount.count.get()
val rootView = activityTestRule.activity.rootContainer
val actualViewHierarchyDepth = countAndLogViewHierarchyDepth(rootView, 1)
val actualRecyclerViewConstraintLayoutChildren = countRecyclerViewConstraintLayoutChildren(rootView, null)
val actualNumberOfInflations = InflationCounter.inflationCount.get()
assertEquals(failureMsgStrictMode, EXPECTED_SUPPRESSION_COUNT, actualSuppresionCount)
assertEquals(failureMsgRunBlocking, EXPECTED_RUNBLOCKING_COUNT, actualRunBlocking)
assertEquals(failureMsgComponentInit, EXPECTED_COMPONENT_INIT_COUNT, actualComponentInitCount)
assertEquals(failureMsgViewHierarchyDepth, EXPECTED_VIEW_HIERARCHY_DEPTH, actualViewHierarchyDepth)
assertEquals(
failureMsgRecyclerViewConstraintLayoutChildren,
EXPECTED_RECYCLER_VIEW_CONSTRAINT_LAYOUT_CHILDREN,
actualRecyclerViewConstraintLayoutChildren
)
assertEquals(failureMsgNumberOfInflation, EXPECTED_NUMBER_OF_INFLATION, actualNumberOfInflations)
}
}
assertTrue(failureMsgRunBlocking + "actual: $actualRunBlocking", actualRunBlocking in EXPECTED_RUNBLOCKING_RANGE)
private fun countAndLogViewHierarchyDepth(view: View, level: Int): Int {
// Log for debugging purposes: not sure if this is actually helpful.
val indent = "| ".repeat(level - 1)
Log.d("Startup...Test", "${indent}$view")
return if (view !is ViewGroup) {
level
} else {
val maxDepth = view.children.map { countAndLogViewHierarchyDepth(it, level + 1) }.maxOrNull()
maxDepth ?: level
// This below asserts fail in Firebase with different values for
// "actualRecyclerViewConstraintLayoutChildren" or "actualNumberOfInflations"
// See https://github.com/mozilla-mobile/fenix/pull/26512 and https://github.com/mozilla-mobile/fenix/issues/25142
//
// val rootView = activityTestRule.activity.findViewById<LinearLayout>(R.id.rootContainer)
// val actualRecyclerViewConstraintLayoutChildren = countRecyclerViewConstraintLayoutChildren(rootView, null)
// assertTrue(
// failureMsgRecyclerViewConstraintLayoutChildren + "actual: $actualRecyclerViewConstraintLayoutChildren",
// actualRecyclerViewConstraintLayoutChildren in EXPECTED_RECYCLER_VIEW_CONSTRAINT_LAYOUT_CHILDREN,
// )
// val actualNumberOfInflations = InflationCounter.inflationCount.get()
// assertTrue(
// failureMsgNumberOfInflation + "actual: $actualNumberOfInflations",
// actualNumberOfInflations in EXPECTED_NUMBER_OF_INFLATION,
// )
}
}
@ -134,18 +145,15 @@ private fun countRecyclerViewConstraintLayoutChildren(view: View, parent: View?)
return if (view !is ViewGroup) {
viewValue
} else {
viewValue + view.children.sumBy { countRecyclerViewConstraintLayoutChildren(it, view) }
viewValue + view.children.sumOf { countRecyclerViewConstraintLayoutChildren(it, view) }
}
}
private fun getErrorMessage(shortName: String, implications: String) = """$shortName count does not match expected count.
private fun getErrorMessage(shortName: String) = """$shortName count does not match expected count.
If this PR removed a $shortName call, great! Please decrease the count.
Did this PR add or call code that increases the $shortName count?
Did you know that $implications
Please do your best to implement a solution without adding $shortName calls.
Please consult the perf team if you have questions or believe that having this call
is the optimal solution.
This heuristic-based performance test is expected measure the number of occurrences of known
performance anti-patterns and fail when that count changes. Please read the class documentation
for more details about this test and an explanation of what the failed heuristic is expected to
measure. Please consult the performance team if you have questions.
"""

View File

@ -2,27 +2,39 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
@file:Suppress("DEPRECATION")
package org.mozilla.fenix.screenshots
import android.os.SystemClock
import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.rule.ActivityTestRule
import androidx.test.uiautomator.UiDevice
import org.junit.After
import org.junit.Before
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.helpers.HomeActivityTestRule
import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.helpers.HomeActivityTestRule
import org.mozilla.fenix.helpers.TestAssetHelper
import org.mozilla.fenix.ui.robots.homeScreen
import org.mozilla.fenix.ui.robots.mDevice
import tools.fastlane.screengrab.Screengrab
import tools.fastlane.screengrab.locale.LocaleTestRule
class DefaultHomeScreenTest : ScreenshotTest() {
private lateinit var mDevice: UiDevice
@Rule @JvmField
val localeTestRule = LocaleTestRule()
@get:Rule
var mActivityTestRule: ActivityTestRule<HomeActivity> = HomeActivityTestRule()
@Before
fun setUp() {
mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
}
@After
fun tearDown() {
mActivityTestRule.getActivity().finishAndRemoveTask()
@ -32,7 +44,6 @@ class DefaultHomeScreenTest : ScreenshotTest() {
fun showDefaultHomeScreen() {
homeScreen {
verifyAccountsSignInButton()
swipeToBottom()
Screengrab.screenshot("HomeScreenRobot_home-screen-scroll")
TestAssetHelper.waitingTime
}

View File

@ -2,46 +2,51 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
@file:Suppress("DEPRECATION")
package org.mozilla.fenix.screenshots
import android.os.SystemClock
import androidx.test.espresso.Espresso.onView
import androidx.test.espresso.matcher.ViewMatchers.withId
import androidx.test.espresso.matcher.ViewMatchers.withText
import androidx.test.rule.ActivityTestRule
import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.uiautomator.By
import androidx.test.uiautomator.UiDevice
import androidx.test.uiautomator.Until
import tools.fastlane.screengrab.Screengrab
import tools.fastlane.screengrab.locale.LocaleTestRule
import okhttp3.mockwebserver.MockWebServer
import org.junit.After
import org.junit.Before
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.R
import org.mozilla.fenix.helpers.AndroidAssetDispatcher
import org.mozilla.fenix.helpers.HomeActivityTestRule
import org.mozilla.fenix.helpers.TestAssetHelper
import org.mozilla.fenix.helpers.TestHelper.mDevice
import org.mozilla.fenix.helpers.click
import org.mozilla.fenix.helpers.ext.waitNotNull
import org.mozilla.fenix.ui.robots.homeScreen
import org.mozilla.fenix.ui.robots.bookmarksMenu
import org.mozilla.fenix.ui.robots.mDevice
import org.mozilla.fenix.ui.robots.homeScreen
import org.mozilla.fenix.ui.robots.navigationToolbar
import org.mozilla.fenix.ui.robots.swipeToBottom
import tools.fastlane.screengrab.Screengrab
import tools.fastlane.screengrab.locale.LocaleTestRule
class MenuScreenShotTest : ScreenshotTest() {
private lateinit var mockWebServer: MockWebServer
private lateinit var mDevice: UiDevice
@Rule
@JvmField
val localeTestRule = LocaleTestRule()
@get:Rule
var mActivityTestRule: ActivityTestRule<HomeActivity> = HomeActivityTestRule()
var mActivityTestRule = HomeActivityTestRule.withDefaultSettingsOverrides()
@Before
fun setUp() {
mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
mockWebServer = MockWebServer().apply {
dispatcher = AndroidAssetDispatcher()
start()
@ -68,47 +73,38 @@ class MenuScreenShotTest : ScreenshotTest() {
}.openThreeDotMenu {
}.openSettings {
Screengrab.screenshot("SettingsRobot_settings-menu")
settingsAccountPreferences()
}.openTurnOnSyncMenu {
Screengrab.screenshot("AccountSettingsRobot_settings-account")
mDevice.pressBack()
settingsSearch()
}.goBack {
}.openSearchSubMenu {
Screengrab.screenshot("SettingsSubMenuSearchRobot_settings-search")
mDevice.pressBack()
settingsTheme()
}.goBack {
}.openCustomizeSubMenu {
Screengrab.screenshot("SettingsSubMenuThemeRobot_settings-theme")
mDevice.pressBack()
settingsAccessibility()
}.goBack {
}.openAccessibilitySubMenu {
Screengrab.screenshot("SettingsSubMenuAccessibilityRobot_settings-accessibility")
mDevice.pressBack()
settingsLanguage()
}.goBack {
}.openLanguageSubMenu {
Screengrab.screenshot("SettingsSubMenuAccessibilityRobot_settings-language")
mDevice.pressBack()
settingDefaultBrowser()
}.goBack {
// From about here we need to scroll up to ensure all settings options are visible.
}.openSetDefaultBrowserSubMenu {
Screengrab.screenshot("SettingsSubMenuDefaultBrowserRobot_settings-default-browser")
mDevice.pressBack()
}.goBack {
// Disabled for Pixel 2
// settingsTP()
// Screengrab.screenshot("settings-enhanced-tp")
// mDevice.pressBack()
loginsAndPassword()
// }.openEnhancedTrackingProtectionSubMenu {
// Screengrab.screenshot("settings-enhanced-tp")
// }.goBack {
}.openLoginsAndPasswordSubMenu {
Screengrab.screenshot("SettingsSubMenuLoginsAndPasswords-settings-logins-passwords")
mDevice.pressBack()
}.goBack {
swipeToBottom()
Screengrab.screenshot("SettingsRobot_settings-scroll-to-bottom")
settingsTelemetry()
}.openSettingsSubMenuDataCollection {
Screengrab.screenshot("settings-telemetry")
mDevice.pressBack()
addOns()
}.goBack {
}.openAddonsManagerMenu {
Screengrab.screenshot("settings-addons")
}
}
@ -142,8 +138,8 @@ class MenuScreenShotTest : ScreenshotTest() {
editBookmarkFolder()
Screengrab.screenshot("ThreeDotMenuBookmarksRobot_edit-bookmark-folder-menu")
// It may be needed to wait here to have the screenshot
mDevice.pressBack()
bookmarksMenu {
navigateUp()
}.openThreeDotMenu("test") {
deleteBookmarkFolder()
Screengrab.screenshot("ThreeDotMenuBookmarksRobot_delete-bookmark-folder-menu")
@ -185,7 +181,7 @@ class MenuScreenShotTest : ScreenshotTest() {
@Test
fun saveLoginPromptTest() {
val saveLoginTest =
TestAssetHelper.getSaveLoginAsset(mockWebServer)
TestAssetHelper.getSaveLoginAsset(mockWebServer)
navigationToolbar {
}.enterURLAndEnterToBrowser(saveLoginTest.url) {
verifySaveLoginPromptIsShownNotSave()
@ -203,11 +199,9 @@ fun editBookmarkFolder() = onView(withText(R.string.bookmark_menu_edit_button)).
fun deleteBookmarkFolder() = onView(withText(R.string.bookmark_menu_delete_button)).click()
fun saveToCollectionButton() = onView(withId(R.id.save_tab_group_button)).click()
fun tapOnTabCounter() = onView(withId(R.id.counter_text)).click()
fun settingsAccountPreferences() = onView(withText(R.string.preferences_sync)).click()
fun settingsAccountPreferences() = onView(withText(R.string.preferences_sync_2)).click()
fun settingsSearch() = onView(withText(R.string.preferences_search)).click()

View File

@ -19,4 +19,4 @@ requests = "*"
[dev-packages]
[requires]
python_version = "2.7"
python_version = "3.10"

View File

@ -1,11 +1,11 @@
{
"_meta": {
"hash": {
"sha256": "112a12fa2e9e8117b399b60a49b4c8799a614ef655992640c95149bf95f33e8b"
"sha256": "cf743d605ee37525af06865c7961ee99f1720fa9d6352eedc4bbfa5fa78f75ef"
},
"pipfile-spec": 6,
"requires": {
"python_version": "2.7"
"python_version": "3.10"
},
"sources": [
{
@ -16,27 +16,21 @@
]
},
"default": {
"atomicwrites": {
"async-generator": {
"hashes": [
"sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197",
"sha256:ae70396ad1a434f9c7046fd2dd196fc04b12f9e91ffb859164193be8b6168a7a"
"sha256:01c7bf666359b4967d2cda0000cc2e4af16a0ae098cbffcb8472fb9e8ad6585b",
"sha256:6ebb3d106c12920aaae42ccb6f787ef5eefdcdd166ea3d628fa8476abe712144"
],
"version": "==1.4.0"
"markers": "python_version >= '3.5'",
"version": "==1.10"
},
"attrs": {
"hashes": [
"sha256:31b2eced602aa8423c2aea9c76a724617ed67cf9513173fd3a4f03e3a929c7e6",
"sha256:832aa3cde19744e49938b91fea06d69ecb9e649c93ba974535d08ad92164f700"
"sha256:29adc2665447e5191d0e7c568fde78b21f9672d344281d0c6e1ab085429b22b6",
"sha256:86efa402f67bf2df34f51a335487cf46b1ec130d02b8d39fd248abfd30da551c"
],
"version": "==20.3.0"
},
"backports.functools-lru-cache": {
"hashes": [
"sha256:0bada4c2f8a43d533e4ecb7a12214d9420e66eb206d54bf2d682581ca4b80848",
"sha256:8fde5f188da2d593bd5bc0be98d9abc46c95bb8a9dde93429570192ee6cc2d4a"
],
"markers": "python_version < '3.2'",
"version": "==1.6.1"
"markers": "python_version >= '3.5'",
"version": "==22.1.0"
},
"blessings": {
"hashes": [
@ -44,130 +38,127 @@
"sha256:b1fdd7e7a675295630f9ae71527a8ebc10bfefa236b3d6aa4932ee4462c17ba3",
"sha256:caad5211e7ba5afe04367cdd4cfc68fa886e2e08f6f35e76b7387d2109ccea6e"
],
"markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
"version": "==1.7"
},
"certifi": {
"hashes": [
"sha256:1a4995114262bffbc2413b159f2a1a480c969de6e6eb13ee966d470af86af59c",
"sha256:719a74fb9e33b9bd44cc7f3a8d94bc35e4049deebe19ba7d8e108280cfd59830"
"sha256:84c85a9078b11105f04f3036a9482ae10e4621616db313fe045dd24743a0820d",
"sha256:fe86415d55e84719d75f8b69414f6438ac3547d2078ab91b67e779ef69378412"
],
"version": "==2020.12.5"
"version": "==2022.6.15"
},
"cffi": {
"hashes": [
"sha256:00a1ba5e2e95684448de9b89888ccd02c98d512064b4cb987d48f4b40aa0421e",
"sha256:00e28066507bfc3fe865a31f325c8391a1ac2916219340f87dfad602c3e48e5d",
"sha256:045d792900a75e8b1e1b0ab6787dd733a8190ffcf80e8c8ceb2fb10a29ff238a",
"sha256:0638c3ae1a0edfb77c6765d487fee624d2b1ee1bdfeffc1f0b58c64d149e7eec",
"sha256:105abaf8a6075dc96c1fe5ae7aae073f4696f2905fde6aeada4c9d2926752362",
"sha256:155136b51fd733fa94e1c2ea5211dcd4c8879869008fc811648f16541bf99668",
"sha256:1a465cbe98a7fd391d47dce4b8f7e5b921e6cd805ef421d04f5f66ba8f06086c",
"sha256:1d2c4994f515e5b485fd6d3a73d05526aa0fcf248eb135996b088d25dfa1865b",
"sha256:2c24d61263f511551f740d1a065eb0212db1dbbbbd241db758f5244281590c06",
"sha256:51a8b381b16ddd370178a65360ebe15fbc1c71cf6f584613a7ea08bfad946698",
"sha256:594234691ac0e9b770aee9fcdb8fa02c22e43e5c619456efd0d6c2bf276f3eb2",
"sha256:5cf4be6c304ad0b6602f5c4e90e2f59b47653ac1ed9c662ed379fe48a8f26b0c",
"sha256:64081b3f8f6f3c3de6191ec89d7dc6c86a8a43911f7ecb422c60e90c70be41c7",
"sha256:6bc25fc545a6b3d57b5f8618e59fc13d3a3a68431e8ca5fd4c13241cd70d0009",
"sha256:798caa2a2384b1cbe8a2a139d80734c9db54f9cc155c99d7cc92441a23871c03",
"sha256:7c6b1dece89874d9541fc974917b631406233ea0440d0bdfbb8e03bf39a49b3b",
"sha256:840793c68105fe031f34d6a086eaea153a0cd5c491cde82a74b420edd0a2b909",
"sha256:8d6603078baf4e11edc4168a514c5ce5b3ba6e3e9c374298cb88437957960a53",
"sha256:9cc46bc107224ff5b6d04369e7c595acb700c3613ad7bcf2e2012f62ece80c35",
"sha256:9f7a31251289b2ab6d4012f6e83e58bc3b96bd151f5b5262467f4bb6b34a7c26",
"sha256:9ffb888f19d54a4d4dfd4b3f29bc2c16aa4972f1c2ab9c4ab09b8ab8685b9c2b",
"sha256:a5ed8c05548b54b998b9498753fb9cadbfd92ee88e884641377d8a8b291bcc01",
"sha256:a7711edca4dcef1a75257b50a2fbfe92a65187c47dab5a0f1b9b332c5919a3fb",
"sha256:af5c59122a011049aad5dd87424b8e65a80e4a6477419c0c1015f73fb5ea0293",
"sha256:b18e0a9ef57d2b41f5c68beefa32317d286c3d6ac0484efd10d6e07491bb95dd",
"sha256:b4e248d1087abf9f4c10f3c398896c87ce82a9856494a7155823eb45a892395d",
"sha256:ba4e9e0ae13fc41c6b23299545e5ef73055213e466bd107953e4a013a5ddd7e3",
"sha256:c6332685306b6417a91b1ff9fae889b3ba65c2292d64bd9245c093b1b284809d",
"sha256:d5ff0621c88ce83a28a10d2ce719b2ee85635e85c515f12bac99a95306da4b2e",
"sha256:d9efd8b7a3ef378dd61a1e77367f1924375befc2eba06168b6ebfa903a5e59ca",
"sha256:df5169c4396adc04f9b0a05f13c074df878b6052430e03f50e68adf3a57aa28d",
"sha256:ebb253464a5d0482b191274f1c8bf00e33f7e0b9c66405fbffc61ed2c839c775",
"sha256:ec80dc47f54e6e9a78181ce05feb71a0353854cc26999db963695f950b5fb375",
"sha256:f032b34669220030f905152045dfa27741ce1a6db3324a5bc0b96b6c7420c87b",
"sha256:f60567825f791c6f8a592f3c6e3bd93dd2934e3f9dac189308426bd76b00ef3b",
"sha256:f803eaa94c2fcda012c047e62bc7a51b0bdabda1cad7a92a522694ea2d76e49f"
"sha256:00a9ed42e88df81ffae7a8ab6d9356b371399b91dbdf0c3cb1e84c03a13aceb5",
"sha256:03425bdae262c76aad70202debd780501fabeaca237cdfddc008987c0e0f59ef",
"sha256:04ed324bda3cda42b9b695d51bb7d54b680b9719cfab04227cdd1e04e5de3104",
"sha256:0e2642fe3142e4cc4af0799748233ad6da94c62a8bec3a6648bf8ee68b1c7426",
"sha256:173379135477dc8cac4bc58f45db08ab45d228b3363adb7af79436135d028405",
"sha256:198caafb44239b60e252492445da556afafc7d1e3ab7a1fb3f0584ef6d742375",
"sha256:1e74c6b51a9ed6589199c787bf5f9875612ca4a8a0785fb2d4a84429badaf22a",
"sha256:2012c72d854c2d03e45d06ae57f40d78e5770d252f195b93f581acf3ba44496e",
"sha256:21157295583fe8943475029ed5abdcf71eb3911894724e360acff1d61c1d54bc",
"sha256:2470043b93ff09bf8fb1d46d1cb756ce6132c54826661a32d4e4d132e1977adf",
"sha256:285d29981935eb726a4399badae8f0ffdff4f5050eaa6d0cfc3f64b857b77185",
"sha256:30d78fbc8ebf9c92c9b7823ee18eb92f2e6ef79b45ac84db507f52fbe3ec4497",
"sha256:320dab6e7cb2eacdf0e658569d2575c4dad258c0fcc794f46215e1e39f90f2c3",
"sha256:33ab79603146aace82c2427da5ca6e58f2b3f2fb5da893ceac0c42218a40be35",
"sha256:3548db281cd7d2561c9ad9984681c95f7b0e38881201e157833a2342c30d5e8c",
"sha256:3799aecf2e17cf585d977b780ce79ff0dc9b78d799fc694221ce814c2c19db83",
"sha256:39d39875251ca8f612b6f33e6b1195af86d1b3e60086068be9cc053aa4376e21",
"sha256:3b926aa83d1edb5aa5b427b4053dc420ec295a08e40911296b9eb1b6170f6cca",
"sha256:3bcde07039e586f91b45c88f8583ea7cf7a0770df3a1649627bf598332cb6984",
"sha256:3d08afd128ddaa624a48cf2b859afef385b720bb4b43df214f85616922e6a5ac",
"sha256:3eb6971dcff08619f8d91607cfc726518b6fa2a9eba42856be181c6d0d9515fd",
"sha256:40f4774f5a9d4f5e344f31a32b5096977b5d48560c5592e2f3d2c4374bd543ee",
"sha256:4289fc34b2f5316fbb762d75362931e351941fa95fa18789191b33fc4cf9504a",
"sha256:470c103ae716238bbe698d67ad020e1db9d9dba34fa5a899b5e21577e6d52ed2",
"sha256:4f2c9f67e9821cad2e5f480bc8d83b8742896f1242dba247911072d4fa94c192",
"sha256:50a74364d85fd319352182ef59c5c790484a336f6db772c1a9231f1c3ed0cbd7",
"sha256:54a2db7b78338edd780e7ef7f9f6c442500fb0d41a5a4ea24fff1c929d5af585",
"sha256:5635bd9cb9731e6d4a1132a498dd34f764034a8ce60cef4f5319c0541159392f",
"sha256:59c0b02d0a6c384d453fece7566d1c7e6b7bae4fc5874ef2ef46d56776d61c9e",
"sha256:5d598b938678ebf3c67377cdd45e09d431369c3b1a5b331058c338e201f12b27",
"sha256:5df2768244d19ab7f60546d0c7c63ce1581f7af8b5de3eb3004b9b6fc8a9f84b",
"sha256:5ef34d190326c3b1f822a5b7a45f6c4535e2f47ed06fec77d3d799c450b2651e",
"sha256:6975a3fac6bc83c4a65c9f9fcab9e47019a11d3d2cf7f3c0d03431bf145a941e",
"sha256:6c9a799e985904922a4d207a94eae35c78ebae90e128f0c4e521ce339396be9d",
"sha256:70df4e3b545a17496c9b3f41f5115e69a4f2e77e94e1d2a8e1070bc0c38c8a3c",
"sha256:7473e861101c9e72452f9bf8acb984947aa1661a7704553a9f6e4baa5ba64415",
"sha256:8102eaf27e1e448db915d08afa8b41d6c7ca7a04b7d73af6514df10a3e74bd82",
"sha256:87c450779d0914f2861b8526e035c5e6da0a3199d8f1add1a665e1cbc6fc6d02",
"sha256:8b7ee99e510d7b66cdb6c593f21c043c248537a32e0bedf02e01e9553a172314",
"sha256:91fc98adde3d7881af9b59ed0294046f3806221863722ba7d8d120c575314325",
"sha256:94411f22c3985acaec6f83c6df553f2dbe17b698cc7f8ae751ff2237d96b9e3c",
"sha256:98d85c6a2bef81588d9227dde12db8a7f47f639f4a17c9ae08e773aa9c697bf3",
"sha256:9ad5db27f9cabae298d151c85cf2bad1d359a1b9c686a275df03385758e2f914",
"sha256:a0b71b1b8fbf2b96e41c4d990244165e2c9be83d54962a9a1d118fd8657d2045",
"sha256:a0f100c8912c114ff53e1202d0078b425bee3649ae34d7b070e9697f93c5d52d",
"sha256:a591fe9e525846e4d154205572a029f653ada1a78b93697f3b5a8f1f2bc055b9",
"sha256:a5c84c68147988265e60416b57fc83425a78058853509c1b0629c180094904a5",
"sha256:a66d3508133af6e8548451b25058d5812812ec3798c886bf38ed24a98216fab2",
"sha256:a8c4917bd7ad33e8eb21e9a5bbba979b49d9a97acb3a803092cbc1133e20343c",
"sha256:b3bbeb01c2b273cca1e1e0c5df57f12dce9a4dd331b4fa1635b8bec26350bde3",
"sha256:cba9d6b9a7d64d4bd46167096fc9d2f835e25d7e4c121fb2ddfc6528fb0413b2",
"sha256:cc4d65aeeaa04136a12677d3dd0b1c0c94dc43abac5860ab33cceb42b801c1e8",
"sha256:ce4bcc037df4fc5e3d184794f27bdaab018943698f4ca31630bc7f84a7b69c6d",
"sha256:cec7d9412a9102bdc577382c3929b337320c4c4c4849f2c5cdd14d7368c5562d",
"sha256:d400bfb9a37b1351253cb402671cea7e89bdecc294e8016a707f6d1d8ac934f9",
"sha256:d61f4695e6c866a23a21acab0509af1cdfd2c013cf256bbf5b6b5e2695827162",
"sha256:db0fbb9c62743ce59a9ff687eb5f4afbe77e5e8403d6697f7446e5f609976f76",
"sha256:dd86c085fae2efd48ac91dd7ccffcfc0571387fe1193d33b6394db7ef31fe2a4",
"sha256:e00b098126fd45523dd056d2efba6c5a63b71ffe9f2bbe1a4fe1716e1d0c331e",
"sha256:e229a521186c75c8ad9490854fd8bbdd9a0c9aa3a524326b55be83b54d4e0ad9",
"sha256:e263d77ee3dd201c3a142934a086a4450861778baaeeb45db4591ef65550b0a6",
"sha256:ed9cb427ba5504c1dc15ede7d516b84757c3e3d7868ccc85121d9310d27eed0b",
"sha256:fa6693661a4c91757f4412306191b6dc88c1703f780c8234035eac011922bc01",
"sha256:fcd131dd944808b5bdb38e6f5b53013c5aa4f334c5cad0c72742f6eba4b73db0"
],
"version": "==1.14.4"
"version": "==1.15.1"
},
"chardet": {
"charset-normalizer": {
"hashes": [
"sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae",
"sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691"
"sha256:5189b6f22b01957427f35b6a08d9a0bc45b46d3788ef5a92e978433c7a35f8a5",
"sha256:575e708016ff3a5e3681541cb9d79312c416835686d054a23accb873b254f413"
],
"version": "==3.0.4"
},
"configparser": {
"hashes": [
"sha256:254c1d9c79f60c45dfde850850883d5aaa7f19a23f13561243a050d5a7c3fe4c",
"sha256:c7d282687a5308319bf3d2e7706e575c635b0a470342641c93bea0ea3b5331df"
],
"markers": "python_version < '3'",
"version": "==4.0.2"
},
"contextlib2": {
"hashes": [
"sha256:01f490098c18b19d2bd5bb5dc445b2054d2fa97f09a4280ba2c5f3c394c8162e",
"sha256:3355078a159fbb44ee60ea80abd0d87b80b78c248643b49aa6d94673b413609b"
],
"markers": "python_version < '3.4'",
"version": "==0.6.0.post1"
"markers": "python_version >= '3.6'",
"version": "==2.1.0"
},
"cryptography": {
"hashes": [
"sha256:22f8251f68953553af4f9c11ec5f191198bc96cff9f0ac5dd5ff94daede0ee6d",
"sha256:284e275e3c099a80831f9898fb5c9559120d27675c3521278faba54e584a7832",
"sha256:3e17d02941c0f169c5b877597ca8be895fca0e5e3eb882526a74aa4804380a98",
"sha256:52a47e60953679eea0b4d490ca3c241fb1b166a7b161847ef4667dfd49e7699d",
"sha256:57b8c1ed13b8aa386cabbfde3be175d7b155682470b0e259fecfe53850967f8a",
"sha256:6a8f64ed096d13f92d1f601a92d9fd1f1025dc73a2ca1ced46dcf5e0d4930943",
"sha256:6e8a3c7c45101a7eeee93102500e1b08f2307c717ff553fcb3c1127efc9b6917",
"sha256:7ef41304bf978f33cfb6f43ca13bb0faac0c99cda33693aa20ad4f5e34e8cb8f",
"sha256:87c2fffd61e934bc0e2c927c3764c20b22d7f5f7f812ee1a477de4c89b044ca6",
"sha256:88069392cd9a1e68d2cfd5c3a2b0d72a44ef3b24b8977a4f7956e9e3c4c9477a",
"sha256:8a0866891326d3badb17c5fd3e02c926b635e8923fa271b4813cd4d972a57ff3",
"sha256:8f0fd8b0751d75c4483c534b209e39e918f0d14232c0d8a2a76e687f64ced831",
"sha256:9a07e6d255053674506091d63ab4270a119e9fc83462c7ab1dbcb495b76307af",
"sha256:9a8580c9afcdcddabbd064c0a74f337af74ff4529cdf3a12fa2e9782d677a2e5",
"sha256:bd80bc156d3729b38cb227a5a76532aef693b7ac9e395eea8063ee50ceed46a5",
"sha256:d1cbc3426e6150583b22b517ef3720036d7e3152d428c864ff0f3fcad2b97591",
"sha256:e15ac84dcdb89f92424cbaca4b0b34e211e7ce3ee7b0ec0e4f3c55cee65fae5a",
"sha256:e4789b84f8dedf190148441f7c5bfe7244782d9cbb194a36e17b91e7d3e1cca9",
"sha256:f01c9116bfb3ad2831e125a73dcd957d173d6ddca7701528eff1e7d97972872c",
"sha256:f0e3986f6cce007216b23c490f093f35ce2068f3c244051e559f647f6731b7ae",
"sha256:f2aa3f8ba9e2e3fd49bd3de743b976ab192fbf0eb0348cebde5d2a9de0090a9f",
"sha256:fb70a4cedd69dc52396ee114416a3656e011fb0311fca55eb55c7be6ed9c8aef"
"sha256:190f82f3e87033821828f60787cfa42bff98404483577b591429ed99bed39d59",
"sha256:2be53f9f5505673eeda5f2736bea736c40f051a739bfae2f92d18aed1eb54596",
"sha256:30788e070800fec9bbcf9faa71ea6d8068f5136f60029759fd8c3efec3c9dcb3",
"sha256:3d41b965b3380f10e4611dbae366f6dc3cefc7c9ac4e8842a806b9672ae9add5",
"sha256:4c590ec31550a724ef893c50f9a97a0c14e9c851c85621c5650d699a7b88f7ab",
"sha256:549153378611c0cca1042f20fd9c5030d37a72f634c9326e225c9f666d472884",
"sha256:63f9c17c0e2474ccbebc9302ce2f07b55b3b3fcb211ded18a42d5764f5c10a82",
"sha256:6bc95ed67b6741b2607298f9ea4932ff157e570ef456ef7ff0ef4884a134cc4b",
"sha256:7099a8d55cd49b737ffc99c17de504f2257e3787e02abe6d1a6d136574873441",
"sha256:75976c217f10d48a8b5a8de3d70c454c249e4b91851f6838a4e48b8f41eb71aa",
"sha256:7bc997818309f56c0038a33b8da5c0bfbb3f1f067f315f9abd6fc07ad359398d",
"sha256:80f49023dd13ba35f7c34072fa17f604d2f19bf0989f292cedf7ab5770b87a0b",
"sha256:91ce48d35f4e3d3f1d83e29ef4a9267246e6a3be51864a5b7d2247d5086fa99a",
"sha256:a958c52505c8adf0d3822703078580d2c0456dd1d27fabfb6f76fe63d2971cd6",
"sha256:b62439d7cd1222f3da897e9a9fe53bbf5c104fff4d60893ad1355d4c14a24157",
"sha256:b7f8dd0d4c1f21759695c05a5ec8536c12f31611541f8904083f3dc582604280",
"sha256:d204833f3c8a33bbe11eda63a54b1aad7aa7456ed769a982f21ec599ba5fa282",
"sha256:e007f052ed10cc316df59bc90fbb7ff7950d7e2919c9757fd42a2b8ecf8a5f67",
"sha256:f2dcb0b3b63afb6df7fd94ec6fbddac81b5492513f7b0436210d390c14d46ee8",
"sha256:f721d1885ecae9078c3f6bbe8a88bc0786b6e749bf32ccec1ef2b18929a05046",
"sha256:f7a6de3e98771e183645181b3627e2563dcde3ce94a9e42a3f427d2255190327",
"sha256:f8c0a6e9e1dd3eb0414ba320f85da6b0dcbd543126e30fcc546e7372a7fbf3b9"
],
"index": "pypi",
"version": "==3.2"
"version": "==37.0.4"
},
"distro": {
"hashes": [
"sha256:0e58756ae38fbd8fc3020d54badb8eae17c5b9dcbed388b17bb55b8a5928df92",
"sha256:df74eed763e18d10d0da624258524ae80486432cd17392d9c3d96f5e83cd2799"
"sha256:151aeccf60c216402932b52e40ee477a939f8d58898927378a02abbe852c1c39",
"sha256:d596311d707e692c2160c37807f83e3820c5d539d5a83e87cfb6babd8ba3a06b"
],
"version": "==1.5.0"
},
"enum34": {
"hashes": [
"sha256:a98a201d6de3f2ab3db284e70a33b0f896fbf35f8086594e8c9e74b909058d53",
"sha256:c3858660960c984d6ab0ebad691265180da2b43f07e061c0f8dca9ef3cffd328",
"sha256:cce6a7477ed816bd2542d03d53db9f0db935dd013b70f336a95c73979289f248"
],
"markers": "python_version < '3'",
"version": "==1.1.10"
},
"funcsigs": {
"hashes": [
"sha256:330cc27ccbf7f1e992e69fef78261dc7c6569012cf397db8d3de0234e6c937ca",
"sha256:a7bb0f2cf3a3fd1ab2732cb49eba4252c2af4240442415b4abce3b87022a8f50"
],
"markers": "python_version < '3.0'",
"version": "==1.0.2"
"markers": "python_version >= '3.6'",
"version": "==1.7.0"
},
"fxapom": {
"hashes": [
@ -177,6 +168,14 @@
"index": "pypi",
"version": "==1.10.2"
},
"h11": {
"hashes": [
"sha256:70813c1135087a248a4d38cc0e1a0181ffab2188141a93eaf567940c3957ff06",
"sha256:8ddd78563b633ca55346c8cd41ec0af27d3c79931828beffb46ce70a379e7442"
],
"markers": "python_version >= '3.6'",
"version": "==0.13.0"
},
"hawkauthlib": {
"hashes": [
"sha256:935878d3a75832aa76f78ddee13491f1466cbd69a8e7e4248902763cf9953ba9",
@ -186,35 +185,17 @@
},
"idna": {
"hashes": [
"sha256:b307872f855b18632ce0c21c5e45be78c0ea7ae4c15c828c20788b26921eb3f6",
"sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0"
"sha256:84d9dd047ffa80596e0f246e2eab0b391788b0503584e8945f2368256d2735ff",
"sha256:9d643ff0a55b762d5cdb124b8eaa99c66322e2157b69160bc32796e824360e6d"
],
"version": "==2.10"
"version": "==3.3"
},
"importlib-metadata": {
"iniconfig": {
"hashes": [
"sha256:b8de9eff2b35fb037368f28a7df1df4e6436f578fa74423505b6c6a778d5b5dd",
"sha256:c2d6341ff566f609e89a2acb2db190e5e1d23d5409d6cc8d2fe34d72443876d4"
"sha256:011e24c64b7f47f6ebd835bb12a743f2fbe9a26d4cecaa7f53bc4f35ee9da8b3",
"sha256:bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32"
],
"markers": "python_version < '3.8'",
"version": "==2.1.1"
},
"ipaddress": {
"hashes": [
"sha256:6e0f4a39e66cb5bb9a137b00276a2eff74f93b71dcbdad6f10ff7df9d3557fcc",
"sha256:b7f8e0369580bb4a24d5ba1d7cc29660a4a6987763faf1d8a8046830e020e7e2"
],
"markers": "python_version < '3'",
"version": "==1.0.23"
},
"more-itertools": {
"hashes": [
"sha256:38a936c0a6d98a38bcc2d03fdaaedaba9f412879461dd2ceff8d37564d6522e4",
"sha256:c0a5785b1109a6bd7fac76d6837fd1feca158e54e521ccd2ae8bfe393cc9d4fc",
"sha256:fe7a7cae1ccb57d33952113ff4fa1bc5f879963600ed74918f1236e212ee50b9"
],
"markers": "python_version <= '2.7'",
"version": "==5.0.0"
"version": "==1.1.1"
},
"mozdevice": {
"hashes": [
@ -245,25 +226,24 @@
},
"mozinstall": {
"hashes": [
"sha256:219ba7c51308433487b4f30a2615cb9b3ecd40a76b9faf41cf1b1b005bb5dda7",
"sha256:bbc31a18ee8a1fbec74b67b99c6c0289ffc7daf39eb5b5ff7dc99f1be687eb08"
"sha256:0b14000a88d6a45c37b877eedf897655f665e89410ca629dd500415406ed465e",
"sha256:ec364cfefd3435fb155edd48be9e71819834e4dcacc6c3294c7f2452e200095b"
],
"index": "pypi",
"version": "==2.0.0"
"version": "==2.0.1"
},
"mozlog": {
"hashes": [
"sha256:4719d3d00bf1a0b77285d306eb3180f9c1311fffae9640a423fad9d80170e43d",
"sha256:d035f722c15d700e4a7b48b90bdda0a6ad83e25482760949d1abd73468bad07f"
"sha256:54b9a1e781ce31fc10079dc8aec509fff7feca83714edeae6c981e279ceb796f"
],
"version": "==7.0.1"
"version": "==7.1.0"
},
"mozprocess": {
"hashes": [
"sha256:08e1036b53819fd144331f6dfbbb17fc8ca782bbed2e28b4aa771b8b91f7dffb",
"sha256:54dc59e7f5a9c2c2930bffb7935f36dddd1d94c9fc6ed179e893d2dff353995a"
"sha256:e64591d02899f6fd50fe391f5635236c5c604d8faae08ab4aafed9c3a66e3966",
"sha256:e8093fe990bafd4ff3e2e49641b182c8085ea9cee2a28c7bdf9fabc2ff9f618f"
],
"version": "==1.2.1"
"version": "==1.3.0"
},
"mozprofile": {
"hashes": [
@ -275,11 +255,11 @@
},
"mozrunner": {
"hashes": [
"sha256:5e1bdf1709b4b8cb86b3daf3dbc9352d2abfc8428e26cc75a68ce87a565f4f25",
"sha256:f223e9ca7f0acd3f93d4c30760f8d976d41da81edf686cd5063d2973ebbebcfb"
"sha256:35a7d2cf3abee1d8651e92f870f75159605810ba8ea442defae41a5eec462c29",
"sha256:4ee4d44123c1daa7f3648e8b3b0e3a8c1712b3e1ea254d9a4bf80295ea795d41"
],
"index": "pypi",
"version": "==7.8.0"
"version": "==8.2.1"
},
"mozterm": {
"hashes": [
@ -296,41 +276,45 @@
"index": "pypi",
"version": "==2.3.0"
},
"outcome": {
"hashes": [
"sha256:6f82bd3de45da303cf1f771ecafa1633750a358436a8bb60e06a1ceb745d2672",
"sha256:c4ab89a56575d6d38a05aa16daeaa333109c1f96167aba8901ab18b6b5e0f7f5"
],
"markers": "python_version >= '3.7'",
"version": "==1.2.0"
},
"packaging": {
"hashes": [
"sha256:05af3bb85d320377db281cf254ab050e1a7ebcbf5410685a9a407e18a1f81236",
"sha256:eb41423378682dadb7166144a4926e443093863024de508ca5c9737d6bc08376"
"sha256:dd47c42927d89ab911e606518907cc2d3a1f38bbd026385970643f9c5b8ecfeb",
"sha256:ef103e05f519cdc783ae24ea4e2e0f508a9c99b2d4969652eed6a2e1ea5bd522"
],
"version": "==20.7"
},
"pathlib2": {
"hashes": [
"sha256:0ec8205a157c80d7acc301c0b18fbd5d44fe655968f5d947b6ecef5290fc35db",
"sha256:6cd9a47b597b37cc57de1c05e56fb1a1c9cc9fab04fe78c29acd090418529868"
],
"markers": "python_version < '3.6'",
"version": "==2.3.5"
"markers": "python_version >= '3.6'",
"version": "==21.3"
},
"pluggy": {
"hashes": [
"sha256:15b2acde666561e1298d71b523007ed7364de07029219b604cf808bfa1c765b0",
"sha256:966c145cd83c96502c3c3868f50408687b38434af77734af1e9ca461a4081d2d"
"sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159",
"sha256:74134bbf457f031a36d68416e1509f34bd5ccc019f0bcc952c7b909d06b37bd3"
],
"version": "==0.13.1"
"markers": "python_version >= '3.6'",
"version": "==1.0.0"
},
"progressbar2": {
"hashes": [
"sha256:ef72be284e7f2b61ac0894b44165926f13f5d995b2bf3cd8a8dedc6224b255a7",
"sha256:fe2738e7ecb7df52ad76307fe610c460c52b50f5335fd26c3ab80ff7655ba1e0"
"sha256:14d3165a1781d053ffaa117daf27cc706128d2ec1d2977fdb05b6bb079888013",
"sha256:2562ba3e554433f08e81fb7b786208b19de135f3ca1c5da1787d9b05558e6247"
],
"version": "==3.53.1"
"markers": "python_version >= '3.7'",
"version": "==4.0.0"
},
"py": {
"hashes": [
"sha256:366389d1db726cd2fcfc79732e75410e5fe4d31db13692115529d34069a043c2",
"sha256:9ca6883ce56b4e8da7e79ac18787889fa5206c79dcc67fb065376cd2fe03f342"
"sha256:51c75c4126074b472f746a24399ad32f6053d1b34b68d2fa41e558e6f4a98719",
"sha256:607c53218732647dff4acdfcd50cb62615cedf612e72d1724fb1a0cc6405b378"
],
"version": "==1.9.0"
"markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'",
"version": "==1.11.0"
},
"pybrowserid": {
"hashes": [
@ -341,10 +325,10 @@
},
"pycparser": {
"hashes": [
"sha256:2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0",
"sha256:7582ad22678f0fcd81102833f60ef8d0e57288b6b5fb00323d101be910e35705"
"sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9",
"sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206"
],
"version": "==2.20"
"version": "==2.21"
},
"pyfxa": {
"hashes": [
@ -354,32 +338,49 @@
},
"pyjwt": {
"hashes": [
"sha256:5c6eca3c2940464d106b99ba83b00c6add741c9becaec087fb7ccdefea71350e",
"sha256:8d59a976fb773f3e6a39c85636357c4f0e242707394cadadd9814f5cbaa20e96"
"sha256:72d1d253f32dbd4f5c88eaf1fdc62f3a19f676ccbadb9dbc5d07e951b2b26daf",
"sha256:d42908208c699b3b973cbeb01a969ba6a96c821eefb1c5bfe4c390c01d67abba"
],
"version": "==1.7.1"
"markers": "python_version >= '3.6'",
"version": "==2.4.0"
},
"pyopenssl": {
"hashes": [
"sha256:660b1b1425aac4a1bea1d94168a85d99f0b3144c869dd4390d27629d0087f1bf",
"sha256:ea252b38c87425b64116f808355e8da644ef9b07e429398bfece610f893ee2e0"
],
"version": "==22.0.0"
},
"pyparsing": {
"hashes": [
"sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1",
"sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b"
"sha256:2b020ecf7d21b687f219b71ecad3631f644a47f01403fa1d1036b0c6416d70fb",
"sha256:5026bae9a10eeaefb61dab2f09052b9f4307d44aee4eda64b309723d8d206bbc"
],
"version": "==2.4.7"
"markers": "python_full_version >= '3.6.8'",
"version": "==3.0.9"
},
"pypom": {
"hashes": [
"sha256:4bdd57fceb72d7e6a3645cf6c9322f490d9cfb5d777eac2c851a3b658b813939",
"sha256:6772ec99f0a21a5bdc8c092007a8c813ed18359e67ed70258bbb233df5e28829"
"sha256:6f56888d25c1faf8fa0d53ef8a4ba1d7dc828e57212f7fe04e8cd21b5eaa924e",
"sha256:a65297125c498c4e9cee99de9b2ddf5b908d0041ee1fc1e90956d3750483fa3d"
],
"version": "==2.2.0"
"version": "==2.2.3"
},
"pysocks": {
"hashes": [
"sha256:08e69f092cc6dbe92a0fdd16eeb9b9ffbc13cadfe5ca4c7bd92ffb078b293299",
"sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5",
"sha256:3f8804571ebe159c380ac6de37643bb4685970655d3bba243530d6558b799aa0"
],
"version": "==1.7.1"
},
"pytest": {
"hashes": [
"sha256:19e8f75eac01dd3f211edd465b39efbcbdc8fc5f7866d7dd49fedb30d8adf339",
"sha256:c77a5f30a90e0ce24db9eaa14ddfd38d4afb5ea159309bdd2dae55b931bc9324"
"sha256:13d0e3ccfc2b6e26be000cb6568c832ba67ba32e719443bfe725814d3c42433c",
"sha256:a06a0425453864a270bc45e71f783330a7428defb4230fb5e6a731fde06ecd45"
],
"index": "pypi",
"version": "==4.6.9"
"version": "==7.1.2"
},
"pytest-fxa": {
"hashes": [
@ -391,26 +392,27 @@
},
"pytest-html": {
"hashes": [
"sha256:06e7e13131649b4fe522cf04054efb7b4749ff2c7160755e4acfd8e89a7e5955",
"sha256:f0fae6de71f02f62f9460f628d0c5f70b0cdc86bb393239860c7dec70fd2973d"
"sha256:3ee1cf319c913d19fe53aeb0bc400e7b0bc2dbeb477553733db1dad12eb75ee3",
"sha256:b7f82f123936a3f4d2950bc993c2c1ca09ce262c9ae12f9ac763a2401380b455"
],
"index": "pypi",
"version": "==1.22.1"
"version": "==3.1.1"
},
"pytest-metadata": {
"hashes": [
"sha256:2071a59285de40d7541fde1eb9f1ddea1c9db165882df82781367471238b66ba",
"sha256:c29a1fb470424926c63154c1b632c02585f2ba4282932058a71d35295ff8c96d"
"sha256:39261ee0086f17649b180baf2a8633e1922a4c4b6fcc28a2de7d8127a82541bf",
"sha256:fcd2f416f15be295943527b3c8ba16a44ae5a7141939c90c3dc5ce9d167cf2a5"
],
"index": "pypi",
"version": "==1.8.0"
"version": "==2.0.2"
},
"python-utils": {
"hashes": [
"sha256:ebaadab29d0cb9dca0a82eab9c405f5be5125dbbff35b8f32cc433fa498dbaa7",
"sha256:f21fc09ff58ea5ebd1fd2e8ef7f63e39d456336900f26bdc9334a03a3f7d8089"
"sha256:3b1c8b706e40e91280eec5fa72ea730880a166cee99afa5555b863d55664478d",
"sha256:5cb9cf295018202fb4d6abdd694a33a7f08bc0ce1bf1eab8cce80ab2cde35c07"
],
"version": "==2.4.0"
"markers": "python_version >= '3.7'",
"version": "==3.3.3"
},
"redo": {
"hashes": [
@ -421,42 +423,49 @@
},
"requests": {
"hashes": [
"sha256:43999036bfa82904b6af1d99e4882b560e5e2c68e5c4b0aa03b655f3d7d73fee",
"sha256:b3f43d496c6daba4493e7c431722aeb7dbc6288f52a6e04e7b6023b0247817e6"
"sha256:7c5599b102feddaa661c826c56ab4fee28bfd17f5abca1ebbe3e7f19d7c97983",
"sha256:8fefa2a1a1365bf5520aac41836fbee479da67864514bdb821f31ce07ce65349"
],
"index": "pypi",
"version": "==2.23.0"
},
"scandir": {
"hashes": [
"sha256:2586c94e907d99617887daed6c1d102b5ca28f1085f90446554abf1faf73123e",
"sha256:2ae41f43797ca0c11591c0c35f2f5875fa99f8797cb1a1fd440497ec0ae4b022",
"sha256:2b8e3888b11abb2217a32af0766bc06b65cc4a928d8727828ee68af5a967fa6f",
"sha256:2c712840c2e2ee8dfaf36034080108d30060d759c7b73a01a52251cc8989f11f",
"sha256:4d4631f6062e658e9007ab3149a9b914f3548cb38bfb021c64f39a025ce578ae",
"sha256:67f15b6f83e6507fdc6fca22fedf6ef8b334b399ca27c6b568cbfaa82a364173",
"sha256:7d2d7a06a252764061a020407b997dd036f7bd6a175a5ba2b345f0a357f0b3f4",
"sha256:8c5922863e44ffc00c5c693190648daa6d15e7c1207ed02d6f46a8dcc2869d32",
"sha256:92c85ac42f41ffdc35b6da57ed991575bdbe69db895507af88b9f499b701c188",
"sha256:b24086f2375c4a094a6b51e78b4cf7ca16c721dcee2eddd7aa6494b42d6d519d",
"sha256:cb925555f43060a1745d0a321cca94bcea927c50114b623d73179189a4e100ac"
],
"markers": "python_version < '3.5'",
"version": "==1.10.0"
"version": "==2.28.1"
},
"selenium": {
"hashes": [
"sha256:2d7131d7bc5a5b99a2d9b04aaf2612c411b03b8ca1b1ee8d3de5845a9be2cb3c",
"sha256:deaf32b60ad91a4611b98d8002757f29e6f2c2d5fcaf202e1c9ad06d6772300d"
"sha256:61c8b02788b66f08f2e61d5295afc956991e394815e33573072e68402ed4e8d5"
],
"version": "==3.141.0"
"markers": "python_version ~= '3.7'",
"version": "==4.4.0"
},
"six": {
"hashes": [
"sha256:30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259",
"sha256:8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced"
"sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926",
"sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"
],
"version": "==1.15.0"
"markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
"version": "==1.16.0"
},
"sniffio": {
"hashes": [
"sha256:471b71698eac1c2112a40ce2752bb2f4a4814c22a54a3eed3676bc0f5ca9f663",
"sha256:c4666eecec1d3f50960c6bdf61ab7bc350648da6c126e3cf6898d8cd4ddcd3de"
],
"markers": "python_version >= '3.5'",
"version": "==1.2.0"
},
"sortedcontainers": {
"hashes": [
"sha256:25caa5a06cc30b6b83d11423433f65d1f9d76c4c6a0c90e3379eaa43b9bfdb88",
"sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0"
],
"version": "==2.4.0"
},
"tomli": {
"hashes": [
"sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc",
"sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"
],
"markers": "python_version >= '3.7'",
"version": "==2.0.1"
},
"treeherder-client": {
"hashes": [
@ -465,54 +474,57 @@
],
"version": "==5.0.0"
},
"urllib3": {
"trio": {
"hashes": [
"sha256:8d7eaa5a82a1cac232164990f04874c594c9453ec55eef02eab885aa02fc17a2",
"sha256:f5321fbe4bf3fefa0efd0bfe7fb14e90909eb62a48ccda331726b4319897dd5e"
"sha256:4dc0bf9d5cc78767fc4516325b6d80cc0968705a31d0eec2ecd7cdda466265b0",
"sha256:523f39b7b69eef73501cebfe1aafd400a9aad5b03543a0eded52952488ff1c13"
],
"version": "==1.25.11"
"markers": "python_version >= '3.7'",
"version": "==0.21.0"
},
"wcwidth": {
"trio-websocket": {
"hashes": [
"sha256:beb4802a9cebb9144e99086eff703a642a13d6a0052920003a230f3294bbe784",
"sha256:c4d647b99872929fdb7bdcaa4fbe7f01413ed3d98077df798530e5b04f116c83"
"sha256:5b558f6e83cc20a37c3b61202476c5295d1addf57bd65543364e0337e37ed2bc",
"sha256:a3d34de8fac26023eee701ed1e7bf4da9a8326b61a62934ec9e53b64970fd8fe"
],
"version": "==0.2.5"
"markers": "python_version >= '3.5'",
"version": "==0.9.2"
},
"urllib3": {
"extras": [
"secure",
"socks"
],
"hashes": [
"sha256:c33ccba33c819596124764c23a97d25f32b28433ba0dedeb77d873a38722c9bc",
"sha256:ea6e8fb210b19d950fab93b60c9009226c63a28808bc8386e05301e25883ac0a"
],
"markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' and python_version < '4.0'",
"version": "==1.26.11"
},
"webob": {
"hashes": [
"sha256:a3c89a8e9ba0aeb17382836cdb73c516d0ecf6630ec40ec28288f3ed459ce87b",
"sha256:aa3a917ed752ba3e0b242234b2a373f9c4e2a75d35291dcbe977649bd21fd108"
"sha256:73aae30359291c14fa3b956f8b5ca31960e420c28c1bec002547fb04928cf89b",
"sha256:b64ef5141be559cfade448f044fa45c2260351edcb6a8ef6b7e00c7dcef0c323"
],
"version": "==1.8.6"
"markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
"version": "==1.8.7"
},
"zipp": {
"wsproto": {
"hashes": [
"sha256:c70410551488251b0fee67b460fb9a536af8d6f9f008ad10ac51f615b6a521b1",
"sha256:e0d9e63797e483a30d27e09fffd308c59a700d365ec34e93cc100844168bf921"
"sha256:2218cb57952d90b9fca325c0dcfb08c3bda93e8fd8070b0a17f048e2e47a521b",
"sha256:a2e56bfd5c7cd83c1369d83b5feccd6d37798b74872866e62616e0ecf111bda8"
],
"version": "==1.2.0"
"markers": "python_version >= '3.7'",
"version": "==1.1.0"
},
"zope.component": {
"hashes": [
"sha256:607628e4c84f7887a69a958542b5c304663e726b73aba0882e3a3f059bff14f3",
"sha256:91628918218b3e6f6323de2a7b845e09ddc5cae131c034896c051b084bba3c92"
"sha256:32cbe426ba8fa7b62ce5b211f80f0718a0c749cc7ff09e3f4b43a57f7ccdf5e5",
"sha256:e955eb9f1e55d30e2d8097c8baa9ee012c356887eef3b0d43e6bfcd4868221e5"
],
"version": "==4.6.2"
},
"zope.deferredimport": {
"hashes": [
"sha256:57b2345e7b5eef47efcd4f634ff16c93e4265de3dcf325afc7315ade48d909e1",
"sha256:9a0c211df44aa95f1c4e6d2626f90b400f56989180d3ef96032d708da3d23e0a"
],
"version": "==4.3.1"
},
"zope.deprecation": {
"hashes": [
"sha256:0d453338f04bacf91bbfba545d8bcdf529aa829e67b705eac8c1a7fdce66e2df",
"sha256:f1480b74995958b24ce37b0ef04d3663d2683e5d6debc96726eff18acf4ea113"
],
"version": "==4.4.0"
"markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'",
"version": "==5.0.1"
},
"zope.event": {
"hashes": [
@ -523,150 +535,96 @@
},
"zope.hookable": {
"hashes": [
"sha256:0194b9b9e7f614abba60c90b231908861036578297515d3d6508eb10190f266d",
"sha256:0c2977473918bdefc6fa8dfb311f154e7f13c6133957fe649704deca79b92093",
"sha256:17b8bdb3b77e03a152ca0d5ca185a7ae0156f5e5a2dbddf538676633a1f7380f",
"sha256:29d07681a78042cdd15b268ae9decffed9ace68a53eebeb61d65ae931d158841",
"sha256:36fb1b35d1150267cb0543a1ddd950c0bc2c75ed0e6e92e3aaa6ac2e29416cb7",
"sha256:3aed60c2bb5e812bbf9295c70f25b17ac37c233f30447a96c67913ba5073642f",
"sha256:3cac1565cc768911e72ca9ec4ddf5c5109e1fef0104f19f06649cf1874943b60",
"sha256:3d4bc0cc4a37c3cd3081063142eeb2125511db3c13f6dc932d899c512690378e",
"sha256:3f73096f27b8c28be53ffb6604f7b570fbbb82f273c6febe5f58119009b59898",
"sha256:522d1153d93f2d48aa0bd9fb778d8d4500be2e4dcf86c3150768f0e3adbbc4ef",
"sha256:523d2928fb7377bbdbc9af9c0b14ad73e6eaf226349f105733bdae27efd15b5a",
"sha256:5848309d4fc5c02150a45e8f8d2227e5bfda386a508bbd3160fed7c633c5a2fa",
"sha256:6781f86e6d54a110980a76e761eb54590630fd2af2a17d7edf02a079d2646c1d",
"sha256:6fd27921ebf3aaa945fa25d790f1f2046204f24dba4946f82f5f0a442577c3e9",
"sha256:70d581862863f6bf9e175e85c9d70c2d7155f53fb04dcdb2f73cf288ca559a53",
"sha256:81867c23b0dc66c8366f351d00923f2bc5902820a24c2534dfd7bf01a5879963",
"sha256:81db29edadcbb740cd2716c95a297893a546ed89db1bfe9110168732d7f0afdd",
"sha256:86bd12624068cea60860a0759af5e2c3adc89c12aef6f71cf12f577e28deefe3",
"sha256:9c184d8f9f7a76e1ced99855ccf390ffdd0ec3765e5cbf7b9cada600accc0a1e",
"sha256:acc789e8c29c13555e43fe4bf9fcd15a65512c9645e97bbaa5602e3201252b02",
"sha256:afaa740206b7660d4cc3b8f120426c85761f51379af7a5b05451f624ad12b0af",
"sha256:b5f5fa323f878bb16eae68ea1ba7f6c0419d4695d0248bed4b18f51d7ce5ab85",
"sha256:bd89e0e2c67bf4ac3aca2a19702b1a37269fb1923827f68324ac2e7afd6e3406",
"sha256:c212de743283ec0735db24ec6ad913758df3af1b7217550ff270038062afd6ae",
"sha256:ca553f524293a0bdea05e7f44c3e685e4b7b022cb37d87bc4a3efa0f86587a8d",
"sha256:cab67065a3db92f636128d3157cc5424a145f82d96fb47159c539132833a6d36",
"sha256:d3b3b3eedfdbf6b02898216e85aa6baf50207f4378a2a6803d6d47650cd37031",
"sha256:d9f4a5a72f40256b686d31c5c0b1fde503172307beb12c1568296e76118e402c",
"sha256:df5067d87aaa111ed5d050e1ee853ba284969497f91806efd42425f5348f1c06",
"sha256:e2587644812c6138f05b8a41594a8337c6790e3baf9a01915e52438c13fc6bef",
"sha256:e27fd877662db94f897f3fd532ef211ca4901eb1a70ba456f15c0866a985464a",
"sha256:e427ebbdd223c72e06ba94c004bb04e996c84dec8a0fa84e837556ae145c439e",
"sha256:e583ad4309c203ef75a09d43434cf9c2b4fa247997ecb0dcad769982c39411c7",
"sha256:e760b2bc8ece9200804f0c2b64d10147ecaf18455a2a90827fbec4c9d84f3ad5",
"sha256:ea9a9cc8bcc70e18023f30fa2f53d11ae069572a162791224e60cd65df55fb69",
"sha256:ecb3f17dce4803c1099bd21742cd126b59817a4e76a6544d31d2cca6e30dbffd",
"sha256:ed794e3b3de42486d30444fb60b5561e724ee8a2d1b17b0c2e0f81e3ddaf7a87",
"sha256:ee885d347279e38226d0a437b6a932f207f691c502ee565aba27a7022f1285df",
"sha256:fd5e7bc5f24f7e3d490698f7b854659a9851da2187414617cd5ed360af7efd63",
"sha256:fe45f6870f7588ac7b2763ff1ce98cce59369717afe70cc353ec5218bc854bcc"
"sha256:031e7672540685dc9d07565f2b968c6e21c7899c9391da58a23e63f229a8fdcd",
"sha256:14bac9afd00e9577227749b37dfc3b9fe4f4fb855923262fc016be47baa42712",
"sha256:16c0748438f716894cb61f3ed00adaa65359a5abe7a12bb44d7133d4b0cd3453",
"sha256:1da8d3386238983e97302b2cbdb510e126968e65e3cb8a8745da9744655001fc",
"sha256:24e4489ccf0dbd4c0e9d2d8b845b46994debb30cc22f96da76e973f9cb582799",
"sha256:3111fbc3ddae5d98655691ff81b1c71bd7ad0c3bcf2c2ef659fdc8e66f664603",
"sha256:34a84e15f2e6a3b2e372a67f7d845a372e3f0438319f26dfe9b7cb66ab75be44",
"sha256:35320d283a364c42dbf91694066bc1e7f07628bbd5ec87c1ae08143036e1de49",
"sha256:43855fbab9fb949fa14b5bbcf4c471e4d359428c2196061efe0d82fe3b387101",
"sha256:4711443b964bf7ace58780a3473f520151de8d441e57583b8d8cd8a231fb7656",
"sha256:49427208d9f65e5aa7df5c1be4dc818c51da34e261f4e52fe944a695ae90e3b3",
"sha256:4dbdfe522741effbb507d55354664c93c81db6db66ca124c981d1e3a41e5a31b",
"sha256:4dc9693fa28a238f063ba169110ef4199e0f86f9f976b57824c1d742eb21ad2e",
"sha256:64337672794b01d039e2380d11dd895ab17043530f27b5e3e0709a11fbe5b532",
"sha256:7067a450b15c8d41d00060890573ddc06f3414e62173dac55b38f6683920c20e",
"sha256:7091df7b4d6d897dd00e8717f0fa62b020e28aabe54a92005df22130ed204f6f",
"sha256:7b63de104e531109f606d4e3765b82fa3364e387d63b71a02460d321e24b33c8",
"sha256:7ef3128b5bcb97029c19df95126f57638afe6d2aca0ffede989149fa0bbd744a",
"sha256:800f93479202b05e46ba7696a2dd5411cfdd9d87c47a7d2b6fcda5394a5f9042",
"sha256:84dfb4f5189c8a3b70dfdf0d268840d5dce69048d4767120910f4665fa5ee2f3",
"sha256:8cf9982d43f6a732d041cf68b08fa969e5bcf090212ab519a637c8a393015eda",
"sha256:8fc3e6cd0486c6af48e3317c299def719b57538332a194e0b3bc6a772f4faa0e",
"sha256:a766186b97e493928dfac4a4b6c7508e47411e78c6f3be9846e8981eb91542d4",
"sha256:bfd1b1107a51ddfbd628c1ff884c6a67e92519b23012563b6082d438dbd16b9d",
"sha256:cbcbf6d31092caafb40ab26d07c065bf4f60f3ba7925d23d51a4e19469034544",
"sha256:cf27270212fa51005162d75cae83bb943c84ece7c7f8d30d68efebfad2f469d9",
"sha256:cf7f1f973aeced06ab1a245faa71e867cec6a053b807c2aad4c1728964aac071",
"sha256:de77a946ef020d08643647e417713ed753a2eed1f4495259c38a241c8eb31dbf",
"sha256:e3b01e7cf16b4a3257ee05e4c354737a4f64af302846826c46a296a7944b8da9",
"sha256:ff08276e555f2ef262fd03d872cca130e7ee376b87d7651a5595aae2fa5b2425"
],
"version": "==5.0.1"
"markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'",
"version": "==5.1.0"
},
"zope.interface": {
"hashes": [
"sha256:05a97ba92c1c7c26f25c9f671aa1ef85ffead6cdad13770e5b689cf983adc7e1",
"sha256:07d61722dd7d85547b7c6b0f5486b4338001fab349f2ac5cabc0b7182eb3425d",
"sha256:0a990dcc97806e5980bbb54b2e46b9cde9e48932d8e6984daf71ef1745516123",
"sha256:150e8bcb7253a34a4535aeea3de36c0bb3b1a6a47a183a95d65a194b3e07f232",
"sha256:1743bcfe45af8846b775086471c28258f4c6e9ee8ef37484de4495f15a98b549",
"sha256:1b5f6c8fff4ed32aa2dd43e84061bc8346f32d3ba6ad6e58f088fe109608f102",
"sha256:21e49123f375703cf824214939d39df0af62c47d122d955b2a8d9153ea08cfd5",
"sha256:21f579134a47083ffb5ddd1307f0405c91aa8b61ad4be6fd5af0171474fe0c45",
"sha256:27c267dc38a0f0079e96a2945ee65786d38ef111e413c702fbaaacbab6361d00",
"sha256:299bde0ab9e5c4a92f01a152b7fbabb460f31343f1416f9b7b983167ab1e33bc",
"sha256:2ab88d8f228f803fcb8cb7d222c579d13dab2d3622c51e8cf321280da01102a7",
"sha256:2ced4c35061eea623bc84c7711eedce8ecc3c2c51cd9c6afa6290df3bae9e104",
"sha256:2dcab01c660983ba5e5a612e0c935141ccbee67d2e2e14b833e01c2354bd8034",
"sha256:32546af61a9a9b141ca38d971aa6eb9800450fa6620ce6323cc30eec447861f3",
"sha256:32b40a4c46d199827d79c86bb8cb88b1bbb764f127876f2cb6f3a47f63dbada3",
"sha256:3cc94c69f6bd48ed86e8e24f358cb75095c8129827df1298518ab860115269a4",
"sha256:42b278ac0989d6f5cf58d7e0828ea6b5951464e3cf2ff229dd09a96cb6ba0c86",
"sha256:495b63fd0302f282ee6c1e6ea0f1c12cb3d1a49c8292d27287f01845ff252a96",
"sha256:4af87cdc0d4b14e600e6d3d09793dce3b7171348a094ba818e2a68ae7ee67546",
"sha256:4b94df9f2fdde7b9314321bab8448e6ad5a23b80542dcab53e329527d4099dcb",
"sha256:4c48ddb63e2b20fba4c6a2bf81b4d49e99b6d4587fb67a6cd33a2c1f003af3e3",
"sha256:4df9afd17bd5477e9f8c8b6bb8507e18dd0f8b4efe73bb99729ff203279e9e3b",
"sha256:518950fe6a5d56f94ba125107895f938a4f34f704c658986eae8255edb41163b",
"sha256:538298e4e113ccb8b41658d5a4b605bebe75e46a30ceca22a5a289cf02c80bec",
"sha256:55465121e72e208a7b69b53de791402affe6165083b2ea71b892728bd19ba9ae",
"sha256:588384d70a0f19b47409cfdb10e0c27c20e4293b74fc891df3d8eb47782b8b3e",
"sha256:6278c080d4afffc9016e14325f8734456831124e8c12caa754fd544435c08386",
"sha256:64ea6c221aeee4796860405e1aedec63424cda4202a7ad27a5066876db5b0fd2",
"sha256:681dbb33e2b40262b33fd383bae63c36d33fd79fa1a8e4092945430744ffd34a",
"sha256:6936aa9da390402d646a32a6a38d5409c2d2afb2950f045a7d02ab25a4e7d08d",
"sha256:778d0ec38bbd288b150a3ae363c8ffd88d2207a756842495e9bffd8a8afbc89a",
"sha256:8251f06a77985a2729a8bdbefbae79ee78567dddc3acbd499b87e705ca59fe24",
"sha256:83b4aa5344cce005a9cff5d0321b2e318e871cc1dfc793b66c32dd4f59e9770d",
"sha256:844fad925ac5c2ad4faaceb3b2520ad016b5280105c6e16e79838cf951903a7b",
"sha256:8ceb3667dd13b8133f2e4d637b5b00f240f066448e2aa89a41f4c2d78a26ce50",
"sha256:92dc0fb79675882d0b6138be4bf0cec7ea7c7eede60aaca78303d8e8dbdaa523",
"sha256:9789bd945e9f5bd026ed3f5b453d640befb8b1fc33a779c1fe8d3eb21fe3fb4a",
"sha256:a2b6d6eb693bc2fc6c484f2e5d93bd0b0da803fa77bf974f160533e555e4d095",
"sha256:aab9f1e34d810feb00bf841993552b8fcc6ae71d473c505381627143d0018a6a",
"sha256:abb61afd84f23099ac6099d804cdba9bd3b902aaaded3ffff47e490b0a495520",
"sha256:adf9ee115ae8ff8b6da4b854b4152f253b390ba64407a22d75456fe07dcbda65",
"sha256:aedc6c672b351afe6dfe17ff83ee5e7eb6ed44718f879a9328a68bdb20b57e11",
"sha256:b7a00ecb1434f8183395fac5366a21ee73d14900082ca37cf74993cf46baa56c",
"sha256:ba32f4a91c1cb7314c429b03afbf87b1fff4fb1c8db32260e7310104bd77f0c7",
"sha256:cbd0f2cbd8689861209cd89141371d3a22a11613304d1f0736492590aa0ab332",
"sha256:e4bc372b953bf6cec65a8d48482ba574f6e051621d157cf224227dbb55486b1e",
"sha256:eccac3d9aadc68e994b6d228cb0c8919fc47a5350d85a1b4d3d81d1e98baf40c",
"sha256:efd550b3da28195746bb43bd1d815058181a7ca6d9d6aa89dd37f5eefe2cacb7",
"sha256:efef581c8ba4d990770875e1a2218e856849d32ada2680e53aebc5d154a17e20",
"sha256:f057897711a630a0b7a6a03f1acf379b6ba25d37dc5dc217a97191984ba7f2fc",
"sha256:f37d45fab14ffef9d33a0dc3bc59ce0c5313e2253323312d47739192da94f5fd",
"sha256:f44906f70205d456d503105023041f1e63aece7623b31c390a0103db4de17537"
"sha256:08f9636e99a9d5410181ba0729e0408d3d8748026ea938f3b970a0249daa8192",
"sha256:0b465ae0962d49c68aa9733ba92a001b2a0933c317780435f00be7ecb959c702",
"sha256:0cba8477e300d64a11a9789ed40ee8932b59f9ee05f85276dbb4b59acee5dd09",
"sha256:0cee5187b60ed26d56eb2960136288ce91bcf61e2a9405660d271d1f122a69a4",
"sha256:0ea1d73b7c9dcbc5080bb8aaffb776f1c68e807767069b9ccdd06f27a161914a",
"sha256:0f91b5b948686659a8e28b728ff5e74b1be6bf40cb04704453617e5f1e945ef3",
"sha256:15e7d1f7a6ee16572e21e3576d2012b2778cbacf75eb4b7400be37455f5ca8bf",
"sha256:17776ecd3a1fdd2b2cd5373e5ef8b307162f581c693575ec62e7c5399d80794c",
"sha256:194d0bcb1374ac3e1e023961610dc8f2c78a0f5f634d0c737691e215569e640d",
"sha256:1c0e316c9add0db48a5b703833881351444398b04111188069a26a61cfb4df78",
"sha256:205e40ccde0f37496904572035deea747390a8b7dc65146d30b96e2dd1359a83",
"sha256:273f158fabc5ea33cbc936da0ab3d4ba80ede5351babc4f577d768e057651531",
"sha256:2876246527c91e101184f63ccd1d716ec9c46519cc5f3d5375a3351c46467c46",
"sha256:2c98384b254b37ce50eddd55db8d381a5c53b4c10ee66e1e7fe749824f894021",
"sha256:2e5a26f16503be6c826abca904e45f1a44ff275fdb7e9d1b75c10671c26f8b94",
"sha256:334701327f37c47fa628fc8b8d28c7d7730ce7daaf4bda1efb741679c2b087fc",
"sha256:3748fac0d0f6a304e674955ab1365d515993b3a0a865e16a11ec9d86fb307f63",
"sha256:3c02411a3b62668200910090a0dff17c0b25aaa36145082a5a6adf08fa281e54",
"sha256:3dd4952748521205697bc2802e4afac5ed4b02909bb799ba1fe239f77fd4e117",
"sha256:3f24df7124c323fceb53ff6168da70dbfbae1442b4f3da439cd441681f54fe25",
"sha256:469e2407e0fe9880ac690a3666f03eb4c3c444411a5a5fddfdabc5d184a79f05",
"sha256:4de4bc9b6d35c5af65b454d3e9bc98c50eb3960d5a3762c9438df57427134b8e",
"sha256:5208ebd5152e040640518a77827bdfcc73773a15a33d6644015b763b9c9febc1",
"sha256:52de7fc6c21b419078008f697fd4103dbc763288b1406b4562554bd47514c004",
"sha256:5bb3489b4558e49ad2c5118137cfeaf59434f9737fa9c5deefc72d22c23822e2",
"sha256:5dba5f530fec3f0988d83b78cc591b58c0b6eb8431a85edd1569a0539a8a5a0e",
"sha256:5dd9ca406499444f4c8299f803d4a14edf7890ecc595c8b1c7115c2342cadc5f",
"sha256:5f931a1c21dfa7a9c573ec1f50a31135ccce84e32507c54e1ea404894c5eb96f",
"sha256:63b82bb63de7c821428d513607e84c6d97d58afd1fe2eb645030bdc185440120",
"sha256:66c0061c91b3b9cf542131148ef7ecbecb2690d48d1612ec386de9d36766058f",
"sha256:6f0c02cbb9691b7c91d5009108f975f8ffeab5dff8f26d62e21c493060eff2a1",
"sha256:71aace0c42d53abe6fc7f726c5d3b60d90f3c5c055a447950ad6ea9cec2e37d9",
"sha256:7d97a4306898b05404a0dcdc32d9709b7d8832c0c542b861d9a826301719794e",
"sha256:7df1e1c05304f26faa49fa752a8c690126cf98b40b91d54e6e9cc3b7d6ffe8b7",
"sha256:8270252effc60b9642b423189a2fe90eb6b59e87cbee54549db3f5562ff8d1b8",
"sha256:867a5ad16892bf20e6c4ea2aab1971f45645ff3102ad29bd84c86027fa99997b",
"sha256:877473e675fdcc113c138813a5dd440da0769a2d81f4d86614e5d62b69497155",
"sha256:8892f89999ffd992208754851e5a052f6b5db70a1e3f7d54b17c5211e37a98c7",
"sha256:9a9845c4c6bb56e508651f005c4aeb0404e518c6f000d5a1123ab077ab769f5c",
"sha256:a1e6e96217a0f72e2b8629e271e1b280c6fa3fe6e59fa8f6701bec14e3354325",
"sha256:a8156e6a7f5e2a0ff0c5b21d6bcb45145efece1909efcbbbf48c56f8da68221d",
"sha256:a9506a7e80bcf6eacfff7f804c0ad5350c8c95b9010e4356a4b36f5322f09abb",
"sha256:af310ec8335016b5e52cae60cda4a4f2a60a788cbb949a4fbea13d441aa5a09e",
"sha256:b0297b1e05fd128d26cc2460c810d42e205d16d76799526dfa8c8ccd50e74959",
"sha256:bf68f4b2b6683e52bec69273562df15af352e5ed25d1b6641e7efddc5951d1a7",
"sha256:d0c1bc2fa9a7285719e5678584f6b92572a5b639d0e471bb8d4b650a1a910920",
"sha256:d4d9d6c1a455d4babd320203b918ccc7fcbefe308615c521062bc2ba1aa4d26e",
"sha256:db1fa631737dab9fa0b37f3979d8d2631e348c3b4e8325d6873c2541d0ae5a48",
"sha256:dd93ea5c0c7f3e25335ab7d22a507b1dc43976e1345508f845efc573d3d779d8",
"sha256:f44e517131a98f7a76696a7b21b164bcb85291cee106a23beccce454e1f433a4",
"sha256:f7ee479e96f7ee350db1cf24afa5685a5899e2b34992fb99e1f7c1b0b758d263"
],
"version": "==5.2.0"
},
"zope.proxy": {
"hashes": [
"sha256:00573dfa755d0703ab84bb23cb6ecf97bb683c34b340d4df76651f97b0bab068",
"sha256:092049280f2848d2ba1b57b71fe04881762a220a97b65288bcb0968bb199ec30",
"sha256:0cbd27b4d3718b5ec74fc65ffa53c78d34c65c6fd9411b8352d2a4f855220cf1",
"sha256:17fc7e16d0c81f833a138818a30f366696653d521febc8e892858041c4d88785",
"sha256:19577dfeb70e8a67249ba92c8ad20589a1a2d86a8d693647fa8385408a4c17b0",
"sha256:207aa914576b1181597a1516e1b90599dc690c095343ae281b0772e44945e6a4",
"sha256:219a7db5ed53e523eb4a4769f13105118b6d5b04ed169a283c9775af221e231f",
"sha256:2b50ea79849e46b5f4f2b0247a3687505d32d161eeb16a75f6f7e6cd81936e43",
"sha256:5903d38362b6c716e66bbe470f190579c530a5baf03dbc8500e5c2357aa569a5",
"sha256:5c24903675e271bd688c6e9e7df5775ac6b168feb87dbe0e4bcc90805f21b28f",
"sha256:5ef6bc5ed98139e084f4e91100f2b098a0cd3493d4e76f9d6b3f7b95d7ad0f06",
"sha256:61b55ae3c23a126a788b33ffb18f37d6668e79a05e756588d9e4d4be7246ab1c",
"sha256:63ddb992931a5e616c87d3d89f5a58db086e617548005c7f9059fac68c03a5cc",
"sha256:6943da9c09870490dcfd50c4909c0cc19f434fa6948f61282dc9cb07bcf08160",
"sha256:6ad40f85c1207803d581d5d75e9ea25327cd524925699a83dfc03bf8e4ba72b7",
"sha256:6b44433a79bdd7af0e3337bd7bbcf53dd1f9b0fa66bf21bcb756060ce32a96c1",
"sha256:6bbaa245015d933a4172395baad7874373f162955d73612f0b66b6c2c33b6366",
"sha256:7007227f4ea85b40a2f5e5a244479f6a6dfcf906db9b55e812a814a8f0e2c28d",
"sha256:74884a0aec1f1609190ec8b34b5d58fb3b5353cf22b96161e13e0e835f13518f",
"sha256:7d25fe5571ddb16369054f54cdd883f23de9941476d97f2b92eb6d7d83afe22d",
"sha256:7e162bdc5e3baad26b2262240be7d2bab36991d85a6a556e48b9dfb402370261",
"sha256:814d62678dc3a30f4aa081982d830b7c342cf230ffc9d030b020cb154eeebf9e",
"sha256:8878a34c5313ee52e20aa50b03138af8d472bae465710fb954d133a9bfd3c38d",
"sha256:a66a0d94e5b081d5d695e66d6667e91e74d79e273eee95c1747717ba9cb70792",
"sha256:a69f5cbf4addcfdf03dda564a671040127a6b7c34cf9fe4973582e68441b63fa",
"sha256:b00f9f0c334d07709d3f73a7cb8ae63c6ca1a90c790a63b5e7effa666ef96021",
"sha256:b6ed71e4a7b4690447b626f499d978aa13197a0e592950e5d7020308f6054698",
"sha256:bdf5041e5851526e885af579d2f455348dba68d74f14a32781933569a327fddf",
"sha256:be034360dd34e62608419f86e799c97d389c10a0e677a25f236a971b2f40dac9",
"sha256:cc8f590a5eed30b314ae6b0232d925519ade433f663de79cc3783e4b10d662ba",
"sha256:cd7a318a15fe6cc4584bf3c4426f092ed08c0fd012cf2a9173114234fe193e11",
"sha256:cf19b5f63a59c20306e034e691402b02055c8f4e38bf6792c23cad489162a642",
"sha256:cfc781ce442ec407c841e9aa51d0e1024f72b6ec34caa8fdb6ef9576d549acf2",
"sha256:dea9f6f8633571e18bc20cad83603072e697103a567f4b0738d52dd0211b4527",
"sha256:e4a86a1d5eb2cce83c5972b3930c7c1eac81ab3508464345e2b8e54f119d5505",
"sha256:e7106374d4a74ed9ff00c46cc00f0a9f06a0775f8868e423f85d4464d2333679",
"sha256:e98a8a585b5668aa9e34d10f7785abf9545fe72663b4bfc16c99a115185ae6a5",
"sha256:f64840e68483316eb58d82c376ad3585ca995e69e33b230436de0cdddf7363f9",
"sha256:f8f4b0a9e6683e43889852130595c8854d8ae237f2324a053cdd884de936aa9b",
"sha256:fc45a53219ed30a7f670a6d8c98527af0020e6fd4ee4c0a8fb59f147f06d816c"
],
"version": "==4.3.5"
"markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'",
"version": "==5.4.0"
}
},
"develop": {}

View File

@ -28,14 +28,13 @@ import org.mozilla.fenix.helpers.TestAssetHelper
import org.mozilla.fenix.helpers.ext.toUri
import org.mozilla.fenix.helpers.ext.waitNotNull
import org.mozilla.fenix.ui.robots.accountSettings
import org.mozilla.fenix.ui.robots.browserScreen
import org.mozilla.fenix.ui.robots.homeScreen
import org.mozilla.fenix.ui.robots.navigationToolbar
import org.mozilla.fenix.ui.robots.settingsSubMenuLoginsAndPassword
@Suppress("RECEIVER_NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS")
class SyncIntegrationTest {
val mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
private lateinit var mDevice: UiDevice
private lateinit var mockWebServer: MockWebServer
@get:Rule
@ -43,6 +42,7 @@ class SyncIntegrationTest {
@Before
fun setUp() {
mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
mockWebServer = MockWebServer().apply {
dispatcher = AndroidAssetDispatcher()
start()
@ -141,10 +141,7 @@ class SyncIntegrationTest {
navigationToolbar {
}.enterURLAndEnterToBrowser(defaultWebPage) {
}.openThreeDotMenu {
verifyAddBookmarkButton()
clickAddBookmarkButton()
}
browserScreen {
}.bookmarkPage {
}.openThreeDotMenu {
}.openSettings {
}.openTurnOnSyncMenu {
@ -177,9 +174,11 @@ class SyncIntegrationTest {
// Useful functions for the tests
fun typeEmail() {
val emailInput = mDevice.findObject(UiSelector()
val emailInput = mDevice.findObject(
UiSelector()
.instance(0)
.className(EditText::class.java))
.className(EditText::class.java),
)
emailInput.waitForExists(TestAssetHelper.waitingTime)
val emailAddress = javaClass.classLoader!!.getResource("email.txt").readText()
@ -192,9 +191,11 @@ class SyncIntegrationTest {
}
fun typePassword() {
val passwordInput = mDevice.findObject(UiSelector()
val passwordInput = mDevice.findObject(
UiSelector()
.instance(0)
.className(EditText::class.java))
.className(EditText::class.java),
)
val passwordValue = javaClass.classLoader!!.getResource("password.txt").readText()
passwordInput.setText(passwordValue)

View File

@ -11,8 +11,8 @@ import mozversion
import pytest
import requests
from tps import TPS
from gradlewbuild import GradlewBuild
from .tps import TPS
from .gradlewbuild import GradlewBuild
here = os.path.dirname(__file__)

View File

@ -2,7 +2,7 @@ import logging
import os
import subprocess
from adbrun import ADBrun
from .adbrun import ADBrun
here = os.path.dirname(__file__)
logging.getLogger(__name__).addHandler(logging.NullHandler())
@ -21,7 +21,7 @@ class GradlewBuild(object):
# Change path accordingly to go to root folder to run gradlew
os.chdir('../../../../../../../..')
cmd = './gradlew ' + 'app:connectedGeckoNightlyDebugAndroidTest -Pandroid.testInstrumentationRunnerArguments.class=org.mozilla.fenix.syncintegration.SyncIntegrationTest#{}'.format(identifier)
cmd = './gradlew ' + 'app:connectedDebugAndroidTest -Pandroid.testInstrumentationRunnerArguments.class=org.mozilla.fenix.syncintegration.SyncIntegrationTest#{}'.format(identifier)
self.logger.info('Running cmd: {}'.format(cmd))
@ -40,4 +40,4 @@ class GradlewBuild(object):
os.chdir(testsPath)
with open(self.log, 'w') as f:
f.write(out)
f.write(str(out))

View File

@ -5,50 +5,57 @@
package org.mozilla.fenix.ui
import androidx.test.espresso.Espresso.openActionBarOverflowOrOptionsMenu
import androidx.test.espresso.IdlingRegistry
import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.platform.app.InstrumentationRegistry.getInstrumentation
import androidx.test.uiautomator.UiDevice
import kotlinx.coroutines.runBlocking
import mozilla.appservices.places.BookmarkRoot
import okhttp3.mockwebserver.MockWebServer
import org.junit.After
import org.junit.Before
import org.junit.Ignore
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.R
import org.mozilla.fenix.customannotations.SmokeTest
import org.mozilla.fenix.ext.bookmarkStorage
import org.mozilla.fenix.helpers.AndroidAssetDispatcher
import org.mozilla.fenix.helpers.HomeActivityTestRule
import org.mozilla.fenix.helpers.RecyclerViewIdlingResource
import org.mozilla.fenix.helpers.RetryTestRule
import org.mozilla.fenix.helpers.TestAssetHelper
import org.mozilla.fenix.helpers.TestHelper
import org.mozilla.fenix.helpers.TestHelper.longTapSelectItem
import org.mozilla.fenix.helpers.TestHelper.registerAndCleanupIdlingResources
import org.mozilla.fenix.ui.robots.bookmarksMenu
import org.mozilla.fenix.ui.robots.browserScreen
import org.mozilla.fenix.ui.robots.homeScreen
import org.mozilla.fenix.ui.robots.mDevice
import org.mozilla.fenix.ui.robots.multipleSelectionToolbar
import org.mozilla.fenix.ui.robots.navigationToolbar
/**
* Tests for verifying basic functionality of bookmarks
*/
@Ignore("To be re-implemented in https://github.com/mozilla-mobile/fenix/issues/17979")
class BookmarksTest {
/* ktlint-disable no-blank-line-before-rbrace */ // This imposes unreadable grouping.
private lateinit var mockWebServer: MockWebServer
private lateinit var mDevice: UiDevice
private val bookmarksFolderName = "New Folder"
private val testBookmark = object {
var title: String = "Bookmark title"
var url: String = "https://www.test.com"
}
private var bookmarksListIdlingResource: RecyclerViewIdlingResource? = null
@get:Rule
val activityTestRule = HomeActivityTestRule()
val activityTestRule = HomeActivityTestRule.withDefaultSettingsOverrides()
@Rule
@JvmField
val retryTestRule = RetryTestRule(3)
@Before
fun setUp() {
mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
mockWebServer = MockWebServer().apply {
dispatcher = AndroidAssetDispatcher()
start()
@ -64,9 +71,21 @@ class BookmarksTest {
val bookmarks = bookmarksStorage?.getTree(BookmarkRoot.Mobile.id)?.children
bookmarks?.forEach { bookmarksStorage.deleteNode(it.guid) }
}
}
if (bookmarksListIdlingResource != null) {
IdlingRegistry.getInstance().unregister(bookmarksListIdlingResource!!)
@Test
fun verifyEmptyBookmarksMenuTest() {
homeScreen {
}.openThreeDotMenu {
}.openBookmarks {
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 1),
) {
verifyBookmarksMenuView()
verifyAddFolderButton()
verifyCloseButton()
verifyBookmarkTitle("Desktop Bookmarks")
}
}
}
@ -75,15 +94,15 @@ class BookmarksTest {
homeScreen {
}.openThreeDotMenu {
}.openBookmarks {
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 1)
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
selectFolder("Desktop Bookmarks")
verifyFolderTitle("Bookmarks Menu")
verifyFolderTitle("Bookmarks Toolbar")
verifyFolderTitle("Other Bookmarks")
verifySignInToSyncButton()
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 1),
) {
selectFolder("Desktop Bookmarks")
verifyFolderTitle("Bookmarks Menu")
verifyFolderTitle("Bookmarks Toolbar")
verifyFolderTitle("Other Bookmarks")
verifySyncSignInButton()
}
}.clickSingInToSyncButton {
verifyTurnOnSyncToolbarTitle()
}
@ -96,10 +115,7 @@ class BookmarksTest {
navigationToolbar {
}.enterURLAndEnterToBrowser(defaultWebPage.url) {
}.openThreeDotMenu {
verifyAddBookmarkButton()
clickAddBookmarkButton()
}
browserScreen {
}.bookmarkPage {
}.openThreeDotMenu {
verifyEditBookmarkButton()
}
@ -113,12 +129,12 @@ class BookmarksTest {
createBookmark(defaultWebPage.url)
}.openThreeDotMenu {
}.openBookmarks {
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2)
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
verifyBookmarkedURL(defaultWebPage.url.toString())
verifyBookmarkFavicon(defaultWebPage.url)
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2),
) {
verifyBookmarkedURL(defaultWebPage.url.toString())
verifyBookmarkFavicon(defaultWebPage.url)
}
}
}
@ -127,16 +143,16 @@ class BookmarksTest {
homeScreen {
}.openThreeDotMenu {
}.openBookmarks {
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 1)
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
clickAddFolderButton()
verifyKeyboardVisible()
addNewFolderName(bookmarksFolderName)
saveNewFolder()
verifyFolderTitle(bookmarksFolderName)
verifyKeyboardHidden()
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 1),
) {
clickAddFolderButton()
verifyKeyboardVisible()
addNewFolderName(bookmarksFolderName)
saveNewFolder()
verifyFolderTitle(bookmarksFolderName)
verifyKeyboardHidden()
}
}
}
@ -149,9 +165,11 @@ class BookmarksTest {
addNewFolderName(bookmarksFolderName)
navigateUp()
verifyKeyboardHidden()
verifyBookmarkFolderIsNotCreated(bookmarksFolderName)
}
}
@SmokeTest
@Test
fun editBookmarkTest() {
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
@ -160,9 +178,9 @@ class BookmarksTest {
createBookmark(defaultWebPage.url)
}.openThreeDotMenu {
}.openBookmarks {
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2)
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2),
) {}
}.openThreeDotMenu(defaultWebPage.url) {
}.clickEdit {
verifyEditBookmarksView()
@ -186,12 +204,21 @@ class BookmarksTest {
createBookmark(defaultWebPage.url)
}.openThreeDotMenu {
}.openBookmarks {
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2)
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2),
) {}
}.openThreeDotMenu(defaultWebPage.url) {
}.clickCopy {
verifyCopySnackBarText()
navigateUp()
}
navigationToolbar {
}.clickUrlbar {
clickClearButton()
longClickToolbar()
clickPasteText()
verifyTypedToolbarText(defaultWebPage.url.toString())
}
}
@ -203,9 +230,9 @@ class BookmarksTest {
createBookmark(defaultWebPage.url)
}.openThreeDotMenu {
}.openBookmarks {
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2)
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2),
) {}
}.openThreeDotMenu(defaultWebPage.url) {
}.clickShare {
verifyShareOverlay()
@ -223,17 +250,93 @@ class BookmarksTest {
createBookmark(defaultWebPage.url)
}.openThreeDotMenu {
}.openBookmarks {
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2)
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2),
) {}
}.openThreeDotMenu(defaultWebPage.url) {
}.clickOpenInNewTab {
verifyUrl(defaultWebPage.url.toString())
}.openTabDrawer {
verifyTabTrayIsOpened()
verifyNormalModeSelected()
}
}
@Test
fun openAllInTabsTest() {
val webPages = listOf(
TestAssetHelper.getGenericAsset(mockWebServer, 1),
TestAssetHelper.getGenericAsset(mockWebServer, 2),
TestAssetHelper.getGenericAsset(mockWebServer, 3),
TestAssetHelper.getGenericAsset(mockWebServer, 4),
)
homeScreen {
}.openThreeDotMenu {
}.openBookmarks {
createFolder("root")
createFolder("sub", "root")
createFolder("empty", "root")
}.closeMenu {
}
browserScreen {
createBookmark(webPages[0].url)
createBookmark(webPages[1].url, "root")
createBookmark(webPages[2].url, "root")
createBookmark(webPages[3].url, "sub")
}.openTabDrawer {
closeTab()
}
browserScreen {
}.openThreeDotMenu {
}.openBookmarks {
}.openThreeDotMenu("root") {
}.clickOpenAllInTabs {
verifyTabTrayIsOpened()
verifyNormalModeSelected()
verifyExistingOpenTabs("Test_Page_2", "Test_Page_3", "Test_Page_4")
// Bookmark that is not under the root folder should not be opened
verifyNoExistingOpenTabs("Test_Page_1")
}
}
@Test
fun openAllInPrivateTabsTest() {
val webPages = listOf(
TestAssetHelper.getGenericAsset(mockWebServer, 1),
TestAssetHelper.getGenericAsset(mockWebServer, 2),
)
homeScreen {
}.openThreeDotMenu {
}.openBookmarks {
createFolder("root")
createFolder("sub", "root")
createFolder("empty", "root")
}.closeMenu {
}
browserScreen {
createBookmark(webPages[0].url, "root")
createBookmark(webPages[1].url, "sub")
}.openTabDrawer {
closeTab()
}
browserScreen {
}.openThreeDotMenu {
}.openBookmarks {
}.openThreeDotMenu("root") {
}.clickOpenAllInPrivateTabs {
verifyTabTrayIsOpened()
verifyPrivateModeSelected()
verifyExistingOpenTabs("Test_Page_1", "Test_Page_2")
}
}
@Test
fun openBookmarkInPrivateTabTest() {
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
@ -242,17 +345,17 @@ class BookmarksTest {
createBookmark(defaultWebPage.url)
}.openThreeDotMenu {
}.openBookmarks {
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2)
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2),
) {}
}.openThreeDotMenu(defaultWebPage.url) {
}.clickOpenInPrivateTab {
verifyUrl(defaultWebPage.url.toString())
}.openTabDrawer {
verifyTabTrayIsOpened()
verifyPrivateModeSelected()
}
}
@SmokeTest
@Test
fun deleteBookmarkTest() {
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
@ -261,17 +364,17 @@ class BookmarksTest {
createBookmark(defaultWebPage.url)
}.openThreeDotMenu {
}.openBookmarks {
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2)
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2),
) {}
}.openThreeDotMenu(defaultWebPage.url) {
IdlingRegistry.getInstance().unregister(bookmarksListIdlingResource!!)
}.clickDelete {
verifyDeleteSnackBarText()
verifyUndoDeleteSnackBarButton()
}
}
@SmokeTest
@Test
fun undoDeleteBookmarkTest() {
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
@ -280,35 +383,36 @@ class BookmarksTest {
createBookmark(defaultWebPage.url)
}.openThreeDotMenu {
}.openBookmarks {
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2)
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2),
) {}
}.openThreeDotMenu(defaultWebPage.url) {
IdlingRegistry.getInstance().unregister(bookmarksListIdlingResource!!)
}.clickDelete {
verifyUndoDeleteSnackBarButton()
clickUndoDeleteButton()
verifySnackBarHidden()
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2)
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
verifyBookmarkedURL(defaultWebPage.url.toString())
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2),
) {
verifyBookmarkedURL(defaultWebPage.url.toString())
}
}
}
@SmokeTest
@Test
fun multiSelectionToolbarItemsTest() {
fun bookmarksMultiSelectionToolbarItemsTest() {
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
browserScreen {
createBookmark(defaultWebPage.url)
}.openThreeDotMenu {
}.openBookmarks {
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2)
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
longTapSelectItem(defaultWebPage.url)
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2),
) {
longTapSelectItem(defaultWebPage.url)
}
}
multipleSelectionToolbar {
@ -321,6 +425,7 @@ class BookmarksTest {
}
}
@SmokeTest
@Test
fun openSelectionInNewTabTest() {
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
@ -334,12 +439,12 @@ class BookmarksTest {
homeScreen {
}.openThreeDotMenu {
}.openBookmarks {
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2)
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
longTapSelectItem(defaultWebPage.url)
openActionBarOverflowOrOptionsMenu(activityTestRule.activity)
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2),
) {
longTapSelectItem(defaultWebPage.url)
openActionBarOverflowOrOptionsMenu(activityTestRule.activity)
}
}
multipleSelectionToolbar {
@ -349,6 +454,7 @@ class BookmarksTest {
}
}
@SmokeTest
@Test
fun openSelectionInPrivateTabTest() {
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
@ -357,12 +463,12 @@ class BookmarksTest {
createBookmark(defaultWebPage.url)
}.openThreeDotMenu {
}.openBookmarks {
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2)
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
longTapSelectItem(defaultWebPage.url)
openActionBarOverflowOrOptionsMenu(activityTestRule.activity)
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2),
) {
longTapSelectItem(defaultWebPage.url)
openActionBarOverflowOrOptionsMenu(activityTestRule.activity)
}
}
multipleSelectionToolbar {
@ -372,6 +478,7 @@ class BookmarksTest {
}
}
@SmokeTest
@Test
fun deleteMultipleSelectionTest() {
val firstWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
@ -382,13 +489,12 @@ class BookmarksTest {
createBookmark(secondWebPage.url)
}.openThreeDotMenu {
}.openBookmarks {
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 3)
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
longTapSelectItem(firstWebPage.url)
longTapSelectItem(secondWebPage.url)
IdlingRegistry.getInstance().unregister(bookmarksListIdlingResource!!)
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 3),
) {
longTapSelectItem(firstWebPage.url)
longTapSelectItem(secondWebPage.url)
}
openActionBarOverflowOrOptionsMenu(activityTestRule.activity)
}
@ -401,6 +507,38 @@ class BookmarksTest {
}
}
@SmokeTest
@Test
fun undoDeleteMultipleSelectionTest() {
val firstWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
val secondWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 2)
browserScreen {
createBookmark(firstWebPage.url)
createBookmark(secondWebPage.url)
}.openThreeDotMenu {
}.openBookmarks {
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 3),
) {
longTapSelectItem(firstWebPage.url)
longTapSelectItem(secondWebPage.url)
}
openActionBarOverflowOrOptionsMenu(activityTestRule.activity)
}
multipleSelectionToolbar {
clickMultiSelectionDelete()
}
bookmarksMenu {
verifyDeleteMultipleBookmarksSnackBar()
clickUndoDeleteButton()
verifyBookmarkedURL(firstWebPage.url.toString())
verifyBookmarkedURL(secondWebPage.url.toString())
}
}
@Test
fun multipleSelectionShareButtonTest() {
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
@ -409,11 +547,11 @@ class BookmarksTest {
createBookmark(defaultWebPage.url)
}.openThreeDotMenu {
}.openBookmarks {
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2)
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
longTapSelectItem(defaultWebPage.url)
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2),
) {
longTapSelectItem(defaultWebPage.url)
}
}
multipleSelectionToolbar {
@ -439,14 +577,16 @@ class BookmarksTest {
}.openThreeDotMenu("1") {
}.clickDelete {
verifyDeleteFolderConfirmationMessage()
confirmFolderDeletion()
confirmDeletion()
verifyDeleteSnackBarText()
}.openThreeDotMenu("2") {
}.clickDelete {
verifyDeleteFolderConfirmationMessage()
confirmFolderDeletion()
confirmDeletion()
verifyDeleteSnackBarText()
verifyFolderTitle("3")
// On some devices we need to wait for the Snackbar to be gone before continuing
TestHelper.waitUntilSnackbarGone()
}.closeMenu {
}
@ -457,6 +597,7 @@ class BookmarksTest {
}
}
@SmokeTest
@Test
fun changeBookmarkParentFolderTest() {
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
@ -465,27 +606,19 @@ class BookmarksTest {
createBookmark(defaultWebPage.url)
}.openThreeDotMenu {
}.openBookmarks {
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2)
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
createFolder(bookmarksFolderName)
IdlingRegistry.getInstance().unregister(bookmarksListIdlingResource!!)
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2),
) {
createFolder(bookmarksFolderName)
}
}.openThreeDotMenu(defaultWebPage.title) {
}.clickEdit {
clickParentFolderSelector()
selectFolder(bookmarksFolderName)
navigateUp()
saveEditBookmark()
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
selectFolder(bookmarksFolderName)
verifyBookmarkedURL(defaultWebPage.url.toString())
IdlingRegistry.getInstance().unregister(bookmarksListIdlingResource!!)
}
}
@ -517,12 +650,12 @@ class BookmarksTest {
homeScreen {
}.openThreeDotMenu {
}.openBookmarks {
bookmarksListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list))
IdlingRegistry.getInstance().register(bookmarksListIdlingResource!!)
longTapDesktopFolder("Desktop Bookmarks")
verifySelectDefaultFolderSnackBarText()
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list)),
) {
longTapDesktopFolder("Desktop Bookmarks")
verifySelectDefaultFolderSnackBarText()
}
}
}
@ -535,4 +668,51 @@ class BookmarksTest {
verifyHomeScreen()
}
}
@Test
fun deleteBookmarkInEditModeTest() {
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
browserScreen {
createBookmark(defaultWebPage.url)
}.openThreeDotMenu {
}.openBookmarks {
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 2),
) {}
}.openThreeDotMenu(defaultWebPage.url) {
}.clickEdit {
clickDeleteInEditModeButton()
cancelDeletion()
clickDeleteInEditModeButton()
confirmDeletion()
verifyDeleteSnackBarText()
verifyBookmarkIsDeleted("Test_Page_1")
}
}
@SmokeTest
@Test
fun undoDeleteBookmarkFolderTest() {
browserScreen {
}.openThreeDotMenu {
}.openBookmarks {
registerAndCleanupIdlingResources(
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.bookmark_list), 1),
) {
createFolder("My Folder")
verifyFolderTitle("My Folder")
}
}.openThreeDotMenu("My Folder") {
}.clickDelete {
cancelFolderDeletion()
verifyFolderTitle("My Folder")
}.openThreeDotMenu("My Folder") {
}.clickDelete {
confirmDeletion()
verifyDeleteSnackBarText()
clickUndoDeleteButton()
verifyFolderTitle("My Folder")
}
}
}

View File

@ -0,0 +1,77 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.ui
import androidx.core.net.toUri
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.R
import org.mozilla.fenix.customannotations.SmokeTest
import org.mozilla.fenix.helpers.HomeActivityTestRule
import org.mozilla.fenix.helpers.RetryTestRule
import org.mozilla.fenix.helpers.TestHelper.getStringResource
import org.mozilla.fenix.ui.robots.navigationToolbar
/**
* Tests that verify errors encountered while browsing websites: unsafe pages, connection errors, etc
*/
class BrowsingErrorPagesTest {
private val malwareWarning = getStringResource(R.string.mozac_browser_errorpages_safe_browsing_malware_uri_title)
private val phishingWarning = getStringResource(R.string.mozac_browser_errorpages_safe_phishing_uri_title)
private val unwantedSoftwareWarning =
getStringResource(R.string.mozac_browser_errorpages_safe_browsing_unwanted_uri_title)
private val harmfulSiteWarning = getStringResource(R.string.mozac_browser_errorpages_safe_harmful_uri_title)
@get: Rule
val mActivityTestRule = HomeActivityTestRule.withDefaultSettingsOverrides()
@Rule
@JvmField
val retryTestRule = RetryTestRule(3)
@SmokeTest
@Test
fun blockMalwarePageTest() {
val malwareURl = "http://itisatrap.org/firefox/its-an-attack.html"
navigationToolbar {
}.enterURLAndEnterToBrowser(malwareURl.toUri()) {
verifyPageContent(malwareWarning)
}
}
@SmokeTest
@Test
fun blockPhishingPageTest() {
val phishingURl = "http://itisatrap.org/firefox/its-a-trap.html"
navigationToolbar {
}.enterURLAndEnterToBrowser(phishingURl.toUri()) {
verifyPageContent(phishingWarning)
}
}
@SmokeTest
@Test
fun blockUnwantedSoftwarePageTest() {
val unwantedURl = "http://itisatrap.org/firefox/unwanted.html"
navigationToolbar {
}.enterURLAndEnterToBrowser(unwantedURl.toUri()) {
verifyPageContent(unwantedSoftwareWarning)
}
}
@SmokeTest
@Test
fun blockHarmfulPageTest() {
val harmfulURl = "https://itisatrap.org/firefox/harmful.html"
navigationToolbar {
}.enterURLAndEnterToBrowser(harmfulURl.toUri()) {
verifyPageContent(harmfulSiteWarning)
}
}
}

View File

@ -0,0 +1,489 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.ui
import androidx.compose.ui.test.junit4.AndroidComposeTestRule
import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.uiautomator.UiDevice
import okhttp3.mockwebserver.MockWebServer
import org.junit.After
import org.junit.Before
import org.junit.Ignore
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.customannotations.SmokeTest
import org.mozilla.fenix.helpers.AndroidAssetDispatcher
import org.mozilla.fenix.helpers.HomeActivityIntentTestRule
import org.mozilla.fenix.helpers.TestAssetHelper.getGenericAsset
import org.mozilla.fenix.ui.robots.browserScreen
import org.mozilla.fenix.ui.robots.collectionRobot
import org.mozilla.fenix.ui.robots.homeScreen
import org.mozilla.fenix.ui.robots.navigationToolbar
import org.mozilla.fenix.ui.robots.tabDrawer
/**
* Tests for verifying basic functionality of tab collections
*
*/
class CollectionTest {
private lateinit var mDevice: UiDevice
private lateinit var mockWebServer: MockWebServer
private val firstCollectionName = "testcollection_1"
private val secondCollectionName = "testcollection_2"
private val collectionName = "First Collection"
@get:Rule
val composeTestRule =
AndroidComposeTestRule(
HomeActivityIntentTestRule(
isHomeOnboardingDialogEnabled = false,
isJumpBackInCFREnabled = false,
isRecentTabsFeatureEnabled = false,
isRecentlyVisitedFeatureEnabled = false,
isPocketEnabled = false,
isWallpaperOnboardingEnabled = false,
isTCPCFREnabled = false,
),
) { it.activity }
@Before
fun setUp() {
mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
mockWebServer = MockWebServer().apply {
dispatcher = AndroidAssetDispatcher()
start()
}
}
@After
fun tearDown() {
mockWebServer.shutdown()
}
@SmokeTest
@Test
fun createFirstCollectionTest() {
val firstWebPage = getGenericAsset(mockWebServer, 1)
val secondWebPage = getGenericAsset(mockWebServer, 2)
navigationToolbar {
}.enterURLAndEnterToBrowser(firstWebPage.url) {
mDevice.waitForIdle()
}.openTabDrawer {
}.openNewTab {
}.submitQuery(secondWebPage.url.toString()) {
mDevice.waitForIdle()
}.goToHomescreen {
}.clickSaveTabsToCollectionButton {
longClickTab(firstWebPage.title)
selectTab(secondWebPage.title, numOfTabs = 2)
}.clickSaveCollection {
typeCollectionNameAndSave(collectionName)
}
tabDrawer {
verifySnackBarText("Collection saved!")
snackBarButtonClick("VIEW")
}
homeScreen {
verifyCollectionIsDisplayed(collectionName)
}
}
@SmokeTest
@Test
fun verifyExpandedCollectionItemsTest() {
val webPage = getGenericAsset(mockWebServer, 1)
val webPageUrl = webPage.url.host.toString()
navigationToolbar {
}.enterURLAndEnterToBrowser(webPage.url) {
}.openTabDrawer {
createCollection(webPage.title, collectionName = collectionName)
snackBarButtonClick("VIEW")
}
homeScreen {
verifyCollectionIsDisplayed(collectionName)
}.expandCollection(collectionName, composeTestRule) {
verifyTabSavedInCollection(webPage.title)
verifyCollectionTabUrl(true, webPageUrl)
verifyShareCollectionButtonIsVisible(true)
verifyCollectionMenuIsVisible(true, composeTestRule)
verifyCollectionItemRemoveButtonIsVisible(webPage.title, true)
}.collapseCollection(collectionName) {}
collectionRobot {
verifyTabSavedInCollection(webPage.title, false)
verifyShareCollectionButtonIsVisible(false)
verifyCollectionMenuIsVisible(false, composeTestRule)
verifyCollectionTabUrl(false, webPageUrl)
verifyCollectionItemRemoveButtonIsVisible(webPage.title, false)
}
homeScreen {
}.expandCollection(collectionName, composeTestRule) {
verifyTabSavedInCollection(webPage.title)
verifyCollectionTabUrl(true, webPageUrl)
verifyShareCollectionButtonIsVisible(true)
verifyCollectionMenuIsVisible(true, composeTestRule)
verifyCollectionItemRemoveButtonIsVisible(webPage.title, true)
}.collapseCollection(collectionName) {}
collectionRobot {
verifyTabSavedInCollection(webPage.title, false)
verifyShareCollectionButtonIsVisible(false)
verifyCollectionMenuIsVisible(false, composeTestRule)
verifyCollectionTabUrl(false, webPageUrl)
verifyCollectionItemRemoveButtonIsVisible(webPage.title, false)
}
}
@SmokeTest
@Test
fun openAllTabsInCollectionTest() {
val firstTestPage = getGenericAsset(mockWebServer, 1)
val secondTestPage = getGenericAsset(mockWebServer, 2)
navigationToolbar {
}.enterURLAndEnterToBrowser(firstTestPage.url) {
waitForPageToLoad()
}.openTabDrawer {
}.openNewTab {
}.submitQuery(secondTestPage.url.toString()) {
waitForPageToLoad()
}.openTabDrawer {
createCollection(
firstTestPage.title,
secondTestPage.title,
collectionName = collectionName,
)
closeTab()
}
homeScreen {
}.expandCollection(collectionName, composeTestRule) {
clickCollectionThreeDotButton(composeTestRule)
selectOpenTabs(composeTestRule)
}
tabDrawer {
verifyExistingOpenTabs(firstTestPage.title, secondTestPage.title)
}
}
@SmokeTest
@Test
fun shareCollectionTest() {
val firstWebsite = getGenericAsset(mockWebServer, 1)
val secondWebsite = getGenericAsset(mockWebServer, 2)
val sharingApp = "Gmail"
val urlString = "${secondWebsite.url}\n\n${firstWebsite.url}"
navigationToolbar {
}.enterURLAndEnterToBrowser(firstWebsite.url) {
}.openTabDrawer {
}.openNewTab {
}.submitQuery(secondWebsite.url.toString()) {
waitForPageToLoad()
}.openTabDrawer {
createCollection(firstWebsite.title, secondWebsite.title, collectionName = collectionName)
verifySnackBarText("Collection saved!")
}.openTabsListThreeDotMenu {
}.closeAllTabs {
}.expandCollection(collectionName, composeTestRule) {
}.clickShareCollectionButton {
verifyShareTabsOverlay(firstWebsite.title, secondWebsite.title)
verifySharingWithSelectedApp(sharingApp, urlString, collectionName)
}
}
// Test running on beta/release builds in CI:
// caution when making changes to it, so they don't block the builds
@SmokeTest
@Test
fun deleteCollectionTest() {
val webPage = getGenericAsset(mockWebServer, 1)
navigationToolbar {
}.enterURLAndEnterToBrowser(webPage.url) {
}.openTabDrawer {
createCollection(webPage.title, collectionName = collectionName)
snackBarButtonClick("VIEW")
}
homeScreen {
}.expandCollection(collectionName, composeTestRule) {
clickCollectionThreeDotButton(composeTestRule)
selectDeleteCollection(composeTestRule)
}
homeScreen {
verifySnackBarText("Collection deleted")
verifyNoCollectionsText()
}
}
// open a webpage, and add currently opened tab to existing collection
@Test
fun mainMenuSaveToExistingCollection() {
val firstWebPage = getGenericAsset(mockWebServer, 1)
val secondWebPage = getGenericAsset(mockWebServer, 2)
navigationToolbar {
}.enterURLAndEnterToBrowser(firstWebPage.url) {
}.openTabDrawer {
createCollection(firstWebPage.title, collectionName = collectionName)
verifySnackBarText("Collection saved!")
}.closeTabDrawer {}
navigationToolbar {
}.enterURLAndEnterToBrowser(secondWebPage.url) {
verifyPageContent(secondWebPage.content)
}.openThreeDotMenu {
}.openSaveToCollection {
}.selectExistingCollection(collectionName) {
verifySnackBarText("Tab saved!")
}.goToHomescreen {
}.expandCollection(collectionName, composeTestRule) {
verifyTabSavedInCollection(firstWebPage.title)
verifyTabSavedInCollection(secondWebPage.title)
}
}
@Test
fun verifyAddTabButtonOfCollectionMenu() {
val firstWebPage = getGenericAsset(mockWebServer, 1)
val secondWebPage = getGenericAsset(mockWebServer, 2)
navigationToolbar {
}.enterURLAndEnterToBrowser(firstWebPage.url) {
}.openTabDrawer {
createCollection(firstWebPage.title, collectionName = collectionName)
verifySnackBarText("Collection saved!")
closeTab()
}
navigationToolbar {
}.enterURLAndEnterToBrowser(secondWebPage.url) {
}.goToHomescreen {
}.expandCollection(collectionName, composeTestRule) {
clickCollectionThreeDotButton(composeTestRule)
selectAddTabToCollection(composeTestRule)
verifyTabsSelectedCounterText(1)
saveTabsSelectedForCollection()
verifySnackBarText("Tab saved!")
verifyTabSavedInCollection(secondWebPage.title)
}
}
@Test
fun renameCollectionTest() {
val webPage = getGenericAsset(mockWebServer, 1)
navigationToolbar {
}.enterURLAndEnterToBrowser(webPage.url) {
}.openTabDrawer {
createCollection(webPage.title, collectionName = firstCollectionName)
verifySnackBarText("Collection saved!")
}.closeTabDrawer {
}.goToHomescreen {
}.expandCollection(firstCollectionName, composeTestRule) {
clickCollectionThreeDotButton(composeTestRule)
selectRenameCollection(composeTestRule)
}.typeCollectionNameAndSave(secondCollectionName) {}
homeScreen {
verifyCollectionIsDisplayed(secondCollectionName)
}
}
@Test
fun createSecondCollectionTest() {
val webPage = getGenericAsset(mockWebServer, 1)
navigationToolbar {
}.enterURLAndEnterToBrowser(webPage.url) {
}.openTabDrawer {
createCollection(webPage.title, collectionName = firstCollectionName)
verifySnackBarText("Collection saved!")
createCollection(
webPage.title,
collectionName = secondCollectionName,
firstCollection = false,
)
verifySnackBarText("Collection saved!")
}.closeTabDrawer {
}.goToHomescreen {
verifyCollectionIsDisplayed(firstCollectionName)
verifyCollectionIsDisplayed(secondCollectionName)
}
}
@Test
fun removeTabFromCollectionTest() {
val webPage = getGenericAsset(mockWebServer, 1)
navigationToolbar {
}.enterURLAndEnterToBrowser(webPage.url) {
}.openTabDrawer {
createCollection(webPage.title, collectionName = collectionName)
closeTab()
}
homeScreen {
}.expandCollection(collectionName, composeTestRule) {
verifyTabSavedInCollection(webPage.title, true)
removeTabFromCollection(webPage.title)
verifyTabSavedInCollection(webPage.title, false)
}
homeScreen {
verifyCollectionIsDisplayed(collectionName, false)
}
}
@Test
fun swipeLeftToRemoveTabFromCollectionTest() {
val testPage = getGenericAsset(mockWebServer, 1)
navigationToolbar {
}.enterURLAndEnterToBrowser(testPage.url) {
waitForPageToLoad()
}.openTabDrawer {
createCollection(
testPage.title,
collectionName = collectionName,
)
closeTab()
}
homeScreen {
}.expandCollection(collectionName, composeTestRule) {
swipeToBottom()
swipeTabLeft(testPage.title, composeTestRule)
verifyTabSavedInCollection(testPage.title, false)
}
homeScreen {
verifyCollectionIsDisplayed(collectionName, false)
}
}
@Test
fun swipeRightToRemoveTabFromCollectionTest() {
val testPage = getGenericAsset(mockWebServer, 1)
navigationToolbar {
}.enterURLAndEnterToBrowser(testPage.url) {
waitForPageToLoad()
}.openTabDrawer {
createCollection(
testPage.title,
collectionName = collectionName,
)
closeTab()
}
homeScreen {
}.expandCollection(collectionName, composeTestRule) {
swipeToBottom()
swipeTabRight(testPage.title, composeTestRule)
verifyTabSavedInCollection(testPage.title, false)
}
homeScreen {
verifyCollectionIsDisplayed(collectionName, false)
}
}
@Test
@Ignore("Failing after compose migration. See: https://github.com/mozilla-mobile/fenix/issues/26087")
fun selectTabOnLongTapTest() {
val firstWebPage = getGenericAsset(mockWebServer, 1)
val secondWebPage = getGenericAsset(mockWebServer, 2)
navigationToolbar {
}.enterURLAndEnterToBrowser(firstWebPage.url) {
waitForPageToLoad()
}.openTabDrawer {
}.openNewTab {
}.submitQuery(secondWebPage.url.toString()) {
waitForPageToLoad()
}.openTabDrawer {
verifyExistingOpenTabs(firstWebPage.title, secondWebPage.title)
longClickTab(firstWebPage.title)
verifyTabsMultiSelectionCounter(1)
selectTab(secondWebPage.title, numOfTabs = 2)
}.clickSaveCollection {
typeCollectionNameAndSave(collectionName)
verifySnackBarText("Tabs saved!")
}
tabDrawer {
}.closeTabDrawer {
}.goToHomescreen {
}.expandCollection(collectionName, composeTestRule) {
verifyTabSavedInCollection(firstWebPage.title)
verifyTabSavedInCollection(secondWebPage.title)
}
}
@Test
@Ignore("Failing after compose migration. See: https://github.com/mozilla-mobile/fenix/issues/26087")
fun navigateBackInCollectionFlowTest() {
val webPage = getGenericAsset(mockWebServer, 1)
navigationToolbar {
}.enterURLAndEnterToBrowser(webPage.url) {
}.openTabDrawer {
createCollection(webPage.title, collectionName = collectionName)
verifySnackBarText("Collection saved!")
}.closeTabDrawer {
}.openThreeDotMenu {
}.openSaveToCollection {
verifySelectCollectionScreen()
goBackInCollectionFlow()
}
browserScreen {
}.openThreeDotMenu {
}.openSaveToCollection {
verifySelectCollectionScreen()
clickAddNewCollection()
verifyCollectionNameTextField()
goBackInCollectionFlow()
verifySelectCollectionScreen()
goBackInCollectionFlow()
}
// verify the browser layout is visible
browserScreen {
verifyMenuButton()
}
}
@SmokeTest
@Test
@Ignore("Failing after compose migration. See: https://github.com/mozilla-mobile/fenix/issues/26087")
fun undoDeleteCollectionTest() {
val webPage = getGenericAsset(mockWebServer, 1)
navigationToolbar {
}.enterURLAndEnterToBrowser(webPage.url) {
}.openTabDrawer {
createCollection(webPage.title, collectionName = collectionName)
snackBarButtonClick("VIEW")
}
homeScreen {
}.expandCollection(collectionName, composeTestRule) {
clickCollectionThreeDotButton(composeTestRule)
selectDeleteCollection(composeTestRule)
}
homeScreen {
verifySnackBarText("Collection deleted")
clickUndoSnackBarButton()
verifyCollectionIsDisplayed(collectionName, true)
}
}
}

View File

@ -1,266 +0,0 @@
///* This Source Code Form is subject to the terms of the Mozilla Public
// * License, v. 2.0. If a copy of the MPL was not distributed with this
// * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
//
//package org.mozilla.fenix.ui
//
//import androidx.test.espresso.NoMatchingViewException
//import androidx.test.platform.app.InstrumentationRegistry
//import androidx.test.uiautomator.By
//import androidx.test.uiautomator.UiDevice
//import androidx.test.uiautomator.Until
//import okhttp3.mockwebserver.MockWebServer
//import org.junit.After
//import org.junit.Before
//import org.junit.Ignore
//import org.junit.Rule
//import org.junit.Test
//import org.mozilla.fenix.helpers.AndroidAssetDispatcher
//import org.mozilla.fenix.helpers.HomeActivityTestRule
//import org.mozilla.fenix.helpers.TestAssetHelper
//import org.mozilla.fenix.ui.robots.homeScreen
//import org.mozilla.fenix.ui.robots.navigationToolbar
//
///**
// * Tests for verifying basic functionality of tab collection
// *
// */
//
//class CollectionTest {
// /* ktlint-disable no-blank-line-before-rbrace */ // This imposes unreadable grouping.
//
// private val mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
// private lateinit var mockWebServer: MockWebServer
// private val firstCollectionName = "testcollection_1"
// private val secondCollectionName = "testcollection_2"
//
// @get:Rule
// val activityTestRule = HomeActivityTestRule()
//
// @Before
// fun setUp() {
// mockWebServer = MockWebServer().apply {
// setDispatcher(AndroidAssetDispatcher())
// start()
// }
// }
//
// @After
// fun tearDown() {
// mockWebServer.shutdown()
// }
//
// @Ignore("Intermittent failures, see: https://github.com/mozilla-mobile/fenix/issues/10587")
// @Test
// // open a webpage, and add currently opened tab to existing collection
// fun addTabToExistingCollectionTest() {
// val firstWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
// val secondWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 2)
//
// createCollection(firstCollectionName)
//
// homeScreen {
//// verifyExistingTabList()
// closeTab()
// }.openNavigationToolbar {
// }.enterURLAndEnterToBrowser(secondWebPage.url) {
// verifyPageContent(secondWebPage.content)
// }.openThreeDotMenu {
// clickBrowserViewSaveCollectionButton()
// }.selectExistingCollection(firstCollectionName) {
// verifySnackBarText("Tab saved!")
// }.openHomeScreen {
//// verifyExistingTabList()
// expandCollection(firstCollectionName)
// verifyItemInCollectionExists(firstWebPage.title)
// verifyItemInCollectionExists(secondWebPage.title)
// }
// }
//
// @Ignore("Intermittent failures, see: https://github.com/mozilla-mobile/fenix/issues/10587")
// @Test
// fun collectionMenuAddTabButtonTest() {
// val secondWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 2)
//
// createCollection(firstCollectionName)
//
// homeScreen {
// closeTab()
// }.openNavigationToolbar {
// }.enterURLAndEnterToBrowser(secondWebPage.url) {
// }.openHomeScreen {
// expandCollection(firstCollectionName)
// clickCollectionThreeDotButton()
// selectAddTabToCollection()
// verifyTabsSelectedCounterText(1)
// saveTabsSelectedForCollection()
// verifySnackBarText("Tab saved!")
// verifyItemInCollectionExists(secondWebPage.title)
// }
// }
//
// @Ignore("Intermittent failures, see: https://github.com/mozilla-mobile/fenix/issues/10587")
// @Test
// fun renameCollectionTest() {
// createCollection(firstCollectionName)
//
// homeScreen {
// // On homeview, tap the 3-dot button to expand, select rename, rename collection
// expandCollection(firstCollectionName)
// clickCollectionThreeDotButton()
// selectRenameCollection()
// typeCollectionName("renamed_collection")
// verifyCollectionIsDisplayed("renamed_collection")
// }
// }
//
// @Ignore("Intermittent failures, see: https://github.com/mozilla-mobile/fenix/issues/10587")
// @Test
// fun createCollectionFromTabTest() {
// val firstWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
//
// createCollection(firstCollectionName)
// homeScreen {
// }.openTabDrawer {
// verifyExistingOpenTabs(firstWebPage.title)
// }.openHomeScreen {
// try {
// verifyCollectionIsDisplayed(firstCollectionName)
// } catch (e: NoMatchingViewException) {
// scrollToElementByText(firstCollectionName)
// }
// }
// }
//
// @Ignore("Intermittent failures, see: https://github.com/mozilla-mobile/fenix/issues/10587")
// @Test
// fun removeTabFromCollectionTest() {
// val webPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
//
// createCollection(firstCollectionName)
// homeScreen {
// closeTab()
// expandCollection(firstCollectionName)
// removeTabFromCollection(webPage.title)
// verifyItemInCollectionExists(webPage.title, false)
// }
//
// createCollection(firstCollectionName)
// homeScreen {
// closeTab()
// expandCollection(firstCollectionName)
// swipeCollectionItemLeft(webPage.title)
// verifyItemInCollectionExists(webPage.title, false)
// }
//
// createCollection(firstCollectionName)
// homeScreen {
// closeTab()
// expandCollection(firstCollectionName)
// swipeCollectionItemRight(webPage.title)
// verifyItemInCollectionExists(webPage.title, false)
// }
// }
//
// @Ignore("Intermittent failures, see: https://github.com/mozilla-mobile/fenix/issues/10587")
// @Test
// fun selectTabOnLongTapTest() {
// val firstWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
// val secondWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 2)
//
// navigationToolbar {
// }.enterURLAndEnterToBrowser(firstWebPage.url) {
// }.openHomeScreen {
// }.openNavigationToolbar {
// }.enterURLAndEnterToBrowser(secondWebPage.url) {
// }.openHomeScreen {
// longTapSelectTab(firstWebPage.title)
// verifySelectTabsView()
// verifyTabsSelectedCounterText(1)
// selectTabForCollection(secondWebPage.title)
// verifyTabsSelectedCounterText(2)
// saveTabsSelectedForCollection()
// typeCollectionName(firstCollectionName)
// verifySnackBarText("Tabs saved!")
//// closeTabViaXButton(firstWebPage.title)
//// closeTabViaXButton(secondWebPage.title)
// expandCollection(firstCollectionName)
// verifyItemInCollectionExists(firstWebPage.title)
// verifyItemInCollectionExists(secondWebPage.title)
// }
// }
//
// @Ignore("Intermittent failures, see: https://github.com/mozilla-mobile/fenix/issues/10587")
// @Test
// fun tabsOverflowMenuSaveCollectionTest() {
// val firstWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
// val secondWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 2)
//
// navigationToolbar {
// }.enterURLAndEnterToBrowser(firstWebPage.url) {
// }.openHomeScreen {
// }.openNavigationToolbar {
// }.enterURLAndEnterToBrowser(secondWebPage.url) {
// }.openHomeScreen {
// }.openTabsListThreeDotMenu {
// verifySaveCollection()
// }.clickOpenTabsMenuSaveCollection {
// verifySelectTabsView()
// verifyTabsSelectedCounterText(0)
// selectAllTabsForCollection()
// verifyTabsSelectedCounterText(2)
// saveTabsSelectedForCollection()
// typeCollectionName(firstCollectionName)
//// closeTabViaXButton(firstWebPage.title)
//// closeTabViaXButton(secondWebPage.title)
// expandCollection(firstCollectionName)
// verifyItemInCollectionExists(firstWebPage.title)
// verifyItemInCollectionExists(secondWebPage.title)
// }
// }
//
// @Ignore("Intermittent failures, see: https://github.com/mozilla-mobile/fenix/issues/10587")
// @Test
// fun navigateBackInCollectionFlowTest() {
// val secondWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 2)
//
// createCollection(firstCollectionName)
// navigationToolbar {
// }.enterURLAndEnterToBrowser(secondWebPage.url) {
// }.openHomeScreen {
// longTapSelectTab(secondWebPage.title)
// verifySelectTabsView()
// saveTabsSelectedForCollection()
// verifySelectCollectionView()
// clickAddNewCollection()
// verifyNameCollectionView()
// goBackCollectionFlow()
// verifySelectCollectionView()
// goBackCollectionFlow()
// verifySelectTabsView()
// goBackCollectionFlow()
// verifyHomeComponent()
// }
// }
//
// private fun createCollection(collectionName: String, firstCollection: Boolean = true) {
// val firstWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
//
// navigationToolbar {
// }.enterURLAndEnterToBrowser(firstWebPage.url) {
// verifyPageContent(firstWebPage.content)
// }.openThreeDotMenu {
// clickBrowserViewSaveCollectionButton()
// if (!firstCollection)
// clickAddNewCollection()
//
// }.typeCollectionName(collectionName) {
// verifySnackBarText("Tab saved!")
// }.openHomeScreen {
// mDevice.wait(
// Until.findObject(By.text(collectionName)),
// TestAssetHelper.waitingTime
// )
// }
// }
//}

View File

@ -9,13 +9,16 @@ import androidx.test.uiautomator.UiDevice
import okhttp3.mockwebserver.MockWebServer
import org.junit.After
import org.junit.Before
import org.junit.Ignore
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.customannotations.SmokeTest
import org.mozilla.fenix.ext.settings
import org.mozilla.fenix.helpers.AndroidAssetDispatcher
import org.mozilla.fenix.helpers.HomeActivityIntentTestRule
import org.mozilla.fenix.helpers.RetryTestRule
import org.mozilla.fenix.helpers.TestAssetHelper
import org.mozilla.fenix.ui.robots.downloadRobot
import org.mozilla.fenix.ui.robots.homeScreen
import org.mozilla.fenix.ui.robots.navigationToolbar
/**
@ -33,14 +36,20 @@ import org.mozilla.fenix.ui.robots.navigationToolbar
*/
class ContextMenusTest {
private val mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
private lateinit var mDevice: UiDevice
private lateinit var mockWebServer: MockWebServer
@get:Rule
val activityIntentTestRule = HomeActivityIntentTestRule()
val activityIntentTestRule = HomeActivityIntentTestRule.withDefaultSettingsOverrides()
@Rule
@JvmField
val retryTestRule = RetryTestRule(3)
@Before
fun setUp() {
activityIntentTestRule.activity.applicationContext.settings().shouldShowJumpBackInCFR = false
mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
mockWebServer = MockWebServer().apply {
dispatcher = AndroidAssetDispatcher()
start()
@ -52,6 +61,7 @@ class ContextMenusTest {
mockWebServer.shutdown()
}
@SmokeTest
@Test
fun verifyContextOpenLinkNewTab() {
val pageLinks =
@ -62,11 +72,11 @@ class ContextMenusTest {
navigationToolbar {
}.enterURLAndEnterToBrowser(pageLinks.url) {
mDevice.waitForIdle()
longClickMatchingText("Link 1")
longClickLink("Link 1")
verifyLinkContextMenuItems(genericURL.url)
clickContextOpenLinkInNewTab()
verifySnackBarText("New tab opened")
snackBarButtonClick("Switch")
snackBarButtonClick()
verifyUrl(genericURL.url.toString())
}.openTabDrawer {
verifyNormalModeSelected()
@ -75,6 +85,7 @@ class ContextMenusTest {
}
}
@SmokeTest
@Test
fun verifyContextOpenLinkPrivateTab() {
val pageLinks =
@ -85,11 +96,11 @@ class ContextMenusTest {
navigationToolbar {
}.enterURLAndEnterToBrowser(pageLinks.url) {
mDevice.waitForIdle()
longClickMatchingText("Link 2")
longClickLink("Link 2")
verifyLinkContextMenuItems(genericURL.url)
clickContextOpenLinkInPrivateTab()
verifySnackBarText("New private tab opened")
snackBarButtonClick("Switch")
snackBarButtonClick()
verifyUrl(genericURL.url.toString())
}.openTabDrawer {
verifyPrivateModeSelected()
@ -97,7 +108,6 @@ class ContextMenusTest {
}
}
@Ignore("Test failures: https://github.com/mozilla-mobile/fenix/issues/12473")
@Test
fun verifyContextCopyLink() {
val pageLinks =
@ -108,6 +118,23 @@ class ContextMenusTest {
navigationToolbar {
}.enterURLAndEnterToBrowser(pageLinks.url) {
mDevice.waitForIdle()
longClickLink("Link 3")
verifyLinkContextMenuItems(genericURL.url)
clickContextCopyLink()
verifySnackBarText("Link copied to clipboard")
}.openNavigationToolbar {
}.visitLinkFromClipboard {
verifyUrl(genericURL.url.toString())
}
}
@Test
fun verifyContextCopyLinkNotDisplayedAfterApplied() {
val pageLinks = TestAssetHelper.getGenericAsset(mockWebServer, 4)
val genericURL = TestAssetHelper.getGenericAsset(mockWebServer, 3)
navigationToolbar {
}.enterURLAndEnterToBrowser(pageLinks.url) {
longClickMatchingText("Link 3")
verifyLinkContextMenuItems(genericURL.url)
clickContextCopyLink()
@ -115,6 +142,11 @@ class ContextMenusTest {
}.openNavigationToolbar {
}.visitLinkFromClipboard {
verifyUrl(genericURL.url.toString())
}.openTabDrawer {
}.openNewTab {
}
navigationToolbar {
verifyClipboardSuggestionsAreDisplayed(shouldBeDisplayed = false)
}
}
@ -128,13 +160,12 @@ class ContextMenusTest {
navigationToolbar {
}.enterURLAndEnterToBrowser(pageLinks.url) {
mDevice.waitForIdle()
longClickMatchingText("Link 1")
longClickLink("Link 1")
verifyLinkContextMenuItems(genericURL.url)
clickContextShareLink(genericURL.url) // verify share intent is matched with associated URL
}
}
@Ignore("Intermittent: https://github.com/mozilla-mobile/fenix/issues/12367")
@Test
fun verifyContextOpenImageNewTab() {
val pageLinks =
@ -145,17 +176,16 @@ class ContextMenusTest {
navigationToolbar {
}.enterURLAndEnterToBrowser(pageLinks.url) {
mDevice.waitForIdle()
longClickMatchingText("test_link_image")
longClickLink("test_link_image")
verifyLinkImageContextMenuItems(imageResource.url)
clickContextOpenImageNewTab()
verifySnackBarText("New tab opened")
snackBarButtonClick("Switch")
snackBarButtonClick()
verifyUrl(imageResource.url.toString())
}
}
@Test
@Ignore("Disabled Google Keyboard Clipboard overlay blocks the address bar: https://github.com/mozilla-mobile/fenix/issues/10586")
fun verifyContextCopyImageLocation() {
val pageLinks =
TestAssetHelper.getGenericAsset(mockWebServer, 4)
@ -165,7 +195,7 @@ class ContextMenusTest {
navigationToolbar {
}.enterURLAndEnterToBrowser(pageLinks.url) {
mDevice.waitForIdle()
longClickMatchingText("test_link_image")
longClickLink("test_link_image")
verifyLinkImageContextMenuItems(imageResource.url)
clickContextCopyImageLocation()
verifySnackBarText("Link copied to clipboard")
@ -176,7 +206,6 @@ class ContextMenusTest {
}
@Test
@Ignore("Intermittent: https://github.com/mozilla-mobile/fenix/issues/12309")
fun verifyContextSaveImage() {
val pageLinks =
TestAssetHelper.getGenericAsset(mockWebServer, 4)
@ -186,13 +215,12 @@ class ContextMenusTest {
navigationToolbar {
}.enterURLAndEnterToBrowser(pageLinks.url) {
mDevice.waitForIdle()
longClickMatchingText("test_link_image")
longClickLink("test_link_image")
verifyLinkImageContextMenuItems(imageResource.url)
clickContextSaveImage()
}
downloadRobot {
}.clickAllowPermission {
verifyDownloadNotificationPopup()
}.clickOpen("image/jpeg") {} // verify open intent is matched with associated data type
downloadRobot {
@ -201,7 +229,6 @@ class ContextMenusTest {
}
@Test
@Ignore("Intermittent: https://github.com/mozilla-mobile/fenix/issues/12309")
fun verifyContextMixedVariations() {
val pageLinks =
TestAssetHelper.getGenericAsset(mockWebServer, 4)
@ -213,14 +240,58 @@ class ContextMenusTest {
navigationToolbar {
}.enterURLAndEnterToBrowser(pageLinks.url) {
mDevice.waitForIdle()
longClickMatchingText("Link 1")
longClickLink("Link 1")
verifyLinkContextMenuItems(genericURL.url)
dismissContentContextMenu(genericURL.url)
longClickMatchingText("test_link_image")
longClickLink("test_link_image")
verifyLinkImageContextMenuItems(imageResource.url)
dismissContentContextMenu(imageResource.url)
longClickMatchingText("test_no_link_image")
longClickLink("test_no_link_image")
verifyNoLinkImageContextMenuItems(imageResource.url)
}
}
@SmokeTest
@Test
fun shareSelectedTextTest() {
val genericURL = TestAssetHelper.getGenericAsset(mockWebServer, 1)
navigationToolbar {
}.enterURLAndEnterToBrowser(genericURL.url) {
longClickLink(genericURL.content)
}.clickShareSelectedText {
verifyAndroidShareLayout()
}
}
@SmokeTest
@Test
fun selectAndSearchTextTest() {
val genericURL = TestAssetHelper.getGenericAsset(mockWebServer, 1)
navigationToolbar {
}.enterURLAndEnterToBrowser(genericURL.url) {
longClickAndSearchText("Search", "content")
mDevice.waitForIdle()
verifyTabCounter("2")
verifyUrl("google")
}
}
@SmokeTest
@Test
fun privateSelectAndSearchTextTest() {
val genericURL = TestAssetHelper.getGenericAsset(mockWebServer, 1)
homeScreen {
}.togglePrivateBrowsingMode()
navigationToolbar {
}.enterURLAndEnterToBrowser(genericURL.url) {
longClickAndSearchText("Private Search", "content")
mDevice.waitForIdle()
verifyTabCounter("2")
verifyUrl("google")
}
}
}

View File

@ -0,0 +1,70 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix.ui
import okhttp3.mockwebserver.MockWebServer
import org.junit.After
import org.junit.Before
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.helpers.AndroidAssetDispatcher
import org.mozilla.fenix.helpers.HomeActivityTestRule
import org.mozilla.fenix.helpers.TestAssetHelper.getGenericAsset
import org.mozilla.fenix.helpers.TestHelper.mDevice
import org.mozilla.fenix.ui.robots.navigationToolbar
/**
* Tests for verifying the new Cookie protection & homescreen feature hints.
* Note: This involves setting the feature flags On for CFRs which are disabled elsewhere.
*
*/
class ContextualHintsTest {
private lateinit var mockWebServer: MockWebServer
@get:Rule
val activityTestRule = HomeActivityTestRule(
isJumpBackInCFREnabled = true,
isTCPCFREnabled = true,
isPocketEnabled = false,
isRecentlyVisitedFeatureEnabled = false,
)
@Before
fun setUp() {
mockWebServer = MockWebServer().apply {
dispatcher = AndroidAssetDispatcher()
start()
}
}
@After
fun tearDown() {
mockWebServer.shutdown()
}
@Test
fun jumpBackInCFRTest() {
val genericPage = getGenericAsset(mockWebServer, 1)
navigationToolbar {
}.enterURLAndEnterToBrowser(genericPage.url) {
verifyCookiesProtectionHint()
// One back press to dismiss the TCP hint
mDevice.pressBack()
}.goToHomescreen {
verifyJumpBackInMessage()
}
}
@Test
fun cookieProtectionHintTest() {
val genericPage = getGenericAsset(mockWebServer, 1)
navigationToolbar {
}.enterURLAndEnterToBrowser(genericPage.url) {
verifyCookiesProtectionHint()
}
}
}

View File

@ -0,0 +1,137 @@
package org.mozilla.fenix.ui
import androidx.compose.ui.test.junit4.AndroidComposeTestRule
import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.uiautomator.UiDevice
import okhttp3.mockwebserver.MockWebServer
import org.junit.After
import org.junit.Before
import org.junit.Ignore
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.R
import org.mozilla.fenix.customannotations.SmokeTest
import org.mozilla.fenix.helpers.AndroidAssetDispatcher
import org.mozilla.fenix.helpers.HomeActivityIntentTestRule
import org.mozilla.fenix.helpers.TestAssetHelper
import org.mozilla.fenix.helpers.TestHelper.getStringResource
import org.mozilla.fenix.ui.robots.homeScreen
import org.mozilla.fenix.ui.robots.navigationToolbar
class CrashReportingTest {
private lateinit var mDevice: UiDevice
private lateinit var mockWebServer: MockWebServer
private val tabCrashMessage = getStringResource(R.string.tab_crash_title_2)
@get:Rule
val activityTestRule = AndroidComposeTestRule(
HomeActivityIntentTestRule(
isPocketEnabled = false,
isJumpBackInCFREnabled = false,
isWallpaperOnboardingEnabled = false,
isTCPCFREnabled = false,
),
) { it.activity }
@Before
fun setUp() {
mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
mockWebServer = MockWebServer().apply {
dispatcher = AndroidAssetDispatcher()
start()
}
}
@After
fun tearDown() {
mockWebServer.shutdown()
}
@Test
fun closeTabCrashedReporterTest() {
homeScreen {
}.openNavigationToolbar {
}.openTabCrashReporter {
}.clickTabCrashedCloseButton {
}.openTabDrawer {
verifyNoOpenTabsInNormalBrowsing()
}
}
@Ignore("Test failure caused by: https://github.com/mozilla-mobile/fenix/issues/19964")
@Test
fun restoreTabCrashedReporterTest() {
val website = TestAssetHelper.getGenericAsset(mockWebServer, 1)
homeScreen {
}.openNavigationToolbar {
}.enterURLAndEnterToBrowser(website.url) {}
navigationToolbar {
}.openTabCrashReporter {
clickTabCrashedRestoreButton()
verifyPageContent(website.content)
}
}
@SmokeTest
@Test
fun useAppWhileTabIsCrashedTest() {
val firstWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
val secondWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 2)
homeScreen {
}.openNavigationToolbar {
}.enterURLAndEnterToBrowser(firstWebPage.url) {
mDevice.waitForIdle()
}.openTabDrawer {
}.openNewTab {
}.submitQuery(secondWebPage.url.toString()) {
waitForPageToLoad()
}
navigationToolbar {
}.openTabCrashReporter {
verifyPageContent(tabCrashMessage)
}.openTabDrawer {
verifyExistingOpenTabs(firstWebPage.title)
verifyExistingOpenTabs(secondWebPage.title)
}.closeTabDrawer {
}.goToHomescreen {
verifyExistingTopSitesList()
}.openThreeDotMenu {
verifySettingsButton()
}
}
@SmokeTest
@Test
fun privateBrowsingUseAppWhileTabIsCrashedTest() {
val firstWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
val secondWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 2)
homeScreen {
togglePrivateBrowsingModeOnOff()
}.openNavigationToolbar {
}.enterURLAndEnterToBrowser(firstWebPage.url) {
mDevice.waitForIdle()
}.openTabDrawer {
}.openNewTab {
}.submitQuery(secondWebPage.url.toString()) {
waitForPageToLoad()
}
navigationToolbar {
}.openTabCrashReporter {
verifyPageContent(tabCrashMessage)
}.openTabDrawer {
verifyExistingOpenTabs(firstWebPage.title)
verifyExistingOpenTabs(secondWebPage.title)
}.closeTabDrawer {
}.goToHomescreen {
verifyPrivateSessionMessage()
}.openThreeDotMenu {
verifySettingsButton()
}
}
}

View File

@ -0,0 +1,205 @@
@file:Suppress("DEPRECATION")
package org.mozilla.fenix.ui
import androidx.core.net.toUri
import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.rule.ActivityTestRule
import androidx.test.uiautomator.UiDevice
import okhttp3.mockwebserver.MockWebServer
import org.junit.After
import org.junit.Before
import org.junit.Rule
import org.junit.Test
import org.mozilla.fenix.IntentReceiverActivity
import org.mozilla.fenix.customannotations.SmokeTest
import org.mozilla.fenix.helpers.AndroidAssetDispatcher
import org.mozilla.fenix.helpers.FeatureSettingsHelperDelegate
import org.mozilla.fenix.helpers.HomeActivityIntentTestRule
import org.mozilla.fenix.helpers.TestAssetHelper
import org.mozilla.fenix.helpers.TestHelper.createCustomTabIntent
import org.mozilla.fenix.helpers.TestHelper.openAppFromExternalLink
import org.mozilla.fenix.ui.robots.browserScreen
import org.mozilla.fenix.ui.robots.customTabScreen
import org.mozilla.fenix.ui.robots.navigationToolbar
import org.mozilla.fenix.ui.robots.notificationShade
import org.mozilla.fenix.ui.robots.openEditURLView
import org.mozilla.fenix.ui.robots.searchScreen
class CustomTabsTest {
private lateinit var mDevice: UiDevice
private lateinit var mockWebServer: MockWebServer
private val customMenuItem = "TestMenuItem"
/* Updated externalLinks.html to v2.0,
changed the hypertext reference to mozilla-mobile.github.io/testapp/downloads for "External link"
*/
private val externalLinksPWAPage = "https://mozilla-mobile.github.io/testapp/v2.0/externalLinks.html"
private val loginPage = "https://mozilla-mobile.github.io/testapp/loginForm"
@get:Rule
val activityTestRule = HomeActivityIntentTestRule()
@get: Rule
val intentReceiverActivityTestRule = ActivityTestRule(
IntentReceiverActivity::class.java,
true,
false,
)
private val featureSettingsHelper = FeatureSettingsHelperDelegate()
@Before
fun setUp() {
mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
mockWebServer = MockWebServer().apply {
dispatcher = AndroidAssetDispatcher()
start()
}
featureSettingsHelper.apply {
isTCPCFREnabled = false
}.applyFlagUpdates()
}
@After
fun tearDown() {
mockWebServer.shutdown()
featureSettingsHelper.resetAllFeatureFlags()
}
@SmokeTest
@Test
fun customTabsOpenExternalLinkTest() {
val externalLinkURL = "https://mozilla-mobile.github.io/testapp/downloads"
intentReceiverActivityTestRule.launchActivity(
createCustomTabIntent(
externalLinksPWAPage.toUri().toString(),
customMenuItem,
),
)
customTabScreen {
waitForPageToLoad()
clickLinkMatchingText("External link")
waitForPageToLoad()
verifyCustomTabToolbarTitle(externalLinkURL)
}
}
@SmokeTest
@Test
fun customTabsSaveLoginTest() {
intentReceiverActivityTestRule.launchActivity(
createCustomTabIntent(
loginPage.toUri().toString(),
customMenuItem,
),
)
customTabScreen {
waitForPageToLoad()
fillAndSubmitLoginCredentials("mozilla", "firefox")
}
browserScreen {
verifySaveLoginPromptIsDisplayed()
saveLoginFromPrompt("Save")
}
openAppFromExternalLink(loginPage)
browserScreen {
}.openThreeDotMenu {
}.openSettings {
}.openLoginsAndPasswordSubMenu {
}.openSavedLogins {
verifySecurityPromptForLogins()
tapSetupLater()
verifySavedLoginFromPrompt("mozilla")
}
}
@SmokeTest
@Test
fun customTabCopyToolbarUrlTest() {
val customTabPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
intentReceiverActivityTestRule.launchActivity(
createCustomTabIntent(
customTabPage.url.toString(),
customMenuItem,
),
)
customTabScreen {
longCLickAndCopyToolbarUrl()
}
openAppFromExternalLink(customTabPage.url.toString())
navigationToolbar {
openEditURLView()
}
searchScreen {
clickClearButton()
longClickToolbar()
clickPasteText()
verifyTypedToolbarText(customTabPage.url.toString())
}
}
@SmokeTest
@Test
fun customTabShareTextTest() {
val customTabPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
intentReceiverActivityTestRule.launchActivity(
createCustomTabIntent(
customTabPage.url.toString(),
customMenuItem,
),
)
customTabScreen {
waitForPageToLoad()
}
browserScreen {
longClickMatchingText("content")
}.clickShareSelectedText {
verifyAndroidShareLayout()
}
}
@SmokeTest
@Test
fun customTabDownloadTest() {
val customTabPage = "https://storage.googleapis.com/mobile_test_assets/test_app/downloads.html"
val downloadFile = "web_icon.png"
intentReceiverActivityTestRule.launchActivity(
createCustomTabIntent(
customTabPage.toUri().toString(),
customMenuItem,
),
)
customTabScreen {
waitForPageToLoad()
}
browserScreen {
}.clickDownloadLink(downloadFile) {
verifyDownloadPrompt(downloadFile)
}.clickDownload {
verifyDownloadNotificationPopup()
}
mDevice.openNotification()
notificationShade {
verifySystemNotificationExists("Download completed")
}
}
}

Some files were not shown because too many files have changed in this diff Show More