* Remove search fragment
* Use new folder to search dialog
* Rebase and lint
* Update tests with search dialog nav directions
* Rename interactor to match naming convention. Remove old controller and point everything to the dialog controller.
* Define intent data for activity
* Search dialog shows permissions for allow and deny camera
* Check camera permissions for fxa pairing
* Check camera permissions for old search
* Tests for pairing sync interactor and controller.
* Cleanup
* Use bool pref for setting. Use interfaces and default implementations for the sync interactor and controller.
* Lint
* Show dialog when permissions are denied
* Add qr permissions dialog to search dialog fragment
* Add qr permissions dialog to the pairing screen
* Show dialog after permissions have been denied
* Reset focus after denying permissions
* Show dialog after permissions denied in search frag and par frag
* Use shared preferences to store camera permission state
* Move dialog creation into the search controller and add tests
* Dialog controller implementation and test
* Route to intent with correct activity. Set focus when dismissing dialog
* Get preferences in old search
* For #13272 - Adds the ToolbarView to the SearchDialogFragment
* For #13273 - Replaces container dependency with context in AwesomebarView
* For #13276 - Hacks together the awesomebar and toolbar in the new search experience
New API (installBuiltIn/ensureBuiltin) requires
- Gecko IDs and new permissions
- Extension will only be re-installed if it has a new version
This includes a gradle task to automatically generate a
new version in manifest.json for every build so we don't
forget to update the version and end up with changes that
are never applied.
This is functionally equivalent to the code before this patch but should
be slightly more performant in theory because ConstraintLayout is
expensive to inflate.
The elevation and layoutParams set dynamically appeared to have no effect
with the wrapping view but broke the view when used by itself so I had
to remove them. I also updated a few other unnecessary params.
Theoretically this may have some perf benefits but I didn't see anything
outside noise levels after I took the numbers (but I didn't try very
hard).
When you remove a search engine from our list, an undo snackbar that outlives the fragment is shown. If you go back to the search fragment and press undo, now the shortcut list gets updated