2
0
mirror of https://github.com/fork-maintainers/iceraven-browser synced 2024-11-19 09:25:34 +00:00
Commit Graph

5921 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
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
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
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
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
codrut.topliceanu
6a1efacf3a For #17917: Use View binding in collections 2021-08-11 08:01:58 +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
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
Mozilla L10n Automation Bot
642dd517f9 Import l10n. 2021-08-08 00:40:54 +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
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