Commit Graph

571 Commits (8866eb3801a49383aac9a71e5855cfb5d3b402ec)

Author SHA1 Message Date
Tiger Oakes d9357f1e32 For #12801 - Extra debug menu trigger, disable if already triggered 4 years ago
Jeff Boek 11e2137fab
For #12806 - Adds unit tests to cover `ToolbarView.update()` (#12807) 4 years ago
Tiger Oakes c08d375c18
Move settings in components (#12675) 4 years ago
Tiger Oakes 0abb2c4f8b Add tests for web push integration 4 years ago
Tiger Oakes e809df0858 Pass settings and metrics to CFR 4 years ago
Tiger Oakes 51937e73fc
Closes #10924 - Cleanup SavedLoginsAuthFragment (#10930) 4 years ago
Christian Sadilek 16b6776938 Update Android Components to 51.0.20200717190031 4 years ago
Tiger Oakes 13949d6968
Test migration classes (#12677) 4 years ago
Tiger Oakes 67fda80453
Add tests for login exceptions (#12681) 4 years ago
Tiger Oakes aa31eb0fa5
Fix failure in handleWhatsNewGetAnswersClicked (#12682) 4 years ago
Mihai-Eduard Badea 1823fdb66d
For issue #9949 - Bookmarks/History deletion inconsistencies (#12630)
- Added the undo action for deleting individual history items by creating a new field to the history state containing the id's of the history items that are pending for deletion; This field is used inside the update function from the view to show/hide the items.

 - Added a new check inside the "deleteMulti" method from BookmarkFragment that calls the showRemoveFoldersDialog to prevent the user from being able to delete one or more bookmark folders without being asked for confirmation, as in #8648.

Co-authored-by: Mihai Eduard Badea <mihai.badea@softvision.ro>
4 years ago
Tiger Oakes eed20b43b9
Test session control controller (#12652) 4 years ago
ekager e358f95eed For #12364 - Only show PWA prompt the third time a user visits installable site 4 years ago
Tiger Oakes ac3df6bc5e
Add tests for adapters in collections (#12649) 4 years ago
Elise Richards 023a4983fa
For #10173: login duplicates and save (#11208)
* Extract controller into it's own class. Implement find dupes and filter based on username.

Create edit login controller. Add text watchers and check for duplicates.

Edit controller test

* Find duplicates and save to store

* Retrieve duplicates from AC and check list on username text changed

Move duplicates logic into the controller

* Add glean pings for delete and edit. Move logic for login manipulation into the datastore.

* Use correct threads in controller. Enable save button when applicable.

Save enabled in datastore.

Move login data to datastore

Rebase with password error states

Update metrics to be more specific for edit

* Create logins controller for AC calls

* Interactor and controller methods for edit login. Add edit view to separate out some layout manipulation.

Inflate view in edit fragment. Double layout showing up.

Edit view

Controller tests

Controller tests passing

Interactor tests

Lint and detekt cleanup

* Remove datastore and use storage controller for all logins calls to password storage.

Addressed comments

Lint
:

Rebase - 1
4 years ago
Tiger Oakes 4dd0c0f224
For #12457: Add MockK matcher for intents (#12612) 4 years ago
Mugurell e1fc0cc038
Ensure logins deletion (#12507)
* For #11227 - Cleanup saved logins list when one is selected

Selecting a saved login will open a detail screen for it from where users can
change details or even delete that particular login.
After the change is made the user is brought back to the list of saved logins
where for a brief moment (< 1s) until we get a new response from
passwordsStorage.list() the user can see and even interact with the old list
of items, which may still contain the just deleted one.

To avoid users seeing obsolete logins or even interacting with them (selecting
a previosuly deleted item will result in a crash) we will clean the list of
logins just before the selected login is opened in the detailed view.
When returning for a brief moment the users may see the "loading" UX until
passwordsStorage.list() returns the up-to-date list of logins to display.

* For #11227 - Refactor SavedLoginsView to be closer to MVI

- Interactors should only get passed other Interactors or Controllers as
dependencies to which they should delegate user actions.
- Controllers should hold most of the business logic and get passed all final
dependencies they need to do their job.
4 years ago
Tiger Oakes 2d066d77ad
Add tests for sync, wifi, and push (#12581) 4 years ago
Tiger Oakes 2291fb07aa
For #12565: Add Locale settings tests & use activity (#12579) 4 years ago
Hakkı Kaan Çalışkan 057711e6fb No issue: Uncomment forgotten assert 4 years ago
James Hugman 22689a9ff5 Remove need to specify component names for new intents 4 years ago
James Hugman 98a33ea82b Changed home_* style links to urls_* to reflect that the destination is a set of links, rather than where the screen is 4 years ago
James Hugman 1629878a66 Add install_search_widget 4 years ago
James Hugman 709fedd4d7 Add unit tests for deep links 4 years ago
Tiger Oakes 6be39aebde
Add tests for StartupReportFullyDrawn (#12560) 4 years ago
Tiger Oakes d4bb432e24
Add helper for underlining text (#12520) 4 years ago
Tiger Oakes a0491b702e
Fix nav graph and theme tests (#12567) 4 years ago
Tiger Oakes d0e9f1f165
Update Kotlin dependency (#10806) 4 years ago
mcarare 4153c11ea8 For #12503: Add unit tests for permissions details view. 4 years ago
ekager 9ed85510ae For #7094 - Adds save login exceptions 4 years ago
Tiger Oakes 69020a1f26
For #12457 - Add MockK matcher for nav directions (#12262) 4 years ago
Tiger Oakes 1ff64cab67
Add tests for search (#12437) 4 years ago
Tiger Oakes e9fb1a61c7
Test viewholders in home.sessioncontrol (#12524) 4 years ago
Tiger Oakes c265a7089a
Fix Robolectric tests SDK version (#12464) 4 years ago
Michael Comella 9fa241fbb0 No issue - post: mock profiler object in DefaultTabTrayControllerTest.
Without this line, the tests fail when running the full suite (but not
this test in isolation, for some reason).
4 years ago
Grisha Kruglov 806f6031ae For #12433 - Allow synced tabs pull-to-refresh for non-critical account errors 4 years ago
Tiger Oakes c99a8f5cfa
Fixes #9832 - Change targetSdkVersion to Android 10 (#11014) 4 years ago
Sebastian Kaspari a2a7b11425 Issue #12311: BrowserToolbarController: Stop SessionFeature and release session from EngineView. 4 years ago
Christian Sadilek 216396d979 For #12353: URL copied to clipboard should not be extension/reader URL 4 years ago
Tiger Oakes 9ae1aa6f16 Add tests for exceptions 4 years ago
Tiger Oakes 67ce5ad5d9
Add tests for onboarding viewholders (#11522) 4 years ago
Tiger Oakes 720a590902
Add tests for browser helper classes (#12370) 4 years ago
Christian Sadilek 27c608d956 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
Tiger Oakes 8e8e5aea36
Extract radio group logic into helper (#11493) 4 years ago
ValentinTimisica 4a93a41bb2 For #11763: Fixes unit tests 4 years ago
Tiger Oakes 1ab5fe3eb9
Add method to test fragments in roboletric (#12261) 4 years ago
Tiger Oakes 41452e945b Move SearchProviderModel extension to class 4 years ago
Mugurell 0fb6bbc175 For #10401 - Hide Shortcuts if just one search engine is installed
Otherwise, the Shortcuts option which allows to choose with what search engines
to search would be redundant.
4 years ago
Sebastian Kaspari 388c144a62 SearchFragmentStore: Remove Session reference from state and read values from BrowserStore. 4 years ago
ekager f863c341e8 Updates AC to 49.0.20200702190156 and fixes breaking changes 4 years ago
Sawyer Blatz 306505fee0
No issue: Remove feature flag for tips (#12172) 4 years ago
Tiger Oakes 6bde0378a2
Add tests for StrictModeManager (#12013) 4 years ago
ekager 60069395eb Update AC to 48.0.20200627130132 and fix breaking changes 4 years ago
Jeff Boek b1a8c0f483 For #9935 - Use the searchengine deferred 4 years ago
Kate Glazko 2ac8496315 For #12025: Set Search Shortcuts Off By Default 4 years ago
Sawyer Blatz 8a08cb941e
For #11479: Record open tabs count in metrics ping (#12024) 4 years ago
Marc Leclair ff5d00362b Added A-C version 48.0.20200626213814 4 years ago
Tiger Oakes 7287b5579f
Test settings about/advanced (#12023) 4 years ago
Tiger Oakes bcb2ef10ac
Add tests for PhoneFeature (#12021) 4 years ago
Tiger Oakes 80de3851f3
Add tests for OnSharedPreferenceChangeListener (#12019) 4 years ago
Mihai Branescu 93247e0b2f For #9425 - SearchFragment now reacts to undo operation for base engines 4 years ago
Mihai Branescu 46c1c130da For #9425 - Handle undo for custom search engines
On undo, get the template that the user entered for that engine and then
re-add it to the `CustomSearchEngineStore`
4 years ago
person808 ad90625b48 For #2165 - Add swipe to refresh gesture to bookmarks view. 4 years ago
Christian Sadilek 64440409b0 For #9100: Follow-up to fix memory leak in NotificationSessionObserver
The observer was moved and is now bound to the activity and its
context. If the activity is re-created we leak the observer and
therefore the activity itself.

With this we make sure to stop the observer and also don't use
the activity context to begin with.
4 years ago
ekager c77ddd8d26 For #11866 - Update back press logic for SearchFragment 4 years ago
Christian Sadilek 7be56ce4fa For #11798: Allow sharing of reader view pages 4 years ago
Sawyer Blatz 2d65faf232
For #11392: Rename Installation ping to FirstSession (#11869) 4 years ago
Mihai Branescu 49b617c999
For #9100 - Private browsing notification fixes
Co-authored-by: Seef <Saif Dara>
4 years ago
Mihai Branescu 632b64971f For #10467 - removed unused tests and resources related to blue dot notification 4 years ago
Tiger Oakes 0b781ae3b7 Add tests for collection creation controller 4 years ago
Tiger Oakes 4415702fa8 Add tests for share sheet 4 years ago
Tiger Oakes 9a8b800a76 For #8621 - fix intermittent test failures 4 years ago
Jeff Boek 2861421312 For #11112 - Adds save tabs to collection button to the no collections message 4 years ago
Tiger Oakes ccb532bb77
For #11534 - Don't check lastUsed mode for screenshots (#11827) 4 years ago
Tiger Oakes 18cc4c95c1
Add tests for ContextKt (#11824)
Migrated from an old branch by Kate

Co-authored-by: Kate Glazko <katglazko@gmail.com>
4 years ago
ekager 635c30510d No issue: refactor tabs tray to use interactor/controller, add tests 4 years ago
Mugurell 0ba1d266b3 For #9144 - Ignore previous Intent if activity is started from Recents
We'll now clearly differentiate between cold / hot starts of HomeActivity.kt.
This is needed because Android will resend the original Intent which initially
started the Activity whenever it is restarted from the Recents Screen if the
activity is already destroyed at that time. So in the event that the activity
was before started with an Intent to open a webpage for example whenever the
activity is restarted from Recents it will receive the same Intent to open a
webpage even though that Intent has already been consumed.

Activity's onCreate() will only use the intent processors when the activity is
cold started so that we'll only initially act upon Intents configured for
different behaviors inside the app.
If the activity is destroyed while in background and opened from Recents it
will not act upon the original Intent which is now resent by Android.

Activity's onNewIntent() will be called to act upon a new Intent if the
activity is hot started since we are declared as singleTask and it now has the
responsibility to delegate various intent processors to consume that Intent.
4 years ago
Emily Kager 44ff29bdc0 Revert "For issue #9949 - Bookmarks/History deletion inconsistencies"
This reverts commit 3feab90b19.
4 years ago
David Walsh 3feab90b19 For issue #9949 - Bookmarks/History deletion inconsistencies
- Added the undo action for deleting individual history items by creating a new field to the history state containing the id's of the history items that are pending for deletion; This field is used inside the update function from the view to show/hide the items.

 - Added a new check inside the "deleteMulti" method from BookmarkFragment that calls the showRemoveFoldersDialog to prevent the user from being able to delete one or more bookmark folders without being asked for confirmation, as in #8648.
4 years ago
Tiger Oakes f6efb386d6 Add tests for addon details 4 years ago
Tiger Oakes d3d5c8934f Cleanup tests for toolbar controller 4 years ago
Jonathan Almeida e6da2bd910 Fix breaking APIs in TabsAdapter and ViewHolder 4 years ago
David Walsh 8b24cdec42
For 11428 - Focus on home screen address bar when tab tray new tab is tapped (#11429) 4 years ago
Tiger Oakes 2fdebada11 Add tests for about viewholder 4 years ago
Tiger Oakes 294f29768d Test logins settings 4 years ago
Tiger Oakes 0d4ceb186c Add test for SearchStringValidator 4 years ago
Sawyer Blatz 0a9afbed42 For #11380: Update migration tip text 4 years ago
Sawyer Blatz 13d077eb66
For #11269: Telemetry for new reader mode position (#11385) 4 years ago
Tiger Oakes 651b2831fe Fix tests in toolbar controller 4 years ago
person808 d14b39a56e For #2165 - Implement pull-to-refresh gesture to sync history. 4 years ago
Tiger Oakes f0295048fa Remove Mockito 4 years ago
Jeff Boek cd3b6181b3 For #10374 - Adds quick contextual menu to tab switcher
Co-authored-by: person808 <kainaluh808@gmail.com>
4 years ago
Tiger Oakes 4b064afb81
Add tests for ext package (#11334) 4 years ago
ValentinTimisica 5200e00c4c For #5148: Adds tests for OpenSpecificTabIntentProcessor 4 years ago
Tiger Oakes 96d2307df0 Add tests for widget 4 years ago
Tiger Oakes 434a737abf Add tests for tips 4 years ago
Tiger Oakes c270a5c6f7 Fixes #8725 - Allow for async execution order 4 years ago
Christian Sadilek 05496faa66 Clear speculative session on engine settings change 4 years ago
ekager 6d4a673c6f For #8967 - Expose autofill logins setting in nightly 4 years ago
Sawyer Blatz e9189dc089 For #11045: Add reader mode to urlView 4 years ago
Tiger Oakes 1a19b06227
Simplify `PhoneFeature` code (#10810) 4 years ago
Jeff Boek 52c2fdb310
Remove tab tray feature flag (#11176)
* For #11171 - Removes feature flag for the new tab tray

* For #11171 - Removes all tab references from homeFragment

* For #11171 - Fixes unit tests

* For #11171 - Gets UI tests to compile and HomeScreenTest to pass

* For #11171 - Fixes `deleteMultipleSelectionTest`

* For #11171 - Fixes `openHistoryItemInNewPrivateTabTest`

* For #11171 - Fixes `openHistoryInPrivateTabTest`

* For #11171 - Fixes `openHistoryInNewTabTest`

* For #11171 - Fixes `openNewPrivateTabTest`

* For #11171 - Fixes tabbedBrowsingTests

* For #11171 - Fixes SettingsPrivacyTest

* For #11171 - Fixes TopSitesTest

* For #11171 - Fixes lint errors

* Ignore
4 years ago
Dennis Schubert d046d908fc Bug 1643132 - Remove native "Report site issue" functionality.
This will be replaced by the WebCompat team's system extension that ships as an android-component.
4 years ago
mcarare a910698007 For #11182: Set click listener also to icon button. 4 years ago
mcarare a7039b15e9 For #11182: Update unit tests to reflect click listener update. 4 years ago
person808 9272026b7e For #10193 - Remove page title when sharing links 4 years ago
Tiger Oakes a7e74e308b
Migrate some SessionManager usage to BrowserStore (#10789) 4 years ago
Tiger Oakes 2a0e2f2878 Fix failing CollectionCreationBottomBarViewTest 4 years ago
Tiger Oakes 6317eea690 Add tests for some of collection creation 4 years ago
Tiger Oakes 50441e28f1 Tests and cleanup for tracking protection 4 years ago
ekager 9ef4d9bdae For #10968 - Don't show ETP CFR if toolbar doesn't have window focus 4 years ago
Vishwa Patel 4da22c605a For #10834 - Adding Sync Tabs Feature in Fenix 4 years ago
Jeff Boek a6e77e3e8f For #10848 - Fixes unit tests 4 years ago
Jonathan Almeida 9f95cff6c4 Close #7749: Fix broken IntentReceiverActivity tests 4 years ago
Jonathan Almeida e995a98819 Revert "Disable failing intent handling unit tests"
This reverts commit c956f8b2afc988444771d86072adc94598c602c3.
4 years ago
Tiger Oakes 221792c074
Add tests for FenixOnboarding (#11057) 4 years ago
Gabriel Luong 63e529ac2b Added BrowserThumbnails dependencies 4 years ago
Jeff Boek 8662164b8a
Refactors the TabTrayDialogFragment to ditch that weird interactor (#11061)
* For #11056 - Removes unused argument when navigating to the collection creation fragment

* For #11056 - Moved the collection creation navigation logic to the TabTrayDialogFragment

* For #11056 - Moves navigating to the share screen from home/browser to the TabTrayDialogFragment

* For #11056 - We moved tab selection logic from home/browser to the tab tray dialog

* For #11056 - Moved new tab tapped logic to the tab tray dialog fragment

* For #11056 - Removes all interactor logic for the TabTrayDialogFragment

* For #11056 - Migrates the presentation / navigation around the TabTrayDialog to the androidx navigation library
4 years ago
ekager 20e358228e For #11015 - Switch Default ETP Setting to Standard 4 years ago
Tiger Oakes 749c95e0f0
Add tests for ReaderModeController (#11049) 4 years ago
David Walsh 4fdac4d608
For 10734 - Open tab tray when collection is opened from Home (#10751)
* For 10734 - Open tab tray when collection is opened from Home

* Update to work with tab tray drawer
4 years ago
Tiger Oakes 2397695fe5
For #10596 - Redirect moz://a URL (#10688) 4 years ago
Sawyer Blatz 7067e5c000
For #8125: Add default top site telemetry (#10752) 4 years ago
Jeff Boek 601aedda46 For #10504 - Removes "old" TabTrayFragment 4 years ago
Christian Sadilek 4e25f41a41 For #1824: Prevent extremely long URLs from locking up HomeFragment 4 years ago
codrut.topliceanu 7feae98944 For #9044 - Replace DownloadNotificationBottomSheetDialog with unobtrusive view
- Renamed DownloadNotification and removed DownloadState.dismissed dependency
- Improved DynamicDownloadDialog behaviour when scrolling
- DynamicDownloadDialog remains attached to tab until dismissed
- Fixed onTryAgain not working for resumed DownloadDialogs
4 years ago
Elise Richards edc75c3ad0
Fixes #9504: Edit logins (#9693)
* Create editable view and fragment. Update login info page to display options menu with edit and delete.

* Create feature flag for edit. Check flag in the login detail fragment and default to just delete.

* Add three-dot kebab options menu in login detail fragment. Add title to the login item.

* Nav to and from edit view on save and back pressed.

* Save login through AC login manager. Clear text in editable field on button click.

* Match colors, fonts, dimens to UX specs for edit logins. Enable password reveal/hide and clearing text fields.

* Refactoring logins fragments. Using component Login object for consistency.

Fetch login list when saved logins are opened. Fetch login details when detail view is opened.

Revert "Fetch login list when saved logins are opened. Fetch login details when detail view is opened."

This reverts commit 44fe17166c3332b330229258b2e8982832672e3b.

* Using parcelable login and Login component class to pass ids and items between fragments

* Retrieve login from storage when viewing login details.

Rename login logic for consistency.

Ktlint cleanup

Fix nits and naming consistency.

* UX consistency for login detail and edit login pages

* Rebasing with logins sort - updating logins store.

* Rebasing with logins sort - merging fragments and controllers.

* Lint and removing unused files.

* UX cleanup.

* Update string description
4 years ago
Sebastian Kaspari d58c022619 Integrate activity for showing past crashes. 4 years ago
ValentinTimisica 1e83f54a94 For #10343: Updates UI tests accordingly to 'Library' removal 4 years ago
codrut.topliceanu d1005dd236 For #8589 - Fix for accessibility navigation in ETP panel 4 years ago
Sawyer Blatz 02f6e6868e
For #10426: Adds identifier to Glean for 24 hours (#10446) 4 years ago
ValentinTimisica 77705d1a27 For #9505: Adds tests for sort saved logins 4 years ago
Christian Sadilek fee09c3092 No issue: Show article/page url instead of reader extension url 4 years ago
Jeff Boek d72e455c0d No Issue - Update to AC 41.0.20200505190119 4 years ago
Mihai Eduard Badea 02bd0cc203 For issue #8648 4 years ago
Arturo Mejia a8843def6c Fix CrashReporterService breaking changes 4 years ago
Mihai Branescu a16bfb27ef For #6557 - added unit tests 4 years ago
Mihai Branescu c4d76dce5a For #6558 - cleanup + added unit tests 4 years ago
ekager c4e83367f6 For #6832 - Fix various fragment not attached to a context crashes 4 years ago
ekager 5d51c4f059 Don't use ProcessLifecycleOwner for view-tied consume 4 years ago
Grisha Kruglov 853a0acab4 Closes #4046: Always display 'Desktop' bookmarks folder
See https://github.com/mozilla-mobile/fenix/issues/4046 for a detailed discussion of this.

In short, this patch removes code that would conditionally hide desktop bookmarks depending
on the signed-in state of the browser.
4 years ago
Michael Comella f49fc6dad2 For #8803: hook up frameworkStart metric. 4 years ago
Michael Comella dbf733d70a For #8803: add StartupFrameworkStartMeasurement.
This class controls the central logic around the metrics we want to
record.
4 years ago
Michael Comella 7f618a6a7c For #8803: add Stat and test.
We need to access the data in stat to get the process start time, so we
can calculate the time from process start until application.init for the
frameworkStart probe.
4 years ago
mcarare e87ea301ab For #9536: Update tests to check opened tab is in same browsing mode 4 years ago
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
ekager 8c238402e2 For #9692 - Fix "Install" PWA menu item labeling 4 years ago
mcarare 8cdc523de9 For #9698: Add unit tests for Context extension getStringWithArgSafe 4 years ago
Christian Sadilek 0f1bff7402 No issue: Refactor readerview to use browser-state 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