Commit Graph

3081 Commits (c16283a923a7702174e8bd527bb525ccbd9c02f6)

Author SHA1 Message Date
Jeff Boek 4cbb9aebaf
Cleans up nav_graph.xml (#9829)
* For #9751 - Cleans up homeFragment directions

* For #9751 - Uses global actions for fragments not owned by homeFragment

* For #9751 - Cleans up SearchFragment directions

* For #9751 - Removes settings action from DeleteBrowsingDataFragment

* For #9751 - Removes browser action from SettingsFragment

* For #9751 - Adds ManagePhoneFeature global action

* For #9751 - Clean up unused deletebrowsingfragment actions

* For #9751 - Cleans Up HistoryFragment actions

* For #9751 - Removes Home -> Search action

* For #9751 - Removes the Bookmark -> Browser action

* For #9751 - Cleans up bookmark fragment actions

* For #9751 - Cleans up actions from ShareController

* For #9751 - Removes defaultBrowserFragment to browserFragment action

* For #9751 - Removes about -> browser action

* For #9751 - Adds global action to TrackingProtectionFragment

* For #9751 - Removes exception -> browser action

* For #9751 - Removes login -> browser action

* For #9751 - Fixes LoginFragment directions

* For #9751 - Removes ExternalAppBrowser directions

* for #9751 - Cleans up actions

* For #9751 - Fixes unit tests

* For #9751 - Addresses nits in PR
4 years ago
Arturo Mejia eace991859 For issue #8520: Improve add-ons UI 4 years ago
ekager b8fba63be4 For #9890 - Do not display full screen snackbar with toolbar padding 4 years ago
ekager ac3a557ddf For #9703 - Exit full screen on pause if pip not entered 4 years ago
Sawyer Blatz 7c3394ea7c
For #9892: Set dynamicToolbarMaxHeigtht to 0 for PWAs (#9893) 4 years ago
ekager 8c238402e2 For #9692 - Fix "Install" PWA menu item labeling 4 years ago
ekager 5039546dc5 For #7208 For #7212 - Update parameterized strings 4 years ago
Christian Sadilek 152642d98d Configure M2 AMO collection for Nightly/Debug 4 years ago
Oana Horvath 52857b09d7
fix #9670 intermittent tests (#9767)
also disabled intermittent closePrivateTabsNotification
4 years ago
mcarare 8cdc523de9 For #9698: Add unit tests for Context extension getStringWithArgSafe 4 years ago
mcarare a214f04b4a For #9698: Use extension to ensure fallback to English and avoid crash 4 years ago
mcarare 4a1a875233 For #9698: Add Context extension to avoid format IllegalArgumentException 4 years ago
Mozilla L10n Automation Bot e1bc8dc190 Import l10n. 4 years ago
Mugurell b72c223244
For #7157 - Set BrowserMenu width to be max 314 dp (#9731)
Instead of having a fixed width of 250dp the BrowserMenu will now have a
dynamic width between 250dp and 314dp allowing for a better fit for the menu
items it could display.
4 years ago
mcarare 1881975a31 For #9793: Adjust relative positions to provide correct a11y traversal 4 years ago
Mozilla L10n Automation Bot c31c198d54 Import l10n. 4 years ago
mcarare 177baf58a8 For #9798: Disable buttons on hiding and enable on showing.
This is triggered on collection expanding or shrinking that is animated.
The animation has android:fillEnabled="true" android:fillAfter="true".
This interferes with set visibility to gone and the click still triggers.
Disabling button avoids changing animation or force clearing it.
4 years ago
Simon Chae de311aef85
Update not yet unavailable add-on string (#9677) 4 years ago
Roger Yang c9141c9ae5 Close #9827: Support display cutouts 4 years ago
Christian Sadilek 7f1ef17d8b No issue: Re-use existing usecases for addons 4 years ago
ekager 56eb2ec1d7 For #2818 - Adds Picture-in-Picture feature 4 years ago
Mozilla L10n Automation Bot ed466d34f7 Import l10n. 4 years ago
Michael Comella 4437ddd536 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
mcarare 413af92bc5 For #9797: Set min height of dialog edit text to 48dp. 4 years ago
Abhay Agarwal 1c65bb8255 Closes #9495: Dismiss the ShareFragment in onPause() 4 years ago
Sawyer Blatz 12d486bf02
Issue #9682: Reduces size of branding (#9784) 4 years ago
Christian Sadilek 0f1bff7402 No issue: Refactor readerview to use browser-state 4 years ago
Sawyer Blatz e94af334fc
No issue: Add more settings animations (#9750) 4 years ago
Mihai Eduard Badea d66da53c9a For #2768 - Prevent screenshots in private mode
Added a new option in Private browsing menu to allow or prevent screenshots from being taken while in private mode by adding or removing the FLAG_SECURE flag from the home activity's window.

 This method is called whenever the activity is initialized to account for the browsing mode being changed and whenever the setting from the Private browsing menu is changed.

 The setting is by default set to true (screenshots are allowed to be taken)
4 years ago
Mugurell 29539c458e For #9770 - Disable pull to refresh pending changes 4 years ago
Mozilla L10n Automation Bot a12cb5b0c3 Import l10n. 4 years ago
Michael Comella 9305331a56 For #9631: remove assertk dependency. 4 years ago
Michael Comella 376740cd2c For #9631: replace assertk assertions with junit.
I created a series of editor macros to do this with minimal errors (and
to do it quickly!).
4 years ago
Jeff Boek c632b93ee7
For #220 - Removes feature flag for language picker (#9191)
* For #220 - Removes feature flag for language picker

* For #220 - Updates Android Components
4 years ago
Mihai Adrian dfded8e69c
For #9687: Refactor onboarding cards to follow app architecture (#9743)
* For #9687: Refactor onboarding cards to follow app architecture

* For #9687: Update unit test to new controller parameters
4 years ago
Arturo Mejia 025656d8fd For issue #9647 Crash when tapping settings after quickly
enabling/disabling add-on
4 years ago
Michael Droettboom 3789f50423 Fix errors in top_sites_count metric
We discovered in the Fenix metrics errors query [1] that
top_sites_count had a spike in the number of errors. It
seems to be recording a count of 0, which is an invalid value.

[1] https://sql.telemetry.mozilla.org/queries/67107/source#169983
4 years ago
Mozilla L10n Automation Bot 2d55b07935 Import l10n. 4 years ago
mcarare cac8115e55 For #9663: Allow more than one line for onboarding card header 4 years ago
Mozilla L10n Automation Bot 9e470c93ca Import l10n. 4 years ago
Aaron Train b35704beed Closes #9688: Disable ReaderViewTest for intermittent investigation in detection issues 4 years ago
Oana Horvath b2da0bd922
For #9670: Disabled intermittent tabMediaControlButton test (#9679)
and removed file created by mistake -e

added reason for disabled tests
4 years ago
Mugurell 904bfc9ebe For #3262 - Enable pull down to refresh in Nightly 4 years ago
Michael Comella 51a76651d6 For #9605 - review: clarify comments in new test runner. 4 years ago
Michael Comella b60a21c08d For #9605: Add LintUnitTestRunner gradle task.
This will prevent us from regressing on adding older versions of the
unit test runner.
4 years ago
Michael Comella efef8eaba0 For #9605: TestApplication -> FenixRobolectricTestApplication.
This disambiguates it from the FirefoxTestApplication used in on-device
tests.
4 years ago
Michael Comella 8df49473c0 For #9605: move TestApplication to the helpers package.
The helpers/ package is created to separate the test support code from
the code under test.
4 years ago
Michael Comella 6e0d851da3 For #9605: replace unit test runners with FenixRobolectricTestRunner.
This is how we can apply the new test runner to remove duplication.

This commit was generated programmatically with the following commands:
```
  // Replace test runners with new one.
  find app/src/test -type f -exec gsed -i "s/@RunWith(RobolectricTestRunner::class)/@RunWith(FenixRobolectricTestRunner::class)/" {} +
  find app/src/test -type f -exec gsed -i "s/@RunWith(AndroidJUnit4::class)/@RunWith(FenixRobolectricTestRunner::class)/" {} +

  // Replace imports of old test runners with new one
  find app/src/test -type f -exec gsed -i "s/org.robolectric.RobolectricTestRunner/org.mozilla.fenix.helpers.FenixRobolectricTestRunner/" {} +
  find app/src/test -type f -exec gsed -i "s/androidx.test.ext.junit.runners.AndroidJUnit4/org.mozilla.fenix.helpers.FenixRobolectricTestRunner/" {} +

  // Remove unused imports
  find app/src/test -type f -exec gsed -i "/@Config(application = TestApplication::class)/d" {} +
  find app/src/test -type f -exec gsed -i "/import org.mozilla.fenix.TestApplication/d" {} +
  find app/src/test -type f -exec gsed -i "/import org.robolectric.annotation.Config/d" {} +
```

Where gsed is the GNU version of sed installed via homebrew. After
running these commands, I need to manually clean up the following files:
- FenixRobolectricTestRunner
- LocaleManagerExtensionTest
4 years ago
Michael Comella b0cfa3ee5c For #9605: add FenixRobolectricTestRunner.
This class will help us reduce duplication by specifying the
configuration within the test runner rather than each test needing to
specify it itself.

This class is adapted from Firefox for Fire TV:
  https://github.com/mozilla-mobile/firefox-tv/blob/master/app/src/test/java/org/mozilla/tv/firefox/helpers/FirefoxRobolectricTestRunner.kt
4 years ago
Michael Comella 392dda5eda For #9605: remove unnecessary @RunWith(Robolectric in unit tests.
robolectric increases the run time of tests so it's important to remove
them when they're unnecessary.

Between this change and the last one, the unit test runtime was reduced
by ~10s.
4 years ago
Michael Comella f2acef66b5 For #9605: remove unnecessary @RunWith(AndroidJUnit4) in unit tests.
In unit tests, this annotation annotations defer to robolectric, non-trivially
increasing test runtime so it's important to remove them when they're
unnecessary.
4 years ago
Aaron Train cb009f915c
No issue: re-enable libraryMenuItemsTest and backButtonTest (#9639) 4 years ago
MickeyMoz f46cfc2ad2 Update Android Components version to 38.0.20200403130109. 4 years ago
Mozilla L10n Automation Bot 8413b8133d Import l10n. 4 years ago
Michael Comella 4a8dc5b54f No issue: add kdoc to HomeActivity.
We could consider renaming the Activity to make it clearer that it's the
main activity and doesn't just feature the homescreen but I'm concerned
that renaming it will break too many things (e.g. automation that starts
a specific activity). For quick fix, I added this comment.
4 years ago
Sawyer Blatz e3ed7ed268
Issue #9128 & #9222 & #9499: Refactors snackbar creation and fixes placement (#9628) 4 years ago
Codrut Topliceanu 8c43935ba3
For #7978 - Put views above button in scrollView (#8819) 4 years ago
Gabriel Luong dc6d479da3
For #6174 - Add telemetry for WebExtensions (#8318) 4 years ago
Mihai Adrian 7043f9ee4e
For #9604: Swap and adjust margin with padding to avoid text being cut (#9617) 4 years ago
Michael Comella c15a005ca8 No issue: remove unused FirefoxTestRunner.
It would be used for on device tests but it doesn't seem to hooked up
currently.
4 years ago
Mozilla L10n Automation Bot 202172cd04 Import l10n. 4 years ago
mcarare fac61fbb41 For #9422: Nit: Fix xml indenting 4 years ago
mcarare 4d0b37a3b8 For #9422: Align widget text to viewStart to support RTL layouts 4 years ago
Emily Kager 327009efc4
For #768: Add first time PWA dialog (#9308)
Co-authored-by: Tiger Oakes <toakes@mozilla.com>
4 years ago
Sebastian Kaspari 045b4a5715 Use same configuration for "forPerformanceTest" builds like we do for "fennec" flavor builds. 4 years ago
David Walsh 26137f63a2
Prevent favicons from flashing when items are selected in History (#9233) 4 years ago
Mihai Adrian 8cd6d7460c
For #9336 Check current destination before navigating (#9353)
* For #9336 Check current destination before navigating

* For #9336 Update unit test to check for navigateSafe
4 years ago
Mihai Adrian 90787cf630
For #9423: Align preference title and summary to viewStart (#9426)
* For #9423: Align preference title and summary to viewStart

* Update checkbox_left_preference_etp.xml

Co-authored-by: Jeff Boek <jeff@jeffboek.com>
4 years ago
ekager fd60270da8 For #9533 - Switch to using enum for Library Item Selected Telemetry 4 years ago
Grisha Kruglov 8d3d030feb Closes #9553: Only update account UI state once when creating SettingsFragment 4 years ago
ekager 96c6401457 For #8125 - Send top sites count with metrics ping 4 years ago
mcarare 8c398c86ef For #9365: Partially reverse menu items order when using top toolbar 4 years ago
mcarare b119700820 For #9365: Update naming to reflect history item 4 years ago
Kate Glazko cca3dae290 NoIssueFixMetropolisAccountPref 4 years ago
Sawyer Blatz 208a58bc58
Issue #9598 & #8697: Fixes force expand crash (#9599) 4 years ago
codrut.topliceanu 3d1d146c94 For #9549 - Scrolling to top sites now includes header. 4 years ago
mcarare a2ea53d8f2 For #9574: Remove category layout from LeakCanary SwitchPreference 4 years ago
ekager 4159cd3da7 Closes #9564 : Fixes cut off strings in ETP panel 4 years ago
Mihai Branescu 24596fd3cd For #9109 - remove the sync error highlight from three-dot menu 4 years ago
Kate Glazko d9d5de98c9 For 3687 Use Metropolis Font for Header 4 years ago
Mozilla L10n Automation Bot 9043120dd7 Import l10n. 4 years ago
Grisha Kruglov 54b7fd8834 Make sure reconnect item is displayed in HomeMenu in case of account problems
AccountObserver listeners were being triggered correctly, however, during every time
we open HomeFragment, home menu gets re-created, which causes us to re-run the initialization
block. Before this patch, the init block would never touch the account manager.
After this patch, it will query it if account manager has already been initialized.
4 years ago
Grisha Kruglov 60943df6d9 Closes #9561: Fix initialization order in HomeMenu
`init` blocks are executed before `val` initialization which is declared afterwards
in the class. In this case, we had `quitItem` and `reconnectToSyncItem` as lazy,
but declared after the `init` block which may need them. And so, while this compiles
just fine, in practice we run into an NPE as the `init` block tries to get the lazy's value.

Simply re-ordering initialization fixes the problem.
4 years ago
Arturo Mejia 804eb0f5ba For issue #8520: Polish Add-on manager UIs 4 years ago
Sawyer Blatz 1a2b65d854
Issue #9472: ForceExpand browser toolbar when navigating (#9552) 4 years ago
Oana Horvath 5f68d6cb29
Updated the method to verify system notifications and added new tests for media notifications (#9330) 4 years ago
ValentinTimisica cee34893ed
For #8412: Passes error handling function to 'CustomTabWindowFeature' (#8903)
* For #8412: Passes error handling function to 'CustomTabWindowFeature'

Change required for showing error message when the app can't handle a specific
scheme. Implemented in AC:
https://github.com/mozilla-mobile/android-components/pull/6122

* Upgrade AC version

Co-authored-by: Sawyer Blatz <sdblatz@gmail.com>
4 years ago
Grisha Kruglov f76acc5db1 Closes #9530: Don't crash on failed avatar fetches 4 years ago
Mozilla L10n Automation Bot fd263d8329 Import l10n. 4 years ago
Grisha Kruglov 6c38b77315 Part 6: Kick-off account manager initialization after visual completeness
In order to hide the time it takes for the account manager to be initialized
(which always involves disk IO, and often network IO), let's kick it off
after "visual completeness".
This makes sure that for most users, by the time they interact with the account
manager-related functionality (e.g. in Settings), it's ready to go.

Also, for signed-in users, this will establish background sync workers.
4 years ago
Grisha Kruglov 057e28d4e4 Part 5: Refactor HomeMenu<->HomeFragment interaction
This refactor "reverses" relationship between these two classes, allowing
HomeMenu to inform its parent, HomeFragment, of any changes to the menu.

Once that's in place, we start observing account manager changes (once its ready)
for account problems.

This solves two problems:
- initialization of the account manager is no longer necessary to build a home menu
- home menu now starts observing changes to the account manager's state (before it was static)
4 years ago
Grisha Kruglov 029fae4559 Part 4: Make sure 'sync is on' snackbar does not initialize account manager 4 years ago
Grisha Kruglov eb98df4edd Part 3: Mark accountManager as 'lazy' in Mode.kt
This is enough to cause it to be initialized only if we're going through onboarding.
4 years ago
Grisha Kruglov 3efaa516ca Part 2: Do not eagerly initilize account manager within HomeActivity
Instead of always kicking off accountManager's init and telling it to sync right away in
'onResume', we move these tasks to some abstract point later on, whenever account manager
is available.
4 years ago
Grisha Kruglov 0677fc35de Part 1: Add 'accountManagerReady' queue to BackgroundServices
This gives us an ability to perform tasks against 'accountManager' without
causing its immediate initialization.
4 years ago
Grisha Kruglov be1fa8df7d Pre: introduce a RunWhenReadyQueue
This replaces the StartupTaskManager we had with a more general class.
New implementation is a thread-safe "gated task executor", which either
runs the task right away if it's marked as 'ready', or queries it to be
executed later on.

This ability to either execute or queue a task will be useful later on in the
commit series.
4 years ago
Aaron Train 4d139d52c4
Closes #9189: Fixes "static asset not found" error in doNotSaveLoginFromPromptTest, saveLoginFromPromptTest UI tests (#9439)
AndroidAssetDispatcher class dispatcher was attempting to open a local asset with a query suffix from the request. If query suffix is found, remove it. Re-enable saveLoginFromPromptTest() and doNotSaveLoginFromPromptTest()
4 years ago
David Walsh 9679b91e82 For #9525 - Add bottom margin to top sites header 4 years ago
Sawyer Blatz 4ac29530cd
Issue #9132: Update to search animation for top toolbar (#9524)
* let animation in top toolbar mode play nicely.

* remove duplicate methods, make code readable.

* migrate getToolbarNavOptions method to BrowserAnimator, one method to rule them all.

* Update linting

Co-authored-by: ahmedmamdouh13 <ahmedmamdouh13196@gmail.com>
4 years ago
ekager 3d55578242 Use existing strings for announcement 4 years ago