Commit Graph

1726 Commits (f69009aa9e6148514e8b21e8dc923ace62db3471)

Author SHA1 Message Date
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.
5 years ago
Sawyer Blatz d6aeeb2dec
For #5958: Adds in app download notifications (#6506) 5 years ago
Mihai Adrian 1388156953 For #1211 Hide the keyboard when scrolling through engine suggestions (#6474) 5 years ago
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 !!
5 years ago
Emily Kager d9615108ee For #6354 - Removes ETP Experiment, Removes Feature Flags, Sets Strict Default 5 years ago
mcarare 1ff5a1934e For #5709 Do not animate switch for ETP panel 5 years ago
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.
5 years ago
Grisha Kruglov 40047315c2 For #6490 - track abnormal FxA behaviour via Sentry 5 years ago
Emily Kager ef7a23c875 Adds webAppShortcutManager argument 5 years ago
Tiger Oakes afda836f1f Use ManifestUpdateFeature 5 years ago
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.
5 years ago
Emily Kager 3e2b88cc91 For #5547 - Add top level auth when accessing passwords 5 years ago
Sawyer Blatz 284f3cf0f5 For #4456: Updates total_uri_count upload (#6482) 5 years ago
Sawyer Blatz a4ad2116ae
For #6390: Fixes textColor on download prompt (#6468) 5 years ago
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
5 years ago
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
5 years ago
ekager 18c0525ff6 Use new API for ETP Exceptions 5 years ago
Emily Kager ca8ba57635 For #6441: Fix variant build type matching (#6462) 5 years ago
Emily Kager 1ee0703bc3 For #6441 - Only enable experiments for Beta/Prod 5 years ago
Christian Sadilek a7e139da8e Use new WindowFeature API after browser-state migration 5 years ago
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".
5 years ago
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.
5 years ago
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.
5 years ago
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.
5 years ago
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.
5 years ago
Tiger Oakes 9456998f9f For #6153 - Add powered by notification 5 years ago
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.
5 years ago
mcarare 349c0193d9 For #6342 Clicking add tab button from home screen finishes onboarding 5 years ago
Sawyer Blatz e62407e766
For #5959 & #5958: Integrates download feature into Fenix (#6368) 5 years ago
mcarare 41c9b9e958 For #1487 Add "my library" menu category and items to home 3-dot menu 5 years ago
Artur Dryomov 05e871dd0c No issue: Refactor errors to risk level conversion. (#5710) 5 years ago
Sawyer Blatz 8549b80272 For #4456: Adds total_uri_count to metrics core ping (#6003) 5 years ago
Sawyer Blatz fd22c43f9d
Fixes #6344: Adds null check for adjust campaign (#6348) 5 years ago
Chenxia Liu 41ee8a4efb For #6294 - When only one tab is being saved to collection, add it to selected tabs. 5 years ago
Sawyer Blatz 2a358db561
For #1298: Fixes issue with Adjust campaign not sending through Glean (#5896) 5 years ago
Christian Sadilek ee3871cd7c Closes #5678: Selected session may render in ExternalAppBrowserActivity 5 years ago
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)
5 years ago
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()
5 years ago
ekager fb17ae2258 For #6229 - Remove all tab options from custom tab context menu 5 years ago
Emily Kager 6435a503ca For #6219 - Reset default setting if user opts out of experiments 5 years ago
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.
5 years ago
Sawyer Blatz 4359c215e6 For #5737: Adds telemetry for open links in a private tab (#5975) 5 years ago
Denys M 6290c0c826 Closes #2441. Update LeakCanary to `2.0-beta-3` version. 5 years ago
ekager f49331de55 For #5544: Bare Minimum Logins UI 5 years ago
Jeff Boek d1643b785e For #2477 - Adds accessibility setting to force enable zoom 5 years ago
Sebastian Kaspari b3ce0b421b Update to Mozilla Android Components 19.0.0-SNAPSHOT. 5 years ago
Sebastian Kaspari 9543f38978 Use new toolbar API of AC 18.0.0. 5 years ago
Sawyer Blatz 2cba624609
No issue: Fixes string issues for l10n (#6158)
Issues found here: https://github.com/mozilla-l10n/android-l10n/pull/89
5 years ago
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>
5 years ago
Severin Rudie f812ae4259 For #3676: fix duplicate uri events on first load (#6128) 5 years ago
mawen7 3af307b47f Close tab with no history on back press and return to parent if available 5 years ago
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
5 years ago
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
5 years ago
Tiger Oakes cbc449d3b6 Refactor asCamelCase to use string builder (#6141) 5 years ago
Sebastian Kaspari 5d5358ae45 Issue #36170: BaseBrowserFragment: Use new feature-prompts API. 5 years ago
Tiger Oakes 4e3a3665d6 For #3366 - Use one layout for edit/add bookmark (#5900) 5 years ago
Mihai Adrian fbec001e28 For #1383: Fix updating description of close button on title change. (#6020) 5 years ago
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.
5 years ago
Mihai Branescu e23528291a For #6063 - changed ETP blocking info title strings (#6082) 5 years ago
Shangeeth Sivan d223a0bd35 Closes #5465: Added OnCheckListener to all checkboxes ,when there are no items checked delete button will be disabled (#6098) 5 years ago
ValentinTimisica 485ccba189 Fixes #5323: Show a snackbar while browsing data is deleting. (#6105) 5 years ago
Jeffrey Starke 2de6a9aca7 Don't show fingerprinters section of the standard tracking policy UI (#6125) 5 years ago
Sören Hentzschel a76cd9cc67 no issue - removed unused feature flags (#6143) 5 years ago
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>
5 years ago
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>
5 years ago
Tiger Oakes e572562c7a Cleanup shortcut code 5 years ago
Tiger Oakes a598148b29 Fixes #5225 - Hide AuthCustomTabActivity 5 years ago
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.
5 years ago
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
5 years ago
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.
5 years ago
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>
5 years ago
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>
5 years ago
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>
5 years ago
Grisha Kruglov 031f923273 Revert sessionScopeToken to fix broken QR pairing flow 5 years ago
mcarare b82a794908 For #5709: Align ETP onboarding popup implementation with original mocks 5 years ago
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.
5 years ago
Mihai Branescu 1490c0178f For #5749 - Update string for ETP onboarding popup 5 years ago
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>
5 years ago
ekager 663126f696 No issue: Remove black flash workaround 5 years ago
bswe a570b910c2 Reformatting to simplify use of .any construct as suggested in review 5 years ago
bswe 6bc5d96f92 Reformatting to use .any construct as suggested in review 5 years ago
bswe 052695ffa1 Issue #5233: Minor modifications suggested in code review. 5 years ago
bswe 7ec714552f Issue #5233: Added call to doesPrivateBrowsingPinnedShortcutExist function to determine whether the "recommend private browing shortcut" dialog is displayed. 5 years ago
bswe 9913a024d8 Issue #5233: Added call to doesPrivateBrowsingPinnedShortcutExist function to determine whether the "add private browing shortcut" item is visible in the settings menu. 5 years ago
bswe dcebd83e9f Issue #5233: Added doesPrivateBrowsingPinnedShortcutExist function to determine whether a shortcut already exists (only available in API >=25). 5 years ago
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>
5 years ago
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>
5 years ago
Sawyer Blatz 2395b9b941 For #5898: Launch SUMO article properly for default browser 5 years ago
MozLando 6b6c752fa9 Merge #5956
5956: For #5947 - Fix engineView NullPointerException r=csadilek a=ekager



Co-authored-by: ekager <emilykager@gmail.com>
5 years ago
MozLando fba375135f Merge #5933
5933: Removes legacy nightly automation r=johanlorenzo a=mitchhentges



Co-authored-by: Mitchell Hentges <mhentges@mozilla.com>
5 years ago
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>
5 years ago
ekager e8bb765ad7 For #5947 - Fix engineView NullPointerException 5 years ago
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>
5 years ago
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>
5 years ago
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
5 years ago
Sawyer Blatz 980b11610b For #5094: Adds telemetry for show search shortcuts 5 years ago
Sawyer Blatz b0d796ccee
For #5898: Default browser toggle sends user to SUMO on Android 5&6 (#5918) 5 years ago
Mitchell Hentges a497d2bcd0
Removes legacy nightly automation 5 years ago
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.
5 years ago
Grisha Kruglov 17d183ea0b Closes #5913: Add new sessionToken scope 5 years ago
shldhll 8e17ac05b1 Optimized imports. Closes #5876 5 years ago
shldhll f907ec52f0 Removed ObsoleteCoroutinesApi in tests. Closes #5876 5 years ago
Jeff Boek ed239ec250 For #373 - Integrate leanplum-fcm 5 years ago
Christian Sadilek 7552bacb32 For #778: Follow-up to fix find in page 5 years ago
Emily Kager f9afd97a68 For #1901 - Get rid of black flash when leaving GV Engine 5 years ago
Tiger Oakes 6ec0d46f6b Closes #394 - Trusted Web Activities (#5391) 5 years ago
mcarare 788e52be0c For #5873 Added on/off indicator for delete browsing data on exit pref 5 years ago
Roger Yang e9760fb185 Closes #5847: Use IO thread when submitting crash report 5 years ago
Tiger Oakes 78bc829735 Closes #778 - Progressive Web Apps! (#4914) 5 years ago
Severin Rudie 411ccc8f1f For 4780: add DefaultBrowsingModeManager tests 5 years ago
Severin Rudie c9e68bda31 For 4780: remove Settings#usePrivateMode and tests 5 years ago
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
5 years ago
Severin Rudie 693034951c For 4780: rename 'setPrivateModeIfNecessary' 5 years ago
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.
5 years ago
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.
5 years ago
Sawyer Blatz 4045fb0107 For #4190: Removes waterfall animation from awesomebar 5 years ago
Sawyer Blatz 6484a48147
For #5787: Fixes shortcuts asking to launch private alias (#5825) 5 years ago
mcarare 1c6aefd82b For #3604 Snackbar messages for closing tabs use closed instead of deleted 5 years ago
isabelrios 0e3148f0da fixing more reviewers comments 5 years ago
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
5 years ago
Tiger Oakes d5c3433041 Use the new fragment constructor 5 years ago
Denys M a4439ff373 For #3563. Use `ListAdapter` for App Share list. 5 years ago
Denys M e55eda30fb For #3563. Use `ListAdapter` for Bookmark folder selection list. 5 years ago
ekager f6285ad5f8 For #3846 - Pass in updated session icon to tabs 5 years ago
Tiger Oakes d028c97112 For #5213 - Use support library attributes 5 years ago
Prat T 80a1e6dd2c Fixes #5351 - listen to onIconChanged in HomeFragment 5 years ago
Prat T fe648a0b99 Fixes #5351 - use session icon in tab view on home 5 years ago
Emily Kager 2b19b28d25 For #5651 - Set up Standard vs Strict Tracking Protection Experiment 5 years ago
Sawyer Blatz 19a2d9df4f For #1620: Hide search results when they match URL 5 years ago
mcarare 22eb207cef For #5784: Fix hiding default browser preference in sdk<=23 5 years ago
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
5 years ago
Emily Kager 40e6284aef For #5442 - Show Delete Browsing Data on Quit option in home menu 5 years ago
Sawyer Blatz 841b06b02f
No issue: fixes master (#5777) 5 years ago
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
5 years ago
Christian Sadilek b733e4fa8f Upgrade to Mozilla Android Components 16.0.0-SNAPSHOT 5 years ago
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
5 years ago
Sawyer Blatz e8216e3079
For #5094: Adds telemetry for suggestion toggles (#5704) 5 years ago
Sawyer Blatz 785b8b9519
For #5567: Removes search shortcuts button (#5739)
* For #5567: Removes search shortcut button

* No issue: Simplifies logic for displaying shortcuts
5 years ago
Sawyer Blatz 2896b36d14
No issue: Updates naming of launch links privately var (#5701)
The previous name was pretty confusing
5 years ago
Sawyer Blatz eb3c9f86e2
No issue: Removes feature flags for delete data (#5738) 5 years ago
Emily Kager f7c9ab11eb For #3487 - Add back open image in new tab 5 years ago
Michael Droettboom a250241523 1585250: Initialize metrics off of the main thread 5 years ago
Sawyer Blatz 669e694af9 For #5672: Fixes broken send tab link 5 years ago
Sawyer Blatz 69c42b6192 For #5681: Sets OPEN_TO_BROWSER false when using new tab shortcut 5 years ago
Emily Kager e9a0f1f65d For #2078 - Filter Out Self in Share Sheet (#5641) 5 years ago
Sawyer Blatz c8af16bd47
For #5679: Hides autoplay behind feature flag (#5685) 5 years ago
ekager ef29fe2584 Update BackgroundServicesTest, Suppress Complex Method 5 years ago
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>
5 years ago
Chenxia Liu 8f97d247a6 For #235 - Add Glean crash count + docs. 5 years ago
Sawyer Blatz 3e42114190 For #5656: Fixes nightly major version number crash 5 years ago
Sawyer Blatz a38b73f19e Fixes #5653: Removes crash with null campaign 5 years ago
mcarare 64923978e6 For #1071 Added Desktop Mode icon 5 years ago
Sawyer Blatz 5e18ead45e For #4474: Adds tests and fixes issues 5 years ago
Tiger Oakes ee1f040e53 No issue: Move signedIn tracking to BookmarksSharedViewModel (#4755) 5 years ago
Sawyer Blatz 7f328a6dc4
For #1298: Adds adjustCampaignId to core ping (#5579) 5 years ago
Sawyer Blatz 6babf72352
For #5197: Adds telemetry for media notification (#5520) 5 years ago
Tiger Oakes 88aa519210 Closes #4711 - Extract VoiceSearchActivity (#5502) 5 years ago
Emily Kager 3f41a4e9c6 No issue: Update navigation library 5 years ago
Sawyer Blatz 11baabb63a No issue: Updates fact mapping to use enums 5 years ago
Emily Kager c3287b17ac Closes #5624 - Fix crash on preference change listener 5 years ago
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
5 years ago
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
5 years ago
Severin Rudie fd7f1b2665 Closes #4513: adds tests for bookmark loading state 5 years ago
Severin Rudie fbdd537bc7 Closes #4513: show progress bar when loading bookmarks 5 years ago
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
5 years ago
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!
5 years ago
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
5 years ago
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.
5 years ago
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
5 years ago
ekager 0b01635ce0 For #2874, #5375, #5131 - submitList workaround for Android 5 + 6 5 years ago
ekager 44bb592b43 For #5312 - Send ETP Strict/Standard event 5 years ago
ekager 24b3ed4384 For #5568 - Don't pass in Session for QuickActionSheetController 5 years ago
Emily Kager b0b60aa27d For #5281 - Use TrackerLog for reporting ETP categories (#5556) 5 years ago
Sawyer Blatz b6e6e36ccd For #561: Fix stutter of search icon & text when animating 5 years ago
Sawyer Blatz 75a25c9bd0 For #561: Fix linting issue 5 years ago
Jeff Boek c592a69aad For #561 - Fixes snackbar placement on homeview 5 years ago
Jeff Boek 5c092c1ef1 For #561 - Adds shadow/highlightto the bottom bar 5 years ago
Jeff Boek 00d1be97ac For #561 - Wires up add tab button inside the bottom bar 5 years ago
Jeff Boek b16754d78a For #561 - Adds add tab and menu button to bottom bar
- Adds space between wordmark and session control component
5 years ago
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
5 years ago
mcarare bfe8bf4663 For #1383 Added tab title to close button content description 5 years ago
Jeff Boek 1c9c5317eb For #5552 - Temporary fix for startup crash on es locales 5 years ago
Sawyer Blatz 856399e9e2
No issue: Fixes GleanMetricsService nits & broken UI test (#5539)
* No issue: Fixes GleanMetricsService nits

* No issue: fixes broken UI test
5 years ago
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.
5 years ago
Emily Kager 25e2a7abfc For #2765 - Run places maintenance daily (#5466) 5 years ago
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
5 years ago
Tiger Oakes 8c30200ced Only use Context.settings() function (not getter) (#5335)
Remove unused String extensions
5 years ago
Tiger Oakes 734d4031e2 Extract UriOpened observer from HomeActivity 5 years ago
Tiger Oakes e3c60faf24 Move BookmarkNode extensions to helper class (#4752) 5 years ago
Mihai Adrian 236f702bbe For#5468 Changed info source for url clipboard copy from view to session (#5514) 5 years ago
Tiger Oakes cb7701584f No issue: Extract home fragment mode (#5343) 5 years ago
Emily Kager 9d9ff959b5 For #5312 - Add Telemetry for Tracking Protection 5 years ago
Christian Sadilek c866ae1a1e Closes #5444: IntentReceiverActivity: Add tests for intent processing 5 years ago
Sawyer Blatz f02603be37
For #5460: Fixes styling of fill link from clipboard (#5464) 5 years ago
Sawyer Blatz 4a6e647167
For #5197: Adds telemetry for media controls (#5266) 5 years ago
Tiger Oakes 6c30a94081 Move settings classes to packages 5 years ago
Tiger Oakes 699eacab39 For #778 - Rename CustomTabActivity 5 years ago
Tiger Oakes e9fd6892ba For #394, #778 - Add hide toolbar feature
And also add CustomTabsServiceStore
5 years ago
ekager 78ac6fc912 For #5448 - Reload custom tab session when TP is toggled 5 years ago
Michael Droettboom a63eaa9d67 1581556: Initialize Glean on the main thread 5 years ago
mihai-adrian 47064a68e0 For #5141 Changed "learn more" link to be accessible to Talkback users 5 years ago
Tiger Oakes 172a9cf06c Extract and test crash reporter code 5 years ago
ekager 464122fda1 For #5421 - Make share dialog scrim dismiss fragment 5 years ago
Dennis Schubert 5577470d0b No bug - Add WebCompat feature. 5 years ago
Tiger Oakes f71ec8928b Add note about lazy in FeatureFlags 5 years ago
Sawyer Blatz 6f3d7b4ee8 For #5396: Adds "always launch in private mode" to settings 5 years ago
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
5 years ago
Tiger Oakes 05a4faec78 Add tryGetHostFromUrl and update ExceptionDomains 5 years ago
Colin Lee 1aa4f5a519 For #255: Toggle Media Autoplay 5 years ago
Sawyer Blatz 2db2d9ceae For #1744: Adds tests for clipboard 5 years ago
Sawyer Blatz fd1fcd8b89 For #4155: Adds paste & go for search terms 5 years ago
Sawyer Blatz e961a9d63d For #1744: Adds clipboard provider to search engine screen 5 years ago
Tiger Oakes 1777b5a830 Use enum to simplify delete on quit code 5 years ago
Tiger Oakes 106458c2c9 For #3440 - Reduce HomeFragment require calls 5 years ago
Jeff Boek 976c840047 For #3077 - Replaces connect another device dialog with a scree 5 years ago
Unpublished 065ce13999 Pass color resource for what's new menu item by id 5 years ago
Sawyer Blatz 50cd2920d3
For #5371: Updates search engine settings string (#5393) 5 years ago
Sawyer Blatz e1b84a7a08 For #5396: Reverts broken activity alias 5 years ago
Tiger Oakes 284cbab9ea Use .orEmpty() 5 years ago
Emily Kager 3e132f102c No issue: Update androidx libraries Sept 5 2019 5 years ago
Mihai Adrian 1767bd5569 For #5174 Changed FindInPage height to toolbar height to cover QAB (#5376) 5 years ago
Emily Kager 2b71af4087 For #5258 - Pop AccountProblemFragment if signed out 5 years ago
Grisha Kruglov 8a9340fd9d Post: Clean up 'push' initialization code 5 years ago
Grisha Kruglov d67fb3eed2 Post: Add experiment flags, push and telemetry tests for BackgroundServices 5 years ago
Grisha Kruglov eeaeb973ff Post: minor cleanup 5 years ago
Grisha Kruglov c2fb99a73f 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>
5 years ago
Tiger Oakes a61391ef58 Separates tracker bucket sorting code 5 years ago
Emily Kager 140da0dd0f For #5359 , #5360 - Update ETP Vectors for Android 5+6 5 years ago
mawen7 9ebd4efe70 Pass app name to delete browsing data prompt 5 years ago
Sebastian Kaspari b8539ccb33 Use new feature-contextmenu API. 5 years ago
Tiger Oakes 42bb3e1410 Change deleteAndQuit to take an activity 5 years ago
Emily Kager da37dedba3 For #5279 - Don't use runBlocking in delete and quit 5 years ago
ekager 8cd0d8faf3 For #5304 - Align ETP Onboarding Tool Tip PopupWindow 5 years ago
Yeon Taek Jeong 3787dd7b1f For #5254: Fix transition to private browsing mode after sharing a page 5 years ago
Sawyer Blatz e247870b9f
For #5277: Updates string for delete browsing data (#5309) 5 years ago
Sebastian Kaspari dd85229c41 Use new feature-downloads API. 5 years ago
Sawyer Blatz 42b31f0088 For #4155: Adds elevation to copy/paste menu 5 years ago
Mihai Adrian c8bc144114 For #2570: Hide 3-dots menu when in select mode for bookmarks and history (#5173)
Show or hide overflow menu for entire list is triggered when mode is changed
For bookmarks, due to implementation of selection and diffUtil,
additional check is necessary for current item (last selected) that is redrawn
5 years ago
Emily Kager b83ae45c36 For #5263 - Hide ETP Panel Settings for custom tab 5 years ago
Tiger Oakes 4acf48e817 Fixes #5212 - Change tint in onCreateOptionsMenu
Also fixes #5213
5 years ago
Mihai Adrian bc16061939 For #3371: Show snackbar message when share fails with crash (#5210) 5 years ago
Emily Kager fcb0448fa5 For #4458 - Enable font inflation with font auto size setting (#5252) 5 years ago
ekager 4461230e9b For #5229, #5228 - Dismiss ETP panel on back press, don't truncate text 5 years ago
Emily Kager a5859e0028 For #5178 - Polish delete browsing data item layout 5 years ago
Emily Kager 102a36bd7e No issue: Updates isPWA to isInstallable for AC 13 snapshot 5 years ago
Roger Yang b3eca65614 Closes #5091: Refactor Sentry BreadCrumbs to use lib-crash BreadCrumbs 5 years ago
Jeff Boek e092dfd684 For #5047 - Addresses nits
- Changes MainScope to viewLifecycleScope
- Fixes string name/comment to better describe what it is
- Adds disabled state to the add button
5 years ago
Jeff Boek d18ec49704 For #5047 - Wires up dialog to webAppUseCases 5 years ago
Jeff Boek faff73b9b3 For #5047 - Creates dialog ui for naming a shortcut 5 years ago
Emily Kager e3209dcc84 For #3700 - Add Setting to Delete Data on "Quit" menu action 5 years ago