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

364 Коммитов

Автор SHA1 Сообщение Дата
Emilio Cobos Álvarez 50c94e07ae Bug 1601083 - Add an InspectorUtils API to get the containing block of an Element. r=mats
Differential Revision: https://phabricator.services.mozilla.com/D56387

--HG--
extra : moz-landing-system : lando
2019-12-09 22:07:00 +00:00
Kris Maglione a71c8e64ff Bug 1588839 - Part 1 - Add helper to allow structured cloning Error/Exception objects. r=bzbarsky
In order to be able to reasonably debug error results from things like
JSWindowActor.sendQuery, we need to be able to clone errors across process
boundaries, so that they can be propagated to the caller that initiated a
query. The standard for the structured clone algorithm does not allow cloning
errors directly, so this patch instead adds a chrome-only wrapper object which
supports structured clone writing, and on reading, automatically decodes to
the error object it wraps. Callers who wish to clone an Error or Exception
object simply need to wrap it in a ClonedErrorHolder before sending.

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

--HG--
extra : moz-landing-system : lando
2019-12-07 18:59:14 +00:00
Ciure Andrei cbb1fe8008 Backed out 4 changesets (bug 1588839) for causing JSWindowActor.cpp failures CLOSED TREE
Backed out changeset 7cfcd0f5da4f (bug 1588839)
Backed out changeset cde41501372a (bug 1588839)
Backed out changeset 65cc1910918c (bug 1588839)
Backed out changeset 2f8b5b48c896 (bug 1588839)
2019-12-07 19:41:36 +02:00
Kris Maglione 32678cd302 Bug 1588839 - Part 1 - Add helper to allow structured cloning Error/Exception objects. r=bzbarsky
In order to be able to reasonably debug error results from things like
JSWindowActor.sendQuery, we need to be able to clone errors across process
boundaries, so that they can be propagated to the caller that initiated a
query. The standard for the structured clone algorithm does not allow cloning
errors directly, so this patch instead adds a chrome-only wrapper object which
supports structured clone writing, and on reading, automatically decodes to
the error object it wraps. Callers who wish to clone an Error or Exception
object simply need to wrap it in a ClonedErrorHolder before sending.

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

--HG--
extra : moz-landing-system : lando
2019-12-07 04:43:24 +00:00
Sean Feng 93f9021bb1 Bug 1589700 - Record the number of unique site origins across all tabs r=smaug,agi,Dexter
Differential Revision: https://phabricator.services.mozilla.com/D54027

--HG--
extra : moz-landing-system : lando
2019-12-05 23:13:24 +00:00
Razvan Maries ef51899325 Backed out changeset 52af8765cb21 (bug 1589700) for perma fails on browser_Telemetry_numberOfSiteOrigins.js. CLOSED TREE 2019-12-04 23:48:27 +02:00
Sean Feng 0dea348f20 Bug 1589700 - Record the number of unique site origins across all tabs r=smaug,agi,Dexter
Differential Revision: https://phabricator.services.mozilla.com/D54027

--HG--
extra : moz-landing-system : lando
2019-12-04 19:39:18 +00:00
Micah Tigley a510db7b63 Bug 1595800 - Part 1: Move screen orientation attributes from Document to BrowsingContext r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D54999

--HG--
extra : moz-landing-system : lando
2019-12-04 00:44:27 +00:00
Gurzau Raul 9510cd391a Backed out 4 changesets (bug 1595800) for failing at browser_orientationchange_event.js on a CLOSED TREE.
Backed out changeset c78cb9bbddb9 (bug 1595800)
Backed out changeset 558449ce7d0a (bug 1595800)
Backed out changeset ef7f9e251137 (bug 1595800)
Backed out changeset 2167343f5bd3 (bug 1595800)
2019-12-04 02:27:04 +02:00
Micah Tigley 38f31dfbce Bug 1595800 - Part 1: Move screen orientation attributes from Document to BrowsingContext r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D54999

--HG--
extra : moz-landing-system : lando
2019-12-03 17:49:07 +00:00
Brindusan Cristian 4709de082d Backed out 4 changesets (bug 1595800) for devtools failures at browser_contextual_identity.js. CLOSED TREE
Backed out changeset 7d6f51331aed (bug 1595800)
Backed out changeset d44c8dde04be (bug 1595800)
Backed out changeset 2f607bbc19b9 (bug 1595800)
Backed out changeset 196ca9fefb06 (bug 1595800)
2019-12-03 19:44:37 +02:00
Micah Tigley 80adc7fc3f Bug 1595800 - Part 1: Move screen orientation attributes from Document to BrowsingContext r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D54999

--HG--
extra : moz-landing-system : lando
2019-12-03 15:55:33 +00:00
Alexandre Poirot 77af789c1f Bug 1597999 - Implements ChromeUtils.getObjectNodeId. r=jimb
This helps retrieving the NodeId for any JS Object you pass in.
This allows identifying a particular object when using HeapSnapshot API.
`HeapSnapshot.computeDominatorTree()` returns a tree of object,
but there is no way to identify a given JS object in it.
Getting the node id of a given JS object helps you browse this tree
from a given object you know is leaking.

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

--HG--
extra : moz-landing-system : lando
2019-11-21 22:12:20 +00:00
Micah Tigley 00d97635a3 Bug 1593708 - Part 1: Add inRDMPane property to BrowsingContext and expose it to JS. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D52214

--HG--
extra : moz-landing-system : lando
2019-11-14 22:54:56 +00:00
Gijs Kruitbosch e5ac0416bc Bug 1593487 - tighten up registerWindowActor's handling of nonsensical actor specifications and remove cruft, r=nika,mconley
Differential Revision: https://phabricator.services.mozilla.com/D52002

--HG--
extra : moz-landing-system : lando
2019-11-08 11:59:37 +00:00
Barret Rennie 3e24c77cf6 Bug 1581240 - Return collected frames as a promise to JS r=bzbarsky,mstange,nika
The `setCompositionRecording` API on nsIDOMWindowUtils has been broken up into
two new APIs:

* `startCompositionRecording()`, which starts the composition recorder; and
* `stopCompositionRecording(bool writeToDisk)` which stops the composition
  recorder and either returns a Promise that resolves to the collected frames
  or returns a Promise that resolves when the frames have been written to disk.

The collected frames are serialized over IPC as part of a Shmem as to not
approach the IPC data transfer limit.

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

--HG--
extra : moz-landing-system : lando
2019-11-07 22:35:04 +00:00
Daniel Varga 8afb8d99f1 Backed out 4 changesets (bug 1581240) for build bustage with error: implicit instantiation of undefined template 'nsTString<char>. On a CLOSED TREE
Backed out changeset b73b86efe266 (bug 1581240)
Backed out changeset 17dd226e21ae (bug 1581240)
Backed out changeset e2fd47ff8a89 (bug 1581240)
Backed out changeset c0589670c762 (bug 1581240)
2019-11-07 01:31:57 +02:00
Barret Rennie d9aec252da Bug 1581240 - Return collected frames as a promise to JS r=bzbarsky,mstange,nika
The `setCompositionRecording` API on nsIDOMWindowUtils has been broken up into
two new APIs:

* `startCompositionRecording()`, which starts the composition recorder; and
* `stopCompositionRecording(bool writeToDisk)` which stops the composition
  recorder and either returns a Promise that resolves to the collected frames
  or returns a Promise that resolves when the frames have been written to disk.

The collected frames are serialized over IPC as part of a Shmem as to not
approach the IPC data transfer limit.

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

--HG--
extra : moz-landing-system : lando
2019-11-06 20:48:49 +00:00
Peter Van der Beken 1fa7fd2c48 Bug 1560940 - Change tests that use session history listeners to listen in the parent process. r=nika
Expose SHistory object from CanonicalBrowsingContext.

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

--HG--
extra : rebase_source : 83b465a1ea387d79889f9cec73f3129adca66016
extra : source : 6d2db7f001668a7a18e7c8dc0693236d6f6964ba
extra : histedit_source : cced2d0317eef396dacd626b72cebf9625238897
2019-06-19 21:09:28 +02:00
Nika Layzell 89c099a0fe Bug 1590908 - Part 1: Move parent-only LoadURI method to CanonicalBrowsingContext, r=kmag
These methods are only callable from the parent process, so it doesn't make
sense to have the method available driectly on BrowsingContext.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 15:05:47 +00:00
Shane Caraveo f800952de9 Bug 1581611 Part 1: add content_scripts to the extension content_security_policy r=rpl,bzbarsky
This patch adds support for including content_scripts CSP in the extensions
manifest, along with all interfaces necessary to access the CSP value.  This does not
implement actual use of the CSP for content scripts.

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

--HG--
extra : moz-landing-system : lando
2019-11-01 06:02:45 +00:00
Shane Caraveo 9ca23aa397 Bug 1581609 rename extension contentSecurityPolicy to support multiple V3 CSP values r=rpl,webidl
Differential Revision: https://phabricator.services.mozilla.com/D46818

--HG--
extra : moz-landing-system : lando
2019-11-01 06:02:22 +00:00
Junior Hsu dd1a30ac91 Bug 1545423 - P2 web request data API implementation r=mixedpuppy
Differential Revision: https://phabricator.services.mozilla.com/D50405

--HG--
extra : moz-landing-system : lando
2019-10-31 00:50:47 +00:00
Andreea Pavel 9deb4ea93b Backed out 4 changesets (bug 1545423) for failing test_ext_activityLog.html on a CLOSED TREE
Backed out changeset 0abbf10b68b0 (bug 1545423)
Backed out changeset 35758baf44e3 (bug 1545423)
Backed out changeset 3ae45f3be2e1 (bug 1545423)
Backed out changeset 9f7f0e4c65da (bug 1545423)
2019-10-31 02:16:24 +02:00
Junior Hsu 5e48b59b90 Bug 1545423 - P2 web request data API implementation r=mixedpuppy
Differential Revision: https://phabricator.services.mozilla.com/D50405

--HG--
extra : moz-landing-system : lando
2019-10-30 23:11:38 +00:00
Andrea Marchesini 39723a2dd0 Bug 1591900 - Expose third-party state in WebRequest and proxy onRequest details, r=mixedpuppy,smaug
Differential Revision: https://phabricator.services.mozilla.com/D50793

--HG--
extra : moz-landing-system : lando
2019-10-30 11:42:16 +00:00
Mihai Alexandru Michis 351a5bf677 Backed out changeset ed867296b6d4 (bug 1591900) for causing mochitest fission failures in test_ext_activityLog.html CLOSED TREE 2019-10-30 11:15:36 +02:00
Andrea Marchesini 9b82b18b44 Bug 1591900 - Expose third-party state in WebRequest and proxy onRequest details, r=mixedpuppy,smaug
Differential Revision: https://phabricator.services.mozilla.com/D50793

--HG--
extra : moz-landing-system : lando
2019-10-30 07:58:27 +00:00
Mihai Alexandru Michis c19bd19fcf Backed out changeset e99290edd750 (bug 1591900) for causing lint failures in file_third_party.html CLOSED TREE 2019-10-30 09:35:28 +02:00
Andrea Marchesini b3488b6849 Bug 1591900 - Expose third-party state in WebRequest and proxy onRequest details, r=mixedpuppy,smaug
Differential Revision: https://phabricator.services.mozilla.com/D50793

--HG--
extra : moz-landing-system : lando
2019-10-30 06:59:00 +00:00
Boris Zbarsky d36e5a4ea5 Bug 1214364 part 4. Only output full-featured Init methods for dictionaries that need them. r=peterv
Dictionaries that we never initialize with JS values don't need a full-featured
Init() method.  Instead, we output a cut-down Init() method that doesn't even
take a JSContext and Value as argument, and skips as much work as it can.  It
uses constant-false for "is the value present?", but also, to avoid compilation
errors due to use of `cx` and `val` in now-dead conversion code, it tells the
native-to-JS conversion machinery that the value is always missing, which lets
it skip most of the the work it would normally try to do and just output
initialization to the default value.  We only need to do this for members that
have default values; the others either remain no-passed or are required members
with no default-initialization behavior.

This saves about 330KB of codesize on Linux64 without PGO and 285KB with PGO.

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

--HG--
extra : moz-landing-system : lando
2019-10-28 20:24:31 +00:00
Boris Zbarsky 0d2e9ff1f1 Bug 1214364 part 3. Only output ToObjectInternal methods for dictionaries that need it. r=peterv
This saves about 270KB of codesize on Linux64 without LTO, or 20KB with LTO.

The basic idea is that we can flag dictionaries that need to-JS conversion
(hence ToObjectInternal) based on various IDL uses (return value in normal
interface, argument in callback, etc) and then annotate the ones that are
converted to JS manually in C++ code.

The mozwebidlcodegen changes are needed because non-local changes (e.g. whether
a dictionary is used as a return value somewhere) can now affect the code
generation for a dictionary and hence whether the relevant binding file should
be regenerated.  Since these changes can happen in any .webidl file, we need to
check for them.  We can't track this via the dependency set on the dictionary
itself, because that would not notice new uses being added.

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

--HG--
extra : moz-landing-system : lando
2019-10-28 23:20:11 +00:00
Boris Zbarsky 3a2aa6f9b1 Bug 1214364 part 1. Only output conversions to/from JSON for dictionaries that need it. r=peterv
This saves about 200KB of codesize on Linux64 without LTO.  No effect with LTO,
but is needed for the following patches to work.

Very few dictionaries need these conversions, so explicit opt-in is fine.

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

--HG--
extra : moz-landing-system : lando
2019-10-23 15:58:29 +00:00
Edgar Chen 5c03d212e3 Bug 1587062 - Move SandboxFlags from DocShell to BrowsingContext; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50663

--HG--
extra : moz-landing-system : lando
2019-10-28 11:48:30 +00:00
Andreas Farre 268d5bd571 Bug 1575051 - Part 1: Remove nsIDocShellTreeItem.findItemWithName. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D46285

--HG--
extra : moz-landing-system : lando
2019-10-24 14:53:07 +00:00
Jean-Yves Avenard e6d0e7dfda Bug 1588899 - P1. Move classification flags related method to nsIClassifiedChannel. r=Ehsan,baku
This is where it should have been in the first place. Those attributes belong there.

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

--HG--
extra : moz-landing-system : lando
2019-10-19 04:30:24 +00:00
Boris Zbarsky e68130b666 Bug 1587819. Convert [HTMLConstructor] to being an extended attribute on constructor operations. r=edgar
The changes to the IDL files were done by running this in dom/webidl:

  perl -pi -e 'BEGIN { $/ = undef; } s/\[HTMLConstructor,\n Exposed=Window\]\ninterface ([A-Za-z]+) : HTMLElement \{/[Exposed=Window]\ninterface \1 : HTMLElement {\n  [HTMLConstructor] constructor();\n/g' *.webidl

and then fixing any remaining parser failures.  That involved hand-editing the
following files:

  TestCodeGen.webidl
  XULFrameElement.webidl
  XULMenuElement.webidl
  XULTextElement.webidl
  XULTreeElement.webidl
  HTMLAudioElement.webidl
  HTMLDialogElement.webidl
  HTMLElement.webidl
  HTMLEmbedElement.webidl
  HTMLFormElement.webidl
  HTMLImageElement.webidl
  HTMLObjectElement.webidl
  HTMLOptionElement.webidl
  HTMLSlotElement.webidl
  HTMLVideoElement.webidl
  XULElement.webidl
  XULPopupElement.webidl

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

--HG--
extra : moz-landing-system : lando
2019-10-17 15:38:39 +00:00
Nika Layzell 965f006a70 Bug 1576714 - Part 3: Initiate subframe process switches from the parent, r=kmag
This flips the direction in which the BrowserBridge actor is generally created
such that it is generally created in the parent and sent down to a child
process.

This is done by making the decision about what kind of switch to perform in the
parent, and sending messages down to child processes async to orchestrate these
process changes.

Process launching is changed to use an async `MozPromise`-returning API in this
patch, though the actual process launching still occurs synchronously. A future
patch will enable performing async process launching through the
NewOrUsedBrowserProcess mechanism.

I know of at least a few timing issues which exist with the new logic,
especially around the state of the BrowsingContext during the process
transition. I decided to not try to fix all of these issues in this patch, as
many are complex and will require changing how we manage the lifecycle of
BrowsingContext substantially. I do, however, think that the new logic is more
reliable and has fewer timing issues than the previous logic.

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

--HG--
extra : moz-landing-system : lando
2019-10-15 16:19:16 +00:00
Narcis Beleuzu 68337a887d Backed out 3 changesets (bug 1575051) for bc failures on browser_browsingContext-getWindowByName.js . CLOSED TREE
Backed out changeset 67aaf4a157af (bug 1575051)
Backed out changeset e01256038537 (bug 1575051)
Backed out changeset 0c8f70f9328b (bug 1575051)
2019-10-14 19:19:05 +03:00
Andreas Farre e5c730845d Bug 1575051 - Part 1: Remove nsIDocShellTreeItem.findItemWithName. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D46285

--HG--
extra : moz-landing-system : lando
2019-10-14 12:07:14 +00:00
Matt Woodrow fe675abd66 Bug 1578624 - P6: Add LoadURI to BrowsingContext's webidl. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D44762

--HG--
extra : moz-landing-system : lando
2019-10-11 02:27:14 +00:00
Brian Hackett 2ed60fe6f2 Bug 1580168 Part 1 - Add processID and isParent accessors to ProcessMessageManager, r=nika.
Differential Revision: https://phabricator.services.mozilla.com/D48084

--HG--
extra : moz-landing-system : lando
2019-10-09 20:49:28 +00:00
Nika Layzell ed104ffa03 Bug 1581925 - Part 1: Capture parent process JSWindowActor events at InProcessBrowserChildMessageManager, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D46864

--HG--
extra : moz-landing-system : lando
2019-10-07 19:35:06 +00:00
Brindusan Cristian ef3c975bc9 Backed out 11 changesets (bug 1578624) for build bustages. CLOSED TREE
Backed out changeset b22733eb880f (bug 1578624)
Backed out changeset cb5e15489635 (bug 1578624)
Backed out changeset f1746b2f9dec (bug 1578624)
Backed out changeset d08a099a22ff (bug 1578624)
Backed out changeset 8ebd563c72a8 (bug 1578624)
Backed out changeset d8bfec2dc9b6 (bug 1578624)
Backed out changeset 591664928bce (bug 1578624)
Backed out changeset 63f5a619b9ef (bug 1578624)
Backed out changeset ff67cc13cdf3 (bug 1578624)
Backed out changeset 43556c937a09 (bug 1578624)
Backed out changeset 49065a55694d (bug 1578624)
2019-10-09 11:50:37 +03:00
Matt Woodrow 31a0796cdc Bug 1578624 - P6: Add LoadURI to BrowsingContext's webidl. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D44762

--HG--
extra : moz-landing-system : lando
2019-10-09 06:37:51 +00:00
Narcis Beleuzu 3429292547 Backed out 11 changesets (bug 1578624) for bustages on WindowGlobalChild.h . CLOSED TREE
Backed out changeset 478897956ee0 (bug 1578624)
Backed out changeset ab9c09164df0 (bug 1578624)
Backed out changeset f461f10efa46 (bug 1578624)
Backed out changeset 9b958693a003 (bug 1578624)
Backed out changeset 3b8220a15051 (bug 1578624)
Backed out changeset 180407dc57a8 (bug 1578624)
Backed out changeset bb11892e2171 (bug 1578624)
Backed out changeset 4f5c28244290 (bug 1578624)
Backed out changeset 6c02bbe5c1c5 (bug 1578624)
Backed out changeset 1d762fdce921 (bug 1578624)
Backed out changeset 818bc6e20c7d (bug 1578624)

--HG--
extra : histedit_source : ea22e628bf35425402009e9af274602f342a7476
2019-10-09 08:52:25 +03:00
Matt Woodrow 1fc44c3bea Bug 1578624 - P6: Add LoadURI to BrowsingContext's webidl. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D44762

--HG--
extra : moz-landing-system : lando
2019-10-09 04:34:40 +00:00
Kris Maglione 147f1b5141 Bug 1586119: Part 2 - Fix some more tests to almost work under Fission. r=mccr8
These still fail or timeout because of missing platform features, but at least
the tests will pass once those platform features are fixed after this.

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

--HG--
extra : moz-landing-system : lando
2019-10-04 21:50:34 +00:00
Csoregi Natalia 8768a4f5e3 Backed out 7 changesets (bug 1576714) for fission permafailures on test_bug590812.html. a=backout
Backed out changeset d0c49f00eb91 (bug 1576714)
Backed out changeset faecc9f35b49 (bug 1576714)
Backed out changeset 2e156655c31e (bug 1576714)
Backed out changeset eece722082c7 (bug 1576714)
Backed out changeset ebda40f96884 (bug 1576714)
Backed out changeset 7dce423417d8 (bug 1576714)
Backed out changeset 9a5072019168 (bug 1576714)
2019-10-05 00:08:33 +03:00
Nika Layzell 89b22d83ef Bug 1576714 - Part 3: Initiate subframe process switches from the parent, r=kmag
This flips the direction in which the BrowserBridge actor is generally created
such that it is generally created in the parent and sent down to a child
process.

This is done by making the decision about what kind of switch to perform in the
parent, and sending messages down to child processes async to orchestrate these
process changes.

Process launching is changed to use an async `MozPromise`-returning API in this
patch, though the actual process launching still occurs synchronously. A future
patch will enable performing async process launching through the
NewOrUsedBrowserProcess mechanism.

I know of at least a few timing issues which exist with the new logic,
especially around the state of the BrowsingContext during the process
transition. I decided to not try to fix all of these issues in this patch, as
many are complex and will require changing how we manage the lifecycle of
BrowsingContext substantially. I do, however, think that the new logic is more
reliable and has fewer timing issues than the previous logic.

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

--HG--
extra : moz-landing-system : lando
2019-10-03 21:40:24 +00:00