Commit Graph

356 Commits (d7eba470d3042ef53ae1db670f7ea1f246b37e75)

Author SHA1 Message Date
Sebastian Kaspari 5949766c5d [fenix] Enable Android Autofill in Beta builds. 3 years ago
Sebastian Kaspari cb0f5facd9 [fenix] Render debug info screen with Jetpack Compose. 3 years ago
Sebastian Kaspari ccd84ee8e5 [fenix] Remove over-eager protobuf stripping. 3 years ago
Sebastian Kaspari 70ae207572 [fenix] Issue https://github.com/mozilla-mobile/fenix/issues/19662: Use Java 11. 3 years ago
Michael Comella 40fed783ae [fenix] For https://github.com/mozilla-mobile/fenix/issues/19901: integrate Jetback Benchmark (microbenchmark). 3 years ago
Sebastian Kaspari b637a576f2 [fenix] Update to Kotlin 1.5.20, Android Gradle plugin 4.2.2 and Gradle 6.7.1. 3 years ago
Mugurell 1c733e918e [fenix] For https://github.com/mozilla-mobile/fenix/issues/20229 - Use the AC common implementation for ads/search telemetry
Everything should work exactly as before.
3 years ago
mcarare 613671c9c3 [fenix] For https://github.com/mozilla-mobile/fenix/issues/17917: Use View binding in onboarding cards. 3 years ago
Sebastian Kaspari e25cfcdc48 [fenix] Complete browser-state migration and remove browser-session dependency.
Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
3 years ago
isabelrios abff667349 [fenix] Stop depending on JCenter - Screengrab and Falcon 3 years ago
Jonathan Almeida 8b8b96d7d4 [fenix] Issue https://github.com/mozilla-mobile/fenix/issues/19002: Use AbstractBinding from lib-state 3 years ago
William Lachance adb10fab4e [fenix] No issue - Stop generating `metrics.md` and direct to Glean Dictionary instead (https://github.com/mozilla-mobile/fenix/pull/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.
3 years ago
Sebastian Kaspari cf11703649 [fenix] Unit tests: Bump max heap size to 3072m. 3 years ago
Sebastian Kaspari c1e6f6c9e6 [fenix] Issue https://github.com/mozilla-mobile/fenix/issues/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.
3 years ago
Sebastian Kaspari 7c11a19369 [fenix] Issue https://github.com/mozilla-mobile/fenix/issues/19040: Remove Leanplum (Nightly) 3 years ago
Sebastian Kaspari 692611fa13 [fenix] Remove browser-search references. 3 years ago
Sebastian Kaspari 41f7cc9d24 [fenix] Update to Mozilla Android Components 90.0 3 years ago
Jonathan Almeida 16f87e47e3 [fenix] Close https://github.com/mozilla-mobile/fenix/issues/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).
3 years ago
Jonathan Almeida 0e3def9e83 [fenix] Close https://github.com/mozilla-mobile/fenix/issues/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>
3 years ago
Gabriel Luong f1b86e17ae [fenix] For https://github.com/mozilla-mobile/fenix/issues/18408 - Add a lazy getter for AutofillCreditCardsAddressStorage 3 years ago
Sebastian Kaspari d0152f7e79 [fenix] Integrate Android Autofill support into Nightly and debug builds. 3 years ago
Arturo Mejia 59b50be098 [fenix] Target Android 11 3 years ago
rxu 6f2c9fd4ed [fenix] Add MOZILLA_ONLINE_ADDON_EXCLUSIONS for Mozilla Online builds 3 years ago
Arturo Mejia b863777940 [fenix] For https://github.com/mozilla-mobile/fenix/issues/12822 - Opt-in of scoped storage 3 years ago
Jonathan Almeida 8a9b7d2ae0 [fenix] Close https://github.com/mozilla-mobile/fenix/issues/1340: Add support for WebAuthnFeature 3 years ago
Jonathan Almeida a4abe9782c [fenix] Close https://github.com/mozilla-mobile/fenix/issues/15979: Add MOZILLA_OFFICIAL flag for release builds
When we build release APKs on Mozilla infrastructure, we want a way to
know this in code for features that would only work on them.
3 years ago
William Durand cd40b8510e [fenix] Add new BuildConfig variables to support AMO non-production envs 4 years ago
isabelrios 0f6e44f7bc [fenix] Changes to run tests on beta builds (https://github.com/mozilla-mobile/fenix/pull/16786)
* Changes to run tests on beta builds

* remove dontoptime and fix bookmarks tests

* fix ktlint and smokeTest

* add variable for package name

* rebase and fix conflicts

* add yml files and modify script to run tests

* fix yml file indentation

* changes in kind file and add try_task

* fix error kind file

* fix error kind file 2

* fix error kind file 3

* fix reviewer comments

* remove mockwebserver implementation as per reviewer comment

* run beta tests only on releases branches

* reg exp for master branch

* reg exp for master branch2

* modify try_task with release branch

* remove try file

* let's start by running only one test

* address latest reviewers comments

* double check correct tasks for release branch

* remove try file after confirming beta build run

Co-authored-by: isabel rios <isabelrios@MBP-de-isabel-2.home>
4 years ago
Sebastian Kaspari 7e4471eda6 [fenix] Switch to new SessionStorage / session restore API. 4 years ago
Sebastian Kaspari 89b697a9bd [fenix] Update Android Components to 69.0.20201207103252. 4 years ago
Elise Richards 198c065970 [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/8791: Use A-C tab counter and upgrades to A-C 69.0.20201203202830
Upgrades to A-C 69.0.20201203202830 and addresses breaking changes:
- Upgrades androidx workmanager to 2.4.0 in line with A-C.
- RecordingDevicesNotificationFeature was removed
- SearchUseCases accept parent session ID instead of session itself
4 years ago
jhugman 1c0e70d647 [fenix] Nimbus-SDK-119 Get Nimbus server endpoint at build time. (https://github.com/mozilla-mobile/fenix/pull/16682)
This PR builds on [AC#https://github.com/mozilla-mobile/fenix/pull/9024][1], and implements setting the Nimbus endpoints from [a secret set at build time][2].

For production use, this requires a secret named `nimbus_url` to be put into CI.

Note: Nimbus is currently behind a feature flag.

If developers wish to use a Nimbus server for local development, you can set the url by adding an entry into local.properties, e.g.:

```
nimbus.remote-settings.url=https://settings.stage.moz4ws.net
```

Without setting server, Nimbus will be able to function, except no experimental definitions will be fetched, and features under experiment will be configured as if not enrolled in the experiment.

[1]: https://github.com/mozilla-mobile/android-components/pull/9024
[2]: https://groups.google.com/a/mozilla.com/g/android-components-team/c/lAGVKQy8aiA/m/rY3uGAwhBAAJ
4 years ago
Sebastian Kaspari 668e8d62af [fenix] Introduce build flag for configuring test build type. 4 years ago
Sebastian Kaspari 0f988d0bc6 [fenix] Introduce build flag for disabling optmization. 4 years ago
jhugman d001a5aa36 [fenix] Nimbus Global Opt Out (https://github.com/mozilla-mobile/fenix/pull/16543) r=gl 4 years ago
Sebastian Kaspari ab1e56ef5b [fenix] For https://github.com/mozilla-mobile/fenix/issues/16302 - Use larger heap size when running unit tests and fork new process after every 80 test classes. (https://github.com/mozilla-mobile/fenix/pull/16526) 4 years ago
Sebastian Kaspari 03343e86ed [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/16256: Introduce build flag for "Mozilla Online" variant.
This patch introduces a build flag that can be used on demand on the command line (`./gradlew -PmozillaOnline [..}`) or
permanently when added to local.properties (`mozillaOnline`).

At runtime `Config.channel.isMozillaOnline` will return `true` if the flag was set at build time.
4 years ago
Sebastian Kaspari 9c7e0ad770 [fenix] Update Android Components, Kotlin, Gradle plugin (https://github.com/mozilla-mobile/fenix/pull/16021)
* Closes https://github.com/mozilla-mobile/fenix/issues/13262: Update AGP to 4

* Update to Mozilla Android Components 63.0.20201019090011.

* Update Kotlin to 1.4.10 and Coroutines to 1.3.9.

* Fix new compiler warnings.

* Fix compilation of lint rules module.

* Pin JNA version.

* Fix new lint errors.

Co-authored-by: Tiger Oakes <toakes@mozilla.com>
4 years ago
Christian Sadilek 5c9e32efda [fenix] Configure M5 AMO collection for all builds 4 years ago
ekager b7cb6aa53c [fenix] For https://github.com/mozilla-mobile/fenix/issues/7345 - Update new shield icons, remove lottie (https://github.com/mozilla-mobile/fenix/pull/15909) 4 years ago
Michael Comella 30208f0345 [fenix] For https://github.com/mozilla-mobile/fenix/issues/15280: add current ConstraintLayout warnings to lint baseline. 4 years ago
Mugurell 5cdb7f3a73 [fenix] For https://github.com/mozilla-mobile/fenix/issues/15890 - Ensure app locale switcher works for Windows builds
A hardcoded unix file separator prevented us from building a proper list of
locales for which we actually have packaged translations.
4 years ago
Jonathan Almeida 848286b7b1 [fenix] Upgrade to Android Component 62.0.20201006190820 with breaking changes 4 years ago
Michael Comella e1ffe1108f [fenix] No issue: replace LintUnitTestRunner with detekt implementation.
This should be more performant and easier to maintain.
4 years ago
Christian Sadilek 146aa075dd [fenix] Configure M5 AMO collection for Nightly/Debug 4 years ago
Christian Sadilek d12fa25350 [fenix] Configure M4 AMO collection for all builds 4 years ago
ekager 71abc5c450 [fenix] For https://github.com/mozilla-mobile/fenix/issues/2486 - Adds Recently Closed Tabs 4 years ago
Christian Sadilek 4ca734ab71 [fenix] Configure M4 AMO collection for Nightly/Debug 4 years ago
Tiger Oakes 053781ffbd [fenix] Gradle configuration avoidance 4 years ago
Jeff Boek a4a8e9ed88 [fenix] For https://github.com/mozilla-mobile/fenix/issues/14318 - Use old API to try to fix startup crash without GPS 4 years ago
Elise Richards fcdd29e56e [fenix] Allow play store in app review to be shown to users 4 years ago
Gabriel Luong 19f204d032 [fenix] For https://github.com/mozilla-mobile/fenix/issues/8312 - Show Top Sites in a ViewPager (https://github.com/mozilla-mobile/fenix/pull/14116) 4 years ago
Kainalu Hagiwara abc6217f9e [fenix] For https://github.com/mozilla-mobile/fenix/issues/13030 - Use material design animation values for swipe to switch tabs. 4 years ago
Gilbert Gilb's 17973c382e [fenix] Add custom Activity to show libraries licenses.
As Google's library for showing licences isn't open-source, this commit
reimplements its main Activity. This is in prevision to having an OSS
flavor of fenix.

We chose to not introduce dependencies to third-party libraries
such as AboutLibraries for now, and we'll stick to using Google's gradle
plugin for the dependencies extraction.

Fixes https://github.com/mozilla-mobile/fenix/issues/7584

See also https://github.com/mozilla-mobile/fenix/issues/162
4 years ago
Sebastian Kaspari 2875338740 [fenix] Simplify build variants to just: debug, nightly, beta and release.
Co-authored-by: Johan Lorenzo <jlorenzo@mozilla.com>
4 years ago
Michael Comella a2c984016b [fenix] For https://github.com/mozilla-mobile/fenix/issues/4132: remove raptor property and isRaptorEnabled manifest placeholder.
afaict, this is only used for BrowserPerformanceTestActivity, which is
being removed in this PR.
4 years ago
Tiger Oakes 3213f5107b [fenix] For https://github.com/mozilla-mobile/fenix/issues/13262: Update gradle (https://github.com/mozilla-mobile/fenix/pull/13263) 4 years ago
Tiger Oakes 6468af8c5b [fenix] For https://github.com/mozilla-mobile/fenix/issues/13140: Use concept-menu for saved logins menu (https://github.com/mozilla-mobile/fenix/pull/13143) 4 years ago
Ankur Khandelwal f07dd7cc58 [fenix] Renamed Deps.mozilla_ui_publicsuffixlist to Deps.mozilla_lib_publicsuffixlist (https://github.com/mozilla-mobile/fenix/pull/13201) 4 years ago
Tiger Oakes a2d4efd120 [fenix] For https://github.com/mozilla-mobile/fenix/issues/7992: Use favicon style from AC (https://github.com/mozilla-mobile/fenix/pull/12608) 4 years ago
Jonathan Almeida 502a50bfa0 [fenix] For https://github.com/mozilla-mobile/fenix/issues/12983: Fix deep link scheme for nightly builds
When we simplified our variants, our deep link scheme for nightly was
lost.
4 years ago
Tiger Oakes a0f58194e2 [fenix] Add concept-menu dependency 4 years ago
Tiger Oakes 2c08b342e8 [fenix] For https://github.com/mozilla-mobile/fenix/issues/12871 - Use local TWA DAL API (https://github.com/mozilla-mobile/fenix/pull/12872) 4 years ago
Kainalu Hagiwara a6a8c4dc08 [fenix] For https://github.com/mozilla-mobile/fenix/issues/3481 - Implement swipe on toolbar to switch tabs. 4 years ago
Johan Lorenzo 13e8560acf [fenix] Bug 1652979 - Stop producing fennecNightly, fenixNightly and fenixBeta (https://github.com/mozilla-mobile/fenix/pull/12225) 4 years ago
Tiger Oakes 82d1b4380d [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/12493: Remove kapt plugin 4 years ago
ekager 772f69c5f5 [fenix] For https://github.com/mozilla-mobile/fenix/issues/7094 - Adds save login exceptions 4 years ago
Michael Comella 2a3a343393 [fenix] For perf-frontend-issueshttps://github.com/mozilla-mobile/fenix/issues/44: add local property to autosign release builds. 4 years ago
Tiger Oakes e69b1e06f1 [fenix] Fixes https://github.com/mozilla-mobile/fenix/issues/9832 - Change targetSdkVersion to Android 10 (https://github.com/mozilla-mobile/fenix/pull/11014) 4 years ago
Christian Sadilek bcfd40018f [fenix] Update built-in extensions for new AC/GV API
New API (installBuiltIn/ensureBuiltin) requires
- Gecko IDs and new permissions
- Extension will only be re-installed if it has a new version

This includes a gradle task to automatically generate a
new version in manifest.json for every build so we don't
forget to update the version and end up with changes that
are never applied.
4 years ago
Johan Lorenzo bb0083c558 [fenix] Bug 1649400 - part 1: ship org.mozilla.fenix as a nightly product (https://github.com/mozilla-mobile/fenix/pull/12127) 4 years ago
Christian Sadilek 9a6e44cf41 [fenix] Configure M3 AMO collection for all builds (https://github.com/mozilla-mobile/fenix/pull/12055) 4 years ago
Jonathan Almeida 850d3fa90f [fenix] Fix breaking API in WebNotificationFeature 4 years ago
Marc Leclair 890963491c [fenix] Added A-C version 48.0.20200626213814 4 years ago
Tiger Oakes 766c82ba60 [fenix] Update customtabs service 4 years ago
Christian Sadilek 4de31aba98 [fenix] Configure M3 AMO collection for Nightly/Debug 4 years ago
Tiger Oakes 9818176c34 [fenix] For https://github.com/mozilla-mobile/fenix/issues/11534 - Don't check lastUsed mode for screenshots (https://github.com/mozilla-mobile/fenix/pull/11827) 4 years ago
Jonathan Almeida 81929addcc [fenix] Fix breaking APIs in TabsAdapter and ViewHolder 4 years ago
Tiger Oakes 110771d077 [fenix] Remove Mockito 4 years ago
Dennis Schubert 0b87f96637 [fenix] Bug 1643132 - Add WebCompat Reporter feature. 4 years ago
Sawyer Blatz 3daf6fcef4 [fenix] For https://github.com/mozilla-mobile/fenix/issues/9488: Add experimentation support 4 years ago
Vishwa Patel d7faa8c2c5 [fenix] For https://github.com/mozilla-mobile/fenix/issues/10834 - Adding Sync Tabs Feature in Fenix 4 years ago
Gabriel Luong 231054a97a [fenix] Added BrowserThumbnails dependencies 4 years ago
Jan-Erik Rediger 9014f63534 [fenix] Dump `proguard-android-optimize.txt` into local configuration for later modification
This was achived by:

* Adding `-printconfiguration r8.txt` to `proguard-rules.pro`
* Copying the part from start of `r8.txt` to before the `-printconfiguration` line into its own file.

This gets us exactly what was used in the bundled version.
4 years ago
Grisha Kruglov 4899aa5ca1 [fenix] Only set real BUILD_DATE for non-debug builds
This avoids BuildConfig modifications between local dev builds,
and speeds up the builds by avoiding running tasks that depend on BuildConfig.

Locally, depending on exact build circumstances, this saves about 5% of build runtime
for simple code changes, and about 90% of build runtime for no-op builds.
4 years ago
Michael Comella 413daedf6c [fenix] For https://github.com/mozilla-mobile/fenix/issues/10757: remove no-op Experiments code and dependency.
We were supposed to have removed Experiments for performance purposes.
However, I find some code dangling in the tree.

Experiments.initialize is no longer called so I suspect
Experiments.withExperiment is a no-op. I verified that the lambda
function provided to it never ran in my local geckoBetaDebug on startup.
Assuming experiments behavior doesn't change in other build types, this
change appears safe.
4 years ago
Christian Sadilek 5f7d514788 [fenix] Configure M2 AMO collection for all builds 4 years ago
David Walsh b2cad42ba9 [fenix] For https://github.com/mozilla-mobile/fenix/issues/10148 - Add basic tab tray implementation without exposing to rest of app (https://github.com/mozilla-mobile/fenix/pull/9934) 4 years ago
Roger Yang d08756b53a [fenix] Close https://github.com/mozilla-mobile/fenix/issues/9960: Launch URI in Fenix if failed to launch in custom tab (https://github.com/mozilla-mobile/fenix/pull/9964) 4 years ago
Michael Comella de6bbb791a [fenix] For https://github.com/mozilla-mobile/fenix/issues/9644: restrict deps to specific repositories (https://github.com/mozilla-mobile/fenix/pull/9649)
* For https://github.com/mozilla-mobile/fenix/issues/9644: remove unnecessary leanplum maven repository.

The docs say it is [1] "only needed for Android SDK versions below 4.3.0".
That is API 18 and our min SDK is 21.

[1]: https://docs.leanplum.com/reference#android-setup

* For https://github.com/mozilla-mobile/fenix/issues/9644: move buildscript block from :app to root project.

This will reduce the amount of duplication we need in specifying
restricted dependencies and centralize repository definitions. Since
we're a one project app, it shouldn't have a significant impact on
performance.

* For https://github.com/mozilla-mobile/fenix/issues/9644: restrict dependencies following FFTV config.

However, there is a resolution error to be fixed in the next commit.

This is verbatim from FFTV except I removed the no-op "improve security
if code is refactored incorrectly" lines: these lines rarely changed and
I'm not that concerned. It might be better to simplify the
configuration.

Source:
  62a2fa680c/buildSrc/src/main/java/org/mozilla/gradle/Dependencies.kt (L7)
  62a2fa680c/build.gradle (L31)

* For https://github.com/mozilla-mobile/fenix/issues/9644: restrict firebase deps to google repo.

This fixes the resolution error from the previous PR.
4 years ago
Christian Sadilek 7ca7557c17 [fenix] Configure M2 AMO collection for Nightly/Debug 4 years ago
Michael Comella b9fe826cef [fenix] No issue: Move Do and OpenClass to utils pkg.
They were both in their packages by themselves, which feels unnecessary.
Unfortunately, a utils pkg is discouraged by kotlin but we don't have a
better place for them right now. Maybe an annotations/ pkg for the
latter?
4 years ago
Michael Comella 18a639a64d [fenix] For https://github.com/mozilla-mobile/fenix/issues/9631: remove assertk dependency. 4 years ago
Michael Comella 74fbc518db [fenix] For https://github.com/mozilla-mobile/fenix/issues/9605: Add LintUnitTestRunner gradle task.
This will prevent us from regressing on adding older versions of the
unit test runner.
4 years ago
Sebastian Kaspari 548a18ba32 [fenix] Use same configuration for "forPerformanceTest" builds like we do for "fennec" flavor builds. 4 years ago
ekager ccee01a230 [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/8944 - Adds custom lint checks 4 years ago
Christian Sadilek 0c9b5ec2a9 [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/9414: Make AMO collection configurable 4 years ago
Jonathan Almeida ffe0b68182 [fenix] For https://github.com/mozilla-mobile/fenix/issues/7661: Add deeplink schemas for fennec variants 4 years ago
Christian Sadilek 356df2cc0e [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/9333: Prevent compression of omni.ja to improve startup time
Co-authored-by: Markus Stange <mstange@themasta.com>
Co-authored-by: Agi Sferro <agi@sferro.dev>
4 years ago
Ryan Kelly 7d08e36843 [fenix] Add support for application-services autoPublish local dev workflow. 4 years ago