Commit Graph

1406 Commits (44f4cedefdbf4e32ef1126f7ae8240793a6c7641)

Author SHA1 Message Date
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
Yeon Taek Jeong ddc1b2e648 For #4658: Add private browsing mode shortcut telemetry 5 years ago
Emily Kager 418b1ba890 For #1749 - Use Strict ETP by default, use Feature Flag for Settings 5 years ago
Sawyer Blatz 999d3cb963 For #1114: Show playing tab 5 years ago
Emily Kager 9a4610f068 For #2897 - Add Action States To Share Sheet 5 years ago
Yeon Taek Jeong 2e2bac4ccd
For #419: Create launch icon for private browsing (#4948) 5 years ago
Sawyer Blatz 5586b18c3e For #4155: Handle custom tabs & fix test 5 years ago
Sawyer Blatz 53b3f105ca For #4155: Sets pastedText default value 5 years ago
Sawyer Blatz 9d30d7bb03 For #4155: Restyle to custom menu 5 years ago
Sawyer Blatz 52fd327bc0 For #4155: Adds tests for browser toolbar popup menu 5 years ago
Sawyer Blatz fdd2b59fb8 For #4155: Adds popup menu for browser toolbar 5 years ago
Emily Kager 4485b7f647 Add Tracking Protection Info Panel 5 years ago
mihai-adrian ef4a6b4154 For #4877: Restored logic for closing tabs when not on browserFragment
Added return in function when saving collections coming from browser fragment
5 years ago
Sawyer Blatz e240de7e31 For #4908: Adds telemetry for send tab 5 years ago
Tiger Oakes d0ef2d40c2 Move bookmark navigation listener to separate file 5 years ago
Sawyer Blatz f7dde41b3b For #5021: Adds telemetry for what's new button 5 years ago
Tiger Oakes 3c07cacf4d Use A-C preferences property delegates 5 years ago
Tiger Oakes b77c4d2e2e Clean up SupportUtils 5 years ago
Mihai Adrian a31eb1f371 Code Health #4883: Refactored accessing settings by using Context extensions (#4973) 5 years ago
Sawyer Blatz cd533854e6
No issue: Only use iconTint in XML for bookmark menus (#5145) 5 years ago
Tiger Oakes 16115f57d1 For #3440 - Reduce BrowserFragment require calls 5 years ago
Colin Lee 4c2a7ac10e Delete AUTH_SESSIONS with COOKIES 5 years ago
Colin Lee 758f4c13ec Updates per UX and PR feedback 5 years ago
Colin Lee 2b9efccfca For #3106: Granular options for clearing user data 5 years ago
Petru Lingurar 53341f620a Code cleanup - Remove unused FindInPageBarBehavior
There is a "unused" lint suppression in place with the comment
"Referenced from XML". I found no such usage.
It's documentation says that this Behavior will always position FindInPageBar
above BrowserToolbar but the current code ensures
BrowserToolbar.visibility == GONE when FindInPageBar.visibility == VISIBLE
so there's no need for such behavior.
5 years ago
Petru Lingurar 716cf3995a Fix #4856 - Propagate LifecycleAwareFeature's onStart() to the inner feature
FindInPageFeature is used inside the app as a LifecycleAwareFeature and as such
it receives the onStart / onStop lifecycle calls.
The onStart() lifecycle call would not get passed to the feature but in
onStop() FindInPageFeature will detach it's Presenter and Interactor so when
the user comes back to the screen she could not interact anymore with the
feature.
To fix this we'll propagate LifecycleAwareFeature's onStart() to the inner
feature which is to rebind it's Presenter and Interactor in onStart().

This behavior is common to all the other features so all of them who implement
LifecycleAwareFeature will now get the onStart() call also.
5 years ago
Mihai Adrian ed0b6bd5ef For #4193 - Makes close button for tabs more accessible (#4442)
* fixes #4193 - made close button for tabs more accessible.

set recommended minimum size for accessibility 48x48, while keeping image size the same
removed margin from button and text as it was not needed anymore
aligned close button in center of tab to be visual consistent with alignment of favicon and more visual accessible

* Fix margins
5 years ago
Sawyer Blatz aef087aae0
No issue: Removes unused nestedScrollQuickActionView (#5143) 5 years ago
Sawyer Blatz 2653b5966e
For #964: Adds ability to disable each suggestion provider (#5096)
* For #964: Adds ability to disable each suggestion provider

* Fix nit
5 years ago
Jonathan Almeida ccd9e44a3e No issue: Add logging for firebase/autopush 5 years ago
Emily Kager 58287cd5bb For #5033 - Update browsing mode when session selected (#5118) 5 years ago
Emily Kager bb2a685ad9 For #5075 - Fix boolean error for private mode notification persistence (#5120) 5 years ago
Sebastian Kaspari 3a35233ac0 Remove ThumbnailsFeature. (#5127)
We currently do not use thumbnails anywhere in the app. Not using the feature means we are
not taking thumbnails on every page load which means we are saving memory and CPU cycles.
5 years ago
Grisha Kruglov 231924f5eb Fix breaking services APIs changes 5 years ago
Sebastian Kaspari 2c7fd93c7d Update to Mozilla Android Components 12.0.0-SNAPSHOT. 5 years ago
Sebastian Kaspari c2db07acf8 Add browser-state component. 5 years ago
Emily Kager a5e9da7a55 For #5025 - Do not remove custom tab session with config removed 5 years ago
Sawyer Blatz 09dcdb079d For #4474: Adds what's new button to home screen menu (#5088)
* For #4474: Adds what's new button to home screen menu

* For #4474: Adds tests for what's new button
5 years ago
Petru Lingurar 46b09395f8 For #5067 - Refactor ShareControllerTest following the use of SendTabUseCases 5 years ago
Petru Lingurar f7087e46e3 Fix #5067 - Refactor ShareController to use SendTabUseCases
Navigation between app fragments uses ShareTab as arguments. The newly used
SendTabUseCases uses TabData which is not Parcelable.
For minimal changes we'll keep both data classes and ShareController will know
how to map between the two.
Removed the `sessionId` property of ShareTab as it isn't needed anymore.
5 years ago
Sebastian Kaspari ba05d21657 Fix ktlint MaxLineLength issues. 5 years ago
Sebastian Kaspari 38d97fda8b Stores: Reduce visibility of reducer functions. 5 years ago
Sebastian Kaspari 2723a55b03 Rename HistoryStore/State/Action to HistoryFragmentStore/State/Action. 5 years ago
Sebastian Kaspari f3d8a89c63 Rename AccountSettingsStore/State/Action to AccountSettingsFragmentStore/State/Action. 5 years ago
Sebastian Kaspari 61e84c161d Rename SearchStore/State/Action to SearchFragmentStore/State/Action. 5 years ago
Sebastian Kaspari 22446263f1 Rename ExceptionsStore/State/Action to ExceptionsFragmentStore/State/Action. 5 years ago
Sebastian Kaspari ac32a88d45 Rename BrowserStore/State/Action to BrowserFragmentStore/State/Action. 5 years ago
Sebastian Kaspari 76063e307a Rename BookmarkStore/State/Action to BookmarkFragmentStore/State/Action. 5 years ago
mihai-adrian fc8fc2b33d Fixes #4997: Changed navigation to ShareFragment
Added global navigation action to share fragment in navigation graph
Changed share action to use global navigation to ShareFragment
5 years ago
Colin Lee 709588572a
For #5055: Crash when opening bookmarks (#5058) 5 years ago
Christian Sadilek 4cf03be236 For #2088: Use new async API to load default search engine in HomeFragment 5 years ago
Sebastian Kaspari 9b633f7f0f Move creation of GeckoRuntime to flavor-specific source set.
Since we are now able to build against GeckoView Nightly and GeckoView Beta,
we should create the GeckoRuntime from a flavor-specific source set.

Creating the runtime is not covered by the AC abstraction and so API changes
in GeckoView Nightly can break the build and leaves us with no option to fix
it from a shared code base. Separating the creation of GeckoRuntime
allows us to adapt individually and also to configure the runtimes
differently.
5 years ago
Will Hawkins 3abffd5d77 Use new async API to load and access search engines
Use the new asynchronous features of the search engine
manager from a-c to avoid the latency required to load
the default search engine.
5 years ago
Mugurell bf5b0e5cda For 4007 - Add unit tests for the Share Interactor, Controller and list Adapters 5 years ago
Mugurell e165868a53 For #4007 - Add ShareController for handling ShareFragment's business logic
`ShareController` defines a contract with all possible `ShareFragment`'s
behavior changes and comes with a default implementation -
`DefaultShareController`.
It is to be delegated by all `ShareFragment`s contained Views' Interactors
following any user interactions.
5 years ago
Mugurell 16eba61b25 For #4007 - ShareFragment will set the contained Views' state
ShareFragment which acts as a container would contain all business logic needed
for populating it's Views.
Data initialization should be done only once since the app state has no reason
to change after the ShareFragment is created and is done as soon as possible,
in onAttach().
Because of the expected short lifespan of this fragment, given the fact that
the state has no reason to change and we handle orientation changes ourselves
to keep things simple I didn't use a ViewModel to persist the state.
5 years ago
Mugurell 095870145f For #4007 - Refactor AppShareView in standalone Share Views
In an effort to respect the initial MVI architecture I've broken the
complex `AppShareView` in 3 separate Views
- `ShareCloseView`
- `ShareToAccountDevicesView`
- `ShareToAppsView`
They are standalone Views (extending LayoutContainer) which know nothing about
each other or their parent and so offer their container the possibility to
order or display them in any form later.
According to the lib-state contract they are only responsible to
- inflate themselves in their injected containerView
- render a certain state (to be added in later commits)
- delegate all user interaction to an associated Interactor
5 years ago
Mugurell 5e19741ddd For #4007 - Use camelCase for views referenced from code
As per #4341.
Also reformatted layouts to have a more consistent style.
Also refactored `AppShareRecyclerView` and `AccountDevicesShareRecyclerView` by
defining their LayoutManager in XML to reduce code complexity.
5 years ago
Tiger Oakes fb907033bb Add comments to AuthCustomTabActivity 5 years ago
Sawyer Blatz cea18f31c4
For #3892: Fixes help link on nightly (#4956) 5 years ago
Mihai Adrian 9b911f3276 Fixes #4894: added workaround for SDK<24 vector drawable with gradient color (#4944)
Removed drawableStart and added ImageView in layouts
Set ImageView logo programmatically: bitmap for SDK<24, vector for SDK>=24
Added onClickPendingIntent for ImageView in large and medium layouts
5 years ago
Tiger Oakes f740d4382a Closes #773 - Add shortcuts to homescreen (#4925) 5 years ago
mihai-adrian 5e78420cce Fixes #3602:navigate to top of home screen after tapping "start browsing"
After onboarding.finish(), scrolled homeLayout to top
5 years ago
Jonathan Almeida f25a9660e8 Closes #4218: Remove forced registration renewal for push 5 years ago
Jonathan Almeida 18ca62b887 For #4063: Remove SendTab feature flags 5 years ago
Yeon Taek Jeong d87b8a8a5c
For #4658: Add some private browsing mode telemetry (#4968) 5 years ago
Sawyer Blatz 09ed721015 For #4969: Removes erroneous FxA sign up ping (#4970) 5 years ago
Yeon Taek Jeong cc5408d717
For #2053: Add persistent notification to close all private browsing tabs (#4913) 5 years ago
Sebastian Kaspari aa5069caca Closes #4215: CustomTabActivity: Remove attached session if activity is finishing. (#4985) 5 years ago
Emily Kager 7b5ed2673b For #4863 - Remove delay in HomeFragment onPreDraw 5 years ago
Suraj Shah 66a8c04967 Fixes #4488: Shows snackbar on bookmark deletion from edit fragment (#4792)
* Fixes #4488
Updates changelog

* Removes wildcard imports.

* Removes custom label in use, replaces with let
5 years ago
Sebastian Kaspari 8608375eac Use Mozilla Android Components 10.0.1. 5 years ago
Jonathan Almeida 681257bea7 For #4960: Initialize push only if available (#4964) 5 years ago
Jeff Boek bfb2beabe7
For #4063 - Always enable the push service (#4932) 5 years ago
Tiger Oakes d1964d6536 Fixes #4771 - Add method for sessions of type (#4782)
Fixes share tabs to use the new method
5 years ago
Emily Kager 1cf8a40059 For #4295 - Adds Experiments Pref to Data Collection Settings (#4915) 5 years ago
Sebastian Kaspari c322343248 Closes #4431: Enable feature-media component for all builds. (#4898) 5 years ago
Emily Kager a65f220b39 For #4921 - Adds WindowFeature to BaseBrowserFragment 5 years ago
Arturo Mejia 24f79b3263 Fix safe browsing API breaking change. (#4946) 5 years ago
Sourabh 091778a4b9 For #4398 - add HistoryController (#4837) 5 years ago
Amaan Marfatia dc9fdd9db3 Fixes #4067 besides snackbar (#4777)
* Fixes #4067 besides snackbar

Makes layout hierarchy more shallow to increase performance.

* Fix #4067 Feedback

Make sure quick_action_overlay appears on top and use horizontal chain in tab_header.
5 years ago
Tiger Oakes 66e14959ba Add custom tab fragment 5 years ago
ekager ffbbe119f3 For #3967 - Invoke pending deletion on back pressed 5 years ago
ekager b07df9698a For #4868 - Update content description of tabs button with number of tabs 5 years ago
Grisha Kruglov 282c2dc182 No issue: only sync once on startup 5 years ago
Emily Kager b9f6f7fa93 For #4779 : Don't double navigate with global directions in HomeActivity 5 years ago
Emily Kager 84b0693fd2 For #4652 : Use workaround for HomeScreenViewModel (#4887) 5 years ago
Tiger Oakes 9f154dc3a0 Extract intent processors from HomeActivity (#4884) 5 years ago
Tiger Oakes 79e58250fc Make `Settings.instance` private 5 years ago
Sebastian Kaspari f62e295fc6 Closes #4874: Use new build types in FeatureFlags class. 5 years ago
Tiger Oakes c475bc87cf Move classes out of top-level package 5 years ago
Jeff Boek 68f5d211d3 For #4326 - Updates codebase to support latest version of detekt 5 years ago
Colin Lee 051ae9f584 For #3869: Switch to A-C SearchLocalizationProvider (#4858)
* For #3869: Switch to A-C SearchLocalizationProvider

* Fix test
5 years ago
Mihai Adrian df3e1bf9d3 Fixes #4795 fixed requestDesktopStateProvider value from private to desktopMode (#4810)
RequestDesktopStateProvider was taken from private instead of desktopMode
5 years ago
Tiger Oakes aab357845b No issue: Clean up preferences code (#4699) 5 years ago
Emily Kager c1b1c2f332 For #3967 - Invokes pending deletion with more bookmark actions (#4522) 5 years ago
Jonathan Almeida 71a2478f4d Use Mozilla Android Components 10.0.0 5 years ago
Emily Kager 416e25e8a5 No issue: Don't show session provider in private mode 5 years ago
Yeon Taek Jeong 6f899c7fb5
For #2834: Delete all Private Tabs redesign (#4787) 5 years ago
(´⌣`ʃƪ) c076cc85f9 For #4436: Dismiss onboarding before navigating away from home (#4801) 5 years ago
Tiger Oakes 33f3b14c29 Adds setters and property delegates in `Settings` (#4809)
* Change Settings to use setters

* Add delegate for shared preferences
5 years ago
Tiger Oakes ac6c1ec2ee Closes #2690 - Clean up CreateCollection viewmodel (#4731) 5 years ago
Tiger Oakes 9ee8c00928 For #4774 - Use vector drawable compat (#4811) 5 years ago
Tiger Oakes ad98b2f3ea For #4744 - Extract private browsing button (#4813) 5 years ago
Tiger Oakes 090e8006b0 Color the system bars in custom tabs (#4819) 5 years ago
Tiger Oakes 95ef312b1e Issue #1000 - Remove isCustomTab flag (#4656) 5 years ago
Sourabh 1afc0eacd8 For #4399: Create LibState Controller for Search (#4673)
* For #4399: Create LibState Controller for Search

* fix code format

* add unit tests for DefaultSearchController

* add more test

* fix unit tests
5 years ago
Mugurell ab6e7dc52b Fix 4827 - Use ktx doOnPreDraw() to restore HomeFragment's layout
The previous solution would result in a crash because the passed in
viewTreeObserver that would trigger onPreDraw would be invalid.
The proposed solution is simpler and ensures we'll always use the right
viewTreeObserver.

`FragmentPreDrawManager` is general enough that can be used by other Fragments
also, so I've added it to the `utils` package.
5 years ago
Tiger Oakes b8c93107c0 For #4744 - Extract TransitionPreDrawListener (#4812) 5 years ago
Tiger Oakes a632d8f1dc For #4744 - Move search bar icon padding to dimens (#4814) 5 years ago
Emily Kager fb1d655d96 Closes #4822 - Update Bookmark State in onResume (#4823) 5 years ago
Sawyer Blatz 0d4eceed56 For #2706: Refactor Glean to reduce errors (#4753)
* For #2706: Adds recording for untracked events

* For #2706: Adds key alignment to Metrics
5 years ago
Sawyer Blatz 4731977f5d
For #4421: Fixes issues with new glean events (#4816) 5 years ago
Sawyer Blatz 73e3db8fe0 For #4804: Resolves issue with crash reporter stack 5 years ago
Arturo Mejia 210868f5bc Use Mozilla Android Components 9.0.0-SNAPSHOT. (#4750) 5 years ago
Suraj Shah 806961094b Fixes #4704 (#4728)
* Fixes #4704. Overrides `setEnabled` for DeleteBrowsingDataItem to change view alpha when disabled and to toggle the checkbox `isEnabled` behavior based on the value provided.

* Updates CHANGELOG.md

* Removes unnecessary disabling of checkbox in DeleteBrowsingDataItem.kt
Updates CHANGELOG.md to reflect the component changed.
5 years ago
Mugurell 645674c9bd Closes #4396 - Add a Bookmarks Controller (#4593)
* For #4396 - Rename BookmarkInteractor methods

Following the naming model used in other Interactors this too will use reactive
method names in the form of "on..." instead of the previous imperative model.

Kept the imperative naming model for the methods from `SelectionInteractor` as
they are a new addition and I'm not sure about the future direction.

* For #4396 - Add a BookmarkController

It abstracts the Fragment behavior in a contract through which various
Interactors can inform about the specific View changes and can ask for
modifications in their container Fragment.

This contract and it's implementation - `DefaultBookmarkController` are the
result of extracting the container Fragment's business logic from
`BookmarkFragmentInteractor` in it's own standalone component.

* For #4396 - Refactored Bookmark related tests

Added a new `BookmarkControllerTest` tests class which complements the new
`BookmarkController` to ensure that it properly operates on `BookmarkFragment`

Also refactored the existing `BookmarkFragmentInteractorTest` to accommodate
`BookmarkFragmentInteractor`'s now more specialized behavior.
5 years ago
Tiger Oakes de14962e3f Extract quick action sheet observer code (#4368) 5 years ago
Emily Kager 7d02354f4f For #4799 #4790 - Don't use passed in sessions in BrowserToolbarController (#4800) 5 years ago
Colin Lee d1aed157dd
For #4686: Fix potential security issue (#4764) 5 years ago
Yeon Taek Jeong d4c83f9668 For #4736: Display search shortcuts only from home or search widget 5 years ago