Commit Graph

241 Commits (48ea10cd9d62ae924757a528656265f5805019f1)

Author SHA1 Message Date
Sachin 36b1c710e7
for #11617 added a resetPoliciesAfter ext function for StrictMode, and replaced all existing calls to "resetAfter" with "resetPoliciesAfter" (#11619) 4 years ago
Mihai Branescu 4f870e9251 For #6126 - moved the sessionObserver init to the onCreate
This helps because we will always need the observer to be initiated, not only when the `openToBrowser` method gets called. Example: Opening a tab from the tab tray had it's own method for opening the browser, causing this to not be called.
4 years ago
Jonathan Almeida e6da2bd910 Fix breaking APIs in TabsAdapter and ViewHolder 4 years ago
Tiger Oakes 31edbc924c
Fixes #9056 - Start Fenix activity on search in external app (#10932) 4 years ago
ValentinTimisica bc53296603 For #11365: Reorganizes 'SettingsFragment' items
Moved all the functionality form 'DefaultBrowserSettingsFragment' to
'SettingsFragment'.
4 years ago
ValentinTimisica f937c96c12 For #5148: Switch to the correct tab on media notification clicked
Processing the intent in OpenSpecificTabIntentProcessor to be able to switch
to the tab where audio/video is playing
4 years ago
Sachin 74948cb3f1
for #7225, Changed strictMode thread penalty to dialog on startup and back to logs after startup is done. (#10831)
for #7225, refactored and cleanup the branch.

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

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

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

for #7225 lint check

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

for #7225 removed penalty death on network

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


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

allowed diskread for super.onCreate for home activity

added comments for disk violation oncreate homeactivity

added fragment manager inside strictmode manager

allowed disk read for onboarding

allowed disk read for cachedTopSites
4 years ago
person808 8c47b988b8 For #10525 - Remove tab tray item dividers. 4 years ago
mcarare 138c12696f For #11153:Add FLAG_SECURE on pause and clear on resume for private session. 4 years ago
Vishwa Patel 4da22c605a For #10834 - Adding Sync Tabs Feature in Fenix 4 years ago
Jeff Boek 58a42828a1 For #10496 - Fully expand bottom sheet when loaded 4 years ago
Jeff Boek 0566790257 For #10496 - Automatically scroll to the selected tab when you open the tab tray 4 years ago
ValentinTimisica 9f265fd62f Fixes #10064: Open help articles in normal tab instead of custom tab 4 years ago
David Walsh c0c895af33
For 10665 - Show the most recent tabs at the top of the tab tray (#10687) 4 years ago
Jeff Boek 601aedda46 For #10504 - Removes "old" TabTrayFragment 4 years ago
David Walsh 346b4aa3fd
For #10321: Wire up play and pause buttons in tab tray (#10422) 4 years ago
Elise Richards edc75c3ad0
Fixes #9504: Edit logins (#9693)
* Create editable view and fragment. Update login info page to display options menu with edit and delete.

* Create feature flag for edit. Check flag in the login detail fragment and default to just delete.

* Add three-dot kebab options menu in login detail fragment. Add title to the login item.

* Nav to and from edit view on save and back pressed.

* Save login through AC login manager. Clear text in editable field on button click.

* Match colors, fonts, dimens to UX specs for edit logins. Enable password reveal/hide and clearing text fields.

* Refactoring logins fragments. Using component Login object for consistency.

Fetch login list when saved logins are opened. Fetch login details when detail view is opened.

Revert "Fetch login list when saved logins are opened. Fetch login details when detail view is opened."

This reverts commit 44fe17166c3332b330229258b2e8982832672e3b.

* Using parcelable login and Login component class to pass ids and items between fragments

* Retrieve login from storage when viewing login details.

Rename login logic for consistency.

Ktlint cleanup

Fix nits and naming consistency.

* UX consistency for login detail and edit login pages

* Rebasing with logins sort - updating logins store.

* Rebasing with logins sort - merging fragments and controllers.

* Lint and removing unused files.

* UX cleanup.

* Update string description
4 years ago
mcarare 58df38105b For #10453: Use TabsTray API to set divider, avoiding related crashes. 4 years ago
Jonathan Almeida 57eb2b9549 For #10453: Do not set item decoration when creating ViewHolder 4 years ago
David Walsh 8b27a48635 For #10329 - Implement tab tray divider 4 years ago
Jeff Boek d72e455c0d No Issue - Update to AC 41.0.20200505190119 4 years ago
David Walsh 6f5f48c30e
For #10148 - Add basic tab tray implementation without exposing to rest of app (#9934) 4 years ago
Michael Comella f49fc6dad2 For #8803: hook up frameworkStart metric. 4 years ago
Jeff Boek 4cbb9aebaf
Cleans up nav_graph.xml (#9829)
* For #9751 - Cleans up homeFragment directions

* For #9751 - Uses global actions for fragments not owned by homeFragment

* For #9751 - Cleans up SearchFragment directions

* For #9751 - Removes settings action from DeleteBrowsingDataFragment

* For #9751 - Removes browser action from SettingsFragment

* For #9751 - Adds ManagePhoneFeature global action

* For #9751 - Clean up unused deletebrowsingfragment actions

* For #9751 - Cleans Up HistoryFragment actions

* For #9751 - Removes Home -> Search action

* For #9751 - Removes the Bookmark -> Browser action

* For #9751 - Cleans up bookmark fragment actions

* For #9751 - Cleans up actions from ShareController

* For #9751 - Removes defaultBrowserFragment to browserFragment action

* For #9751 - Removes about -> browser action

* For #9751 - Adds global action to TrackingProtectionFragment

* For #9751 - Removes exception -> browser action

* For #9751 - Removes login -> browser action

* For #9751 - Fixes LoginFragment directions

* For #9751 - Removes ExternalAppBrowser directions

* for #9751 - Cleans up actions

* For #9751 - Fixes unit tests

* For #9751 - Addresses nits in PR
4 years ago
ekager 56eb2ec1d7 For #2818 - Adds Picture-in-Picture feature 4 years ago
Mihai Eduard Badea d66da53c9a For #2768 - Prevent screenshots in private mode
Added a new option in Private browsing menu to allow or prevent screenshots from being taken while in private mode by adding or removing the FLAG_SECURE flag from the home activity's window.

 This method is called whenever the activity is initialized to account for the browsing mode being changed and whenever the setting from the Private browsing menu is changed.

 The setting is by default set to true (screenshots are allowed to be taken)
4 years ago
Michael Comella 4a8dc5b54f No issue: add kdoc to HomeActivity.
We could consider renaming the Activity to make it clearer that it's the
main activity and doesn't just feature the homescreen but I'm concerned
that renaming it will break too many things (e.g. automation that starts
a specific activity). For quick fix, I added this comment.
4 years ago
Grisha Kruglov 3efaa516ca Part 2: Do not eagerly initilize account manager within HomeActivity
Instead of always kicking off accountManager's init and telling it to sync right away in
'onResume', we move these tasks to some abstract point later on, whenever account manager
is available.
4 years ago
Grisha Kruglov be1fa8df7d Pre: introduce a RunWhenReadyQueue
This replaces the StartupTaskManager we had with a more general class.
New implementation is a thread-safe "gated task executor", which either
runs the task right away if it's marked as 'ready', or queries it to be
executed later on.

This ability to either execute or queue a task will be useful later on in the
commit series.
4 years ago
Michael Comella 5bd0369aed No issue: remove unused HotStartPerformanceMonitor.
This monitor for hot start was intended to be used by FNPRMS to measure
hot start. However, hot start was deprioritized so it's now essentially
unused.
4 years ago
Sawyer Blatz e96732604b For #167: Improves home to browser animation 4 years ago
Michael Comella 9ed43b60b6 For #7781: instrument visual completeness for top sites.
Eyeballing my output in *Debug builds on my P2, this adds approximately 115ms
or slightly less from first frame drawn to visually complete time.
4 years ago
Will Hawkins f9b716286a For #8034: Create a post-visual completeness executor
Create an object that will execute its enqued tasks
when Fenix is visually complete.
4 years ago
ekager f569f48b33 For #5696 - Adds basic share action to text selection context menu 4 years ago
ekager 511c36e191 Removes FragmentPreDrawManager changes in BrowserFragment 4 years ago
Jeff Boek dfde37baf5 Reverts For #7559 - allows changing locale even after setting theme with 4 years ago
Jeff Boek 541bcf072a Reverts all BrowsingModeManager changes 4 years ago
Jeff Boek 26d1bd70d8 Revert "For #8460: Prevent multiple back navigation clicks."
This reverts commit b030d3ac9f.
4 years ago
Simon Chae da0148b8bd For #8535 #8498: Allow for multiple browsingModeListeners dispatch 4 years ago
mcarare b030d3ac9f For #8460: Prevent multiple back navigation clicks. 4 years ago
mcarare 5fd3894171 For #8354 Fix uppdating theme when coming from external links 4 years ago
Severin Rudie cc29c5fe84
For #7896: integrate text selection search from AC (#8295) 4 years ago
Simon Chae 2c01022c4b For #8153: Allow web-ext to open new tabs in correct browsing mode 4 years ago
MarcLeclair 834d7e13cd
Remove Tracking protection popup for visual testing (#8226)
* For #6903: allow override TP popup for performanceTest

* For #6903: refactored the code
4 years ago
Gabriel Luong 64a4a7f422
Provide add-on support (#8064)
Closes #5630, #6069, #6092, #6091, #6124, and #6147.

Co-authored-by: Simon Chae <chaesmn@gmail.com>
Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
4 years ago
Sawyer Blatz 030f75b4df For #5892 & #6380: Updates error page template and allows SSL bypassing 4 years ago
Mihai Branescu 1b7cb117ca For #7559 - allows changing locale even after setting theme with
AppCompatDelegate.setDefaultNightMode(mode). The override is necessary because the uiMode needs
to be manually updated after changing theme
4 years ago
Jonathan Almeida 40e72a7b28 For #7524: Remove DeviceConstellation polling from onResume (#7908) 4 years ago
Mihai Adrian 622fdadde8 For #7272: Show info when saved logins list is empty. (#7891)
* For #7272: Show info when saved logins list is empty

* For #7272: Updated unit tests
4 years ago
Emma Malysz 5e9b753acb For #7473, delay inflation of toolbar
Improve performance of HomeActivity.onCreate by delaying this inflation.
We use a ViewStub and inflate the first time the actionbar is accessed.
4 years ago
Michael Comella ffc441f12a For perf-frontend-issues#50: instrument imperfect reportFullyDrawn.
We don't capture the second RV draw yet. Unfortunately, I don't know if
it's the best use of my time to capture that as well.
4 years ago
ValentinTimisica 981d19de13 For #6556: Adds Telemetry counts for Search Access Points
Added two new sources to be counted ('widget' and 'shortcut') besides 'action' and
'suggestion'. Also modified/fixed some tests.
4 years ago
Sawyer Blatz a58decd708 For #6304 & #7577: Persist private mode between app launches 4 years ago
Will Hawkins 9c28cb632c Issue #7425 (et al): Cache the list of installed browsers
Cache the list of installed browsers. Calling `Browsers.all`
the application directly redundantly recalculates the list.
Accessing the list of installed browsers through this cache
will reduce that overhead.
4 years ago
Mihai Branescu ea2411a88b Feature/#220 language menu (#7070)
* For #220
- Added advanced header + locale settings item in the settings fragment

* For #220
- Added locale selection page with lib state + handling of locale changes

* For #220
- Removed registering for locale changes in the manifest, allow system
to restart activity in that scenario

* For #220
- Added unit tests for locale settings page

* For #220: fixed an outdated unit test
ga-a

Co-authored-by: Severin Rudie <Baron-Severin@users.noreply.github.com>
4 years ago
Emma Malysz 13f73c2d2c
For issue 7192: move unsetOpenLinksInAPrivateTabIfNecessary off main thread. (#7246)
Move method to Settings. There are two instances when we want to call this method: either
processing an intent, or within DefaultBrowserPreference
4 years ago
Will Hawkins 116f7b3d65 No Issue: Create a method to "finish onboarding" in CI
If the intent that starts the HomeActivity includes an extra
boolean flag named finishonboarding and it is set to true,
Fenix will "finish onboarding".
4 years ago
ValentinTimisica c6c827f693 For #4776: Redesign and refactor the About Page
Added new items to be displayed.
5 years ago
Michael Comella e60141e98d For perf-frontend-issues#33: Add HotStartPerformanceMonitor.
As mentioned in the class comment, we could use an alternative
implementation to measure perf from outside the application however
it's more complicated to set up and less consistent with our cold
startup methodology so we'll start with this.
5 years ago
Jeff Boek 1b1f9348dc No Issue - Fixes warnings / compiler errors with A-C update 5 years ago
mcarare 373bd63c40 For #6470 Remove actions from notification, keep just close private tabs
Removed NotificationsIntentProcessor because notifications no longer open app
Added new strings
5 years ago
Christian Sadilek ee3871cd7c Closes #5678: Selected session may render in ExternalAppBrowserActivity 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
Sawyer Blatz b0d796ccee
For #5898: Default browser toggle sends user to SUMO on Android 5&6 (#5918) 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
Sawyer Blatz 6484a48147
For #5787: Fixes shortcuts asking to launch private alias (#5825) 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
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
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
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
Sawyer Blatz 6f3d7b4ee8 For #5396: Adds "always launch in private mode" to settings 5 years ago
Roger Yang b3eca65614 Closes #5091: Refactor Sentry BreadCrumbs to use lib-crash BreadCrumbs 5 years ago
Yeon Taek Jeong 2e2bac4ccd
For #419: Create launch icon for private browsing (#4948) 5 years ago
Emily Kager 4485b7f647 Add Tracking Protection Info Panel 5 years ago
Mihai Adrian a31eb1f371 Code Health #4883: Refactored accessing settings by using Context extensions (#4973) 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
Yeon Taek Jeong d87b8a8a5c
For #4658: Add some private browsing mode telemetry (#4968) 5 years ago
Yeon Taek Jeong cc5408d717
For #2053: Add persistent notification to close all private browsing tabs (#4913) 5 years ago
Tiger Oakes 66e14959ba Add custom tab fragment 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
Tiger Oakes 9f154dc3a0 Extract intent processors from HomeActivity (#4884) 5 years ago
Tiger Oakes c475bc87cf Move classes out of top-level package 5 years ago
Jonathan Almeida 71a2478f4d Use Mozilla Android Components 10.0.0 5 years ago
Tiger Oakes 95ef312b1e Issue #1000 - Remove isCustomTab flag (#4656) 5 years ago
Sawyer Blatz 73e3db8fe0 For #4804: Resolves issue with crash reporter stack 5 years ago
Yeon Taek Jeong d4c83f9668 For #4736: Display search shortcuts only from home or search widget 5 years ago
Sawyer Blatz b7ca520787 For #4421: Adds Leanplum events and attributes (#4626)
* For #4421: Adds Leanplum events and attributes

* For #4421: Adds Leanplum deep links
5 years ago
Yeon Taek Jeong f5ffe3734c
For #4457: Adds telemetry for search widget actions (#4714) 5 years ago
Tiger Oakes 3acabeb6c3 Use global navigation action for browser fragment (#4691) 5 years ago
Emily Kager 1328d686aa No issue - Autoformatting (#4715) 5 years ago
Tiger Oakes 52542708aa Consodilate private browsing code 5 years ago
Yeon Taek Jeong 00bd26abe3 Remove task flags 5 years ago
Yeon Taek Jeong f952234c57 Keep CLEAR_TASK 5 years ago
Yeon Taek Jeong c87468d031 Remove popBackStack 5 years ago
Yeon Taek Jeong a8526a0606 For #4438: Fix crash when opening any URL from URL bar w/ long press 5 years ago
Sawyer Blatz da06b0fb15
For #4508: Treats warnings as errors (#4543) 5 years ago
Yeon Taek Jeong 6f962d3376
For #1744: Open search shortcuts when entering search mode (#4536) 5 years ago