Граф коммитов

29601 Коммитов

Автор SHA1 Сообщение Дата
Kashav Madan 2dbd4a809e Bug 1578070 - Rename ClientOpenWindowInCurrentProcess and unskip test_openWindow.html, r=nika
Differential Revision: https://phabricator.services.mozilla.com/D65232

--HG--
extra : moz-landing-system : lando
2020-03-10 20:27:49 +00:00
Mike Shal 4017368b2f Bug 1620744 - Use py3_action for cases that already support it; r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D65846

--HG--
extra : moz-landing-system : lando
2020-03-10 20:19:13 +00:00
Daniel Varga 09acd57d19 Backed out 13 changesets (bug 1620744) for causing diffoscope failures firefox/browser/chrome/browser/content/browser/built_in_addons.json
CLOSED TREE

Backed out changeset 6beda54bcb9b (bug 1620744)
Backed out changeset a1e97f0b91ef (bug 1620744)
Backed out changeset b8faa0184d4f (bug 1620744)
Backed out changeset 3bc8fda68107 (bug 1620744)
Backed out changeset 8e95b21b2ae3 (bug 1620744)
Backed out changeset 1de09de1a802 (bug 1620744)
Backed out changeset 622a2f7414fa (bug 1620744)
Backed out changeset 3372c9ab721c (bug 1620744)
Backed out changeset 0997313a9f99 (bug 1620744)
Backed out changeset 2fa34749bbfa (bug 1620744)
Backed out changeset 6d597d2eb792 (bug 1620744)
Backed out changeset 78e78f7c7b26 (bug 1620744)
Backed out changeset 6e4d85b19f88 (bug 1620744)
2020-03-10 21:13:18 +02:00
Mike Shal a1ea58eb94 Bug 1620744 - Use py3_action for cases that already support it; r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D65846

--HG--
extra : moz-landing-system : lando
2020-03-09 22:02:22 +00:00
Aaron Klotz 5625e42498 Bug 1608302: Part 3 - Update the content process's service name in ContentDelgateTest; r=geckoview-reviewers,snorp
We'll want to make some changes to this test when we enable e10s-multi by
default, but for now we just need to update the name of the single content
process to reflect the naming changes that were done in part 1 of this
patch series.

Differential Revision: https://phabricator.services.mozilla.com/D65641

--HG--
extra : moz-landing-system : lando
2020-03-10 16:31:47 +00:00
Aaron Klotz 55e1fadd51 Bug 1608302: Part 2 - Modify GeckoProcessManager to support multiple content processes; r=geckoview-reviewers,snorp
We change a lot of things in this patch:

* `ChildConnection` now inherits from `ServiceAllocator.InstanceInfo`, which
  imbues the former with service allocation superpowers.

* We remove the `IBinder.linkToDeath` call and the `IBinder.DeathRecipient`
  callback; a close review of the service binding APIs (and the actual
  Android source code) clearly shows that
  `ServiceConnection.onServiceDisconnected` already performs that role.

* We also greatly simplify unbinding, as a successful `Context.unbindService`
  call does not require a subsequent `onServiceDisconnected` notification;
  The `ServiceConnection` callbacks should be thought of as pertaining to
  the acquisition and loss of `Binder` connections. On that note, to improve
  the clarity of what those callbacks do, we now implement them as
  `onBinderConnected` and `onBinderConnectionLost` overrides originating from
  `ServiceAllocator.InstanceInfo`.

* We add the `ConnectionManager` class which handles the organization of
  tracking which processes exist with which pid. Its public methods are named
  such that it should be very clear what their purposes are.

* This patch adds a minimal amount of priority management code to
  `ConnectionManager`. Right now we assume that everything is running at
  `PriorityLevel.FOREGROUND` (i.e. `Context.BIND_IMPORTANT`). This will be
  further improved in bug 1620145.

Differential Revision: https://phabricator.services.mozilla.com/D65640

--HG--
extra : moz-landing-system : lando
2020-03-10 16:35:13 +00:00
Aaron Klotz 26619139b9 Bug 1608302: Part 1 - Modify service definitions to support multiple content processes; r=geckoview-reviewers,snorp
For testing purposes, we'll only support 3 at the moment.

Note that this does not materially affect our test builds, as e10s-multi is
still govered by the `dom.ipc.processCount` Gecko pref.

Differential Revision: https://phabricator.services.mozilla.com/D65639

--HG--
extra : moz-landing-system : lando
2020-03-10 16:31:51 +00:00
Aaron Klotz ea7a8f8c69 Bug 1608301: Part 3 - Add an allocator for generating unique service names and instance IDs; r=geckoview-reviewers,snorp
`ServiceAllocator` wraps the various `Context.bindService` APIs and manages
the allocation of service names (in the case of non-isolated services) or
instance names (in the case of isolated services on Android 10+).

During the first allocation of a content process, we construct a policy that
is used for all content process allocations.

The `DefaultContentPolicy` computes the maximum number of content processes
and then allocates those names using a `BitSet`.

The `IsolatedContentPolicy` tracks the number of live content processes, but
simply uses a monotonically-increasing counter for generating instance IDs.

This patch also adds a `ServiceUtils` class that contains numerous functions
relating to generating service names and retrieving information about
service definitions in this package.

* Content processes are now named `tab0` through `tabN`. When a single content
  process name is used (either for single-e10s or for the process name
  used by isolated services), we always use `tab0`.

* I am not wedded to the names of the priorities used in the `PriorityLevel`
  enum -- suggestions welcome!

* Some of the `ServiceUtils` functions could arguably go into `ContextUtils`
  instead, but I thought that this was fine since they are fairly specific
  to this use case.

* Further modifications will need to be made to support multiple priorities.
  This patch is enough to get everything up and running for testing, with
  further prioritization work being done in bug 1620145.

Differential Revision: https://phabricator.services.mozilla.com/D65636

--HG--
extra : moz-landing-system : lando
2020-03-10 16:31:54 +00:00
Aaron Klotz 8777b329c0 Bug 1608301: Part 2 - Add an additional assertion type to XPCOMEventTarget and change them to throw AssertionErrors; r=geckoview-reviewers,snorp
Differential Revision: https://phabricator.services.mozilla.com/D65635

--HG--
extra : moz-landing-system : lando
2020-03-10 16:31:42 +00:00
Aaron Klotz aff6328266 Bug 1608301: Part 1 - Add an overload to ContextUtils.getCurrentPackageInfo that accepts flags; r=geckoview-reviewers,snorp
Differential Revision: https://phabricator.services.mozilla.com/D65634

--HG--
extra : moz-landing-system : lando
2020-03-10 16:31:45 +00:00
Cosmin Sabou e283da9b59 Backed out 6 changesets (bug 1608302, bug 1608301) for linting failure on GeckoProcessManager.java.
CLOSED TREE

Backed out changeset 5a78c81ddaa7 (bug 1608302)
Backed out changeset 81b75065d43d (bug 1608302)
Backed out changeset e75565cd4103 (bug 1608302)
Backed out changeset dba5330a46dc (bug 1608301)
Backed out changeset 7b9e2ba30ff2 (bug 1608301)
Backed out changeset 3a2342e9440f (bug 1608301)
2020-03-10 18:24:56 +02:00
Agi Sferro fe6beee13d Bug 1614760 - Add telemetryInfo to Addon Install object. r=rpl
Differential Revision: https://phabricator.services.mozilla.com/D66093

--HG--
extra : moz-landing-system : lando
2020-03-10 15:24:50 +00:00
Aaron Klotz 4102fab98c Bug 1608302: Part 3 - Update the content process's service name in ContentDelgateTest; r=geckoview-reviewers,snorp
We'll want to make some changes to this test when we enable e10s-multi by
default, but for now we just need to update the name of the single content
process to reflect the naming changes that were done in part 1 of this
patch series.

Differential Revision: https://phabricator.services.mozilla.com/D65641

--HG--
extra : moz-landing-system : lando
2020-03-09 19:26:07 +00:00
Aaron Klotz 764af7e70d Bug 1608302: Part 2 - Modify GeckoProcessManager to support multiple content processes; r=geckoview-reviewers,snorp
We change a lot of things in this patch:

* `ChildConnection` now inherits from `ServiceAllocator.InstanceInfo`, which
  imbues the former with service allocation superpowers.

* We remove the `IBinder.linkToDeath` call and the `IBinder.DeathRecipient`
  callback; a close review of the service binding APIs (and the actual
  Android source code) clearly shows that
  `ServiceConnection.onServiceDisconnected` already performs that role.

* We also greatly simplify unbinding, as a successful `Context.unbindService`
  call does not require a subsequent `onServiceDisconnected` notification;
  The `ServiceConnection` callbacks should be thought of as pertaining to
  the acquisition and loss of `Binder` connections. On that note, to improve
  the clarity of what those callbacks do, we now implement them as
  `onBinderConnected` and `onBinderConnectionLost` overrides originating from
  `ServiceAllocator.InstanceInfo`.

* We add the `ConnectionManager` class which handles the organization of
  tracking which processes exist with which pid. Its public methods are named
  such that it should be very clear what their purposes are.

* This patch adds a minimal amount of priority management code to
  `ConnectionManager`. Right now we assume that everything is running at
  `PriorityLevel.FOREGROUND` (i.e. `Context.BIND_IMPORTANT`). This will be
  further improved in bug 1620145.

Differential Revision: https://phabricator.services.mozilla.com/D65640

--HG--
extra : moz-landing-system : lando
2020-03-10 15:20:42 +00:00
Aaron Klotz 4f9749ade2 Bug 1608302: Part 1 - Modify service definitions to support multiple content processes; r=geckoview-reviewers,snorp
For testing purposes, we'll only support 3 at the moment.

Note that this does not materially affect our test builds, as e10s-multi is
still govered by the `dom.ipc.processCount` Gecko pref.

Differential Revision: https://phabricator.services.mozilla.com/D65639

--HG--
extra : moz-landing-system : lando
2020-03-09 19:29:02 +00:00
Aaron Klotz 09593d71de Bug 1608301: Part 3 - Add an allocator for generating unique service names and instance IDs; r=geckoview-reviewers,snorp
`ServiceAllocator` wraps the various `Context.bindService` APIs and manages
the allocation of service names (in the case of non-isolated services) or
instance names (in the case of isolated services on Android 10+).

During the first allocation of a content process, we construct a policy that
is used for all content process allocations.

The `DefaultContentPolicy` computes the maximum number of content processes
and then allocates those names using a `BitSet`.

The `IsolatedContentPolicy` tracks the number of live content processes, but
simply uses a monotonically-increasing counter for generating instance IDs.

This patch also adds a `ServiceUtils` class that contains numerous functions
relating to generating service names and retrieving information about
service definitions in this package.

* Content processes are now named `tab0` through `tabN`. When a single content
  process name is used (either for single-e10s or for the process name
  used by isolated services), we always use `tab0`.

* I am not wedded to the names of the priorities used in the `PriorityLevel`
  enum -- suggestions welcome!

* Some of the `ServiceUtils` functions could arguably go into `ContextUtils`
  instead, but I thought that this was fine since they are fairly specific
  to this use case.

* Further modifications will need to be made to support multiple priorities.
  This patch is enough to get everything up and running for testing, with
  further prioritization work being done in bug 1620145.

Differential Revision: https://phabricator.services.mozilla.com/D65636

--HG--
extra : moz-landing-system : lando
2020-03-10 15:25:03 +00:00
Aaron Klotz 991c2ccac2 Bug 1608301: Part 2 - Add an additional assertion type to XPCOMEventTarget and change them to throw AssertionErrors; r=geckoview-reviewers,snorp
Differential Revision: https://phabricator.services.mozilla.com/D65635

--HG--
extra : moz-landing-system : lando
2020-03-09 19:23:16 +00:00
Aaron Klotz ef896c8896 Bug 1608301: Part 1 - Add an overload to ContextUtils.getCurrentPackageInfo that accepts flags; r=geckoview-reviewers,snorp
Differential Revision: https://phabricator.services.mozilla.com/D65634

--HG--
extra : moz-landing-system : lando
2020-03-09 19:22:40 +00:00
Randall E. Barker aae3cb36a4 Bug 1620102 - Add GeckoView support for EME Media key permissions r=geckoview-reviewers,agi,snorp
Add GeckoSession.PermissionDelegate.PERMISSION_MEDIA_KEY_SYSTEM_ACCESS
for when  media.eme.require-app-approval=true

Differential Revision: https://phabricator.services.mozilla.com/D65423

--HG--
extra : moz-landing-system : lando
2020-03-09 18:25:12 +00:00
Agi Sferro f8fa17b754 Bug 1615495 - Don't set trackingProtection pref on session in GVE. r=snorp
Differential Revision: https://phabricator.services.mozilla.com/D65839

--HG--
extra : moz-landing-system : lando
2020-03-09 17:40:41 +00:00
Agi Sferro a782354257 Bug 1615495 - Add persistent settings activity to GVE. r=esawin
Differential Revision: https://phabricator.services.mozilla.com/D65760

--HG--
extra : moz-landing-system : lando
2020-03-09 17:40:33 +00:00
Greg Tatum 78e4a1804f Bug 1594798 - Store remote prefs on the client under a separate pref branch; r=julienw
Currently the preferences for remote profiling are stored on the debuggee. This leads
to a negative user experience, as oftentimes phones do not persist the preferences.
This patch changes the strategy to store one set of preferences for local profiling,
and a second set of preferences for remote profiling.

Differential Revision: https://phabricator.services.mozilla.com/D65148

--HG--
extra : moz-landing-system : lando
2020-03-09 14:55:16 +00:00
Gijs Kruitbosch f1a04bd343 Bug 1618188 - remove XML backend for plugin and add-on blocklisting, r=mconley,perftest-reviewers,whimboo
This removes the obsolete backend. Notes on some of the less obvious changes
made as part of this patch:

- some of the gFoo style getters in Blocklist.jsm were only used by the XML
  version of the blocklist; I've removed them and tried to remove spurious
  settings of those properties in the remaining tests.
- some utility methods (e.g. distribution information getters) were also only
  used for the XML version (for the update URL).
- it's no longer necessary to test switching implementations.
- in browser/base/content/test/plugins/, we ran some tests from two manifests
  in order to run them with both blocklist backends. The simplest way of
  reducing this back down to one was to remove the remote-settings one. If I'd
  been more future-oriented when I created the duplication, perhaps I would
  have moved the XML version out into a different manifest instead, but I
  didn't, so now it looks like we're removing the modern one, whereas really
  we're going to be running the modern one as part of the "normal" tests and
  we're no longer running the "old" tests.
- removed all mentions I could see of extensions.blocklist.url which is no
  longer used for anything.
- per https://bugzilla.mozilla.org/show_bug.cgi?id=1016555#c23, updated
  references for the OneCRL timing and how it relates to blocklist updates.

Differential Revision: https://phabricator.services.mozilla.com/D64933

--HG--
extra : moz-landing-system : lando
2020-03-09 12:02:17 +00:00
Mark Banner 2c4e35b0a6 Bug 1620218 - Automatic code fixes for Prettier 1.18.2 upgrade. r=mossop,webcompat-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D65509

--HG--
extra : moz-landing-system : lando
2020-03-08 21:45:16 +00:00
championshuttler 38b5308165 Bug 1581814 - Re-enable mobile/android/components/extensions/test/mochitest/test_ext_tabs_executeScript_bad.html.r=robwu
Differential Revision: https://phabricator.services.mozilla.com/D65794

--HG--
extra : moz-landing-system : lando
2020-03-07 12:54:59 +00:00
Mark Banner 15cfe23b88 Bug 1620542 - Automatically fix ESLint errors in .eslintrc.js files. r=mossop
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D65703

--HG--
extra : moz-landing-system : lando
2020-03-07 10:09:44 +00:00
Agi Sferro 97c5dd8d40 Bug 1599139 - Add API to control whether extensions can run in private browsing. r=snorp,esawin
Differential Revision: https://phabricator.services.mozilla.com/D65551

--HG--
extra : moz-landing-system : lando
2020-03-07 00:59:46 +00:00
Agi Sferro f6f2f88fa3 Bug 1560048 - Expose WebExtension baseURL to embedders. r=snorp,esawin
Differential Revision: https://phabricator.services.mozilla.com/D65399

--HG--
extra : moz-landing-system : lando
2020-03-07 00:59:46 +00:00
James Willcox 9b456755dd Bug 1620105 - Only set prefs for `GeckoRuntimeSettings` if there was a change r=geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D65756

--HG--
extra : moz-landing-system : lando
2020-03-06 18:19:29 +00:00
Agi Sferro 13dd5d388d Bug 1620364 - Always register for :CloseTab. r=droeh,snorp
Differential Revision: https://phabricator.services.mozilla.com/D65594

--HG--
extra : moz-landing-system : lando
2020-03-06 14:37:39 +00:00
Sebastian Hengst 5b855de25b Bug 1609278 - Replace bugzilla product and component assignment 'Firefox for Android :: General' with 'GeckoView :: General'. r=kbrosnan DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D61512

--HG--
extra : moz-landing-system : lando
2020-03-06 17:54:58 +00:00
James Willcox 98aa9cef59 Bug 1612097 - Add GeckoResult.cancel() r=geckoview-reviewers,agi,esawin
Differential Revision: https://phabricator.services.mozilla.com/D65565

--HG--
extra : moz-landing-system : lando
2020-03-06 15:27:44 +00:00
Alastor Wu 1aded2bb3d Bug 1577890 - part9 : remove unused suspend types. r=baku
We won't need these suspend states anymore which were used for media control and audio focus on Fennec.

Differential Revision: https://phabricator.services.mozilla.com/D65265

--HG--
extra : moz-landing-system : lando
2020-03-05 06:17:41 +00:00
Alastor Wu 62a36c3771 Bug 1577890 - part4 : remove media control Android chrome test. r=snorp
This test is used to test media control feature and audio focus feature, but on Fenix we are no longer use these method to implement those features, we use other android component instead [1]. Therefore, we can remove this test because the thing it tests is actually not being used anymore.

[1] 1795ba8345/components/feature/media/src/main/java/mozilla/components/feature/media

Differential Revision: https://phabricator.services.mozilla.com/D65260

--HG--
extra : moz-landing-system : lando
2020-03-05 22:40:48 +00:00
Daniel Varga 59edf1bb10 Backed out changeset a99c866595f4 (bug 1620364) for causing gecko view failures
CLOSED TREE
2020-03-05 23:06:27 +02:00
Agi Sferro dca4a3c098 Bug 1620364 - Always register for :CloseTab. r=droeh
Mistakenly removed these lines which are still needed until we remove the
deprecated API.

Differential Revision: https://phabricator.services.mozilla.com/D65594

--HG--
extra : moz-landing-system : lando
2020-03-05 20:04:43 +00:00
Brendan Dahl d63da75d6c Bug 1619710 - Handle postponed web extension updates in GeckoView. r=geckoview-reviewers,agi
An extension with an onUpdateAvailable listener should delay automatic
updating of the extension until the app is restarted. Add support for this
state and reject the update result with a new install error code.

Differential Revision: https://phabricator.services.mozilla.com/D65228

--HG--
extra : moz-landing-system : lando
2020-03-04 21:23:52 +00:00
Makoto Kato 59f36f1385 Bug 1503656 - Part 9. Update API changes. r=geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D64916

--HG--
extra : moz-landing-system : lando
2020-03-04 08:17:42 +00:00
Makoto Kato fbd37dbe41 Bug 1503656 - Part 8. Android implementation of safe area insets support r=snorp
Differential Revision: https://phabricator.services.mozilla.com/D52513

--HG--
extra : moz-landing-system : lando
2020-03-04 08:17:09 +00:00
Csoregi Natalia aa5b814fee Backed out 6 changesets (bug 1503656) as per request. CLOSED TREE
Backed out changeset 27faa3b167a9 (bug 1503656)
Backed out changeset 7111f9b5ad06 (bug 1503656)
Backed out changeset 43fdc889beac (bug 1503656)
Backed out changeset 332ceea26151 (bug 1503656)
Backed out changeset f31efa4ea2ec (bug 1503656)
Backed out changeset 91b847efe591 (bug 1503656)
2020-03-04 10:07:42 +02:00
Makoto Kato 671f934313 Bug 1503656 - Part 9. Update API changes. r=geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D64916

--HG--
extra : moz-landing-system : lando
2020-03-04 07:29:15 +00:00
Makoto Kato e0f9d3ce27 Bug 1503656 - Part 8. Android implementation of safe area insets support r=snorp
Differential Revision: https://phabricator.services.mozilla.com/D52513

--HG--
extra : moz-landing-system : lando
2020-03-04 07:28:42 +00:00
Marcos Cáceres 65ea85a94c Bug 1603673 - Signal that we support web manifest processing in Fenix r=snorp,agi,ladybenko
When enabled, `link.relList.supports("manifest")` will return `true`.

Differential Revision: https://phabricator.services.mozilla.com/D58181

--HG--
extra : moz-landing-system : lando
2020-03-04 05:02:27 +00:00
Razvan Maries e5f96b8645 Backed out changeset 27b9929438f8 (bug 1603673) for perma failures on browser_ssb_manifest_scope.js. CLOSED TREE 2020-03-04 06:34:48 +02:00
Marcos Cáceres 635fd4573d Bug 1603673 - Signal that we support web manifest processing in Fenix r=snorp,agi,ladybenko
When enabled, `link.relList.supports("manifest")` will return `true`.

Differential Revision: https://phabricator.services.mozilla.com/D58181

--HG--
extra : moz-landing-system : lando
2020-03-04 03:10:06 +00:00
Agi Sferro f72cba85fa Bug 1616625 - Implement active parameter for tabs.create and update. r=mixedpuppy,snorp,esawin
Differential Revision: https://phabricator.services.mozilla.com/D64800

--HG--
extra : moz-landing-system : lando
2020-03-04 02:13:23 +00:00
Agi Sferro ae0d2a326d Bug 1616625 - Move TabDelegate to be per-WebExtension and per-GeckoSession. r=mixedpuppy,snorp,esawin
Before this patch, the TabDelegate was "special" as in it had just one global
delegate that receives events for all extensions and sessions. This was done to
allow mochitests to call tabs.create and tabs.remove.

This hack is no longer needed as now we can notify the embedding layer that a
new extension has been installed and we have a way to list currently installed
extensions.

This patch makes TabDelegate behave the same as the other delegates
(ActionDelegate and MessageDelegate) and will allow further simplications of
the WebExtension Delegate code.

Differential Revision: https://phabricator.services.mozilla.com/D64799

--HG--
extra : moz-landing-system : lando
2020-03-04 02:13:36 +00:00
Agi Sferro 0995221f6f Bug 1616625 - Move Extension session delegates to SessionController. r=snorp,esawin
Differential Revision: https://phabricator.services.mozilla.com/D64798

--HG--
extra : moz-landing-system : lando
2020-03-04 00:30:14 +00:00
shindli e06f2a369b Backed out 3 changesets (bug 1616625) for causing xpcshell failures in xpcshell.ini:toolkit/components/extensions/test/xpcshell/test_csp_custom_policies.js CLOSED TREE
Backed out changeset b43ca6507c9a (bug 1616625)
Backed out changeset c0e05f4f2db2 (bug 1616625)
Backed out changeset a1eb1e65a239 (bug 1616625)
2020-03-04 02:26:51 +02:00
Eitan Isaacson bc77e9f52d Bug 1616468 - Indicate required field in hint string. r=Jamie
Android does not currently have anything similar to a 'required' state
to indicate that a field or input is required before submission. In this
patch we append a localized "required" string onto the node's hint.

The hint typically has the description of the node. If the node is an
entry the hint will have its label followed by the description.

Differential Revision: https://phabricator.services.mozilla.com/D65215

--HG--
extra : moz-landing-system : lando
2020-03-04 00:00:44 +00:00