Commit Graph

3572 Commits (af106c95f73a0aec4bfd94e6e714e1412be9e369)

Author SHA1 Message Date
Michael Comella 359f27abc1 For #17972: split frameworkStart into two metrics.
We do this in order to make it easier to analyze in GLAM: see the metric
descriptions for more details.

Additionally, we change the time unit to milliseconds to make it easier
to analyze in GLAM.
3 years ago
Michael Comella 993428cd0f For #17969: add duration probes for App.onCreate and HomeActivity.onCreate. 3 years ago
Mugurell 6e0a64897b For #17899 - Expand toolbar when returning from fullscreen video
This was the previous behavior for both the top and bottom toolbars.
Regressed when changing to use a new custom behavior for the top toolbar.

When entering fullscreen we will now collapse and hide the toolbar, allow the
browser to expand to the entire screen estate and then, when exiting fullscreen
expand the toolbar.
Collapsing and then expanding the toolbar will trigger the
EngineViewBrowserToolbarBehavior to place the browser below the toolbar.
3 years ago
Roger Yang 64f32b9d95
Closes #17089: Add metric to track both normal and private URI opened (#17935) 3 years ago
Sebastian Kaspari a2566f9e9e Issue #12731: Collect telemetry about the content process of tabs getting killed. 3 years ago
Arturo Mejia 21d10aa931 Update toolbar autoplay strings 3 years ago
Christian Sadilek e07f4ac590 Deprecate SessionManager component 3 years ago
Christian Sadilek 2d87307144 Remove remaining usages of Session[Manager] in BrowserFragment 3 years ago
Christian Sadilek c9b8f57f96 Refactor BrowserToolbarMenuController to use browser store 3 years ago
Arturo Mejia b6ac5079b2 For issue #18049 Download complete dialog is not showing in custom tab. 3 years ago
Victor 2193be27b2 Solves Leaks on SavedLoginFragment
disables options menu to avoid leak
 removes on click listener to avoid leak
3 years ago
mcarare af9c32983f For #17807: Fix systemWindowInset deprecation. 3 years ago
Ryan Kelly 56914cd42d Reset experiment telemetry identifiers on data prefs change.
When the user opts out of telemetry, we need to reset the user identifiers
used by the experiment system, so that there's no risk of tracking the
user across the reset event if they later decide to re-enable telemetry.
3 years ago
Christian Sadilek 5a5cf9cd12 Refactor BrowserToolbarController to use browser store 3 years ago
Codrut Topliceanu ec54397637
For #17352 - Fixes deleted downloads reappearing (#17930)
* For #17352 - Fixes deleted downloads reappearing

The `getDeleteDownloadItemsOperation` job would check fragment context not null after the fragment was stopped. Removing that check and only passing the downloadUseCase as a parameter fixes the problem.
3 years ago
Mugurell 3311e68d14 For #17686 - Use a custom behavior to scroll InfoBanner with the top toolbar
Previously when the toolbar was on top the banner was inflated in the toolbar's parent - an AppBarLayout.
After migrating to use a custom behavior for scrolling the toolbar and not use
anymore the AppbarLayout for this we needed a new solution.
Using a new behavior to keep this banner in sync with the y translation of the
toolbar gives us most of the old behavior back.
3 years ago
Elise Richards d0fd3e82c5
For #17771: three-dot menu reorder (#17838)
* Feature flag for toolbar menu redesign. Add new items to menu and reorder.

* Handle toolbar items in menu controller

* Menu controller tests

* Make icons invisible

* Lint

* UI tests reflect design change

* Refactor test names

* Lint fixes

* UI tests
3 years ago
Michael Comella b41041c739 For #17920: move manufacturer StrictMode exception to ignores function.
I think this is more consistent and centralizes the violation ignores.
3 years ago
Michael Comella 5cb296b098 For #17920: use StrictMode penaltyDeathWithIgnores. 3 years ago
Michael Comella a86b4ef1bd For 17920: add ThreadPenaltyDeathWithIgnoresListener, tests, helpers. 3 years ago
Michael Comella e9e067615a For #17920: add ManufacturerCodes. 3 years ago
Michael Comella 2e45483eb0 For #17816: add ProfilerFactProcessor and register it, tests. 3 years ago
Mugurell 41f9388380 For #17803 - Use the main looper for Handler()s
This was already the one inferred.
Targeting Android 11 means we need to pass it explicitly.
3 years ago
Codrut Topliceanu d56b4a2b92
For #17418 - Added telemetry for Google Default Top Site (#17637)
* For #17418 - Adds channel "ts" to TrackKey

This is used to track if the `InContentTelemetry` is a result of the user using the Google Top Site. It looks for `&channel=ts` within the uri.

* For #17418 - Adds TopSite PerformedSearch back in

* For #17418 - Check now looks for equality with GOOGLE_URL

* For #17418 - Adds test for topSite changes
3 years ago
Sebastian Kaspari a3b556aa35 ToolbarIntegration: Use global public suffix list instance. 3 years ago
Sebastian Kaspari f4f5e4b663 Issue #17174: Remove usage of old media APIs. 3 years ago
Christian Sadilek 88facc4608 Closes #17889: Wrong tab selected/reloaded when restored from collection 3 years ago
Michael Comella b3ef8a11e8 For #17816: add profiler marker for onPreDraw via HomeActivity.onStart.
This may be useful for MAIN start up to determine when the user begins
seeing content.
3 years ago
Michael Comella 4de49c7585 For #17816: add profiler marker for 2x Activity.onCreate.
The IntentReceiverActivity one is particularly useful to quickly determine
when we can begin executing code in the WARM VIEW case (i.e. "Set selection
begin here").

The HomeActivity one is useful for COLD start up analysis in similar
ways and to see the Activity transitions in WARM VIEW.
3 years ago
ekager 5e9fb855f5 For #17915 - Do not launch system settings on Role Request Intent cancel 3 years ago
Arturo Mejia 3a1d56d7c8 For #17817 Change the feature prompt references from fragment to activity. 3 years ago
Abhinav Gupta 13f5df33a1 Hiding the usernameview if the data item.username is blank. 3 years ago
ekager f6455b0148
Closes #17871 - use viewLifecycleOwner for TopSitesFeature owner on HomeFragment (#17873) 3 years ago
Roger Yang 993cf74e72
Closes #17174: Remove the New Media Session API Feature Flag (#17863) 3 years ago
ekager f5b068a453 For #17785 - Use screenshots setting when adding secure flag 3 years ago
jhugman 1ef4102e13
Fixes #17738 - Early initialization of Nimbus (#17834) r=christian 3 years ago
Mugurell 8bf1cae2ca For #10686 - Use the AC custom behavior for both the top and bottom toolbars
This comes to unify the experience (with improvements but also specific issues)
for the url toolbar irrespective of it being placed at the bottom or at the top
Going further this will ease development and ensure the best UX for users.
3 years ago
Gabriel Luong a3d401a3b7
For #17418 - Add event ping telemetry for the Google Top Site click (#17862)
Co-authored-by: codrut.topliceanu <codrut.topliceanu@softvision.ro>
Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
3 years ago
jhugman 0b764fd3e4
Fixes #17833 - increment A/A experiment id (#17835) r=christian 3 years ago
Christian Sadilek 50e66b469d Remove SessionManager reference from FenixApplication 3 years ago
MickeyMoz 378e68f3a6 Update Android Components version to 73.0.20210204143136. 3 years ago
hwinnemo c488bb0e11 For #17724: Wait for tab to be fully created before showing ETP Onboarding if ETP is active 3 years ago
Sebastian Kaspari f4a7b4c066 Remove TabsUseCases methods that take a Session object. 3 years ago
Grisha Kruglov 3ce9bf93bc Exclude separators from the bookmarks UI 3 years ago
Grisha Kruglov ebca575e26 Reuse helper functions in bookmark tests 3 years ago
Mugurell 40fc9c1085 For #12414 - Support sharing images through ShareDownloadFeature
Register a ViewBoundFeatureWrapper<ShareDownloadFeature> that will respond to
"Share image" from the browser contextual menu
3 years ago
mcarare 994ec4d55a For #17364: Make hint scrollable and do not overlap other elements. 3 years ago
mcarare d7ad203544 For #17364: Do not show search suggestion hint before starting to type. 3 years ago
Christian Sadilek e76445b299 Refactor WebAppSiteControlsBuilder to use browser store 3 years ago
Christian Sadilek 3dc638700f Refactor tryReloadTabBy to use browser store 3 years ago
Sebastian Kaspari 28c105dcb3 Remove SessionManager dependency from CustomTabsIntegration. 3 years ago
Jonathan Almeida 824f3fd821 Issue #1340: Forward Activity results to the fragment 3 years ago
jhugman 72f977771d
Re-enable Nimbus with Off the main thread I/O and non-blocking networking (#17684)
* Moved Nimbus setup from Analytics to its own file

* Change experiment identifiers to fit new run of the experiment

* Re-enable nimbus for debug and nightly builds

* ./gradlew ktlint && detekt
3 years ago
Christian Sadilek d8085480ad Increase AMO collection cache timeout to 2 days 3 years ago
mawen7 1df656cd0e
Include selected session in session suggestions if opened from home fragment (#17127) 3 years ago
MickeyMoz 4bc6b85237 Update Android Components version to 73.0.20210129195412. 3 years ago
Michael Comella d48bb2a4cc Revert "For #17447: add intentional delay to cold start up in debug and nightly."
This reverts commit 093470a8b3. This
intentional regression was only intended to be temporary so now we're
removing it.
3 years ago
Roger Yang d434ff13a5
For #17092: Dismiss toolbar menu when configuration change occurs (#17682) 3 years ago
Jonathan Almeida 66b94ced14 Close #1340: Add support for WebAuthnFeature 3 years ago
rxu be0382fca7 Pop out privacy notice in first launch in MozillaOnline builds
Add privacy notice related strings

Pop out privacy notice with onboarding

Using embeded geckoview to display details about privacy

Present or hide privacy pop window according to isMozillaOnline

Add activity_privacy_content_display.xml into layoutNotToTest due to EngineView
3 years ago
Codrut Topliceanu e188185b15
For #16828 - Adds telemetry for open in app banner (#17049)
* For #16828 - Adds telemetry for open in app banner

Specifically: Banner displayed, Dismiss action, Go to Settings action.
3 years ago
Elise Richards 43b0b27819
Update metrics when an addon is installed or enabled (#17669) 3 years ago
Mihai Adrian Carare 8993a0acb2
For #17655: Do not pass threshold if showTopFrecentSites is false. (#17657)
* For #17655: Do not pass threshold if showTopFrecentSites is false.

* For #17655: Add unit tests for getTopSitesConfig.
3 years ago
Christian Sadilek 45c0ac85ec Remove SessionManager from BrowserFragment/ToolbarGestureHandler 3 years ago
Roger Yang 124c2baf30
Closes #17531: Use top sites count fact for top sites telemetry (#17664) 3 years ago
Roger Yang eaef276345
Closes #17530: Update has open tabs metrics when tabs are opened or closed (#17557) 3 years ago
mcarare 780e3362a5 For #17464: Handle selected item background programmatically. 3 years ago
Gabriel Luong 171c466ada For #14302 - Skip one time pages visit from frecent top sites 3 years ago
mcarare 278ed658b6 For #17635: Check if id corresponds to a custom tab before removing it. 3 years ago
Christian Sadilek 87d6f32374 Refactor HomeFragment to use browser store 3 years ago
Elise Richards 39f79778a2
For #17084: Use in-app browser switching dialog (#17628)
Co-authored-by: hakkikaancaliskan <caliskanhkaan@gmail.com>
3 years ago
Elise Richards f7b7b25213
For #16485: Tabs tray grid view telemetry (#17442)
* Tabs tray CFR telemetry interactions

* Create CFR events and implementation

* Tests for tab tray controller
3 years ago
Sebastian Kaspari 023ddcc131 Refactor ExternalAppBrowserActivity and ExternalAppBrowserFragment to not use Session(Manager). 3 years ago
Arturo Mejia b419ff82af Remove external download manager FeatureFlags 3 years ago
Arturo Mejia f99c175ceb Remove autoplay indicator FeatureFlags 3 years ago
Jonathan Almeida 65c69c6b9f Fix breaking APIs in ActivityResultHandler 3 years ago
Christian Sadilek 7001fa1735 Closes #17473: Intermittent failues of PwaOnboardingObserver 3 years ago
Gabriel Luong 70dc975299
For #17304 - Implement top site search engine attribution (#17580) 3 years ago
Sebastian Kaspari 0c41316c31 Revert "For #17044: Explicitly set a new default engine when default is deleted."
This reverts commit 633bf384e2.
3 years ago
ekager 083fe26f57 For #17542 - Removes flash on renaming top site and fixes title not being updated 3 years ago
William Durand 0537594810 Add new BuildConfig variables to support AMO non-production envs 3 years ago
Jonathan Almeida d32b3015c4 Use a smaller request code for WebAuthnFeature
We can't see the private API that we interact with on the OS, but after
some internal investigation it appears that there might be an upper
limit to the request code we can use.

For now, let's try a value similar to that use in the GVE code to see
our requests are failing because of that.
3 years ago
Christian Sadilek c34d68d915 Closes #17548: Remove SessionManager reference from TabTrayDialogFragment 3 years ago
Christian Sadilek 0de948e8ae Issue #17548: Remove SessionManager reference from TabHistoryDialog 3 years ago
Christian Sadilek 7358a313bf Issue #17548: Remove SessionManager reference from FenixTabsAdapter 3 years ago
Codrut Topliceanu 928ad21c51
For #17481 - Remove unused long_press_tapped metric (#17544) 3 years ago
mcarare 633bf384e2 For #17044: Explicitly set a new default engine when default is deleted. 3 years ago
Codrut Topliceanu 20f2135578
For #17377 - Fix for empty awesomeBar on searchFragment open (#17435)
The awesomeBar was set to stay hidden for the first consumeFrom(store) if the SearchDialogFragment.kt. However, recent changes send an additional store update when the view is created. To work around it we can take a look at AwesomeBarView.update(), we see that the awesomeBar suggestions get provided only if the query != url. So we can use the same method to keep the awesomeBar hidden until the user changes anything in the url.
3 years ago
Kate Glazko ae528e5ab2 For #15181: Remove All Downloads From Settings 3 years ago
Christian Sadilek 54da078bd3 Refactor QuickSettingsDialog to use browser store 3 years ago
Arturo Mejia 570383a54d Add dot notification for autoplay blocked content 3 years ago
mcarare af1af358a3 For #14011: Remove new line character and spaces from string. 3 years ago
Jonathan Almeida 6dfd7ef757 Add experimental WebAuthn support for Nightly only
When testing out WebAuthn support with the privileged API,
we need our app to be signed by an allowed signing key.

We're seeing our tests fail with this error when testing locally:

```
  [FidoApiImpl] updateTransaction is called for stop
  [FidoApiImpl] finishSecurityKeyRequestController should not be called when SecurityKeyRequestController is null.
```

Our theory is that if we try this code on our signed APK, we should see
it work.
3 years ago
Christian Sadilek d8c5f8887a Refactor OpenSpecificTabIntentProcessor to use browser store 3 years ago
Christian Sadilek be9b478906 Remove SessionManager from TrackingProtectionPanelDialogFragment 3 years ago
Christian Sadilek f96fdc34eb Refactor CrashReporterFragment to use browser store 3 years ago
Christian Sadilek 810200f2ab Switch to use case when selecting tab for extensions 3 years ago
Christian Sadilek c03e6377ae Remove unused NotificationsIntentProcessor 3 years ago
Christian Sadilek eb4beb252f Remove unused SessionManager reference from RecentlyClosedController 3 years ago
Jonathan Almeida d3dcf69064 A-C 71.0.20210118134928: Fix breaking API in TabCounterToolbarButton 3 years ago
Sebastian Kaspari fb64c7c076 SearchDialogController: Pass tab ID instead of Session instance. 3 years ago
MickeyMoz d945cdc4c8 Update Android Components version to 71.0.20210117143132. 3 years ago
Michael Comella 093470a8b3 For #17447: add intentional delay to cold start up in debug and nightly.
I validated:
- that the log statement appeared in Nightly but not in Beta.
- that the local runtimes of our perftest increased (the median diff is 124ms)
4 years ago
Arturo Mejia b9bdc288cb For issue: #16846 Add ui for controlling exceptions for auto play 4 years ago
Sebastian Kaspari 0035417616 Add unit tests for FennecWebAppIntentProcessor. 4 years ago
Sebastian Kaspari 051988ecff Migrate some "selected tab" reads from SessionManager to BrowserStore. 4 years ago
Arturo Mejia a6495347fd For issue #17457: Prevent page refresh when tapping the security icon 4 years ago
codrut.topliceanu 90575e6dd7 For #16238 - Back button now dismisses Suggested Logins
By using PromptFeature's onBackPressed the user can now press back to dismiss the Suggested Logins prompt without inadvertently navigating back
4 years ago
mcarare edcee71287 For #17400: Select tab opened from collection. 4 years ago
Christian Sadilek 978b555387 Closes #17443: IllegalStateException in startPostponedEnterTransition on HomeFragment 4 years ago
Christian Sadilek 53f77e422b Closes #17441: NPE when invalidating toolbar in response to reader changes 4 years ago
jhugman 7a3524fae5
SDK-158 Use disabled/no-op version of Nimbus object to eliminate unnecessary Rust call (#17372) r=christian 4 years ago
Arturo Mejia 00d971e9d3 For #16847: Allow autoplay to controlled via the toolbar. 4 years ago
Sebastian Kaspari 0761f391fc Update to latest feature-intent and feature-recentlyclosed APIs (and update Android Components). 4 years ago
hakkikaancaliskan 542bc89284 For #12732: Match notification accent color with app theme 4 years ago
Mihai Adrian Carare 3bb074b133
For #13522: Also remove history entries from tab history. (#17392)
* For #13522: Also remove history entries from tab history.

* For #13522: Test that deleting history also removes it from tab history.
4 years ago
mcarare 4e736625bd For #8716: Authentication custom tab now considers browsing mode. 4 years ago
Christian Sadilek cef56bef17 Update Android Components version to 71.0.20210108190105 4 years ago
Mugurell 484f167714 For #16249 - ClipboardHandler cleans up returned text 4 years ago
mcarare d110464a91 For #17117: Use proper custom tab session for custom tab toolbar menu. 4 years ago
Arturo Mejia 0aa44c93cd Closes issue #16945 Refactor TrackingProtectionOverlay to observe session via store. 4 years ago
Christian Sadilek 9a53054b28 Use new RestoreUseCase in A-C to handle tab timeouts 4 years ago
Arturo Mejia 743ba6918f Closes issue #16944 Refactor TrackingProtectionPanelDialogFragment to observe session via store. 4 years ago
mcarare 156dee29d8 For #15464: Always dismiss search dialog on url committed. 4 years ago
Hakkı Kaan Çalışkan e41cc5a414 For #17303: Move ext fun runIfFragmentIsAttached to utils
move to ext
4 years ago
Gabriel Luong d0fc086fc4
For #16790 - Allow top sites to have an empty name when renamed (#17290) 4 years ago
Roger Yang afa0454f2b
Closes #16603: Disable pull down when in fullscreen (#17314) 4 years ago
Sebastian Kaspari 1b6cebf4d4 Switch to new SessionStorage / session restore API. 4 years ago
ekager d5f625c945 For #17177 - Do not show PBM CFR if entering search on home, make sure fragment attached before showing 4 years ago
Roger Yang 7527851cf0
Closes #17298: Turn on new MediaSession feature for all builds (#17302) 4 years ago
MarcLeclair 24bce64e0b
16373 Count the # of inflations done on startup (#16778)
* For #16373: Added performance Inflater to counter # of inflations

This class is quite straight forward. The only thing that I have to point out is the onCreateView method. It usually
calls its super if you don't override it. The problem with that is that the super.onCreateView actually uses
android.view. as a prefix for the XML element it tries to inflate. So if we have an element that isn't part
of that package, it'll crash. As I said in the code, a good example is ImageButton. Calling android.view.ImageButton
will make the app crash. The method is implemented the same way that PhoneLayoutInflater does (Another example
is the AsyncLayoutInflater)

* For #16373: Added test for PerformanceInflater

This test got quite awkward / complicated fast.  I wanted to test the  to make sure we don't break *any* of our layouts
and to do so, I decided to just retrieve all our XML in our /res/layout folder. However, this gets quite a bit outside of a unit test scope.
The point was to get every layouts and get their LayoutID through the resources using the testContext we have. It gets even weirder, since some
of the XML tags have special implementation in android. One of them is the <fragment> tag. That tag actually is inflated by the OS using the Factory2
that the Activity.java implements. In order to get around the fragment issue, we just return a basic FrameLayout since the system LayoutInflater doesn't deal
won't ever get a <fragment> tag to inflate. Another issue was the <merge> tag. In order to inflate those, you need 1) a root view and 2) attach your view to it.
In order to be able to test those layouts file, I had to create an empty FrameLayout and use it as the root view for testing. Again, I know this is beyond the spirit of a unit test but if we use this inflater, I think it should make sure that no layouts are broken by it.

* For #16373: Overrode getSystemService to return PerformanceInflater

This allows PerformanceInflater to be called in every inflation to keep track of the number of inflations we do.

* For #16373: Added UI test for # of inflations

* For #16373: Lint fix

* For #167373: Changed the LayoutInflater cloneInContext to take this instead of inflater

The inflater parameter is set on the first call from the OS from  the Window object. However, the activity itself sets multiple factories on the inflater
during its creation (usually through AppCompatDelegateImpl.java). This means that, once we initially set the inflater with a null check, we pass an inflater
that has no factory initially. However, since we keep a reference to it, when cloneInContext was called, it cloned the inflater with the original inflater
which didn't have any factories set up. This meant that the app would crash on either browserFragment creation or any thing that required appCompat (such as
ImageView and ImageButton). Now, passing itself with a cloneInContext means we keep all the factories initially set by the activity or the fragment.

* For #16373: Fixed code issues for PR. No behavior change

* For #16373: fixed some code nits
4 years ago
mcarare 2d1df018ff For #15061: Fix error text color in SyncedTabsFragment. 4 years ago
Codrut Topliceanu c0f0c401f3
For #11580 - Tracks text selection context menu usage (#16968)
* For #11580 - Tracks text selection context menu usage

Tracks Copy, Search, Select All and Share items from the text selection context menu. Uses AC's DefaultSelectionActionDelegate to achieve this.

Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
4 years ago
Arturo Mejia 81f208bda1 For issue #13981 Use DEEP_LINK_SCHEME instead of hard-coded fenix 4 years ago
Elise Richards 6dadecacc2
For #15703 and #17133: allow ETP redirect trackers setting to be customized (#17137)
* Remove ETP redirect trackers feature flag. Add category to ETP panel view.

* Add redirect tracker category to ETP custom settings
4 years ago
ekager d3e1045ab9 For #17165 - Use application context to get notification localized strings 4 years ago
Christian Sadilek 36a6d364a7 For #17086 #17143: Temporarily turn off Nimbus 4 years ago
jhugman 4565d7381b
No bug- protect nimbus init from StrictMode (#17033) r=christian 4 years ago
Christian Sadilek 0b99669753 Closes #16949: Refactor OpenInAppOnboardingObserver to use browser store 4 years ago
Sebastian Kaspari d2b8decaeb Switch to new feature-tab-collections API. 4 years ago
ekager 30df43d057
For #13321 - Do not hide toolbar when opening multiple bookmarks (#17038) 4 years ago
mcarare 04bd9c61a6 For #16483: Rotate edit arrow when toolbar position is set to bottom. 4 years ago
mcarare e24ec1c941 For #16068: Update SUMO links. 4 years ago
mcarare e0c3193162 For #17061: Prevent appBarLayout from leaking. 4 years ago
Christian Sadilek 5157a3f50e Closes #17045: Crash caused by calling consumeFlow on wrong thread 4 years ago
ekager 419f895364 For #16973 - Use controller handled action instead of toolbar focus 4 years ago
Gabriel Luong 846d618c06
For #16941 - [Telemetry] Bookmark Counts (#16942) 4 years ago
Christian Sadilek d8f3127e08 Closes #16946: Refactor PwaOnboardingObserver to use browser store 4 years ago
Sebastian Kaspari 46813dd89c
Add search current/home region to debug screen. (#17015) 4 years ago
Codrut Topliceanu d0b09b7d69
For #15368 - Adds telemetry for fullscreen, pip (#16833) 4 years ago
mcarare 01db5160ee For #16827: Add copy url from long press metrics. 4 years ago
mcarare 93b13ac977 For #15369: Add synced tabs usage metrics. 4 years ago
mcarare d233229ce4 For #15366: Add recently closed tabs metrics from history fragment. 4 years ago
mcarare 2f360eb474 For #15366: Add recently closed tabs metrics. 4 years ago
mcarare a59195e2ee For #16422: Handle theme for tab history bottom sheet. 4 years ago
Mugurell 574eac4636
For #15367 - DownloadsFragment telemetry (#16728)
Adds a counter for how many times the user does the following action:
- opens the Downloads section inside the app
- tap to open an item from inside Downloads / from the download dialog
- tap to delete one or more downloads at once
4 years ago
Mugurell d5b33aec43
For #11578 - Add telemetry for how many times we download something (#16730) 4 years ago
Michael Debertol 95860eba49
For #4333: Open the keyboard when a search engine is selected (#14353)
Co-authored-by: Elise Richards <erichards@mozilla.com>
4 years ago
Arturo Mejia f263b7333a For issue #16847 Show the autoplay icon in the toolbar 4 years ago
ekager 3b0e70a856 For #16937 - Ensure FIP is removed on navigation 4 years ago
Jeff Boek cf61c10c39
For #15403 - Adds a secret debug info screen in settings (#15540)
Co-authored-by: Elise Richards <erichards@mozilla.com>
4 years ago
ekager 1ca34a2bc9 For #16807 - Make sure there's only one instance of search dialog 4 years ago
Elise Richards 813693f1d3
Remove hidden fab in tabs tray (#16972) 4 years ago
Codrut Topliceanu 556fea5591
For #15636 - Focus a11y collection on snackbar view tap (#16853)
With accessibility enabled, when adding a site to a collection and tapping "View" on the snackbar, we send a request for focus and an `AccessibilityEvent.TYPE_VIEW_FOCUSED` to the specified collection.
4 years ago
jhugman 9a984f10f1
Add withExperiment extension method to Nimbus (#16926) r=christian, sebastian
* Fixes #16925 Add withExperiment extension method to Nimbus
* Don't call Nimbus at all if not enabled by FeatureFlag
4 years ago
Roger Yang ca605d8a95
Closes #16075: Add distribution_id in telemetry startup metrics (#16821) 4 years ago
Christian Sadilek f0078097f8 Prepare for A-C Session[Manager] observable deprecation 4 years ago
ekager dd2615b554
For #16442 - Check if fragment is still attached before updating site permissions rules (#16954) 4 years ago
jhugman 459f1e970f
Fixes #16948: call nimbus.updateExperiments on startup (#16950) r=gl 4 years ago
mcarare a2ad9f7a27 For #16894: Handle adding voice search button depending on state. 4 years ago
mcarare 0a77f4bccf For #16775: Fallback to light mode drawable when ui mode is not resolved 4 years ago
mcarare b4a81c2219 For #15640: Remove private resources from RadioButtonPreference. 4 years ago
mcarare fa08afbc03 For #15640: Remove private resources from TextPercentageSeekBarPref. 4 years ago
ekager 2bb7bea258 For #16668 - Fix keyboard show/hide from search dialog fragment 4 years ago
Kate Glazko ef01cdcefe For #16541: Download UX Updates 4 years ago
Christian Sadilek faf765a57d Update IntentProcessors after breaking API change 4 years ago
Emilio Cobos Álvarez 9d5afd501e Add support for EME permission.
This accompanies the changes in mozilla-mobile/android-components#9121.

Closes #1175
4 years ago
Mugurell f2191bdbb5 For #13427 - Disable the "selected tab" decoration when in Multiselect
Selecting a tab while in Multiselect would add a different decoration to the one
already set for the last tab opened and this would confuse users.
Let's avoid this.
4 years ago
Christian Sadilek d1345e8f93 Closes #11290: Refactor ToolbarMenu to use browser store 4 years ago
Roger Yang 2ff7ba75c7
Closes #16896: Integrate new MediaSession API to nightly or debug builds (#16909) 4 years ago
Elise Richards 948db6f77b
Reload restored tabs from collection (#16865) 4 years ago
Sebastian Kaspari 2cada405d8 Update Android Components to 69.0.20201207103252. 4 years ago
ekager e428694a51 For #16397 - Fixes SignOutFragment crash and invisible button 4 years ago
Mugurell c89a7193f5
For #16248 - Cleanup error pages of inlined code (#16834)
Also streamlined the js code.
The errorPageScripts.js from AC had too much or too little of what we needed.
4 years ago
Roger Yang 3c3ddb4f44
For #16133: Simplify OpenInAppOnboardingObserver condition (#16851) 4 years ago
Philipp Klein 2be3fd05f2
For #15362: Remove swipe to delete for bookmarks (#16646)
Removed now obsolete feature flag and tests.
Removed obsolete swipe refresh state from BookmarkFragmentState
Also adapted tests and remove obsolete ones.
4 years ago
Elise Richards 77f061c362 Closes #8791: Use A-C tab counter and upgrades to A-C 69.0.20201203202830
Upgrades to A-C 69.0.20201203202830 and addresses breaking changes:
- Upgrades androidx workmanager to 2.4.0 in line with A-C.
- RecordingDevicesNotificationFeature was removed
- SearchUseCases accept parent session ID instead of session itself
4 years ago
Codrut Topliceanu 79d1c08402
For #16629 - Fix for collection snackbar View button (#16679) 4 years ago
Jonathan Almeida c99b2157fb Fix breaking changes from FCM SDK update 4 years ago
jhugman ea9f692007
Nimbus-SDK-119 Get Nimbus server endpoint at build time. (#16682)
This PR builds on [AC##9024][1], and implements setting the Nimbus endpoints from [a secret set at build time][2].

For production use, this requires a secret named `nimbus_url` to be put into CI.

Note: Nimbus is currently behind a feature flag.

If developers wish to use a Nimbus server for local development, you can set the url by adding an entry into local.properties, e.g.:

```
nimbus.remote-settings.url=https://settings.stage.moz4ws.net
```

Without setting server, Nimbus will be able to function, except no experimental definitions will be fetched, and features under experiment will be configured as if not enrolled in the experiment.

[1]: https://github.com/mozilla-mobile/android-components/pull/9024
[2]: https://groups.google.com/a/mozilla.com/g/android-components-team/c/lAGVKQy8aiA/m/rY3uGAwhBAAJ
4 years ago
jhugman 3cd4ff9ac8
Adding menu configuration for A/A experiment and A/B experiment (#16692) 4 years ago
Christian Sadilek 3722033a5c For #16032: Support installing recommended add-ons from AMO 4 years ago
Roger Yang 26051f7c0e
Closes #16603: Disable pull down refresh when activity is in immersive mode (#16793) 4 years ago
Sebastian Kaspari 57ebc0cb99 ExternalAppBrowserActivity: Add additional test cases. 4 years ago
Sebastian Kaspari 788a8309c2 Issue #16435: Open custom tab in Fenix: Force launch outside of and remove current task. 4 years ago
Sebastian Kaspari 776b64f959 Issue #16435: Finish ExternalAppBrowserActivity and remove task if linked tab doesn't exist anymore.
This doesn't fix the underlying issue of #16435, but a symptom we have seen quite often in different
situations: When the ExternalAppBrowserActivity is not linked to a tab anymore then it falls back
to displaying a (partially broken) browser UI. With multiple browser activities at the same time
sooner or later we crash with a "display already acquired" error because both activities try to
render the same tab.
4 years ago
mcarare 0bd3654bc7 For #16759: Prevent crash on showing info banner. 4 years ago
Sebastian Kaspari 055c76b7ba FenixApplication: Remove unused kinto endpoint. 4 years ago
Sebastian Kaspari d84b8ebdc6 Issue #12731: Log and record breadcrumb when onTrimMemory() gets invoked. 4 years ago
Mihai Adrian Carare 34b4dad614
For #16735 - Do not show grid view CFR if grid view is already selected. (#16740) 4 years ago
ekager d49d710343 For #16676 - Do not switch mode on last private tab via tab context menu 4 years ago
Codrut Topliceanu 4b56aeb12f
For #16592 - Fix missing collection snackbar for a11y (#16593)
Set null anchor for snackbar when using a11y services
4 years ago
mcarare f823a5d246 For #16353: Avoid strict mode death on reading onboarding preference. 4 years ago
mcarare de1fa74ac1 For #16353: Add unit tests for onboarding finishing conditions. 4 years ago
mcarare 089c79f868 For #16353: Finish onboarding on loading a web page, with exceptions. 4 years ago
mcarare 451f60b095 For #16353: Do not finish onboarding on search dialog opening. 4 years ago
ekager b9737bde95 For #16351 - Add divider lines for search dialog 4 years ago
Sebastian Kaspari 2b759e9d6f Integrate new search code from Android Components into Fenix. 4 years ago
MickeyMoz 2904ca8ac0 Update Android Components version to 68.0.20201120125142. 4 years ago
jhugman 9cdfb6db4a
Nimbus Global Opt Out (#16543) r=gl 4 years ago
ekager b7fe809ae4 For #16351 - Make homescreen interactive when search dialog is up 4 years ago
mcarare cf162c69d1 For #15788: Remove nested layouts in search dialog layout. 4 years ago
Jonathan Almeida cebab81e07
Update Android Components to 67.0.20201117165227 (#16619) 4 years ago
ekager f520586dcd
For #12062 - Remove feature flag for return to browser (#16622) 4 years ago
Mugurell ef5846dc3e
For #16614 - Ensure a stable order for the items in tabs tray. (#16618)
Items should follow the following ordering:
- current session open tabs
- collections options - currently the "Select tabs" button
- synced tabs items

This order should also be kept after returning from Multiselect mode.
4 years ago
Bryan Kok 5f9de1e261 Replace @string/tab_tray_menu_item_save with @string/tab_tray_menu_select, Remove "Share all tabs" option from tab tray's private browsing menu 4 years ago
ekager 614471495d
For #15091 - Fixes RecentlyClosedAdapter DiffCallback (#16608) 4 years ago
Christian Sadilek 1d5f74d865 Closes #16153: Intermittent failures of ShareControllerTest.handleShareToApp 4 years ago
mcarare 0d37c8f268 For #16420: Make search bar first view focused by a11y services on open. 4 years ago
Christian Sadilek 88f3f3564e Issue #16587: Make sure tab counter correctly reflects private/normal tab counts 4 years ago
Christian Sadilek fbbc25b54e Closes #16053: Fix crash when closing private tabs via notification 4 years ago
MickeyMoz 2c4f0624fd Update Android Components version to 67.0.20201115143123. 4 years ago
Jonathan Almeida 78715c3020
For #13477 - Move BiometricPrompt to a separate feature (#16498)
Instead of simply fixing the memory leak for this issue by directly
removing references, it makes more sense to move the whole
BiometricPrompt out of the fragment and into it's own feature to be
re-usable.
4 years ago
Mihai Adrian Carare 85dd2f8313
For #16511 - Change a11y parent of button without breaking the tab list. (#16555) 4 years ago
Michael Comella e8bf955893 No issue: move StrictModeManager to perf package.
While StrictMode is not exclusively used for performance purposes, it's
primarily used for perf purposes so let's move it to the perf package
and code owner it.
4 years ago
Jocelyne Abi Haidar 88233ef42d For #15725: Set up preferences in onCreatePreferences instead of onResume
set up preferences in onCreatePreferences instead of onResume so that their visibility is determined before the screen appears rather than after
4 years ago
mcarare d45bdfb0f4 For #16477: Switch to using an extension to update a11y collection info. 4 years ago
mcarare e2322a18f9 For #16477: Migrate updateAccessibilityCollectionItemInfo to extension. 4 years ago
mcarare b52f069573 For #16477: Update a11y info to collection item for both grid and list. 4 years ago
Mugurell c6de8632de
For #16461 - Ensure the proper items order after exiting Multiselect (#16482) 4 years ago
LeoMaldonado a06b30a73d Fixes Comment on #16563: DefaultToolbarMenu registering for bookmark changes
comment link: https://github.com/mozilla-mobile/fenix/pull/16536#discussion_r522387945
4 years ago
LeoMaldonado 2d8fe7a9ad Closes #16345: Update share icon shape
updating share icon to a filled shape, like default toolbar menu across all app
4 years ago
LeoMaldonado 84eda3d38f For #16345: use same share icon across all app
replace mozac_ic_share for ic_hollow_share on DefaultToolbarMenu
4 years ago
Gabriel Luong 27ee2ba4f6
For #15761 - [Grid View] Enable the grid view and remove its feature flag (#16546)
* For #15761 - Part 1: Turn ON the showGridViewInTabsSettings feature flag

* For #15761 - Part 2: Remove the showGridViewInTabsSettings feature flag and show the Tab view preference category
4 years ago
Gabriel Luong e9d335cb24
Revert "For #15761 - [Grid View] Enable the grid view and remove its feature flag (#16535)" (#16544)
This reverts commit 7499d33b32.
4 years ago
rxumoz 409041ae3b
For #16451 - Change default top sites to Baidu & JD in China build (#16515)
* Add top sites related strings

* Change default top sites to Baidu & JD in China build
4 years ago
Gabriel Luong 7499d33b32
For #15761 - [Grid View] Enable the grid view and remove its feature flag (#16535) 4 years ago
ekager 1ed9ebf622 For #16132 - Rename normal mode menu item, remove telemetry 4 years ago
Gabriel Luong ebadbdb352
For #14920 - Show a Tabs Tray CFR Banner for grid view tip (#16466) 4 years ago
Codrut Topliceanu f3edce5f16
For #11376 - Reverse tabs list order (#16245) 4 years ago
Johan Lorenzo 4570f5a14f Revert "Update Android Components version to 66.0.20201111143206."
This reverts commit dbdb68ac72.
4 years ago
Kate Glazko 6c68e79a22 For #14772: Crash in Downloads 4 years ago
Mugurell a097b135b3 For #16076 - Add new "share_image" telemetry event 4 years ago
MickeyMoz dbdb68ac72 Update Android Components version to 66.0.20201111143206. 4 years ago
mcarare c427ebf8d5 For #16416: Remove save to collection button from tab a11y list. 4 years ago
ekager a8db85fc22 For #16132 - Revise multiselect mode UI 4 years ago
Mugurell 5e58377948
For #16424 - Focus the right item in tabs tray when using Talkback (#16472)
To get the index of the current selected browser tab when using reverse layout
we should also account for items placed below of the browser tabs.
The patch here unifies the logic already used for some calls but not all.
4 years ago
Codrut Topliceanu 6e4393a199
For #15720 - Remove unused telemetry (#15887) 4 years ago
Gabriel Luong b5c25ccf3b
For #15960 - Enable Grid View in Nightly only (#16462) 4 years ago
Christian Sadilek 0fbc8410a4 Closes #16430: ExternalAppBrowserActivity should not handle incoming intents 4 years ago