1
0
Fork 0
Commit Graph

608 Commits (69a9aeebae193107ba122bf60e5b60386666d85b)

Author SHA1 Message Date
Elise Richards 665fb8d60c
#10824: Onboarding telemetry (#11867)
* Onboarding events and tracking

* Rename metrics for consistency

* Add reference to PR for the data review

* Add default values to onboarding events
2020-06-25 13:21:31 -05:00
David Walsh 77ed670558 For #11860 - Conditionally show add to collection button on Home screen 2020-06-24 21:41:19 -04:00
mcarare a056e86e4f For #8080: Dismiss menu when swiping away from its anchor. 2020-06-24 21:37:57 -04:00
person808 5f7e0e4dd6 Followup for #11442 - Add tab counter menu metrics to home fragment. 2020-06-24 10:20:51 -07:00
Jeff Boek 2861421312 For #11112 - Adds save tabs to collection button to the no collections message 2020-06-23 08:17:55 -07:00
Tiger Oakes ccb532bb77
For #11534 - Don't check lastUsed mode for screenshots (#11827) 2020-06-22 17:38:58 -07:00
ValentinTimisica e9bb11e22d Fixes #9205: Changes add-ons and 'Open links in apps' icons from menus 2020-06-22 12:09:19 +03:00
MarcLeclair b52091ed34
For #11660: added prefetch for topsites and update in onCreateView() (#11668)
* For #11660:added prefetch for topsites

TopSites will be prefetched with observerOnce (wrapper around observerForever).
Also, the SessionControlView.update() is called right away instead of waiting from consumeFrom
in the HomeFragment.onCreateView() which will allow the UI to render all at once on its first
perform traversal

* Removed the submitList(null) since it retriggered a drawing on lower end device
2020-06-18 19:43:20 -04:00
Sachin 36b1c710e7
for #11617 added a resetPoliciesAfter ext function for StrictMode, and replaced all existing calls to "resetAfter" with "resetPoliciesAfter" (#11619) 2020-06-16 11:12:18 -07:00
David Walsh 8b24cdec42
For 11428 - Focus on home screen address bar when tab tray new tab is tapped (#11429) 2020-06-12 17:55:07 -05:00
liuche 35fa445165
Issue #11112 - Update empty collections string + tests. (#11538) 2020-06-12 18:01:38 -04:00
mcarare 4b04a140fc For #11229: Update etp strict option title content description. 2020-06-11 10:20:01 +03:00
Jeff Boek cd3b6181b3 For #10374 - Adds quick contextual menu to tab switcher
Co-authored-by: person808 <kainaluh808@gmail.com>
2020-06-10 16:50:28 -07:00
ValentinTimisica f937c96c12 For #5148: Switch to the correct tab on media notification clicked
Processing the intent in OpenSpecificTabIntentProcessor to be able to switch
to the tab where audio/video is playing
2020-06-09 22:39:39 -04:00
ValentinTimisica 3a28704fa6 For #11132: Replaces wrong icons from menus 2020-06-09 22:19:43 -04:00
ValentinTimisica dc37baff0b For #11132: Rearranges home menu items 2020-06-09 22:19:43 -04:00
Sachin 8fdc28010d
for #10839 added IO coroutine to check onboarding stat from sharedpref (#11338)
changed coroutine scope to fragments lifecycle
2020-06-08 15:52:10 -07:00
Sachin 74948cb3f1
for #7225, Changed strictMode thread penalty to dialog on startup and back to logs after startup is done. (#10831)
for #7225, refactored and cleanup the branch.

for #7225, change strict mode policy only on main process.

for #7225, setting thread policy inside a seperate thread to keep it from getting overridden in activities.

for #7225 removed Handler().postAtFrontOfQueue as a solution due to unknown side effects. moved the enableStrictMode function to be static so we can reuse it.

for #7225 lint check

for #7225 created strict mode manager and moved enabledStrictMode function inside it.

for #7225 removed penalty death on network

for #7225 added allow disk access on thread for already existing violation


strict mode running in main process to see if it passes the gitlab check, will revert it if it doesnt

allowed diskread for super.onCreate for home activity

added comments for disk violation oncreate homeactivity

added fragment manager inside strictmode manager

allowed disk read for onboarding

allowed disk read for cachedTopSites
2020-06-08 10:45:33 -07:00
mcarare a0d9189321 For #11229: Update onboarding ETP copy. 2020-06-05 14:18:25 -04:00
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
2020-06-05 12:59:08 -05:00
David Walsh d862d58051 Scroll to the top of home when using the tab tray 2020-06-02 23:08:20 -07:00
Jeff Boek 2dd0a3cb9e
Implement tab tray design improvements and fix close functionality. 2020-06-02 15:03:58 -05:00
ValentinTimisica 591e2c9a6f Fixes #9696: Adds Add-ons menu item to the home menu 2020-06-02 09:32:30 -04:00
mcarare c4f7a32eae For #9583: Increase touch targets for onboarding elements. 2020-06-02 09:26:38 -04:00
Vishwa Patel 4da22c605a For #10834 - Adding Sync Tabs Feature in Fenix 2020-06-01 16:52:40 -04:00
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
2020-05-29 17:17:56 -05:00
Jeff Boek 3946ec11de
Polish homescreen (#11065)
* For #10505 - Adjusts wordmark margins

* For #10505 - Removes topsite header, fixes collections header size and removes divider

* For #10505 - Restyle the top site items on the homescreen
2020-05-29 17:09:12 -05:00
ValentinTimisica 9f265fd62f Fixes #10064: Open help articles in normal tab instead of custom tab 2020-05-29 09:26:46 +03:00
David Walsh 267cf35edb For 11001 - Show close all tabs above tab tray 2020-05-28 19:39:56 -07:00
Sawyer Blatz 94d741864e For #9488: Add search widget CFR 2020-05-28 15:15:25 -07:00
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
2020-05-28 10:22:12 -05:00
David Walsh 248237290e
For #10865 - Implement 3 dot menu for tab tray (#10869) 2020-05-27 13:07:03 -05:00
David Walsh 5e4fd460f8 Remove onTabClosed from interactor 2020-05-27 08:45:15 -07:00
David Walsh 8b843ac9e5 Fix elevation for snackbar and fab 2020-05-27 08:45:15 -07:00
David Walsh e9bcc9bb1e Move snackbar to TabTrayDialogFragment 2020-05-27 08:45:15 -07:00
David Walsh f653964ee1 For #10864 - Display snack bar to undo closing tabs 2020-05-27 08:45:15 -07:00
Tiger Oakes 2397695fe5
For #10596 - Redirect moz://a URL (#10688) 2020-05-26 11:06:01 -07:00
Grisha Kruglov b26ac51e90 For #10494: Process HomeMenu builder changes on the main thread
Problem was that we were trying to process menu changes (in response to account manager events) on some background thread as that's what account manager emits them on, so some code internally in PopupWindow's dismiss handling (i think, didn't dig very deeply here) was silently giving up and we'd get into a bad state.

The reason this seemingly only happened if you quickly opened a menu on startup is because account manager isn't initialized until sometime after the startup finished. So the trick was to open the menu (and register account manager state callbacks) before it got initialized, so that the callbacks are invoked.

This should also reproduce in other, much more obscure ways, e.g. if you open the menu right before sync is scheduled to run in the background, change FxA password on another connected client, and then eventually receive a onAuthenticationProblem callback.
2020-05-22 13:50:57 -07:00
Sawyer Blatz 7067e5c000
For #8125: Add default top site telemetry (#10752) 2020-05-22 13:10:09 -07:00
Jeff Boek 601aedda46 For #10504 - Removes "old" TabTrayFragment 2020-05-21 15:17:20 -07:00
Jeff Boek a674c5dfe7 For #10504 - cleans up tabLayout colors 2020-05-21 15:17:20 -07:00
Jeff Boek 4e499e7a48 For #10504 - Adds tabTrayDialogInteractor to browserfragment 2020-05-21 15:17:20 -07:00
Jeff Boek 97d66cce56 For #10504 - Creates the TabTrayDialogFragment 2020-05-21 15:17:20 -07:00
ekager 516a6fe9f7 For #6832 - Only emit session changes if fragment is attached 2020-05-21 10:11:50 -07:00
Christian Sadilek 4e25f41a41 For #1824: Prevent extremely long URLs from locking up HomeFragment 2020-05-21 13:11:07 -04:00
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
2020-05-21 10:02:51 -04:00
Tiger Oakes f7b4f1c959
Cache findViewById calls in session control (#10575) 2020-05-12 14:05:08 -07:00
ValentinTimisica b2e5820364 For #10343: Remove 'Library' functionality from the app
Also adds Bookmarks and History items to browser menu.
2020-05-11 10:22:19 -07:00
Jeff Boek 58ca5d0e3a For #10341 - Always show collections placeholder with new tab tray enabled 2020-05-07 15:38:17 -07:00
Simon Chae a851b76ea3
Update Android Components version to 41.0.20200506130132 (#10443) 2020-05-06 13:17:17 -04:00
Mihai Branescu 6f97e75579 For #8643 and #7606 - illustrations are now connected to their radio buttons 2020-05-06 09:18:27 +03:00
Mihai Branescu cde31cf785 For #8643 and #7606 - Changed toolbar picker illustrations according to theme 2020-05-06 09:18:27 +03:00
Mihai Branescu 16b7a9399b For #8643 and #7606 - Changed theme picker illustrations according to theme 2020-05-06 09:18:27 +03:00
Mihai Branescu 4c0af91b7b For #8643 and #7606 - Changed tint for onboarding icons 2020-05-06 09:18:27 +03:00
Jeff Boek a8a90bd4d6
For #1063: Put tab tray behind a feature flag and hidden pref (#10313)
* For #1063 - Adds feature flag and pref for new tab tray

* For #1063 - Swaps add tab to tab tray button when newTabTray is enabled

* For #1063 - Creates hidden preference to use new tab tray

* For #1063 - Hides tabs on home screen when setting is enabled

* For #1063 - Navigate to new tab tray from browser with setting enabled

* For #1063 - Fixes regression where we dont show the new tab message with no tabs and no collections

* For #1063 - Fixes crash when toggling to private mode on the home screen

* For #1063 - combines both settings. Cleans up lint errors
2020-04-30 15:53:10 -05:00
ekager 2e27bbd15d No issue - Remove unused data class TopSiteItem 2020-04-29 18:06:02 -07:00
mcarare 1aa473b112 For #9913, For #9914: Remove touch delegate when button is disabled. 2020-04-27 11:57:51 -07:00
mcarare e830da59b7 For #10180: Remove touch delegate when button is disabled.
Also refactored multiple if's into a when.
2020-04-24 13:28:29 -07:00
mcarare 2edd4b39a4 For #9913, For #9914: Remove button when disabling it.
Setting visibility to GONE allows clicks to parent view in that space.
2020-04-24 16:42:47 +03:00
mcarare cc67de29bf For #10091 Also disable play/pause button when hiding it. 2020-04-23 09:22:01 -07:00
ValentinTimisica da3fca0f29 Fixes #10109: Adds content description for browse privately card content 2020-04-23 16:59:42 +03:00
ekager c4e83367f6 For #6832 - Fix various fragment not attached to a context crashes 2020-04-22 20:56:35 -07:00
Sawyer Blatz dce16964c0
For #9208: Adds in-product prompt to homescreen (#9836) 2020-04-22 14:29:43 -07:00
ekager 66d9a24b28 Closes #9928 - Updates private browsing text description 2020-04-21 09:00:06 +03:00
ekager 5d51c4f059 Don't use ProcessLifecycleOwner for view-tied consume 2020-04-20 12:07:37 -07:00
ekager 5014cd78ec No issue: Fix leaking sessionControlInteractor 2020-04-20 12:07:37 -07:00
ekager 6f77ec5951 Use HomeFragment viewLifecycleOwner for BrowserSessionsObserver 2020-04-16 21:00:27 -07:00
Grisha Kruglov 0ec6d266e8 Use HomeFragment's viewLifecycleOwner as the lifecycle for accountManager observer registry
If we just use the HomeFragment itself, we end up with a memory leak since the lifecycle events
that would clean up the registry (e.g. destroy) won't run (if the fragment is retained in the backstack, for example).
2020-04-16 21:00:27 -07:00
Sawyer Blatz 8185ba793e
For #9857: Create button style (#9858)
* For #9857: Creates text button style

* Adds lint check

* Fixes onboarding cards
2020-04-15 15:49:02 -07:00
ekager 5b1cdbd8bf For #3194 - Pause media while undo snackbar appears 2020-04-14 09:55:39 +03:00
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
2020-04-13 21:43:45 -07:00
ekager b8fba63be4 For #9890 - Do not display full screen snackbar with toolbar padding 2020-04-13 14:56:51 -07:00
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.
2020-04-09 16:06:11 -07:00
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
2020-04-06 11:00:47 -07:00
Sawyer Blatz e3ed7ed268
Issue #9128 & #9222 & #9499: Refactors snackbar creation and fixes placement (#9628) 2020-04-02 12:30:13 -07:00
ekager 96c6401457 For #8125 - Send top sites count with metrics ping 2020-04-01 15:27:39 -07:00
mcarare 8c398c86ef For #9365: Partially reverse menu items order when using top toolbar 2020-04-01 15:21:22 -07:00
mcarare b119700820 For #9365: Update naming to reflect history item 2020-04-01 15:21:22 -07:00
codrut.topliceanu 3d1d146c94 For #9549 - Scrolling to top sites now includes header. 2020-04-01 10:28:04 -07:00
Mihai Branescu 24596fd3cd For #9109 - remove the sync error highlight from three-dot menu 2020-04-01 10:42:00 +03:00
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.
2020-03-31 16:07:35 -07:00
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.
2020-03-31 16:07:35 -07:00
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)
2020-03-30 21:43:38 -07:00
Grisha Kruglov 029fae4559 Part 4: Make sure 'sync is on' snackbar does not initialize account manager 2020-03-30 21:43:38 -07:00
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.
2020-03-30 21:43:38 -07:00
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>
2020-03-30 12:07:00 -07:00
David Walsh d989616f62 Add top sites heading to home screen 2020-03-30 10:29:40 -07:00
mcarare f52fa44207 For #9498: Replace navargs with viewModel to remember if scroll to tab 2020-03-30 09:56:51 -07:00
mcarare ab78951146 For #9496: Vertically align collection name and icons to collection icon 2020-03-30 08:30:06 -07:00
Sebastian Kaspari 02aabea14a Update to new feature-media API. 2020-03-29 23:13:13 -07:00
mcarare 18533d3434 For #8764: Use list component for items in collections 2020-03-27 22:14:59 -07:00
mcarare 62bbbd9e37 For #8764: Update collection design, including list elements 2020-03-27 22:14:59 -07:00
mcarare e8ad2389ac For #7356: Scroll to selected tab when pressing tab overview 2020-03-27 14:13:26 -07:00
Sebastian Kaspari 0f0d56e60a Issue #5208: Use new tab/collection restore API. 2020-03-26 10:55:12 -07:00
Mihai Branescu 494db56ea5 For #9207 - changed status bar color in home fragment to match gradient background 2020-03-24 23:44:46 +02:00
Mihai Branescu ab04155222 For #8653 - changed menu strings 2020-03-22 00:03:26 +02:00
mcarare 756b1fbadd For #9140: Remove drawable from title in empty state panes 2020-03-19 14:32:40 +02:00
Jonathan Almeida ffd4cdd970 For #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://`
2020-03-17 17:21:09 -04:00
codrut.topliceanu 030bd38631 For #8561 - Scroll to topSites on app cold start 2020-03-12 10:54:58 -07:00
Jeff Boek c862ca93ba No issue - Fixes shadow on top layout 2020-03-11 22:59:42 -07:00