1
0
Fork 0
Commit Graph

1866 Commits (15ff4726a0a90d7be7a89f60e706d543b969ab99)

Author SHA1 Message Date
Grisha Kruglov 42d6915699 Fennec migration: enable logins migration 2019-12-09 13:35:22 -08:00
Jeff Boek 45c6e3a784 For #1607 - Passes "custom" as the search engine identifier for custom engines 2019-12-09 11:47:05 -08:00
Severin Rudie dfea877fb7 No issue: small installedSearchEngineIdentifiers readability refactor 2019-12-09 10:58:19 -08:00
Severin Rudie 2aa80eff95 No issue: tests installedSearchEngineIdentifiers 2019-12-09 10:58:19 -08:00
Severin Rudie d3ff98816d No issue: begin moving FenixSearchEngineProvider into a testing harness 2019-12-09 10:58:19 -08:00
Severin Rudie 5f393bd5d4
For #5334: added private custom tab processor (#6845)
* For #5334: added private custom tab processor

* For #5334 - Fixes up IntentReceiverActivity for handling intents

* For 5334: update styling for private custom tabbs

* For 5334: update tests to account for new processors

Note that two are still failing. These appear to be true failures, and will be corrected in a later commit.

* For 5334: fixes bug introduced by changes to IntentReceiverActivity

RCA: intent className and extra were previously set based on which processors matched, not which successfully processed. This patch reintroduces that behavior.

* For 5334: add tests for custom tabs processing
2019-12-06 10:57:54 -08:00
kglazko 300d8317e1
Issue 5366 Vector Drawable Compat (#6904) 2019-12-05 19:54:32 -08:00
mcarare 45b9ffd66e For #6917 Emit mode change only when new mode is different from current 2019-12-05 11:10:14 -08:00
Mihai Adrian 3283d6ed0b For #6910 Align shortcuts in private onboarding panel style to… (#6950)
Divider only shows when both panel and "Search with" are visible
2019-12-05 09:37:20 -08:00
Mihai Adrian cbdf83c12a For #6943 Hide supportActionBar in onResume, not onCreate (#6978) 2019-12-05 09:36:39 -08:00
Gabriel 56b21426eb
For #5574 - Migrate SessionControl to LibState (#6651)
* For #5574 - Part 1: Port TabAction.SaveTabGroup to TabSessionInteractor and SessionControlController. (#6651)

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

* For #5574 - Part 2: Port TabAction.PrivateBrowsingLearnMore to TabSessionInteractor and SessionControlController (#6651)

* For #5574 - Part 3: Port TabAction.ShareTabs to TabSessionInteractor and SessionControlController (#6651)

* For #5574 - Part 4: Remove unused TabAction.Share and TabItemMenu (#6651)

In #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 #5574 - Part 5: Port TabAction.PlayMedia and TabAction.PauseMedia to TabSessionInteractor and SessionControlController (#6651)

* For #5574 - Part 6: Port TabAction.Select to TabSessionInteractor and SessionControlController (#6651)

* For #5574 - Part 7: Port Onboarding.Finish to OnboardingInteractor and SessionControlController (#6651)

* For #5574 - Part 8: Port TabAction.Close and TabAction.CloseAll to TabSessionInteractor and SessionControlController (#6651)

- Removes TabAction

* For #5574 - Part 9: Port CollectionAction.Delete to CollectionInteractor and SessionControlController (#6651)

* For #5574 - Part 10: Port CollectionAction.ShareTabs to CollectionInteractor and SessionControlController (#6651)

* For #5574 - Part 11: Port CollectionAction.AddTab and CollectionAction.Rename to CollectionInteractor and SessionControlController (#6651)

* For #5574 - Part 12: Port CollectionAction.RemoveTab to CollectionInteractor and SessionControlController (#6651)

* For #5574 - Part 13: Port CollectionAction.OpenTab to CollectionInteractor and SessionControlController (#6651)

* For #5574 - Part 14: Port CollectionAction.CloseTabs to CollectionInteractor and SessionControlController (#6651)

* For #5574 - Part 15: Introduce a HomeFragmentStore (#6651)

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

* For #5574 - Part 16: Port CollectionAction.Collapse and CollectionAction.Expand to CollectionInteractor and SessionControlController (#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 #5574 - Part 20: Remove the architecture module. (#6651)

* For #5574 - Part 17:  Remove duplicate subscribeToTabCollections in BrowserFragment.kt (#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 #5574 - Part 18: Delete SessionControlComponent and fix TabCollection and Tab imports (#6651)

* For #5574 - Part 19: Use the new HomeFragmentStore in the HomeFragment (#6651)

- Renames SessionControlUIView to SessionControlView

* For #5574 - Part 21: Fix white screen on home fragment (#6651)

* For #5574 - Part 22: Fix formatting in SessionControlInteractor and replace See with @see in SessionControlController (#6651)

* For #5574 - Part 23: Move to metrics.track call to the beginning of handleCollectionRemoveTab (#6651)

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

* For #5574 - Part 24: Use the sessionManager getter in SessionControlController (#6651)

* For #5574 - Part 25: Use mapNotNull in List<Tab>.toSessionBundle (#6651)

* For #5574 - Part 26: Simplify closeTab and closeAllTabs functions by assigning a deletionJob constant (#6651)

* For #5574 - Part 27: Replace listOf() with emptyList() in removeAllTabsWithUndo (#6651)

* For #5574 - Part 28: Replace the Context parameter with the HomeActivity in SessionControlController (#6651)

* For #5574 - Part 29: Add test for HomeFragmentStore, DefaultSessionControlController and SessionControlInteractor (#6651)

* For #5574 - Removes running CI against the architecture debug build varient
2019-12-04 22:06:05 -05:00
Jeff Boek d4e3a2037f For #6855 - Filter out duplicated bundled search engines
Co-authored-by: Severin Rudie <Baron-Severin@users.noreply.github.com>
2019-12-04 17:10:02 -08:00
mcarare c3389dcdb5 For #6070 Adds telemetry for enabling search suggestions in private 2019-12-04 16:44:01 -08:00
Jeff Boek 781b141bc7 For #6849 - Properly select a new default search engine when you delete the current one
Co-authored-by: Severin Rudie <Baron-Severin@users.noreply.github.com>
2019-12-04 16:10:26 -08:00
Jeff Boek eb6e6b774f For #6848 - Sorts the search engine list without case sensitivity
Co-authored-by: Severin Rudie <Baron-Severin@users.noreply.github.com>
2019-12-04 16:10:26 -08:00
Jeff Boek 1cc496a683 For #6847 - Properly rebuilds the SearchEngineList on undo
Co-authored-by: Severin Rudie <Baron-Severin@users.noreply.github.com>
2019-12-04 16:10:26 -08:00
Emily Kager d1b134c2ff For #6908 - Set null anchors for snackbars with top toolbar (#6911) 2019-12-04 15:01:04 -08:00
Jeff Boek e8972bb47d For #6795 - Auto shows toolbar when loading a new URL (#6955)
Co-authored-by: Severin <Baron-Severin@users.noreply.github.com>
2019-12-04 15:00:51 -08:00
ekager 3df32edff0 No issue: Fix search suggestions strings 2019-12-02 21:39:10 +00:00
ekager f227acc9f0 For #6791 - Inflate SavedLoginsListItemViewHolder layout explicitly 2019-12-02 10:40:58 -08:00
ekager d8babadf7f For #6889 - Check current destination before navigating from settings 2019-12-02 10:40:21 -08:00
ekager f5cf0b7e2a For #6890 - Don't crash with no connection when adding custom search engine 2019-12-02 10:37:31 -08:00
Severin Rudie 2a95a82e32
For #5540: updates error page copy when no internet is available (#6803) 2019-12-02 10:26:06 -08:00
cesar 6cda430cdd nested loop removed 2019-12-02 16:18:48 +00:00
cesar 4422e3ed39 Closes #6731 - fixed BookmarkNode minus operator and deleteOperation 2019-12-02 16:18:48 +00:00
mcarare 41ccb02933 For #6516 On browsing mode change empty tab list before displaying new list 2019-12-02 16:15:54 +00:00
Tiger Oakes a16aedb680 For #6827, #6811 - Cast layoutParams to MarginLayoutParams 2019-12-02 14:52:31 +00:00
Tiger Oakes d5e01384d8
Suppress upcoming deprecation (#6765) 2019-11-28 16:17:56 -08:00
Gabriel Luong 85111f538a For #6857 - Replace BackHandler with UserInteractionHandler in InflationAwareFeature and InflationAwareFeatureTest 2019-11-28 15:58:07 -05:00
Jeff Boek 1b1f9348dc No Issue - Fixes warnings / compiler errors with A-C update 2019-11-28 12:45:45 +01:00
mcarare c5f18e0f96 For #6629 Align Private Browsing mode to UX specs 2019-11-27 11:13:20 -08:00
ekager 7cd1d55e00 For #5586 - Track all login copy events 2019-11-27 10:59:36 -08:00
Will Hawkins a69253cf22 Issue #5183: Initialize megazord asynchronously
Thanks to the work of the team at application-services, it is possible
to asynchronously initialize the Http client and logger used by megazord
Use that power to hide the time necessary to complete this initialization
within the time that it takes to warmup the gecko runtime.
2019-11-27 10:51:57 -08:00
mcarare f69eb83141 For #4219 Set url view not important for accessibility
Talkback rectangle for url view selection will include parent view
2019-11-27 10:11:16 -08:00
mcarare 373bd63c40 For #6470 Remove actions from notification, keep just close private tabs
Removed NotificationsIntentProcessor because notifications no longer open app
Added new strings
2019-11-27 10:08:00 -08:00
Mihai Branescu 7cf71c8ef3
For #6396 - Added metrics for tracking history/bookmarks account sync toggles (#6601) 2019-11-27 11:16:23 +02:00
Mihai Adrian 4fd3aa8649
For #2570: Hide 3-dots menu for all library items when in select mode. (#6736)
notifyDataSetChanged to avoid not displayed but created items not being redrawn
2019-11-27 10:40:38 +02:00
Jeff Boek 5f7b3bd4d7
For #5972 - Fixes bugs when launching in private mode on Android 5 (#6702) 2019-11-26 14:53:03 -08:00
Sawyer Blatz db02fc6ef8
For #6821: Fixes issues with custom tabs and dynamic toolbar (#6822) 2019-11-26 13:02:52 -08:00
Mihai Adrian 33b49ff7fd For #6430 Private browsing hint width should not exceed screen dimensions (#6786)
Renamed ambiguous pop-up window name.
Adjusted code to match max line length.
2019-11-26 10:07:31 -08:00
Sawyer Blatz 769c1e422d For #5694 & #6054: Allows users to change toolbar position (#6608)
* For #5694 & #6054: Adds preference screen for toolbar

* For #5694: Adds changing toolbar position functionality

* No issue: Updates telemetry links to actually work lol 😬

* For #6054: Adds toolbar position to core ping
2019-11-25 16:43:32 -08:00
Tiger Oakes 422faaf7c0 Add toolbar helpers (#6531) 2019-11-25 15:36:47 -05:00
Tiger Oakes 7e8f079269
Use ShareData with ShareFragment (#6698) 2019-11-25 11:07:21 -08:00
Christian Sadilek 8271f0f55a Fix for A-C 23.0.0: onDownloadCompleted renamed to onDownloadStopped 2019-11-23 20:25:21 -05:00
Tiger Oakes cd3e077bc9 For #6763 - Fix early view access 2019-11-23 10:55:29 -05:00
Daphne Liu 4cfbaf2dc4 Switched to AC string extensions (#6258)
* Switched to AC string extensions

* Clean up imports
2019-11-22 23:15:51 -08:00
ekager 45071d6fc1 For #6573 - Fixes anchor view for tab switching snackbar 2019-11-22 14:15:17 -08:00
Sawyer Blatz bcf80d0e0b
For #6436: Adds snackbar for failed download (#6648) 2019-11-22 12:46:57 -08:00
Tiger Oakes a5e9439c6e Clean up tracking protection fragment (#6532)
* Clean up exceptions fragment

* Clean up tracking protection fragment

* Move saved logins to list adapter
2019-11-22 10:38:13 -05:00
Sebastian Kaspari 8a330d413c Closes #4982: Migrate Gecko files before initializing engine. (#6738) 2019-11-22 08:18:50 -05:00
Stephen Tsimicalis 9869408fb4 For #4824 - Fixes onboarding telemetry events from being sent a… (#6659) 2019-11-21 17:51:55 -08:00
Mihai Adrian e07d09afb8 Update app/src/main/java/org/mozilla/fenix/home/HomeMenu.kt
Co-Authored-By: Tiger Oakes <contact@tigeroakes.com>
2019-11-21 15:34:01 -08:00
mcarare 9258df2c69 For #3523 Add Firefox Sync error states also to Settings in Home menu 2019-11-21 15:34:01 -08:00
matthewcmckenna afac413c98 Add ETP accessibility labels 2019-11-21 15:27:35 -08:00
Tiger Oakes 0a86676563 For #6523 - Remove close button in library 2019-11-21 15:27:18 -08:00
mcarare 1d36098878 For #1019 Add onboarding search suggestion hint panel 2019-11-21 14:36:14 -08:00
mcarare 5543f3272d For #1019 Add option to enable search suggestions in private mode 2019-11-21 14:36:14 -08:00
mcarare ef3c3de8a1 For #6625 Fix back navigation in search mode from browser 2019-11-21 14:35:12 -08:00
Tiger Oakes bd475d54e5 Extract TP onboarding popup (#6700) 2019-11-21 17:23:35 -05:00
Grisha Kruglov f099552ae3 Enable encryption of persisted FxA account state 2019-11-20 15:32:56 -08:00
Jeff Boek 54773afb68
For #2477 - Removes the feature flag for Force Enable Zoom (#6646)
* For #2477 - Removes the feature flag for Force Enable Zoom

* For #2477 - Fixes bug where zoom preference doesnt persist between launches
2019-11-20 10:32:38 -08:00
ekager 81ab082c1c For #6707 #6708 - Fix UI Tests for new Search Engine Behavior 2019-11-20 10:23:48 -08:00
Jeff Boek 607c3d4c87
Adds custom search engines (#6551)
* For #5577 - Adds button to add a new search engine

* For #5577 - Adds custom engine store

* For #5577 - Creates a custom SearchEngineProvider

* For #5577 - Gives the ability to delete search engines

* For #5577 - Adds the UI to add a custom search engine

* For #5577 - Adds form to create a custom search engine

* For #5577 - Adds the ability to add a custom search engine

*  For #5577 - Adds the ability to delete custom search engines

* For #5577 - Selects the first element on the add custom search engine screen

* For #5577 - Prevents adding a search engine that already exists

* For #5577 - Styles the add search engine preference

* For #5577 - Makes the name check case-insensitive

* For #5577 - Fix bug where home screen doesnt see new search engines

* For #5577 - Moves Search URL validation to its own type

* For #5577 - Fixes linting errors

* For #5577 - Adds the ability to edit a custom search engine

* For #5577 - Allows the user to edit a serach engine even when it is the last item in the list

* For #5577 - Adds an undo snackbar when deleting a search engine

* For #5577 - Moves all of the strings to be translated

* For #5577 - Fixes bug when deleting your default search engine

* For #5577 - Puts adding search engines behind a feature flag

* For #5577 - Navigate to custom search engine SUMO article when tapping learn more

* For #5577 - Fixes nits

* For #5577 - Uses concept-fetch to validate search string

* For #5577 - Adds string resources for the cannot reach error state
2019-11-19 16:30:56 -08:00
mawen7 1e813a9609 Jump to tab overview if closed tab has no parent session 2019-11-18 22:56:42 -08:00
cesar 560fa7a5b5 For #6594 - Trigger keyboard automatically when creating a bookmark folder 2019-11-18 20:07:22 -08:00
cesar 063115b215 For #6593 - Hide keyboard when quitting add bookmark folder flow 2019-11-18 20:07:22 -08:00
ekager ab93779369 For #6621 - Add Secure Flag to Window in Logins Fragments 2019-11-18 14:32:10 -08:00
David Walsh c69e72bdba Fix 3809 - Show entire URL in security info view 2019-11-18 14:01:40 -08:00
Sawyer Blatz 6f4de48428 For #6434: Fixes downloadCompleted for paused downloads 2019-11-18 11:49:01 -08:00
Roger Yang f3fc532e0e Closes #6440 Integrate Web Notifications Feature 2019-11-18 13:44:39 -05:00
Mihai Adrian 55a200907a For #2570: Hide 3-dots menu for all library items when in select mode. (#6321)
Used notifyItemRangeChanged to redraw already drawn items.
2019-11-15 15:48:48 -08:00
Severin Rudie 8d68317388
4844 fix url elision (#6588)
* For #4844: add test cases for url elision

* For 4844: implement toShortUrl to pass test cases

* For 4844: update plumbing to use toShortUrl

* For 4844: adds/handles suggested url elision test case
2019-11-15 14:25:50 -08:00
Gabriel Luong c6562bff98 For #5583 - Adds telemetry for download notification (#6554) 2019-11-15 16:50:11 -05:00
Patrick Martin 5eb5cdf361 For #1695 - Detect HTML mime type for clipboard URL (#6612)
* For #1695 - Detect HTML mime type for clipboard URL
2019-11-15 12:23:52 -08:00
MozLando 204ead0827 Merge #6513
6513: For #5295 [A11y] Unable to tap snackbar r=kglazko a=kglazko



Co-authored-by: Kate Glazko <katglazko@gmail.com>
2019-11-15 18:43:54 +00:00
Will Hawkins 7173bdf0b1 Issue #6196: Make initialization of Glean metrics faster
setStartupMetrics is very expensive and does not need to be
done synchronously at the time the Glean Metrics Service is
initialized.
2019-11-15 10:38:08 -05:00
Emily Kager ddd484387d No issue: Check destination before popping logins fragments 2019-11-14 18:20:44 -08:00
Tiger Oakes fdd7400ccc Use ViewModel for share fragment 2019-11-14 16:25:50 -08:00
Tiger Oakes 333ff8c941 Fixes #4528 - Prevent share menu from jumping
Plus a bunch of docs and refactoring
2019-11-14 16:25:50 -08:00
ekager d85ed27a3d Add override for Core val in test 2019-11-14 16:05:20 -08:00
Emily Kager c43f96096e For #5074 - Sync Logins, Uses KeySharedPreferences for Passwords Encryption Key 2019-11-14 16:05:20 -08:00
Kate Glazko e038e0c41d 2019-11-14 13:54:08 -08:00
Tiger Oakes ee4e1c8f39
Fixes #5085 - Use CustomTabWindowFeature (#6603)
Opens _blank links in new custom tab
2019-11-14 12:02:27 -08:00
Gabriel ebdfe8184e For #5705 - Adds telemetry for media state (#6463) 2019-11-12 17:24:30 -08:00
David Walsh 9d5c03c067 Use consistent verbiage with regard to opened tabs (#6550) 2019-11-12 16:06:37 -08:00
Emily Kager cc318021cc For #5586 - Adds Logins Telemetry (#6352)
* For #5586 - Adds Logins Telemetry

* Adds Logins Sync Telemetry to PreferenceToggled event
2019-11-12 15:55:36 -08:00
mcarare f6a66562dd For #4487 Set activity title only once in Bookmark fragment
Removed label from nav_graph that caused label to be set for each navigation
Removed title setting in onCreate() called for each navigation
Changed logic for checking current root when setting UI for normal mode
2019-11-12 08:21:53 -08:00
Arturo Mejia 0275ca0693 No issue: Do not prevent trackers duplication in the tracking
protection panel.
2019-11-12 08:15:30 -08:00
mcarare 13637c59a2 For #6543 Hide keyboard when saving a new bookmarks folder 2019-11-12 08:09:55 -08:00
Severin Rudie 6909a76bcb
4281 remove qab (#6310)
* For #4281: small ToolbarMenu refactor

This makes it easier to see how items are ordered in the menuItems list

* For 4281: add QAB buttons to menu

* For 4281: removed menu back button per mocks

I double checked with UX, and we'll be relying on the hardware back button for its functionality

* For 4281: add content descriptions for bookmarking

* For 4281: updated BrowserToolbarController for new functionality

* For 4281: provided simple dependencies to browser controller

More complex changes will be in a following commit, for review readability

* For 4281: move toolbar controller dependencies up to BaseBrowserFragment

The functionality they control is being moved into the toolbar menu, which is shared by both normal tabs and custom ones

* For 4281: removed (now unused) code related to QAB

* For 4281: fix test compilation after QAB removal

Tests still need to be expanded to include added functionality

* For 4281: updated menu to show if url is bookmarked

This sloppy workaround is required because TwoStateButton requires that `isInPrimaryState` be a synchronous call, and checking whether or not the current site is bookmarked is quite slow (10-50 MS, in my tests).  After days of work and many attempted solutions, this was the least abhorrent among them.

https://github.com/mozilla-mobile/android-components/issues/4915 was opened against AC to evaluate potentially supporting async `isInPrimaryState` functions.
https://github.com/mozilla-mobile/fenix/issues/6370 was opened against Fenix to investigate the unexpectedly slow call to `BookmarkStorage`.

* For 4281: update reader mode switch

* For 4281: selectively show/hide menu items

* For 4281: add reader mode appearance

* For 4281: update bookmark button when it is clicked

* For 4281: removed unused QAB code

* For 4281: removed QAB robot, updated UI tests

* For 4281: removed QuickActionSheet metrics

Since this behavior now lives in the toolbar, it is tracked via Event.BrowserMenuItemTapped

* For 4281: fixed lint errors

* For 4281: add new strings for buttons added to menu

This is necessary because the location change (from QAB to toolbar menu) could affect the grammar in some languages

* For 4281: remove outdated TODOs

* For 4281: removed QAB container

* For 4281: removed back button reference from UI test

This button no longer exists

* For 4821: Fixes a visual defect (extra padding on top of toolbar)

* For 4281: update copy on reader mode

* For 4281: fixed review nits
2019-11-11 17:10:14 -08:00
mcarare 11ad1010a9 For #6323 Creating 1st collection from tab shows Name collection screen
Added a check for existence of at least a collection to select from.
2019-11-11 14:36:55 -08:00
Sawyer Blatz d6aeeb2dec
For #5958: Adds in app download notifications (#6506) 2019-11-11 14:08:51 -08:00
Mihai Adrian 1388156953 For #1211 Hide the keyboard when scrolling through engine suggestions (#6474) 2019-11-08 14:36:39 -08:00
RAJESH KUMAR ARUMUGAM 6ee59322b5 Added Vibration Effect On Scanning QR Code (#6129)
* Added Vibration Effect On Scanning QR Code

Added Vibration Feature for the new feature Request
Vibrate phone upon successful pairing #2928

* Added Vibration Effect On Scanning QR Code

Added Vibration Feature for the new feature Request
Vibrate phone upon successful pairing #2928

* Update PairFragment.kt

Removed unwanted blank lines

* Update PairFragment.kt

Removed the Casting with !!
2019-11-08 13:37:36 -08:00
Emily Kager d9615108ee For #6354 - Removes ETP Experiment, Removes Feature Flags, Sets Strict Default 2019-11-08 08:37:15 -08:00
mcarare 1ff5a1934e For #5709 Do not animate switch for ETP panel 2019-11-08 08:36:30 -08:00
ValentinTimisica e1f3611fdd Fixes #6408: Pop stack to homeFragment when opening bookmarks from homeFragment
When bookmark fragment is opened from homeFragment, libraryFragment does not
exists so the popBackStack(R.id.libraryFragment, true) would have failed. So
the solution for this was to pop back stack to homeFragment when the
bookmarks/history fragments are opened from homeFragment.
2019-11-07 16:00:48 -08:00
Grisha Kruglov 40047315c2 For #6490 - track abnormal FxA behaviour via Sentry 2019-11-07 15:11:41 -08:00
Emily Kager ef7a23c875 Adds webAppShortcutManager argument 2019-11-07 14:50:24 -08:00
Tiger Oakes afda836f1f Use ManifestUpdateFeature 2019-11-07 14:50:24 -08:00
Sawyer Blatz 4183dea591 For #5547: Reuse biometricPrompt when authenticating
This fixes an issue with Samsung devices where an invisible DeviceCredentialHandler because the executor was "null" (it wasn't actually)

You *must* reuse the biometric object instead of creating a new one.
2019-11-07 13:45:41 -08:00
Emily Kager 3e2b88cc91 For #5547 - Add top level auth when accessing passwords 2019-11-07 13:45:41 -08:00
Sawyer Blatz 284f3cf0f5 For #4456: Updates total_uri_count upload (#6482) 2019-11-06 19:10:56 -08:00
Sawyer Blatz a4ad2116ae
For #6390: Fixes textColor on download prompt (#6468) 2019-11-06 11:10:17 -08:00
Sawyer Blatz 0d5fb67303 For #6284: Fixes SearchShortcut button functionality when in a session
This makes it so searchShortcuts button works when going from browser -> search
2019-11-06 11:08:41 -08:00
Mihai Branescu 2b955c1a1a For #6087
- added engine hashmap so that we create each type of search provider once
(previously the providers to be added were checked by id, but since the id
is a UUID, it was always unique -> bug with multiple providers with same engine
but different id
- refactored update() flow so that it's more understandable + remove complex
method warning
2019-11-06 11:08:41 -08:00
ekager 18c0525ff6 Use new API for ETP Exceptions 2019-11-05 12:45:58 -08:00
Emily Kager ca8ba57635 For #6441: Fix variant build type matching (#6462) 2019-11-05 12:28:14 -08:00
Emily Kager 1ee0703bc3 For #6441 - Only enable experiments for Beta/Prod 2019-11-04 16:45:35 -08:00
Christian Sadilek a7e139da8e Use new WindowFeature API after browser-state migration 2019-11-01 15:52:37 -04:00
Mugurell c5739df969 For #4126 - Add tests for the new classes resulting from refactoring
Used runBlocking to ensure we wait for the code using coroutines to execute
instead of runBlockingTest and join() since this last option led to failed
tests in CI because of
"java.lang.IllegalStateException: This job has not completed yet".
2019-10-31 17:08:40 -07:00
Mugurell 9f56624788 For #4126 - Document the newly introduced public APIs
Now that the code should be in a ready-to-ship form it would be nice to have
all the major functionalities properly documented.
2019-10-31 17:08:40 -07:00
Mugurell d70afcaa90 For #4126 - Handle all business logic with Interactors and a Controller
Combined all Stores into one for all Views shown in on Fragment.
Used a static `createStore()` which will build the initial state residing
inside the Store and not in the Fragment as to decouple the Fragment from the
business logic needed to build all the needed initial States.
Added Interactors that handle a MVI View's business logic for
TrackingProtectionView and WebsitePermissionsView.
WebsiteInfoView doesn't register any user input events and does not have any
reason to change while it is displayed so it does not have an Interactor.
The two Interactors will delegate Fragment's QuickSettingsController for
complex Android interactions, communication with other app features or for
Store updates.
Also refactored the stubs from the previous commit so that with this commit the
the quicksettings feature should all be working now based on lib-state.
2019-10-31 17:08:40 -07:00
Mugurell f1f74bc3d6 For #4126 - Refactor Views and layouts
Refactored `fragment_quick_settings_dialog_sheet` to now be composed of of
FrameLayouts placeholders in which each independent View will inflate itself.
Refactored the QuickSettingsUIView and Component to 3 standalone Views with
their own lib-state components: Store, State, Actions, Reducer.
2019-10-31 17:08:40 -07:00
ValentinTimisica 1e13e70cd0 Fixes #5917: Show snackbar when URL is copied (#6210)
Show a snackbar to the user for him to know that the URL was copied to
clipboard.
2019-10-31 16:53:00 -07:00
Tiger Oakes 9456998f9f For #6153 - Add powered by notification 2019-10-31 16:39:58 -07:00
ValentinTimisica 34959a434f Fixes #6341: Initialize 'selectedTabs' based on opened/selected tabs.
The problem was that the parameter 'selectedTabIds' was not taken into account
when initializing the variable 'selectedTabs'. So I made the initialization
based on both the selected tab and the number of open tabs.
2019-10-31 16:22:14 -07:00
mcarare 349c0193d9 For #6342 Clicking add tab button from home screen finishes onboarding 2019-10-31 16:04:02 -07:00
Sawyer Blatz e62407e766
For #5959 & #5958: Integrates download feature into Fenix (#6368) 2019-10-31 14:37:05 -07:00
mcarare 41c9b9e958 For #1487 Add "my library" menu category and items to home 3-dot menu 2019-10-31 11:29:49 -07:00
Artur Dryomov 05e871dd0c No issue: Refactor errors to risk level conversion. (#5710) 2019-10-30 11:08:45 -07:00
Sawyer Blatz 8549b80272 For #4456: Adds total_uri_count to metrics core ping (#6003) 2019-10-30 11:02:33 -07:00
Sawyer Blatz fd22c43f9d
Fixes #6344: Adds null check for adjust campaign (#6348) 2019-10-30 10:13:03 -07:00
Chenxia Liu 41ee8a4efb For #6294 - When only one tab is being saved to collection, add it to selected tabs. 2019-10-29 11:27:51 -07:00
Sawyer Blatz 2a358db561
For #1298: Fixes issue with Adjust campaign not sending through Glean (#5896) 2019-10-29 10:09:07 -07:00
Christian Sadilek ee3871cd7c Closes #5678: Selected session may render in ExternalAppBrowserActivity 2019-10-28 09:43:33 -07:00
Mihai Branescu 432d5fbff4 For #5848 Wrong toolbar colour - edit bookmark fragment (#6047)
- Moved toolbar coloring to extension method
- Refactored classes using it
- Removed selection mode colouring for EditBookmarkFragment toolbar,
making it only black and white (normal mode)
2019-10-25 21:41:48 -07:00
Mihai Branescu 4efc661db8 For #5733 - Private mode notification - wrong home screen (#6188)
- added PRIVATE MODE intent extra to the notification action
 (could use also the OPEN_FROM_NOTIFICATION, but I considered this one to
 be more explicit. Kept the old one in case other checks will be done
 filtering for it)
- added intent? param to the getPrivateModeFromIntent method, because
onNewIntent() method does not set the activities intent, and it was needed
to be used both in onCreate() and onNewIntent()
2019-10-25 21:41:31 -07:00
ekager fb17ae2258 For #6229 - Remove all tab options from custom tab context menu 2019-10-25 13:25:31 -07:00
Emily Kager 6435a503ca For #6219 - Reset default setting if user opts out of experiments 2019-10-25 12:50:16 -07:00
Jonathan Almeida 59c0fb504e Revert "For #373 - Integrate leanplum-fcm"
This reverts commit ed239ec250.

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 #6250 and #6251 for related info.
2019-10-25 10:24:40 -04:00
Sawyer Blatz 4359c215e6 For #5737: Adds telemetry for open links in a private tab (#5975) 2019-10-24 17:16:49 -07:00
Denys M 6290c0c826 Closes #2441. Update LeakCanary to `2.0-beta-3` version. 2019-10-24 11:19:09 -07:00
ekager f49331de55 For #5544: Bare Minimum Logins UI 2019-10-24 10:29:03 -07:00
Jeff Boek d1643b785e For #2477 - Adds accessibility setting to force enable zoom 2019-10-24 09:35:21 -07:00
Sebastian Kaspari b3ce0b421b Update to Mozilla Android Components 19.0.0-SNAPSHOT. 2019-10-24 08:57:30 -07:00
Sebastian Kaspari 9543f38978 Use new toolbar API of AC 18.0.0. 2019-10-24 08:57:30 -07:00
Sawyer Blatz 2cba624609
No issue: Fixes string issues for l10n (#6158)
Issues found here: https://github.com/mozilla-l10n/android-l10n/pull/89
2019-10-24 08:24:19 -07:00
MozLando cc9ee5a3d8 Merge #5332
5332: For #2483 #2629: Close tab with no history on back press and return to parent if available r=ekager a=mawen7



Co-authored-by: mawen7 <mawen7@users.noreply.github.com>
2019-10-23 18:20:36 +00:00
Severin Rudie f812ae4259 For #3676: fix duplicate uri events on first load (#6128) 2019-10-23 10:21:46 -07:00
mawen7 3af307b47f Close tab with no history on back press and return to parent if available 2019-10-23 12:54:28 +02:00
Severin Rudie aa8642f534
#4596 migrate collections (#5911)
* For #4596: move code from CollectionCreationComponent to CollectionCreationStore

Other than adding comments, no changes were made. The code will be updated in a following commit. This is in order to make the commit diff more readable.

* For 4596: update CollectionCreateStore to libstate

* For 4596: copied CollectionCreationUIView into CollectionCreationView

Otherwise, no code was changed. The next commit will update this code. This is in order to make the commit diff more readable.

* For 4596: update CollectionCreationView to LibState

Note that the minimal changes possible to enable migration were made.  Refactoring will happen in a later commit.

* For 4596: updated CollectionCreationTabListAdapter to work with the new View

* For 4596: updated SaveCollectionListAdapter to work with the new View

* For 4596: implemented CollectionCreationController

For now, it has an identical interface to the interactor. In a later commit several of its responsibilities will be moved around, some to the interactor and some to the reducer

* For 4596: copied over previous reducer code

No other changes were made. The code will be updated in the following commit. This is done to make changes more readable for the reviewer

* For 4596: update reducer code param names

Otherwise, no changes at this time

* For 4596: add arguments to CreateCollectionFragment in nav_graph

These will be used to replace the current CreateCollectionViewModel, which shares data between fragments in a way that doesn't fit within our architecture.

* For 4596: pass arguments to collection via transaction instead of VM

The VM will be removed in a later commit

* For 4596: update BrowserToolbarController to share state to collection via its Direction

* For 4596: removed CreateCollectionViewModel

* For 4596: test tab retrieval in CreateCollectionFragment

* For 4596: fix crashing CreateCollectionFragmentTest

* For 4596: removed classes create collection classes used by old architecture

* For 4596: collection interactor rename + kdoc

* For 4596: moved collection interactor interface

* For 4596: renamed CreateCollectionFragment

All related classes followed the pattern of CollectionCreationX

* For 4596: kdoc CollectionCreationController

There's no effective difference between these calls and their interactor equivalent, so I linked to them

* For 4596: fix bug that caused rename to not work

* For 4596: removed unused collection actions

These were unused before the LibState refactor

* For 4596: kdoc StepChanged

* For 4596: removed todos about moving logic to the reducer

saveTabsToCollection: this could be moved, but that would involve creating a new action. SaveCollectionStep should probably be refactored out, so adding this layer of indirection seemed counterproductive

handleBackPress: needs to be able to call dismiss(). The reducer doesn't (and shouldn't) be able to do that, so this needs to live here

stepBack: called by handleBackPress. See above

* For 4596: wrote tests for CollectionCreationController#stepback

* For 4596: fixed tests broken by changes to collections

* For 4596: small readability refactor for CollectionController#stepBack

No change to functionality (see tests)

* For 4596: broke apart CollectionView#update

There's probably a lot more that could be done here, but smaller changes were made to reduce scope

* For 4596: remove unnecessary todos

It looks like we don't follow the suggested pattern in this project

* For 4596: test CollectionCreationController#normalSessionSize

* For 4596: updated naming in CollectionCreationController per review
2019-10-22 17:33:54 -07:00
Pawel Obarzanek 40cda1d758 Closes #2435 Change edit icon to share icon on the book… (#6137)
* Closes mozilla-mobile#2435 Change edit icon to share icon on the bookmark toolbar

* Closes mozilla-mobile#2435 Changed raw string to string resources

* Pass bookmark arguments to share fragment

* Closes mozilla-mobile#2435 add orEmpty
2019-10-22 14:34:05 -07:00
Tiger Oakes cbc449d3b6 Refactor asCamelCase to use string builder (#6141) 2019-10-22 14:33:44 -07:00
Sebastian Kaspari 5d5358ae45 Issue #36170: BaseBrowserFragment: Use new feature-prompts API. 2019-10-22 16:04:33 -04:00
Tiger Oakes 4e3a3665d6 For #3366 - Use one layout for edit/add bookmark (#5900) 2019-10-21 10:06:08 -07:00
Mihai Adrian fbec001e28 For #1383: Fix updating description of close button on title change. (#6020) 2019-10-21 10:00:26 -07:00
ValentinTimisica ef42d3e4dc Fixes #5030: Modified Dialog to match the others. (#6022)
I changed the Dialog from permissions exceptions and used AlertDialog
instead of Context.alert extension function.
2019-10-21 09:59:04 -07:00
Mihai Branescu e23528291a For #6063 - changed ETP blocking info title strings (#6082) 2019-10-21 09:58:47 -07:00
Shangeeth Sivan d223a0bd35 Closes #5465: Added OnCheckListener to all checkboxes ,when there are no items checked delete button will be disabled (#6098) 2019-10-21 09:57:29 -07:00
ValentinTimisica 485ccba189 Fixes #5323: Show a snackbar while browsing data is deleting. (#6105) 2019-10-21 09:57:06 -07:00
Jeffrey Starke 2de6a9aca7 Don't show fingerprinters section of the standard tracking policy UI (#6125) 2019-10-21 09:56:46 -07:00
Sören Hentzschel a76cd9cc67 no issue - removed unused feature flags (#6143) 2019-10-21 09:52:01 -07:00
MozLando b963a3eab5 Merge #6102 #6106
6102: For #6018 Re-add Search Shortcuts Button r=boek a=BranescuMihai



6106: For #5872 & #6075: Set TabHeader buttons to invisible instead of gone. r=boek a=mcarare

At least one button has to be invisible instead of gone to keep layout height.
Tabs overflow button kept gone to avoid empty space on view end in private mode.



Co-authored-by: Mihai Branescu <branescu.mihai2@gmail.com>
Co-authored-by: mcarare <mihai.carare.dev@gmail.com>
2019-10-18 18:59:20 +00:00
MozLando a5755d131f Merge #6107
6107: Fix #3122 - Hide the "Bookmark saved" Snackbar when user closes BrowserFragment r=boek a=Mugurell

Previously the Snackbar was being inflated in the parent of this Fragment so
surviving it being closed.
Tying the Snackbar with the Fragment from which it is shown ensures it will be
effectively hidden whenever the user navigates from the Fragment.



Co-authored-by: Mugurell <mugurell@users.noreply.github.com>
2019-10-18 18:34:49 +00:00
Tiger Oakes e572562c7a Cleanup shortcut code 2019-10-18 10:57:51 -07:00
Tiger Oakes a598148b29 Fixes #5225 - Hide AuthCustomTabActivity 2019-10-18 10:56:06 -07:00
mcarare 86217eb105 For #5872 & #6075: Set TabHeader buttons to invisible instead of gone.
At least one button has to be invisible instead of gone to keep layout height.
Tabs overflow button kept gone to avoid empty space on view end in private mode.
2019-10-18 17:00:26 +03:00
Mihai Branescu 2be4d08228 For #6018 - Added back shortcuts button in awesomebar
Refactored logic for adding providers, since shortcut providers should
be alone in the list, while all others can be as list
2019-10-18 14:48:58 +03:00
Mugurell faddf368e1 Fix #3122 - Hide the "Bookmark saved" Snackbar when user closes BrowserFragment
Previously the Snackbar was being inflated in the parent of this Fragment so
surviving it being closed.
Tying the Snackbar with the Fragment from which it is shown ensures it will be
effectively hidden whenever the user navigates from the Fragment.
2019-10-18 08:11:56 +03:00
MozLando aa1a5f3d32 Merge #6026
6026: For #5709: Align ETP onboarding popup implementation with original mocks r=ekager a=mcarare



Co-authored-by: mcarare <mihai.carare.dev@gmail.com>
2019-10-16 17:49:16 +00:00
MozLando 610a70a8bc Merge #6024
6024: For #5749 - Update string for ETP onboarding popup r=ekager a=BranescuMihai



Co-authored-by: Mihai Branescu <branescu.mihai2@gmail.com>
2019-10-16 00:12:52 +00:00
MozLando a1f96a0ec7 Merge #6025 #6032
6025: For #5063: Added parameter customTabSessionId into ContextMenuFeature r=ekager a=ValentinTimisica

Added parameter customTabSessionId into ContextMenuFeature in
BaseBrowserFragment in order to show the context menu in a custom tab.



6032: For #5990: Revert sessionTokenScope to fix broken QR pairing flow r=ekager a=grigoryk

Seems like addition of sessionTokenScope is causing issues with pairing. For now, we can revert that change until the underlying issue is fixed.

For #5990.



Co-authored-by: ValentinTimisica <valentin.timisica@softvision.ro>
Co-authored-by: Grisha Kruglov <gkruglov@mozilla.com>
2019-10-15 21:31:38 +00:00
Grisha Kruglov 031f923273 Revert sessionScopeToken to fix broken QR pairing flow 2019-10-15 11:19:40 -07:00
mcarare b82a794908 For #5709: Align ETP onboarding popup implementation with original mocks 2019-10-15 17:07:47 +03:00
ValentinTimisica 6fa9572ccf Fixes #5063: Added parameter customTabSessionId into ContextMenuFeature
Added parameter customTabSessionId into ContextMenuFeature in
BaseBrowserFragment in order to show the context menu in a custom tab.
2019-10-15 16:28:42 +03:00
Mihai Branescu 1490c0178f For #5749 - Update string for ETP onboarding popup 2019-10-15 15:56:59 +03:00
MozLando 9d3dc2b6dc Merge #5775
5775: Closes #5233, don't display private-browsing-shortcut creation items if shortcut already exists r=NotWoods a=bswe

Closes issue #5233:

Added doesPrivateBrowsingPinnedShortcutExist() method to the PrivateShortcutCreateManager class to check for the existence of the shortcut.  Code only works on devices with API 25 or higher, so a check for that condition was also included in the new method.

Calls to the new method were added to the SettingsFragment and HomeFragment classes to determine whether the settings menu item and the recommendation dialog should be displayed.

**Quality**: The pre-push test failed to start on my windows 10 OS, but this code has been thoroughly tested manually on simulators and physical devices.

**Tests**: This code only effects UI appearance so not sure how to test for that and no tests were written.

**Screenshots**: This code does not add anything new to the UI, it only controls whether to display existing items.

Co-authored-by: bswe <bbollenbacher@mindspring.com>
2019-10-14 22:23:45 +00:00
ekager 663126f696 No issue: Remove black flash workaround 2019-10-14 11:51:01 -07:00
bswe a570b910c2 Reformatting to simplify use of .any construct as suggested in review 2019-10-14 11:20:19 -07:00
bswe 6bc5d96f92 Reformatting to use .any construct as suggested in review 2019-10-14 11:20:19 -07:00
bswe 052695ffa1 Issue #5233: Minor modifications suggested in code review. 2019-10-14 11:20:18 -07:00
bswe 7ec714552f Issue #5233: Added call to doesPrivateBrowsingPinnedShortcutExist function to determine whether the "recommend private browing shortcut" dialog is displayed. 2019-10-14 11:20:17 -07:00
bswe 9913a024d8 Issue #5233: Added call to doesPrivateBrowsingPinnedShortcutExist function to determine whether the "add private browing shortcut" item is visible in the settings menu. 2019-10-14 11:20:17 -07:00
bswe dcebd83e9f Issue #5233: Added doesPrivateBrowsingPinnedShortcutExist function to determine whether a shortcut already exists (only available in API >=25). 2019-10-14 11:07:34 -07:00
MozLando 8e4d7248ac Merge #5908
5908: Closes #5876: Removed @ObsoleteCoroutinesApi in tests r=sblatz a=shldhll


### Pull Request checklist
<!-- Before submitting the PR, please address each item -->
- [x] **Quality**: This PR builds and passes detekt/ktlint checks (A pre-push hook is recommended)
- [ ] **Tests**: This PR includes thorough tests or an explanation of why it does not
- [ ] **Screenshots**: This PR includes screenshots or GIFs of the changes made or an explanation of why it does not
- [ ] **Accessibility**: The code in this PR follows [accessibility best practices](https://github.com/mozilla-mobile/shared-docs/blob/master/android/accessibility_guide.md) or does not include any user facing features

### After merge
- [ ] **Milestone**: Make sure issues finished by this pull request are added to the [milestone](https://github.com/mozilla-mobile/fenix/milestones) of the version currently in development.

### To download an APK when reviewing a PR:
1. click on Show All Checks,
2. click Details next to "Taskcluster (pull_request)" after it appears and then finishes with a green checkmark,
3. click on the "Fenix - assemble" task, then click "Run Artifacts".
4. the APK links should be on the left side of the screen, named for each CPU architecture

Co-authored-by: shldhll <iam.shldhll@gmail.com>
2019-10-14 16:52:22 +00:00
MozLando 2856e6b8c7 Merge #5973
5973: For #5898: Launch SUMO article properly for default browser r=colintheshots a=sblatz



Co-authored-by: Sawyer Blatz <sdblatz@gmail.com>
2019-10-14 16:16:47 +00:00
Sawyer Blatz 2395b9b941 For #5898: Launch SUMO article properly for default browser 2019-10-11 14:40:08 -07:00
MozLando 6b6c752fa9 Merge #5956
5956: For #5947 - Fix engineView NullPointerException r=csadilek a=ekager



Co-authored-by: ekager <emilykager@gmail.com>
2019-10-11 21:08:09 +00:00
MozLando fba375135f Merge #5933
5933: Removes legacy nightly automation r=johanlorenzo a=mitchhentges



Co-authored-by: Mitchell Hentges <mhentges@mozilla.com>
2019-10-11 18:28:31 +00:00
MozLando bb22fb3092 Merge #5507 #5846
5507: For #1383 Added tab title to close button content description r=ekager a=mcarare


### Pull Request checklist
<!-- Before submitting the PR, please address each item -->
- [x] **Quality**: This PR builds and passes detekt/ktlint checks (A pre-push hook is recommended)
- [ ] **Tests**: This PR includes thorough tests or an explanation of why it does not
- [x] **Screenshots**: This PR includes screenshots or GIFs of the changes made or an explanation of why it does not
- [x] **Accessibility**: The code in this PR follows [accessibility best practices](https://github.com/mozilla-mobile/shared-docs/blob/master/android/accessibility_guide.md) or does not include any user facing features

### After merge
- [ ] **Milestone**: Make sure issues finished by this pull request are added to the [milestone](https://github.com/mozilla-mobile/fenix/milestones) of the version currently in development.

### To download an APK when reviewing a PR:
1. click on Show All Checks,
2. click Details next to "Taskcluster (pull_request)" after it appears and then finishes with a green checkmark,
3. click on the "Fenix - assemble" task, then click "Run Artifacts".
4. the APK links should be on the left side of the screen, named for each CPU architecture

5846: For #3604 Snackbar messages for closing tabs use closed instead of deleted r=sblatz a=mcarare


### Pull Request checklist
<!-- Before submitting the PR, please address each item -->
- [x] **Quality**: This PR builds and passes detekt/ktlint checks (A pre-push hook is recommended)
- [x] **Tests**: This PR includes thorough tests or an explanation of why it does not
- [x] **Screenshots**: This PR includes screenshots or GIFs of the changes made or an explanation of why it does not
- [x] **Accessibility**: The code in this PR follows [accessibility best practices](https://github.com/mozilla-mobile/shared-docs/blob/master/android/accessibility_guide.md) or does not include any user facing features

### After merge
- [ ] **Milestone**: Make sure issues finished by this pull request are added to the [milestone](https://github.com/mozilla-mobile/fenix/milestones) of the version currently in development.

### To download an APK when reviewing a PR:
1. click on Show All Checks,
2. click Details next to "Taskcluster (pull_request)" after it appears and then finishes with a green checkmark,
3. click on the "Fenix - assemble" task, then click "Run Artifacts".
4. the APK links should be on the left side of the screen, named for each CPU architecture

Co-authored-by: mcarare <mihai.carare.dev@gmail.com>
2019-10-11 16:28:36 +00:00
ekager e8bb765ad7 For #5947 - Fix engineView NullPointerException 2019-10-11 09:03:24 -07:00
MozLando f66b9f3e8f Merge #5633
5633: Add fxa/sync integration tests r=csadilek a=isabelrios

 Pull Request checklist
<!-- Before submitting the PR, please address each item -->
- [x] **Quality**: This PR builds and passes detekt/ktlint checks (A pre-push hook is recommended)
- [x] **Tests**: This PR includes thorough tests or an explanation of why it does not
- [-] **Screenshots**: This PR includes screenshots or GIFs of the changes made or an explanation of why it does not
- [-] **Accessibility**: The code in this PR follows [accessibility best practices](https://github.com/mozilla-mobile/shared-docs/blob/master/android/accessibility_guide.md) or does not include any user facing features

This PR tries to add new tests, sync integration tests, to check the sync process Desktop<->Fenix, first for Bookmarks and in the future for more.

Co-authored-by: Isabel Rios <isabelrios@mackbookirios.home>
Co-authored-by: isabelrios <isabelrios@gmail.com>
2019-10-11 14:43:39 +00:00
MozLando 8cf54f773b Merge #5882
5882: For #5873 Added on/off indicator for delete browsing data on exit pref r=sblatz a=mcarare


### Pull Request checklist
<!-- Before submitting the PR, please address each item -->
- [x] **Quality**: This PR builds and passes detekt/ktlint checks (A pre-push hook is recommended)
- [x] **Tests**: This PR includes thorough tests or an explanation of why it does not
- [x] **Screenshots**: This PR includes screenshots or GIFs of the changes made or an explanation of why it does not
- [x] **Accessibility**: The code in this PR follows [accessibility best practices](https://github.com/mozilla-mobile/shared-docs/blob/master/android/accessibility_guide.md) or does not include any user facing features

### After merge
- [ ] **Milestone**: Make sure issues finished by this pull request are added to the [milestone](https://github.com/mozilla-mobile/fenix/milestones) of the version currently in development.

### To download an APK when reviewing a PR:
1. click on Show All Checks,
2. click Details next to "Taskcluster (pull_request)" after it appears and then finishes with a green checkmark,
3. click on the "Fenix - assemble" task, then click "Run Artifacts".
4. the APK links should be on the left side of the screen, named for each CPU architecture

Co-authored-by: mcarare <mihai.carare.dev@gmail.com>
2019-10-11 13:22:33 +00:00
Mihai Adrian 167c6dca93 For #2570: Hide 3-dots menu for all library items when in select mode (#5699)
Removed items from RecyclerView cache to allow setting the new visibility
Disabled hidden buttons, otherwise they could still be clicked
2019-10-10 23:02:22 -07:00
Sawyer Blatz 980b11610b For #5094: Adds telemetry for show search shortcuts 2019-10-10 22:52:41 -07:00
Sawyer Blatz b0d796ccee
For #5898: Default browser toggle sends user to SUMO on Android 5&6 (#5918) 2019-10-10 11:16:21 -07:00
Mitchell Hentges a497d2bcd0
Removes legacy nightly automation 2019-10-10 11:13:23 -07:00
Mugurell 8f0325c05b For #3584 - Check if menu is open before showing a new one (#5674)
Could have implemented this check (if menu is showing) inside the show() method
of BrowserMenu but this would mean the client (us) would go to the process of
building a new menu and then trying to have it displayed only for this to be
ignored by BrowserMenu in a somewhat opaque way.
Having this check done as soon as possible offers us full control and avoids
the unnecessary steps for building an already shown menu.
2019-10-10 06:37:47 -07:00
Grisha Kruglov 17d183ea0b Closes #5913: Add new sessionToken scope 2019-10-09 17:44:41 -07:00
shldhll 8e17ac05b1 Optimized imports. Closes #5876 2019-10-10 04:17:43 +05:30
shldhll f907ec52f0 Removed ObsoleteCoroutinesApi in tests. Closes #5876 2019-10-10 04:04:51 +05:30
Jeff Boek ed239ec250 For #373 - Integrate leanplum-fcm 2019-10-09 14:43:48 -07:00
Christian Sadilek 7552bacb32 For #778: Follow-up to fix find in page 2019-10-09 17:14:14 -04:00
Emily Kager f9afd97a68 For #1901 - Get rid of black flash when leaving GV Engine 2019-10-09 11:02:21 -07:00
Tiger Oakes 6ec0d46f6b Closes #394 - Trusted Web Activities (#5391) 2019-10-09 09:17:49 -07:00
mcarare 788e52be0c For #5873 Added on/off indicator for delete browsing data on exit pref 2019-10-09 11:55:37 +03:00
Roger Yang e9760fb185 Closes #5847: Use IO thread when submitting crash report 2019-10-08 18:46:14 -07:00
Tiger Oakes 78bc829735 Closes #778 - Progressive Web Apps! (#4914) 2019-10-08 16:50:15 -07:00
Severin Rudie 411ccc8f1f For 4780: add DefaultBrowsingModeManager tests 2019-10-08 15:13:17 -07:00
Severin Rudie c9e68bda31 For 4780: remove Settings#usePrivateMode and tests 2019-10-08 15:13:17 -07:00
Severin Rudie dd6439269b For 4780: ThemeManager now sends an intent before recreating
Updating themes recreates the activity, so if we aren't persisting 'usePrivateMode', we need to pass it to the new instance
2019-10-08 15:13:17 -07:00
Severin Rudie 693034951c For 4780: rename 'setPrivateModeIfNecessary' 2019-10-08 15:13:17 -07:00
Severin Rudie d1d20b544e For 4780: update HomeActivity to maintain private mode in memory
As an added bonus, this makes the temporal coupling between `setPrivateModeIfNecessary` and `setupThemeAndBrowsingMode` explicit.  They previously would have broken if called in reverse order, now it will fail to compile.
2019-10-08 15:13:17 -07:00
Severin Rudie 10f334303d For #4780: remove previous fix for leaking private mode status
This didn't function when 'open links in a private tab' was set.  Rather than adding another sketchy fix for the edge case, following commits will change `usePrivateMode` to be maintained in memory, instead of in Settings.
2019-10-08 15:13:17 -07:00
Sawyer Blatz 4045fb0107 For #4190: Removes waterfall animation from awesomebar 2019-10-08 09:14:23 -07:00
Sawyer Blatz 6484a48147
For #5787: Fixes shortcuts asking to launch private alias (#5825) 2019-10-08 08:40:28 -07:00
mcarare 1c6aefd82b For #3604 Snackbar messages for closing tabs use closed instead of deleted 2019-10-08 17:06:02 +03:00
isabelrios 0e3148f0da fixing more reviewers comments 2019-10-08 09:56:29 +02:00
Isabel Rios 44f4cedefd Add fxa/sync integration tests
fixing Jenkins path to tests and clean tests

commenting future tests and adding doc with info about the tests
2019-10-08 09:56:29 +02:00
Tiger Oakes d5c3433041 Use the new fragment constructor 2019-10-07 11:07:48 -07:00
Denys M a4439ff373 For #3563. Use `ListAdapter` for App Share list. 2019-10-07 10:41:48 -07:00
Denys M e55eda30fb For #3563. Use `ListAdapter` for Bookmark folder selection list. 2019-10-07 10:40:55 -07:00
ekager f6285ad5f8 For #3846 - Pass in updated session icon to tabs 2019-10-07 09:38:43 -07:00
Tiger Oakes d028c97112 For #5213 - Use support library attributes 2019-10-06 16:17:00 -07:00
Prat T 80a1e6dd2c Fixes #5351 - listen to onIconChanged in HomeFragment 2019-10-06 10:41:34 -07:00
Prat T fe648a0b99 Fixes #5351 - use session icon in tab view on home 2019-10-06 10:41:34 -07:00
Emily Kager 2b19b28d25 For #5651 - Set up Standard vs Strict Tracking Protection Experiment 2019-10-05 10:14:09 -07:00
Sawyer Blatz 19a2d9df4f For #1620: Hide search results when they match URL 2019-10-04 14:05:55 -07:00
mcarare 22eb207cef For #5784: Fix hiding default browser preference in sdk<=23 2019-10-04 12:41:12 -07:00
Colin Lee b7647a454f
For #5599: Remove dependency on fetch_httpurlconnection (#5716)
* For #5599: Remove dependency on fetch_httpurlconnection

* For #5599: Switch Glean to GeckoViewFetchClient

* Use existing Gecko client for Glean
2019-10-04 12:28:23 -05:00
Emily Kager 40e6284aef For #5442 - Show Delete Browsing Data on Quit option in home menu 2019-10-04 09:26:59 -07:00
Sawyer Blatz 841b06b02f
No issue: fixes master (#5777) 2019-10-03 14:42:56 -07:00
Sawyer Blatz 371e2ac3d8
For #514 & #5742: Updates "launch links in private tab" functionality (#5721)
* For #514 & #5742: Updates "launch links in private tab" functionality

* Fixes comments
2019-10-03 12:43:33 -07:00
Christian Sadilek b733e4fa8f Upgrade to Mozilla Android Components 16.0.0-SNAPSHOT 2019-10-03 11:07:26 -07:00
Severin Rudie 3be06953d6 For #4780 switch off private mode (#5614)
* Do not launch in Private Mode

When the app launches do not launch in Private Mode in order to prevent usage leaks to other users of the device.

* Issue #4780: add comments to use private mode

* For #4780: write tests for clear private mode on create app

* For #4780: clear private mode when privacy notification is removed
2019-10-03 10:23:13 -07:00
Sawyer Blatz e8216e3079
For #5094: Adds telemetry for suggestion toggles (#5704) 2019-10-03 10:03:14 -07:00
Sawyer Blatz 785b8b9519
For #5567: Removes search shortcuts button (#5739)
* For #5567: Removes search shortcut button

* No issue: Simplifies logic for displaying shortcuts
2019-10-03 08:53:16 -07:00
Sawyer Blatz 2896b36d14
No issue: Updates naming of launch links privately var (#5701)
The previous name was pretty confusing
2019-10-02 12:11:21 -07:00
Sawyer Blatz eb3c9f86e2
No issue: Removes feature flags for delete data (#5738) 2019-10-02 10:43:37 -07:00
Emily Kager f7c9ab11eb For #3487 - Add back open image in new tab 2019-10-01 12:45:09 -07:00
Michael Droettboom a250241523 1585250: Initialize metrics off of the main thread 2019-10-01 10:29:54 -07:00
Sawyer Blatz 669e694af9 For #5672: Fixes broken send tab link 2019-09-30 16:13:40 -07:00
Sawyer Blatz 69c42b6192 For #5681: Sets OPEN_TO_BROWSER false when using new tab shortcut 2019-09-30 14:56:16 -07:00
Emily Kager e9a0f1f65d For #2078 - Filter Out Self in Share Sheet (#5641) 2019-09-30 12:43:47 -07:00
Sawyer Blatz c8af16bd47
For #5679: Hides autoplay behind feature flag (#5685) 2019-09-30 12:01:04 -07:00
ekager ef29fe2584 Update BackgroundServicesTest, Suppress Complex Method 2019-09-30 10:33:56 -07:00
Grisha Kruglov a4097cd380 FxA WebChannels integration
This patch includes:
- WebChannels support enabled by default, with ability to disable it via remote flag
- expanded FxA telemetry (closes #4971)

Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
2019-09-30 10:33:56 -07:00
Chenxia Liu 8f97d247a6 For #235 - Add Glean crash count + docs. 2019-09-30 08:32:33 -07:00
Sawyer Blatz 3e42114190 For #5656: Fixes nightly major version number crash 2019-09-27 15:06:57 -07:00
Sawyer Blatz a38b73f19e Fixes #5653: Removes crash with null campaign 2019-09-27 15:01:00 -07:00
mcarare 64923978e6 For #1071 Added Desktop Mode icon 2019-09-27 09:47:10 -07:00
Sawyer Blatz 5e18ead45e For #4474: Adds tests and fixes issues 2019-09-27 08:59:05 -07:00
Tiger Oakes ee1f040e53 No issue: Move signedIn tracking to BookmarksSharedViewModel (#4755) 2019-09-27 08:57:38 -07:00
Sawyer Blatz 7f328a6dc4
For #1298: Adds adjustCampaignId to core ping (#5579) 2019-09-27 08:56:33 -07:00
Sawyer Blatz 6babf72352
For #5197: Adds telemetry for media notification (#5520) 2019-09-27 08:02:29 -07:00
Tiger Oakes 88aa519210 Closes #4711 - Extract VoiceSearchActivity (#5502) 2019-09-27 07:54:29 -07:00
Emily Kager 3f41a4e9c6 No issue: Update navigation library 2019-09-26 17:01:13 -07:00
Sawyer Blatz 11baabb63a No issue: Updates fact mapping to use enums 2019-09-26 17:00:51 -07:00
Emily Kager c3287b17ac Closes #5624 - Fix crash on preference change listener 2019-09-26 16:56:54 -07:00
Mihai Adrian 62ae025d65 For #4991:Ensured deleteSelectedBookmarks deletes all selected bookmarks (#5559)
Moved the deletion to a CoroutineScope(IO) to decouple from fragment lifecycle
Used local val tempStorage to keep reference to bookmarkStorage of outside class
Ran deletions with awaitAll to avoid concurrency issues on storage
2019-09-26 16:52:59 -07:00
Severin Rudie dffa61bf16 Closes #4513: fixes bookmark tests broken by loading change
Note that BookmarkFragmentStoreTest changes preserve existing behavior, which in many cases is more expansive than the test name implies
2019-09-26 16:29:14 -07:00
Severin Rudie fd7f1b2665 Closes #4513: adds tests for bookmark loading state 2019-09-26 16:29:14 -07:00
Severin Rudie fbdd537bc7 Closes #4513: show progress bar when loading bookmarks 2019-09-26 16:29:14 -07:00
Severin Rudie ca6c324f29 Issue #4513: added isLoading to bookmark state
This was added to the state object as a top level param because it could reasonably coexist with any value of `tree` or `mode`. Even if we don't now, we may someday want to display a loading indicator while also showing cached bookmarks.

For now, we set isLoading to false whenever we receive any bookmarks
2019-09-26 16:29:14 -07:00
Severin Rudie 96472a533a Issue #4513: fix mismatched bookmark listener lifecycles
The mismatch here was creating potentially inconsistent states. When first put into a CREATED or STARTED state, the listener would not be active, however after going through onResume it would then stay active until destroyed.

We should only be navigating to bookmarks when in a RESUMED state, so this change should be safe. I tried it a few times to verify. But I've been wrong before!
2019-09-26 16:29:14 -07:00
Colin Lee de93b05cac For #2754 Add tab cards to share sheet (#5493)
* For #2754 Add tab cards to share sheet

* For #2754: Fix background near rounded corners and ShareButtonAppearanceTest

* Add license to share_tab_item
2019-09-26 14:25:34 -07:00
Christian Sadilek ac2611d744 Upgrade to A-C 15.0.0-SNAPSHOT (incl. required changes) (#5578)
* Upgrade to Mozilla Android components 15.0.0-SNAPSHOT

* Update findinpage integration to use browser-state

* Use new UseCases APIs after download migration.
2019-09-26 12:50:50 -07:00
Mugurell c5330c6880 For 5092 - Show a Snackbar with retry option if sharing to devices fails (#5158)
* For #5092 - Show a Snackbar with retry option if sharing to devices fails

ShareController will contain all the business logic for checking the result
status of the `share to device` operations. When this fails it will show a
snackbar which also offer the possibility to retry the just failed operation.
To allow this even in the event the user has closed the share fragment we'll
use a GlobalScope's coroutine.
Refactored out the TabsSharedCallback from ShareFragment because otherwise we
would have neede to sent through that the just failed operation. After the
refactor the ShareController is solely responsable for showing the right
snackbar and handling the retry actions.

* For #5092 - Refactor ShareControllerTest

* For #5092: Adds color theming of snackbars
2019-09-26 12:30:28 -07:00
ekager 0b01635ce0 For #2874, #5375, #5131 - submitList workaround for Android 5 + 6 2019-09-25 19:59:07 -07:00
ekager 44bb592b43 For #5312 - Send ETP Strict/Standard event 2019-09-25 15:23:30 -07:00
ekager 24b3ed4384 For #5568 - Don't pass in Session for QuickActionSheetController 2019-09-25 13:33:38 -07:00
Emily Kager b0b60aa27d For #5281 - Use TrackerLog for reporting ETP categories (#5556) 2019-09-25 10:48:06 -07:00
Sawyer Blatz b6e6e36ccd For #561: Fix stutter of search icon & text when animating 2019-09-25 10:06:38 -07:00
Sawyer Blatz 75a25c9bd0 For #561: Fix linting issue 2019-09-25 10:06:38 -07:00
Jeff Boek c592a69aad For #561 - Fixes snackbar placement on homeview 2019-09-25 10:06:38 -07:00
Jeff Boek 5c092c1ef1 For #561 - Adds shadow/highlightto the bottom bar 2019-09-25 10:06:38 -07:00
Jeff Boek 00d1be97ac For #561 - Wires up add tab button inside the bottom bar 2019-09-25 10:06:38 -07:00
Jeff Boek b16754d78a For #561 - Adds add tab and menu button to bottom bar
- Adds space between wordmark and session control component
2019-09-25 10:06:38 -07:00
Jeff Boek abbb310ce3 For #561 - Removes the toolbar from the home screen
- Removes the menu button
- Fixes motionlayout animation with the wordmark/private browsing button
2019-09-25 10:06:38 -07:00
mcarare bfe8bf4663 For #1383 Added tab title to close button content description 2019-09-25 10:34:02 +03:00
Jeff Boek 1c9c5317eb For #5552 - Temporary fix for startup crash on es locales 2019-09-24 19:21:47 -07:00
Sawyer Blatz 856399e9e2
No issue: Fixes GleanMetricsService nits & broken UI test (#5539)
* No issue: Fixes GleanMetricsService nits

* No issue: fixes broken UI test
2019-09-24 16:12:09 -07:00
Alessio Placitelli 1ffdf1cf9b Add basic test coverage for Glean metrics in Fenix
This introduces test coverage, using the Glean SDK
testing API, for the metrics that are set at startup
by Fenix in the GleanMetricsService.

This additional adds a basic test for the translation
of the `app_opened` event.
2019-09-24 12:33:14 -07:00
Emily Kager 25e2a7abfc For #2765 - Run places maintenance daily (#5466) 2019-09-24 10:50:11 -07:00
Mihai Adrian c7c752cabb For #5356 Improves private browsing "common myths" link accessibility (#5479)
Added separate TextView for link text
Used UnderlineSpan to show text as link
Split string private_browsing_placeholder, one for each TextView
Set clickListener on TextView so it can be accessed via Talkback
2019-09-24 10:46:34 -07:00
Tiger Oakes 8c30200ced Only use Context.settings() function (not getter) (#5335)
Remove unused String extensions
2019-09-24 10:33:46 -07:00
Tiger Oakes 734d4031e2 Extract UriOpened observer from HomeActivity 2019-09-24 09:37:24 -07:00
Tiger Oakes e3c60faf24 Move BookmarkNode extensions to helper class (#4752) 2019-09-24 09:17:29 -07:00
Mihai Adrian 236f702bbe For#5468 Changed info source for url clipboard copy from view to session (#5514) 2019-09-24 07:56:59 -07:00
Tiger Oakes cb7701584f No issue: Extract home fragment mode (#5343) 2019-09-23 09:33:55 -07:00
Emily Kager 9d9ff959b5 For #5312 - Add Telemetry for Tracking Protection 2019-09-23 08:29:45 -07:00
Christian Sadilek c866ae1a1e Closes #5444: IntentReceiverActivity: Add tests for intent processing 2019-09-20 19:44:05 -04:00
Sawyer Blatz f02603be37
For #5460: Fixes styling of fill link from clipboard (#5464) 2019-09-20 15:29:16 -07:00
Sawyer Blatz 4a6e647167
For #5197: Adds telemetry for media controls (#5266) 2019-09-20 14:49:27 -07:00
Tiger Oakes 6c30a94081 Move settings classes to packages 2019-09-20 12:36:15 -07:00
Tiger Oakes 699eacab39 For #778 - Rename CustomTabActivity 2019-09-20 12:35:12 -07:00
Tiger Oakes e9fd6892ba For #394, #778 - Add hide toolbar feature
And also add CustomTabsServiceStore
2019-09-20 12:34:49 -07:00
ekager 78ac6fc912 For #5448 - Reload custom tab session when TP is toggled 2019-09-20 12:30:02 -07:00
Michael Droettboom a63eaa9d67 1581556: Initialize Glean on the main thread 2019-09-20 12:29:40 -07:00
mihai-adrian 47064a68e0 For #5141 Changed "learn more" link to be accessible to Talkback users 2019-09-20 12:29:02 -07:00
Tiger Oakes 172a9cf06c Extract and test crash reporter code 2019-09-20 11:04:11 -07:00
ekager 464122fda1 For #5421 - Make share dialog scrim dismiss fragment 2019-09-20 09:52:39 -07:00
Dennis Schubert 5577470d0b No bug - Add WebCompat feature. 2019-09-20 08:33:48 -07:00
Tiger Oakes f71ec8928b Add note about lazy in FeatureFlags 2019-09-20 08:33:29 -07:00
Sawyer Blatz 6f3d7b4ee8 For #5396: Adds "always launch in private mode" to settings 2019-09-20 08:33:07 -07:00
Mihai Adrian a1c8fc0698 For #3731 Improved UX for opening tabs from a Collection (#5427)
* For #3731 Changed order of items for a collection's overflow menu

* For #3731 Changed the order tabs open to keep same order from collections
2019-09-20 06:41:04 -07:00
Tiger Oakes 05a4faec78 Add tryGetHostFromUrl and update ExceptionDomains 2019-09-19 22:40:35 -04:00
Colin Lee 1aa4f5a519 For #255: Toggle Media Autoplay 2019-09-19 15:13:04 -07:00
Sawyer Blatz 2db2d9ceae For #1744: Adds tests for clipboard 2019-09-19 08:24:27 -07:00