Commit Graph

221 Commits (18f664f477e8e1484bb4bfcfac9e3c33cddc253b)

Author SHA1 Message Date
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
Jonathan Almeida 061af2c380 [fenix] For https://github.com/mozilla-mobile/fenix/issues/7661: Add variant-specific schemas for deep links
In order to target specific variants of Fenix, we're adding schemas that
are specific that app in order to avoid collisions with the other
variants and with other forks of fenix that may have the same schemas.

The current schema for variants:
 - Fenix Nightly: `fenix-nightly://`
 - Fenix Beta: `fenix-beta://`
 - Everything else: `fenix://`
4 years ago
Sebastian Kaspari 4169924754 [fenix] Use pinned Android Components Nightly version instead of snapshots. 4 years ago
mcarare d8cba93d1b [fenix] For https://github.com/mozilla-mobile/fenix/issues/8788 Use Flexbox instead of Grid manager for top sites 5 years ago
Michael Droettboom b30f9b1970 [fenix] 1592947: Use the Glean Gradle plugin 5 years ago
Grisha Kruglov 32802e7fc8 [fenix] Remove direct A-S dependency; switch to using 'full' megazord
As far as I can tell, we never actually exercise the a-s libraries in Fenix tests currently (this was one of the presumed reasons for having a direct dependency).
In a different branch I've started work on adding end-to-end tests, but currently that's blocked on trying to figure out to load native libraries in tests (somehow, fenix's setup is different than what we have in A-C, not yet clear to me in what way).

Another reason for a direct dependency (i think) is that we needed it to configure a `fenix` megazord. This could be solved via a `support-megazord-fenix` a-c component that provides the correct transient dependencies,
but we can also just switch to use the `full` megazord instead, which is essentially what fenix megazord is at this point. A-S team wants to remove the fenix megazord, so this will help. This is what this patch does.
5 years ago
Mihai Branescu 4fe9033c0f [fenix] For https://github.com/mozilla-mobile/fenix/issues/4231
Added kapt plugin + dependencies in order to be able to use Room
Added recent apps to share fragment (top 6)
Extracted dimens of share_to_apps.xml in the dimens file
5 years ago
Jeff Boek 72618be169 [fenix] For https://github.com/mozilla-mobile/fenix/issues/3869 - Uses RegionSearchLocalizationProvider in the search engine provider 5 years ago
Aaron Train 5bc087bd9b [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/8316: Disable animations for instrumented tests (https://github.com/mozilla-mobile/fenix/pull/8317) 5 years ago
Alessio Placitelli b0cd0692ed [fenix] Test that 'baseline' pings are sent by Fenix
This is an initial instrumented test for Fenix
that checks if a 'baseline' ping is generated when
going to background.
5 years ago
Gabriel Luong aaf9c65f5d [fenix] Provide add-on support (https://github.com/mozilla-mobile/fenix/pull/8064)
Closes https://github.com/mozilla-mobile/fenix/issues/5630, https://github.com/mozilla-mobile/fenix/issues/6069, https://github.com/mozilla-mobile/fenix/issues/6092, https://github.com/mozilla-mobile/fenix/issues/6091, https://github.com/mozilla-mobile/fenix/issues/6124, and https://github.com/mozilla-mobile/fenix/issues/6147.

Co-authored-by: Simon Chae <chaesmn@gmail.com>
Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
5 years ago
Jonathan Almeida 8e13b8bb98 [fenix] For https://github.com/mozilla-mobile/fenix/issues/373: Implement LeanPlum push messaging
Also closes https://github.com/mozilla-mobile/fenix/issues/6250, since we rely solely on the SDK itself to consume the
messages straight from FCM.
5 years ago
Gabriel Luong bcc77834dd [fenix] For https://github.com/mozilla-mobile/fenix/issues/6758 - Part 2: Add AC dependencies for top sites feature 5 years ago
Jonathan Almeida 5c1dc2bbdc [fenix] For https://github.com/mozilla-mobile/fenix/issues/7092: Add initial Migration UI 5 years ago
Colin Lee f5a7312763 [fenix] For https://github.com/mozilla-mobile/fenix/issues/5182: Loading experiments on startup is slow, remove Fretboard (https://github.com/mozilla-mobile/fenix/pull/7510)
This removes Fretboard. The goal is to reduce cold startup costs associated with loading the experiments on the main thread. We currently have two experiments frameworks in use and should only require one.
5 years ago
Michael Comella 070d098012 [fenix] No issue: remove lint baseline file.
This will enable folks to see the existing warnings.
5 years ago
Mihai Branescu bbd73acf60 [fenix] Feature/https://github.com/mozilla-mobile/fenix/issues/220 language menu (https://github.com/mozilla-mobile/fenix/pull/7070)
* For https://github.com/mozilla-mobile/fenix/issues/220
- Added advanced header + locale settings item in the settings fragment

* For https://github.com/mozilla-mobile/fenix/issues/220
- Added locale selection page with lib state + handling of locale changes

* For https://github.com/mozilla-mobile/fenix/issues/220
- Removed registering for locale changes in the manifest, allow system
to restart activity in that scenario

* For https://github.com/mozilla-mobile/fenix/issues/220
- Added unit tests for locale settings page

* For https://github.com/mozilla-mobile/fenix/issues/220: fixed an outdated unit test
ga-a

Co-authored-by: Severin Rudie <Baron-Severin@users.noreply.github.com>
5 years ago
Severin Rudie 8b746007fd [fenix] 7410 remove rxjava (https://github.com/mozilla-mobile/fenix/pull/7426)
* For https://github.com/mozilla-mobile/fenix/issues/7410: rewrite updateBookmarkFromObservableInput with coroutines

* For 7410: remove RxJava from project. :(

* For 7410: converted updateBookmarkFromTextChanges to Flow per review
5 years ago
Michael Comella 42ec15c095 [fenix] No issue: remove unused Anko dependencies. 5 years ago
Kadeem M 78a599b06e [fenix] Added UI tests for the About Settings page (https://github.com/mozilla-mobile/fenix/pull/6161) 5 years ago
Ryan Kelly b806b4c5fa [fenix] Use feature-accounts-push, which replaces feature-sendtab. 5 years ago
Colin Lee a9a3fdc1fd [fenix] For https://github.com/mozilla-mobile/fenix/issues/4064: Replace prerelease R8 with improved Kotlin coroutines library (https://github.com/mozilla-mobile/fenix/pull/7153) 5 years ago
isabelrios 4a62f38670 [fenix] Re-enable Screenshots tests (https://github.com/mozilla-mobile/fenix/pull/6617)
disabling setting test options due to different screen sizes

name screenshots according to robots

fix kotlin style

update settings tests with new Toolbar option

screenshots tests in different package than ui tests
5 years ago
Gabriel 9ed4f7f119 [fenix] For https://github.com/mozilla-mobile/fenix/issues/5574 - Migrate SessionControl to LibState (https://github.com/mozilla-mobile/fenix/pull/6651)
* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 1: Port TabAction.SaveTabGroup to TabSessionInteractor and SessionControlController. (https://github.com/mozilla-mobile/fenix/pull/6651)

- Introduces the TabSessionInteractor, SessionControlInteractor and SessionControlController classes.
- Removes the TabAction.SaveTabGroup.

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 2: Port TabAction.PrivateBrowsingLearnMore to TabSessionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 3: Port TabAction.ShareTabs to TabSessionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 4: Remove unused TabAction.Share and TabItemMenu (https://github.com/mozilla-mobile/fenix/pull/6651)

In https://github.com/mozilla-mobile/fenix/issues/2205, the tab overflow button was removed which would have shown the
TabItemMenu when clicked. So, we can remove TabItemMenu since it is not
used and as a result, we can also remove TabAction.Share since there are
no consumers.

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 5: Port TabAction.PlayMedia and TabAction.PauseMedia to TabSessionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 6: Port TabAction.Select to TabSessionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 7: Port Onboarding.Finish to OnboardingInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 8: Port TabAction.Close and TabAction.CloseAll to TabSessionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

- Removes TabAction

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 9: Port CollectionAction.Delete to CollectionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 10: Port CollectionAction.ShareTabs to CollectionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 11: Port CollectionAction.AddTab and CollectionAction.Rename to CollectionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 12: Port CollectionAction.RemoveTab to CollectionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 13: Port CollectionAction.OpenTab to CollectionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 14: Port CollectionAction.CloseTabs to CollectionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 15: Introduce a HomeFragmentStore (https://github.com/mozilla-mobile/fenix/pull/6651)

- We will hook up the HomeFragmentStore in later parts.
- Removes List<Tab>.toSessionBundle(context: Context) since it is unused.

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 16: Port CollectionAction.Collapse and CollectionAction.Expand to CollectionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

- We assume the store is hooked up to the SessionControlController in this part,
but this work will be done in a later part.
- Removes CollectionAction.

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 20: Remove the architecture module. (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 17:  Remove duplicate subscribeToTabCollections in BrowserFragment.kt (https://github.com/mozilla-mobile/fenix/pull/6651)

There is a duplicate call of subscribeToTabCollections() in both HomeFragment and BrowserFragment.
In this patch, we remove the call in BrowserFragment to avoid passing the HomeFragmentStore to
BrowserFragment in order to dispatch the CollectionsChange event.

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 18: Delete SessionControlComponent and fix TabCollection and Tab imports (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 19: Use the new HomeFragmentStore in the HomeFragment (https://github.com/mozilla-mobile/fenix/pull/6651)

- Renames SessionControlUIView to SessionControlView

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 21: Fix white screen on home fragment (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 22: Fix formatting in SessionControlInteractor and replace See with @see in SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 23: Move to metrics.track call to the beginning of handleCollectionRemoveTab (https://github.com/mozilla-mobile/fenix/pull/6651)

This ensures that the metrics.track will be called immediately before the tab is removed from the collection.

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 24: Use the sessionManager getter in SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 25: Use mapNotNull in List<Tab>.toSessionBundle (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 26: Simplify closeTab and closeAllTabs functions by assigning a deletionJob constant (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 27: Replace listOf() with emptyList() in removeAllTabsWithUndo (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 28: Replace the Context parameter with the HomeActivity in SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 29: Add test for HomeFragmentStore, DefaultSessionControlController and SessionControlInteractor (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Removes running CI against the architecture debug build varient
5 years ago
mawen7 bbfa8aadd4 [fenix] Run lint for app module and set baseline 5 years ago
Sebastian Kaspari a126b92f9c [fenix] Issue https://github.com/mozilla-mobile/fenix/issues/6622, https://github.com/mozilla-mobile/fenix/issues/6688: Create a "fennecBeta" and "fennecNightly" build types. 5 years ago
Johan Lorenzo 8eef026200 [fenix] Split UI test 5 years ago
Jeff Boek daaaeef741 [fenix] Adds custom search engines (https://github.com/mozilla-mobile/fenix/pull/6551)
* For https://github.com/mozilla-mobile/fenix/issues/5577 - Adds button to add a new search engine

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Adds custom engine store

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Creates a custom SearchEngineProvider

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Gives the ability to delete search engines

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Adds the UI to add a custom search engine

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Adds form to create a custom search engine

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Adds the ability to add a custom search engine

*  For https://github.com/mozilla-mobile/fenix/issues/5577 - Adds the ability to delete custom search engines

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Selects the first element on the add custom search engine screen

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Prevents adding a search engine that already exists

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Styles the add search engine preference

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Makes the name check case-insensitive

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Fix bug where home screen doesnt see new search engines

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Moves Search URL validation to its own type

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Fixes linting errors

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Adds the ability to edit a custom search engine

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Allows the user to edit a serach engine even when it is the last item in the list

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Adds an undo snackbar when deleting a search engine

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Moves all of the strings to be translated

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Fixes bug when deleting your default search engine

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Puts adding search engines behind a feature flag

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Navigate to custom search engine SUMO article when tapping learn more

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Fixes nits

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Uses concept-fetch to validate search string

* For https://github.com/mozilla-mobile/fenix/issues/5577 - Adds string resources for the cannot reach error state
5 years ago
Roger Yang f8b8249b3f [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/6440 Integrate Web Notifications Feature 5 years ago
Tiger Oakes 037d35abd1 [fenix] Use ViewModel for share fragment 5 years ago
Emily Kager f279306478 [fenix] For https://github.com/mozilla-mobile/fenix/issues/5074 - Sync Logins, Uses KeySharedPreferences for Passwords Encryption Key 5 years ago
Emily Kager fc7084a555 [fenix] For https://github.com/mozilla-mobile/fenix/issues/5547 - Add top level auth when accessing passwords 5 years ago
Jonathan Almeida e5f9064701 [fenix] Revert "For https://github.com/mozilla-mobile/fenix/issues/373 - Integrate leanplum-fcm"
This reverts commit b1ce8ffcb7710fd98b692358309db42690593e11.

We're choosing to revert LeanPlum push messaging integration since we believe
that this has introduced a crash in Firebase push messaging. To verify
this assumption we're reverting this change, and when confirmed, we can
re-introduce Leamplum in a safer manner.

See https://github.com/mozilla-mobile/fenix/issues/6250 and https://github.com/mozilla-mobile/fenix/issues/6251 for related info.
5 years ago
Denys M f69e53c92d [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/2441. Update LeakCanary to `2.0-beta-3` version. 5 years ago
ekager 36de82bdc6 [fenix] For https://github.com/mozilla-mobile/fenix/issues/5544: Bare Minimum Logins UI 5 years ago
Alessio Placitelli 9d544a27e8 [fenix] Pick up forUnitTest library for the Glean SDK test 5 years ago