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

6804 Commits

Author SHA1 Message Date
Roger Yang
4f9a341746 [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/18948: Update tabstray telemetry (https://github.com/mozilla-mobile/fenix/pull/19004) 2021-04-14 15:32:45 -04:00
mcarare
8e8a872127 [fenix] For https://github.com/mozilla-mobile/fenix/issues/18854: Add metrics for home screen being displayed. 2021-04-14 21:21:28 +03:00
mcarare
c4609f6e35 [fenix] No issue: Fix indenting in onViewCreated. 2021-04-14 21:21:28 +03:00
mcarare
8f34c26bfb [fenix] For https://github.com/mozilla-mobile/fenix/issues/18376: Add experiment for set default browser settings card. 2021-04-14 19:28:38 +03:00
mcarare
9dede18ff5 [fenix] For https://github.com/mozilla-mobile/fenix/issues/18853: Add metrics for default browser new tab experiment. 2021-04-14 19:22:27 +03:00
mcarare
4ff47f6c1d [fenix] For https://github.com/mozilla-mobile/fenix/issues/18856: Add metrics for opening settings screen from home menu. 2021-04-14 18:50:15 +03:00
mcarare
62f839d75a [fenix] For https://github.com/mozilla-mobile/fenix/issues/18815: Expand app bar on onboarding dismissal and browsing start. 2021-04-14 18:09:51 +03:00
Jonathan Almeida
d10792a96e [fenix] Close https://github.com/mozilla-mobile/fenix/issues/19011: Always have a click listener in TabTrayViewHolder 2021-04-14 19:08:39 +04:00
Jonathan Almeida
bc628f6770 [fenix] Issue https://github.com/mozilla-mobile/fenix/issues/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
ac29b50dfa [fenix] For https://github.com/mozilla-mobile/fenix/issues/18272 - [Edit card] Display a saved card information in the Edit card screen (https://github.com/mozilla-mobile/fenix/pull/18884) 2021-04-14 10:56:23 -04:00
Oana Horvath
0ad9590e60 [fenix] For https://github.com/mozilla-mobile/fenix/issues/18986 & https://github.com/mozilla-mobile/fenix/issues/19016: disabled failing tests changeThemeSetting & changeAccessibiltySettings 2021-04-14 13:34:58 +03:00
MarcLeclair
4c45f615bb [fenix] 16900 make navgraph inflation asynchronous (https://github.com/mozilla-mobile/fenix/pull/18889)
* For https://github.com/mozilla-mobile/fenix/issues/16900: implement async navgraph inflation

For https://github.com/mozilla-mobile/fenix/issues/16900: removed nav graph from xml

For https://github.com/mozilla-mobile/fenix/issues/16900: inflate navGraph programatically

For https://github.com/mozilla-mobile/fenix/issues/16900: Made NavGraph inflation asynchronous

For https://github.com/mozilla-mobile/fenix/issues/16900: Changed to block with runBlocking

For https://github.com/mozilla-mobile/fenix/issues/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 https://github.com/mozilla-mobile/fenix/issues/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 https://github.com/mozilla-mobile/fenix/issues/16900: inflateNavGraphAsync now takes navController

For https://github.com/mozilla-mobile/fenix/issues/16900: Pass lifecycleScope to NavGraphProvider

For https://github.com/mozilla-mobile/fenix/issues/16900: removed unused mock

For https://github.com/mozilla-mobile/fenix/issues/16900: Added linter rules for navigate calls

We need linting rules to make sure no one calls the NavController.navigate() methods

For https://github.com/mozilla-mobile/fenix/issues/16900: Added TestRule to help abstract the mocks in the code

For 16900: Fix linting problems

For https://github.com/mozilla-mobile/fenix/issues/16900: Cleaned duplicated code in tests

For https://github.com/mozilla-mobile/fenix/issues/16900: cleaned up NavGraphTestRule for finished test

For https://github.com/mozilla-mobile/fenix/issues/16900: had to revert an accidentally edited file

For https://github.com/mozilla-mobile/fenix/issues/16900: rebased master

* For https://github.com/mozilla-mobile/fenix/issues/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 https://github.com/mozilla-mobile/fenix/issues/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
9d3edcecea [fenix] Import l10n. 2021-04-14 00:32:38 +00:00
Michael Comella
e7a15807a4 [fenix] For https://github.com/mozilla-mobile/fenix/issues/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
073a4dc221 [fenix] For https://github.com/mozilla-mobile/fenix/issues/18836: note refactor in metrics docs. 2021-04-13 15:10:36 -07:00
Michael Comella
c04e4f392d [fenix] For https://github.com/mozilla-mobile/fenix/issues/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
4411a9c84a [fenix] For https://github.com/mozilla-mobile/fenix/issues/18836: add StartupStateProvider. 2021-04-13 15:10:36 -07:00
Michael Comella
7d0024ab93 [fenix] For https://github.com/mozilla-mobile/fenix/issues/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
7286daabe9 [fenix] For https://github.com/mozilla-mobile/fenix/issues/18836: add StartupActivityLog, tests. 2021-04-13 15:10:36 -07:00
Jonathan Almeida
5000e54aaf [fenix] Close https://github.com/mozilla-mobile/fenix/issues/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
e50350db14 [fenix] Issue https://github.com/mozilla-mobile/fenix/issues/18931: Move dialog adapter to collections package 2021-04-14 01:48:35 +04:00
Jonathan Almeida
35947762b7 [fenix] Issue https://github.com/mozilla-mobile/fenix/issues/18931: Rename class to CollectionsListAdapter 2021-04-14 01:48:35 +04:00
Stefan Arentz
f7c383abe9 [fenix] Fixes https://github.com/mozilla-mobile/fenix/issues/18995 - Upgrade the sync-strings action to v1.0.1 2021-04-13 21:47:52 +04:00
Christian Sadilek
858320fe6b [fenix] Upgrade to Android Components 75.0.20210413143139 2021-04-13 12:10:36 -04:00
Jonathan Almeida
167d925c12 [fenix] Close https://github.com/mozilla-mobile/fenix/issues/18934: Remove adapter when deataching from window 2021-04-13 19:00:01 +04:00
Jonathan Almeida
4ba99372f2 [fenix] Issue https://github.com/mozilla-mobile/fenix/issues/18885: Dismiss FAB icon when tabs tray is closed 2021-04-13 18:59:16 +04:00
mcarare
ed8d36520e [fenix] For https://github.com/mozilla-mobile/fenix/issues/18375: Add experiment for set default browser New Tab card. 2021-04-13 17:25:51 +03:00
Elise Richards
a5d8e40932 [fenix] Add ignores for intermittent toolbar tests 2021-04-13 13:21:29 +03:00
Stefan Arentz
0bcb8cb943 [fenix] Workflow to sync strings (https://github.com/mozilla-mobile/fenix/pull/18965) 2021-04-12 21:50:06 -04:00
Mozilla L10n Automation Bot
aae8d26393 [fenix] Import l10n. 2021-04-13 00:55:06 +00:00
Jonathan Almeida
df807cf612 [fenix] Close https://github.com/mozilla-mobile/fenix/issues/18973: Fix references to info banner 2021-04-13 04:15:43 +04:00
Roger Yang
425c9d857b [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/18522: Re-add call to action in tabs tray 2021-04-13 02:01:42 +04:00
Elise Richards
856e133f4d [fenix] For https://github.com/mozilla-mobile/fenix/issues/18806: Show sync tabs or sync account sign in based on feature flag (https://github.com/mozilla-mobile/fenix/pull/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
b42f68d7d4 [fenix] Bug 1670902 - Use WebRender platforms for Raptor performance tests 2021-04-12 13:56:50 -07:00
MickeyMoz
5c8a11f16c [fenix] Update Android Components version to 75.0.20210412143103. 2021-04-12 20:19:34 +00:00
Roger Yang
820f3f1521 [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/18899: Update content description string for synced tabs icon (https://github.com/mozilla-mobile/fenix/pull/18963) 2021-04-12 15:16:38 -04:00
Jonathan Almeida
5819a7c0a4 [fenix] Close https://github.com/mozilla-mobile/fenix/issues/18862: Add multi-select banner to tabs tray (https://github.com/mozilla-mobile/fenix/pull/18932)
* Issue https://github.com/mozilla-mobile/fenix/issues/18862: Add new addBookmark BookmarksUseCase

* Issue https://github.com/mozilla-mobile/fenix/issues/18862: Add class for state binding features

* Issue https://github.com/mozilla-mobile/fenix/issues/18862: Add delete multiple tabs to tray interactor

* Issue https://github.com/mozilla-mobile/fenix/issues/18862: Add new actions to navigation interactor

* Issue https://github.com/mozilla-mobile/fenix/issues/18862: Enable select mode from main tray menu

* Issue https://github.com/mozilla-mobile/fenix/issues/18862: Add menu when in select mode

* Close https://github.com/mozilla-mobile/fenix/issues/18862: Add multi-select banner to tabs tray

* Close https://github.com/mozilla-mobile/fenix/issues/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
298c4c2814 [fenix] For https://github.com/mozilla-mobile/fenix/issues/18960: Remove nav in homescreen three dot menu (https://github.com/mozilla-mobile/fenix/pull/18962)
* Remove nav in homescreen three dot menu

* Remove back and forward items
2021-04-12 13:05:58 -05:00
Arturo Mejia
22176de02c [fenix] For https://github.com/mozilla-mobile/fenix/issues/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
0344ebb250 [fenix] For https://github.com/mozilla-mobile/fenix/issues/18898 - implement quit button in page menu (https://github.com/mozilla-mobile/fenix/pull/18942) 2021-04-12 12:02:14 -05:00
Gabriel Luong
fd09f532a7 [fenix] For https://github.com/mozilla-mobile/fenix/issues/18940 - Remove reserved icon spacing for "Nimbus Experiments" setting preference (https://github.com/mozilla-mobile/fenix/pull/18949)
Co-authored-by: Sören Hentzschel <kontakt@agenedia.com>
2021-04-12 12:32:55 -04:00
Oana Horvath
8a20fdec59 [fenix] For https://github.com/mozilla-mobile/fenix/issues/17979 & https://github.com/mozilla-mobile/fenix/issues/17840: fix and re-enable UI tests affected by main menu changes 2021-04-12 19:16:17 +03:00
Oana Horvath
7d7f64f839 [fenix] Fix screenshots tests: showDefaultHomeScreen, bookmarksManagementTest 2021-04-12 16:21:35 +03:00
MickeyMoz
1f45d10b84 [fenix] Update Android Components version to 75.0.20210412114437. 2021-04-12 13:00:51 +00:00
Mozilla L10n Automation Bot
62c179feee [fenix] Import l10n. 2021-04-12 00:38:10 +00:00
MickeyMoz
b4ecfc8e57 [fenix] Update Android Components version to 75.0.20210410143112. 2021-04-11 01:53:33 +00:00
Mozilla L10n Automation Bot
b9678e5dea [fenix] Import l10n. 2021-04-11 00:25:07 +00:00
Mozilla L10n Automation Bot
ef233b706a [fenix] Import l10n. 2021-04-10 00:31:18 +00:00
Jonathan Almeida
b543a2bd4b [fenix] For https://github.com/mozilla-mobile/fenix/issues/15372 - Correct one more instance of the onboarding string (https://github.com/mozilla-mobile/fenix/pull/18906) 2021-04-09 15:21:26 -04:00
MickeyMoz
b4e46b43ff [fenix] Update Android Components version to 75.0.20210409143104. 2021-04-09 18:59:09 +00:00