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

88343 Коммитов

Автор SHA1 Сообщение Дата
Nathan Froyd f64f04d6ef Bug 1593803 - rename NS_DispatchToBackgroundThread to NS_DispatchBackgroundTask; r=KrisWright
The current API name is bad: we want it to be read "some background
thread", but it could just as easily be read "a singular background
thread", which would lead people to assume that for:

```
NS_DispatchToBackgroundThread(...);
NS_DispatchToBackgroundThread(...);
```

the dispatched tasks will necessarily run in the order they are
dispatched, which is not the case.

Let's try to head off that interpretation by renaming this function.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 21:19:18 +00:00
Narcis Beleuzu 45a3b83fc8 Backed out changeset cbec8a55a1bb (bug 1575008) for build bustages (Bof). CLOSED TREE
--HG--
rename : third_party/rust/arrayvec-0.4.11/build.rs => third_party/rust/arrayvec/build.rs
rename : third_party/rust/arrayvec-0.4.11/src/maybe_uninit_nodrop.rs => third_party/rust/arrayvec/src/maybe_uninit_nodrop.rs
rename : third_party/rust/arrayvec-0.4.11/src/maybe_uninit_stable.rs => third_party/rust/arrayvec/src/maybe_uninit_stable.rs
rename : third_party/rust/arrayvec-0.4.11/src/range.rs => third_party/rust/arrayvec/src/range.rs
2019-11-05 23:22:40 +02:00
Dzmitry Malyshau 9ac41ecccf Bug 1575008 - WebGPU implementation basis r=webidl,baku
This change vendors `wgpu` library in-tree and hooks up the initialization bits. It implements adapter and device initialization and adds a simple test.

Current status:
  - [x] Architecture
    - [x] figure out the IPC story
    - [ ] move wgpu crates into a dedicated folder (let's follow up with this)
  - [x] Review
    - [x] WebIDL changes by DOM peers
  - [x] Linux
    - [x] avoid depending on spirv_cross - https://github.com/gfx-rs/wgpu/pull/371
  - [x] macOS
    - [x] due to cross-compiling shaders - https://github.com/gfx-rs/gfx/pull/3047
    - [x] need the dependency update
    - [x] stop using gcc - https://github.com/SSheldon/rust-objc-exception/pull/5
    - [x] unexpected SSL header collision - https://phabricator.services.mozilla.com/D51148
    - [x] undefined Metal symbols
    - [x] missing webrtc headers for IPDL magic - https://phabricator.services.mozilla.com/D51558
  - [x] Windows
    - [x] due to "ipc-channel" not supporting Windows yet - https://github.com/servo/ipc-channel/pull/233~~
    - [x] due to some exceptional stuff - https://github.com/grovesNL/spirv_cross/issues/121
    - [x] undefined symbol: `D3D12CreateDevice`
    - [x] d3d12.dll is not found, dxgi1_4 doesn't present
    - [x] d3d11.dll and dxgi.dll need to be explicitly loaded on win32 mingw - https://github.com/gfx-rs/gfx/pull/3076
    - [x] libbacktrace fails to link on win32 mingw
    - [x] cc mislinking C++ standard library - https://github.com/alexcrichton/cc-rs/pull/455
  - [x] Android
    - [x] spirv-cross fails to build - https://github.com/KhronosGroup/SPIRV-Cross/pull/1193

Update-1:
We decided to go with IPDL mechanism instead of Rust based ipc-channel (or any alternatives), which unblocks Windows build.

Update-2:
It appears that WebGPUThreading isn't needed any more as the child thread (and its event loop) is now managed by IPDL infrastructure. This PR removes it 🎉 .

Update-3:
InstanceProvider is also removed.

Update-4:
All set, the try is green, waiting for dependent changes to go in.

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

--HG--
rename : dom/webgpu/Adapter.cpp => dom/webgpu/ipc/WebGPUTypes.h
rename : third_party/rust/arrayvec/.cargo-checksum.json => third_party/rust/arrayvec-0.4.11/.cargo-checksum.json
rename : third_party/rust/arrayvec/Cargo.toml => third_party/rust/arrayvec-0.4.11/Cargo.toml
rename : third_party/rust/arrayvec/README.rst => third_party/rust/arrayvec-0.4.11/README.rst
rename : third_party/rust/arrayvec/benches/extend.rs => third_party/rust/arrayvec-0.4.11/benches/extend.rs
rename : third_party/rust/arrayvec/build.rs => third_party/rust/arrayvec-0.4.11/build.rs
rename : third_party/rust/arrayvec/src/array.rs => third_party/rust/arrayvec-0.4.11/src/array.rs
rename : third_party/rust/arrayvec/src/array_string.rs => third_party/rust/arrayvec-0.4.11/src/array_string.rs
rename : third_party/rust/arrayvec/src/char.rs => third_party/rust/arrayvec-0.4.11/src/char.rs
rename : third_party/rust/arrayvec/src/lib.rs => third_party/rust/arrayvec-0.4.11/src/lib.rs
rename : third_party/rust/arrayvec/src/maybe_uninit.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit.rs
rename : third_party/rust/arrayvec/src/maybe_uninit_nodrop.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit_nodrop.rs
rename : third_party/rust/arrayvec/src/maybe_uninit_stable.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit_stable.rs
rename : third_party/rust/arrayvec/src/range.rs => third_party/rust/arrayvec-0.4.11/src/range.rs
rename : third_party/rust/arrayvec/tests/serde.rs => third_party/rust/arrayvec-0.4.11/tests/serde.rs
rename : third_party/rust/arrayvec/tests/tests.rs => third_party/rust/arrayvec-0.4.11/tests/tests.rs
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/atom/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/cocoa/Cargo.toml
rename : third_party/rust/core-graphics/src/lib.rs => third_party/rust/cocoa/src/lib.rs
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/colorful/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/range-alloc/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/shared_library/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/x11/Cargo.toml
extra : moz-landing-system : lando
2019-11-05 19:51:15 +00:00
Andreas Pehrson d817feca61 Bug 1212237 - Use MediaRecorder to test peerIdentity track isolation. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D48945

--HG--
extra : moz-landing-system : lando
2019-11-05 20:04:08 +00:00
Andreas Pehrson 2cc34450a1 Bug 1212237 - Add mochitest to test that freshly received tracks are not isolated. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D48944

--HG--
extra : moz-landing-system : lando
2019-11-05 20:04:00 +00:00
Brindusan Cristian b135033275 Backed out 2 changesets (bug 1576733) for android build bustages on OSFileConstants.cpp. CLOSED TREE
Backed out changeset 12df7898b0ee (bug 1576733)
Backed out changeset 4ab691bf4228 (bug 1576733)
2019-11-05 21:50:12 +02:00
Haik Aftandilian f5d3bff1d3 Bug 1576733 - Part 1 - Launch native messaging helper applications with the "disclaim" posix_spawn attribute r=kmag
On macOS, launch native messaging helper apps with a new "Transparency, Consent, and Control" (TCC) attribution chain using the undocumented disclaim posix_spawn attribute.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 17:50:37 +00:00
Brendan Dahl eafc9e3293 Bug 1470510 - Rename nsXULWindow and nsIXULWindow to AppWindow and nsIAppWindow. r=smaug
nsXULWindow is no longer XUL specific and is somewhat confusing name.

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

--HG--
rename : xpfe/appshell/nsXULWindow.cpp => xpfe/appshell/AppWindow.cpp
rename : xpfe/appshell/nsXULWindow.h => xpfe/appshell/AppWindow.h
rename : xpfe/appshell/nsIXULWindow.idl => xpfe/appshell/nsIAppWindow.idl
extra : moz-landing-system : lando
2019-11-05 17:56:28 +00:00
Brendan Dahl ad00c07ebf Bug 1470510 - Merge nsWebShellWindow into nsXULWindow r=smaug
nsWebShellWindow is the only class that extends nsXULWindow and only
nsWebShellWindows are ever instantiated.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 17:56:27 +00:00
Simon Giesecke 3b6471eff2 Bug 1168606 - Fixed some log messages. r=ttung
Differential Revision: https://phabricator.services.mozilla.com/D49397

--HG--
extra : moz-landing-system : lando
2019-11-05 16:46:38 +00:00
Simon Giesecke b6fc689caf Bug 1168606 - Do not use mContinueCalled for determining whether to cache a cursor response. r=ttung,asuth
Depends on D45674

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

--HG--
extra : moz-landing-system : lando
2019-11-05 16:46:31 +00:00
Simon Giesecke c3c98789cd Bug 1168606 - Removed duplication between different BackgroundCursorChild::HandleResponse overloads. r=ttung,asuth
Differential Revision: https://phabricator.services.mozilla.com/D45674

--HG--
extra : moz-landing-system : lando
2019-11-05 16:46:23 +00:00
Simon Giesecke 103f204d11 Bug 1168606 - Extract common function for discarding cached responses. r=ttung,asuth
Depends on D45308

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

--HG--
extra : moz-landing-system : lando
2019-11-05 16:46:10 +00:00
Simon Giesecke 688308e098 Bug 1168606 - Extract functions for accessing sort key into Cursor. r=ytausky,asuth
Depends on D44443

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

--HG--
extra : moz-landing-system : lando
2019-11-05 16:46:03 +00:00
Simon Giesecke 594fcf54d2 Bug 1168606 - Removed implicit conversion operator of CachedStatement. r=ttung,asuth
Depends on D44377

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

--HG--
extra : moz-landing-system : lando
2019-11-05 16:45:53 +00:00
Simon Giesecke 26aa312030 Bug 1168606 - Reduced duplication for handling sort key comparisons in SQL queries and improved type-safety. r=ttung,asuth
Depends on D44009

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

--HG--
extra : moz-landing-system : lando
2019-11-05 16:45:41 +00:00
Simon Giesecke b09e7874fd Bug 1168606 - Add support for preloading key-only cursors. r=ttung,asuth
Differential Revision: https://phabricator.services.mozilla.com/D44009

--HG--
extra : moz-landing-system : lando
2019-11-05 14:40:31 +00:00
Simon Giesecke 59cd698867 Bug 1168606 - Support preloading also for index cursors. r=ttung,asuth
Depends on D43252

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

--HG--
extra : moz-landing-system : lando
2019-11-05 14:40:35 +00:00
Simon Giesecke 9804c8f159 Bug 1168606 - Send extra records with every ObjectStoreCursorResponse if enabled by pref. r=ttung,asuth
Differential Revision: https://phabricator.services.mozilla.com/D43252

--HG--
extra : moz-landing-system : lando
2019-11-05 14:40:37 +00:00
Simon Giesecke b78110f986 Bug 1168606 - Introduce preference for maximum number of extra records to preload, defaulting to 0/off for now. r=ttung,asuth
Differential Revision: https://phabricator.services.mozilla.com/D43466

--HG--
extra : moz-landing-system : lando
2019-11-05 14:40:33 +00:00
Alastor Wu a35ea86333 Bug 1590864 - part3 : use 'notifyUserGestureActivation()' to activate document directly. r=edgar
I found that this test sometime would fail on the try server, and the reason is that the child document doesn't be activated correctly even if we have called `synthesizeMouseAtCenter()`.

In order to reduce the dependency of other modules, which might affect synthesizing event, we should use `notifyUserGestureActivation` to ensure that we indeed activate the document.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 09:37:26 +00:00
Alastor Wu b077049e5f Bug 1590864 - part2 : enable test for Fission r=edgar
Differential Revision: https://phabricator.services.mozilla.com/D51428

--HG--
extra : moz-landing-system : lando
2019-11-04 19:41:49 +00:00
Alastor Wu 230fbfc8d4 Bug 1590864 - part1 : get the user activation state from top-level browsing context. r=edgar
As `ApproverDocOf()` uses `docshell::GetInProcessSameTypeRootTreeItem()`, which is not compatible in Fission because we are not able to get the top document if we are in the remote process. Therefore, we should check browsering content directly instead, because the user activation state would be sync automatically for each top-level browsing context among different processes.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 16:41:16 +00:00
Andrew Sutherland 9f7be5494d Bug 1488583 - Remove unsupported, misleading "dom.indexedDB.enabled" preference r=ttung
There were 3 checks for this preference.  Prior to bug 1079355 which ignored the
pref for system principals, the checks were all straightforward pref checks.

The conditionals are somewhat confusing as written.  The main idea is the code
inside the blocks only executes if:
- The preference is disabled.
- The RV was success (we don't want to steal error handling, just prevent
  success.)
- We're not dealing with the system principal.

As such, I'm removing the full conditional blocks.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 08:13:45 +00:00
Andreas Farre 38d8e4a5c9 Bug 1592290 - Propagate aLookForCallerOnJSStack in nsGlobalWindowOuter::WindowExists to BrowsingContext::FindWith. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D50942

--HG--
extra : moz-landing-system : lando
2019-11-05 13:39:50 +00:00
Andrew McCreight 634c8dd169 Bug 1591174 - Fix some references to nsIDOMWindow. r=bzbarsky
nsIDOMWindow is now an empty interface. There are two references to
nsIDOMWindow::openDialog in comments which needed to be updated. There
were also a few forward declarations of nsIDOMWindow that were unused.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 04:52:53 +00:00
Cosmin Sabou 1211bbc800 Backed out 12 changesets (bug 1168606) for causing build bustages on ActorsParent.cpp and Assertions.h. CLOSED TREE
Backed out changeset 307bd8d24407 (bug 1168606)
Backed out changeset a2ae085f929f (bug 1168606)
Backed out changeset 8fdc4a3d3ecb (bug 1168606)
Backed out changeset 918dc7cce5e9 (bug 1168606)
Backed out changeset 8c776a5cb5db (bug 1168606)
Backed out changeset dffe1e6c58bd (bug 1168606)
Backed out changeset 41f1bef0f019 (bug 1168606)
Backed out changeset 96cb7140a4f6 (bug 1168606)
Backed out changeset 6818224b9b11 (bug 1168606)
Backed out changeset f1be81af7d6b (bug 1168606)
Backed out changeset 8dc185488801 (bug 1168606)
Backed out changeset 9d8b02674d45 (bug 1168606)
2019-11-05 16:34:22 +02:00
Cosmin Sabou fc0c278134 Bug 1168606 - Fix build bustages on ActorsParent.cpp. r=sgiesecke CLOSED TREE
--HG--
extra : amend_source : 571db2de04d434008bca03b2d69c350c0ed627a9
2019-11-05 16:15:53 +02:00
Simon Giesecke 05d088dff7 Bug 1168606 - Fixed some log messages. r=ttung
Differential Revision: https://phabricator.services.mozilla.com/D49397

--HG--
extra : moz-landing-system : lando
2019-11-05 12:49:32 +00:00
Simon Giesecke 95a4ff4109 Bug 1168606 - Do not use mContinueCalled for determining whether to cache a cursor response. r=ttung,asuth
Depends on D45674

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

--HG--
extra : moz-landing-system : lando
2019-11-05 13:23:58 +00:00
Simon Giesecke e4ad20d178 Bug 1168606 - Removed duplication between different BackgroundCursorChild::HandleResponse overloads. r=ttung,asuth
Differential Revision: https://phabricator.services.mozilla.com/D45674

--HG--
extra : moz-landing-system : lando
2019-11-05 12:48:28 +00:00
Simon Giesecke 8835742b38 Bug 1168606 - Extract common function for discarding cached responses. r=ttung,asuth
Depends on D45308

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

--HG--
extra : moz-landing-system : lando
2019-11-05 13:23:34 +00:00
Simon Giesecke 20ca4b7794 Bug 1168606 - Extract functions for accessing sort key into Cursor. r=ytausky,asuth
Depends on D44443

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

--HG--
extra : moz-landing-system : lando
2019-11-05 12:47:36 +00:00
Simon Giesecke 1b5b703a49 Bug 1168606 - Removed implicit conversion operator of CachedStatement. r=ttung,asuth
Depends on D44377

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

--HG--
extra : moz-landing-system : lando
2019-11-05 12:47:28 +00:00
Simon Giesecke babd04fe5d Bug 1168606 - Reduced duplication for handling sort key comparisons in SQL queries and improved type-safety. r=ttung,asuth
Depends on D44009

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

--HG--
extra : moz-landing-system : lando
2019-11-05 12:47:26 +00:00
Simon Giesecke 024a6ea519 Bug 1168606 - Add support for preloading key-only cursors. r=ttung,asuth
Differential Revision: https://phabricator.services.mozilla.com/D44009

--HG--
extra : moz-landing-system : lando
2019-11-05 12:46:16 +00:00
Simon Giesecke 69cd8f61cb Bug 1168606 - Support preloading also for index cursors. r=ttung,asuth
Depends on D43252

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

--HG--
extra : moz-landing-system : lando
2019-11-05 12:45:48 +00:00
Simon Giesecke 1db45a09bf Bug 1168606 - Send extra records with every ObjectStoreCursorResponse if enabled by pref. r=ttung,asuth
Differential Revision: https://phabricator.services.mozilla.com/D43252

--HG--
extra : moz-landing-system : lando
2019-11-05 12:48:36 +00:00
Simon Giesecke ea919b04fb Bug 1168606 - Introduce preference for maximum number of extra records to preload, defaulting to 0/off for now. r=ttung,asuth
Differential Revision: https://phabricator.services.mozilla.com/D43466

--HG--
extra : moz-landing-system : lando
2019-11-05 13:24:31 +00:00
Sebastian Streich 799a5345a7 Bug 1585000 - Enable Samesite Cookies for Fission r=ckerschb,farre
Differential Revision: https://phabricator.services.mozilla.com/D49424

--HG--
extra : moz-landing-system : lando
2019-11-05 09:39:13 +00:00
Simon Giesecke 1d3c6d2725 Bug 1577413 - Add initial description of code style evolution process. r=jstutte
Differential Revision: https://phabricator.services.mozilla.com/D48569

--HG--
extra : moz-landing-system : lando
2019-11-05 09:04:53 +00:00
Yaron Tausky 92d50aff13 Bug 1591990 - Enable local storage tests for Fission r=janv
These tests now pass when run under Fission.

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

--HG--
extra : moz-landing-system : lando
2019-10-31 15:28:13 +00:00
Edgar Chen 6e2bd552ea Bug 1578241 - Get rid of dom.promise_rejection_events.enabled; r=mccr8
promise rejection event was enabled by default on 69 (bug 1525554).
We could get rid of this preference.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 18:08:54 +00:00
Nicolas Silva cff6e480f0 Bug 1587713 - Adjust the tests to account for transform layerization changes with webrender. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D50963

--HG--
extra : moz-landing-system : lando
2019-11-04 14:55:24 +00:00
Cosmin Sabou e7966b8b03 Backed out changeset ac4242e7f029 (bug 1581040) for causing browser chrome crashes @mozilla::a11y::ProxyCreated. CLOSED TREE 2019-11-05 10:39:48 +02:00
Mihai Alexandru Michis b819bd25aa Backed out 2 changesets (bug 1470510) for causing bustages in widget/cocoa/nsChildView.mm CLOSED TREE
Backed out changeset a343f30c34a3 (bug 1470510)
Backed out changeset 4da64790094d (bug 1470510)

--HG--
rename : xpfe/appshell/nsIAppWindow.idl => xpfe/appshell/nsIXULWindow.idl
rename : xpfe/appshell/AppWindow.cpp => xpfe/appshell/nsXULWindow.cpp
rename : xpfe/appshell/AppWindow.h => xpfe/appshell/nsXULWindow.h
2019-11-05 09:24:26 +02:00
Brendan Dahl 0c0da7791e Bug 1470510 - Rename nsXULWindow and nsIXULWindow to AppWindow and nsIAppWindow. r=smaug
nsXULWindow is no longer XUL specific and is somewhat confusing name.

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

--HG--
rename : xpfe/appshell/nsXULWindow.cpp => xpfe/appshell/AppWindow.cpp
rename : xpfe/appshell/nsXULWindow.h => xpfe/appshell/AppWindow.h
rename : xpfe/appshell/nsIXULWindow.idl => xpfe/appshell/nsIAppWindow.idl
extra : moz-landing-system : lando
2019-11-04 23:37:31 +00:00
Brendan Dahl ab6809f229 Bug 1470510 - Merge nsWebShellWindow into nsXULWindow r=smaug
nsWebShellWindow is the only class that extends nsXULWindow and only
nsWebShellWindows are ever instantiated.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 23:11:32 +00:00
Noemi Erli 207e5af698 Backed out changeset ef59d327a1a4 (bug 1575008) for causing build bustages CLOSED TREE
--HG--
rename : third_party/rust/arrayvec-0.4.11/build.rs => third_party/rust/arrayvec/build.rs
rename : third_party/rust/arrayvec-0.4.11/src/maybe_uninit_nodrop.rs => third_party/rust/arrayvec/src/maybe_uninit_nodrop.rs
rename : third_party/rust/arrayvec-0.4.11/src/maybe_uninit_stable.rs => third_party/rust/arrayvec/src/maybe_uninit_stable.rs
rename : third_party/rust/arrayvec-0.4.11/src/range.rs => third_party/rust/arrayvec/src/range.rs
2019-11-05 08:19:10 +02:00
James Teh 28a8c82da1 Bug 1581040: handle late creation/re-creation of OuterDocAccessible for OOP iframe. r=yzen,nika
1. When creating a DocAccessibleParent for an embedded document in an OOP iframe, it's possible that the embedder accessible hasn't been set yet.
    This can occur if the iframe is initially hidden.
    Previously, we incorrectly set the document up as a top level document (e.g. tab document) in this case.
    Now, we set up the document as top level in its content process, set up the proxy, etc.
    The document will be added to its child document later when the embedder is set.

2. When setting the embedder accessible for an OOP iframe, check if the embedded DocAccessibleParent already exists.
    This can happen if an iframe is hidden and then shown or an iframe is reflowed by layout.
    If it already exists, add the embedded (child) document to its embedder.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 05:44:34 +00:00
Ciure Andrei 64cfc71bcd Backed out changeset 967bb08714f9 (bug 1581040) for causing build bustages CLOSED TREE 2019-11-05 07:23:01 +02:00
Dzmitry Malyshau 6376282a47 Bug 1575008 - WebGPU implementation basis r=webidl,baku
This change vendors `wgpu` library in-tree and hooks up the initialization bits. It implements adapter and device initialization and adds a simple test.

Current status:
  - [x] Architecture
    - [x] figure out the IPC story
    - [ ] move wgpu crates into a dedicated folder (let's follow up with this)
  - [x] Review
    - [x] WebIDL changes by DOM peers
  - [x] Linux
    - [x] avoid depending on spirv_cross - https://github.com/gfx-rs/wgpu/pull/371
  - [x] macOS
    - [x] due to cross-compiling shaders - https://github.com/gfx-rs/gfx/pull/3047
    - [x] need the dependency update
    - [x] stop using gcc - https://github.com/SSheldon/rust-objc-exception/pull/5
    - [x] unexpected SSL header collision - https://bugzilla.mozilla.org/show_bug.cgi?id=1592398
    - [x] undefined Metal symbols
  - [x] Windows
    - [x] due to "ipc-channel" not supporting Windows yet - https://github.com/servo/ipc-channel/pull/233~~
    - [x] due to some exceptional stuff - https://github.com/grovesNL/spirv_cross/issues/121
    - [x] undefined symbol: `D3D12CreateDevice`
    - [x] d3d12.dll is not found, dxgi1_4 doesn't present
    - [x] d3d11.dll and dxgi.dll need to be explicitly loaded on win32 mingw - https://github.com/gfx-rs/gfx/pull/3076
    - [x] libbacktrace fails to link on win32 mingw
  - [x] Android
    - [x] spirv-cross fails to build - https://github.com/KhronosGroup/SPIRV-Cross/pull/1193

Update-1:
We decided to go with IPDL mechanism instead of Rust based ipc-channel (or any alternatives), which unblocks Windows build.

Update-2:
It appears that WebGPUThreading isn't needed any more as the child thread (and its event loop) is now managed by IPDL infrastructure. This PR removes it 🎉 .

Update-3:
InstanceProvider is also removed.

Update-4:
All set, the try is green, waiting for dependent changes to go in.

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

--HG--
rename : dom/webgpu/Adapter.cpp => dom/webgpu/ipc/WebGPUTypes.h
rename : third_party/rust/arrayvec/.cargo-checksum.json => third_party/rust/arrayvec-0.4.11/.cargo-checksum.json
rename : third_party/rust/arrayvec/Cargo.toml => third_party/rust/arrayvec-0.4.11/Cargo.toml
rename : third_party/rust/arrayvec/README.rst => third_party/rust/arrayvec-0.4.11/README.rst
rename : third_party/rust/arrayvec/benches/extend.rs => third_party/rust/arrayvec-0.4.11/benches/extend.rs
rename : third_party/rust/arrayvec/build.rs => third_party/rust/arrayvec-0.4.11/build.rs
rename : third_party/rust/arrayvec/src/array.rs => third_party/rust/arrayvec-0.4.11/src/array.rs
rename : third_party/rust/arrayvec/src/array_string.rs => third_party/rust/arrayvec-0.4.11/src/array_string.rs
rename : third_party/rust/arrayvec/src/char.rs => third_party/rust/arrayvec-0.4.11/src/char.rs
rename : third_party/rust/arrayvec/src/lib.rs => third_party/rust/arrayvec-0.4.11/src/lib.rs
rename : third_party/rust/arrayvec/src/maybe_uninit.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit.rs
rename : third_party/rust/arrayvec/src/maybe_uninit_nodrop.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit_nodrop.rs
rename : third_party/rust/arrayvec/src/maybe_uninit_stable.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit_stable.rs
rename : third_party/rust/arrayvec/src/range.rs => third_party/rust/arrayvec-0.4.11/src/range.rs
rename : third_party/rust/arrayvec/tests/serde.rs => third_party/rust/arrayvec-0.4.11/tests/serde.rs
rename : third_party/rust/arrayvec/tests/tests.rs => third_party/rust/arrayvec-0.4.11/tests/tests.rs
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/atom/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/cocoa/Cargo.toml
rename : third_party/rust/core-graphics/src/lib.rs => third_party/rust/cocoa/src/lib.rs
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/colorful/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/range-alloc/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/shared_library/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/x11/Cargo.toml
extra : moz-landing-system : lando
2019-11-05 05:08:13 +00:00
James Teh f0676dcb3a Bug 1581040: handle late creation/re-creation of OuterDocAccessible for OOP iframe. r=yzen,nika
1. When creating a DocAccessibleParent for an embedded document in an OOP iframe, it's possible that the embedder accessible hasn't been set yet.
    This can occur if the iframe is initially hidden.
    Previously, we incorrectly set the document up as a top level document (e.g. tab document) in this case.
    Now, we set up the document as top level in its content process, set up the proxy, etc.
    The document will be added to its child document later when the embedder is set.

2. When setting the embedder accessible for an OOP iframe, check if the embedded DocAccessibleParent already exists.
    This can happen if an iframe is hidden and then shown or an iframe is reflowed by layout.
    If it already exists, add the embedded (child) document to its embedder.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 05:02:38 +00:00
Csoregi Natalia 1e1d192ff3 Backed out changeset 9c05fa3c0fcc (bug 1575008) for bustages on WebrtcIPCTraits.h. CLOSED TREE
--HG--
rename : third_party/rust/arrayvec-0.4.11/build.rs => third_party/rust/arrayvec/build.rs
rename : third_party/rust/arrayvec-0.4.11/src/maybe_uninit_nodrop.rs => third_party/rust/arrayvec/src/maybe_uninit_nodrop.rs
rename : third_party/rust/arrayvec-0.4.11/src/maybe_uninit_stable.rs => third_party/rust/arrayvec/src/maybe_uninit_stable.rs
rename : third_party/rust/arrayvec-0.4.11/src/range.rs => third_party/rust/arrayvec/src/range.rs
2019-11-05 06:44:15 +02:00
Dzmitry Malyshau 5f694cac96 Bug 1575008 - WebGPU implementation basis r=webidl,baku
This change vendors `wgpu` library in-tree and hooks up the initialization bits. It implements adapter and device initialization and adds a simple test.

Current status:
  - [x] Architecture
    - [x] figure out the IPC story
    - [ ] move wgpu crates into a dedicated folder (let's follow up with this)
  - [x] Review
    - [x] WebIDL changes by DOM peers
  - [x] Linux
    - [x] avoid depending on spirv_cross - https://github.com/gfx-rs/wgpu/pull/371
  - [x] macOS
    - [x] due to cross-compiling shaders - https://github.com/gfx-rs/gfx/pull/3047
    - [x] need the dependency update
    - [x] stop using gcc - https://github.com/SSheldon/rust-objc-exception/pull/5
    - [x] unexpected SSL header collision - https://bugzilla.mozilla.org/show_bug.cgi?id=1592398
    - [x] undefined Metal symbols
  - [x] Windows
    - [x] due to "ipc-channel" not supporting Windows yet - https://github.com/servo/ipc-channel/pull/233~~
    - [x] due to some exceptional stuff - https://github.com/grovesNL/spirv_cross/issues/121
    - [x] undefined symbol: `D3D12CreateDevice`
    - [x] d3d12.dll is not found, dxgi1_4 doesn't present
    - [x] d3d11.dll and dxgi.dll need to be explicitly loaded on win32 mingw - https://github.com/gfx-rs/gfx/pull/3076
    - [x] libbacktrace fails to link on win32 mingw
  - [x] Android
    - [x] spirv-cross fails to build - https://github.com/KhronosGroup/SPIRV-Cross/pull/1193

Update-1:
We decided to go with IPDL mechanism instead of Rust based ipc-channel (or any alternatives), which unblocks Windows build.

Update-2:
It appears that WebGPUThreading isn't needed any more as the child thread (and its event loop) is now managed by IPDL infrastructure. This PR removes it 🎉 .

Update-3:
InstanceProvider is also removed.

Update-4:
All set, the try is green, waiting for dependent changes to go in.

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

--HG--
rename : dom/webgpu/Adapter.cpp => dom/webgpu/ipc/WebGPUTypes.h
rename : third_party/rust/arrayvec/.cargo-checksum.json => third_party/rust/arrayvec-0.4.11/.cargo-checksum.json
rename : third_party/rust/arrayvec/Cargo.toml => third_party/rust/arrayvec-0.4.11/Cargo.toml
rename : third_party/rust/arrayvec/README.rst => third_party/rust/arrayvec-0.4.11/README.rst
rename : third_party/rust/arrayvec/benches/extend.rs => third_party/rust/arrayvec-0.4.11/benches/extend.rs
rename : third_party/rust/arrayvec/build.rs => third_party/rust/arrayvec-0.4.11/build.rs
rename : third_party/rust/arrayvec/src/array.rs => third_party/rust/arrayvec-0.4.11/src/array.rs
rename : third_party/rust/arrayvec/src/array_string.rs => third_party/rust/arrayvec-0.4.11/src/array_string.rs
rename : third_party/rust/arrayvec/src/char.rs => third_party/rust/arrayvec-0.4.11/src/char.rs
rename : third_party/rust/arrayvec/src/lib.rs => third_party/rust/arrayvec-0.4.11/src/lib.rs
rename : third_party/rust/arrayvec/src/maybe_uninit.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit.rs
rename : third_party/rust/arrayvec/src/maybe_uninit_nodrop.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit_nodrop.rs
rename : third_party/rust/arrayvec/src/maybe_uninit_stable.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit_stable.rs
rename : third_party/rust/arrayvec/src/range.rs => third_party/rust/arrayvec-0.4.11/src/range.rs
rename : third_party/rust/arrayvec/tests/serde.rs => third_party/rust/arrayvec-0.4.11/tests/serde.rs
rename : third_party/rust/arrayvec/tests/tests.rs => third_party/rust/arrayvec-0.4.11/tests/tests.rs
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/atom/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/cocoa/Cargo.toml
rename : third_party/rust/core-graphics/src/lib.rs => third_party/rust/cocoa/src/lib.rs
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/colorful/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/range-alloc/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/shared_library/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/x11/Cargo.toml
extra : moz-landing-system : lando
2019-11-05 04:09:23 +00:00
Peter Van der Beken 43968057e3 Bug 1591891 - Make the fix for bug 1536468 work with session history in the parent turned off. r=annyG
Differential Revision: https://phabricator.services.mozilla.com/D50786

--HG--
extra : rebase_source : 10199c278de3618e17497dc361d66262223c462d
extra : source : cc77b3f6df12a3a2105941402bce9fedbacf255c
extra : histedit_source : d4feddbc8a9dad5f9fab3860120d71b510e96ab6
2019-10-28 09:46:50 +01:00
Peter Van der Beken 8ed0cb2ea7 Bug 1588491 - Associate session history entries with a session history object from creation. Continue to allow docshells to create session history entries even if the root docshell doesn't have a session history object. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50574

--HG--
extra : rebase_source : 0381ae4297820f92caa5a77f588c9372093c8315
extra : source : ebb01f79e94a182e4886c4af5b0f27f5b7a41c4e
extra : histedit_source : 4010d5a26f2fad681984e76718112d657d2e5fa1
2019-10-24 09:17:19 +02:00
Peter Van der Beken b6d4b5e93c Bug 1588491 - Associate session history entries with a session history object from creation. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D49170

--HG--
extra : rebase_source : bc4c6e8cea0de7e85ae78ffb3ce09a7465e61b4a
extra : amend_source : 956bf8fa227e613b7f816dd5af9029ed24ba2c46
extra : source : 2d4b06fe1f429eec844cdeba8a7faaa63bfc25ab
extra : histedit_source : a2345826c7f94311ee57d805bf3ac9bed2e12ea7
2019-10-17 20:03:49 +02:00
David Parks b5f917254e Bug 1449736: Properly detect failure in receiving plugin NPObjects r=jmathies
Properly handles NPError reporting and makes sure that, in the case of failure, it does not return junk for the NPObject.

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

--HG--
extra : moz-landing-system : lando
2019-10-12 17:05:35 +00:00
Dzmitry Malyshau 91cac2c161 Bug 1591438 - Move DEFINE_IPC_SERIALIZER_WITH_FIELDS into IPCMessageUtils header r=bwc
Differential Revision: https://phabricator.services.mozilla.com/D51558

--HG--
extra : moz-landing-system : lando
2019-11-04 15:00:04 +00:00
Andrea Marchesini 815d827202 Bug 1591579 - Move ResponseData JS objects and Blob from XMLHttpRequestWorker::ResponseData to XMLHttpRequestWorker, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D51650

--HG--
extra : moz-landing-system : lando
2019-11-04 17:46:23 +00:00
Andrea Marchesini 987e7faf8e Bug 1591579 - Retrieve the XHR response values only when needed, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D51412

--HG--
extra : moz-landing-system : lando
2019-11-04 17:46:23 +00:00
Andrea Marchesini 305bfed4d3 Bug 1591579 - XHR ArrayBufferBuilder needs to have a refcounted buffer handling, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D51088

--HG--
extra : moz-landing-system : lando
2019-11-04 15:38:04 +00:00
Andrea Marchesini 07aed8049d Bug 1591579 - Test for XHR on sharedWorkers, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50951

--HG--
extra : moz-landing-system : lando
2019-11-04 15:38:06 +00:00
Andrea Marchesini 6c4f3e3599 Bug 1591579 - XMLWorker takes data from XMLMainThread without calling GetResponse(), r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50921

--HG--
extra : moz-landing-system : lando
2019-11-04 15:38:08 +00:00
Andrea Marchesini cb9efcf21b Bug 1591579 - XHR-MainThread exposes a set of methods to retrieve response values for workers, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50920

--HG--
extra : moz-landing-system : lando
2019-11-04 15:38:10 +00:00
Andrea Marchesini 18ceb55e61 Bug 1591579 - XHR uses a ref-counted ArrayBufferBuilder, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50919

--HG--
extra : moz-landing-system : lando
2019-11-04 15:38:12 +00:00
Andrea Marchesini 4ed64e9fe1 Bug 1591579 - XHR creates the Blob response only at the first GetResponse() call, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50918

--HG--
extra : moz-landing-system : lando
2019-11-04 15:38:14 +00:00
Emilio Cobos Álvarez a57fd16889 Bug 1506842 - Always restyle / repaint when a visited query finishes. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D50810

--HG--
extra : moz-landing-system : lando
2019-11-04 16:55:33 +00:00
Dorel Luca 0207ce5451 Backed out 2 changesets (bug 1470510) for build bustage on /build/src/widget/cocoa/nsChildView.mm. CLOSED TREE
Backed out changeset 5967bf633574 (bug 1470510)
Backed out changeset 067a556bb614 (bug 1470510)

--HG--
rename : xpfe/appshell/nsIAppWindow.idl => xpfe/appshell/nsIXULWindow.idl
rename : xpfe/appshell/AppWindow.cpp => xpfe/appshell/nsXULWindow.cpp
rename : xpfe/appshell/AppWindow.h => xpfe/appshell/nsXULWindow.h
extra : amend_source : 752d828c6a0726c3f2df57a25741e38b36b75d6b
2019-11-04 19:18:56 +02:00
Alex Catarineu 08a431f34e Bug 1581537 - Avoid several browser language leaks r=smaug
Spoof dom/dom.properties, layout/xmlparser.properties,
layout/MediaDocument.properties to en-US if needed.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 16:56:27 +00:00
Brendan Dahl 247b257cfa Bug 1470510 - Rename nsXULWindow and nsIXULWindow to AppWindow and nsIAppWindow. r=smaug
nsXULWindow is no longer XUL specific and is somewhat confusing name.

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

--HG--
rename : xpfe/appshell/nsXULWindow.cpp => xpfe/appshell/AppWindow.cpp
rename : xpfe/appshell/nsXULWindow.h => xpfe/appshell/AppWindow.h
rename : xpfe/appshell/nsIXULWindow.idl => xpfe/appshell/nsIAppWindow.idl
extra : moz-landing-system : lando
2019-11-04 16:52:35 +00:00
Brendan Dahl e99dc7d58d Bug 1470510 - Merge nsWebShellWindow into nsXULWindow r=smaug
nsWebShellWindow is the only class that extends nsXULWindow and only
nsWebShellWindows are ever instantiated.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 16:52:24 +00:00
Dorel Luca f7c8547554 Backed out 7 changesets (bug 1591579) for Hazzard failure on dom/xhr/XMLHttpRequestWorker.cpp. CLOSED TREE
Backed out changeset 9a1cf12c3de1 (bug 1591579)
Backed out changeset 4a228aa6e526 (bug 1591579)
Backed out changeset b19e6eba3b12 (bug 1591579)
Backed out changeset d7c095dce497 (bug 1591579)
Backed out changeset dfb0fcebe51e (bug 1591579)
Backed out changeset 9d525c1c558d (bug 1591579)
Backed out changeset f4bcdcefe2d1 (bug 1591579)
2019-11-04 17:33:15 +02:00
Nika Layzell deafea7097 Bug 1590908 - Part 3: Use CallerInnerWindow in LocationBase::SetURI, r=kmag
This doesn't fix every scenario, as chrome JS can still try to call one of these
methods, which will cause a crash. We would need to move SendLoadURI to PContent
so that chrome JS can navigate arbitrary contexts if we wanted to be certain no
crash occurred.

Unfortunately, chrome JS navigates in-process BrowsingContext objects very
frequently in tests (etc), so we can't make location navigations which don't have
an accessor fail.

I considered making the method just produce an error, rather than doing a
diagnostic assert, but I figured we should make that decision in another bug.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 15:05:56 +00:00
Nika Layzell 8378700163 Bug 1590908 - Part 2: Don't require passing JSContext* to CallerInnerWindow, r=kmag
The JSContext* is already fetched from within GetIncumbentGlobal, so the get is
guaranteed not to fail. This simplifies the callsite, making it easier to call.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 15:05:49 +00: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
Byron Campen [:bwc] fa9fb525b5 Bug 1470568: Remove the rid= and pt= stuff from our simulcast parsing. Also, handle paused rids correctly. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D47658

--HG--
extra : moz-landing-system : lando
2019-11-04 15:04:14 +00:00
Mihai Alexandru Michis d19c1272ca Backed out changeset 1d87c269da8a (bug 1581537) for causing bc failures in browser_misused_characters_in_strings.js CLOSED TREE
--HG--
extra : rebase_source : b9f2da6650a4213a4a9284d6dbe7ecfd97761501
extra : amend_source : b7ca833a091419a2de5904eccb2d3ce9d0fcd337
2019-11-04 16:06:37 +02:00
Andreas Pehrson 9a95077157 Bug 1577505 - Progress currentTime for a MediaStream only while potentially playing. r=jib
It started progressing as soon as we set up the rendering of the tracks in the
stream, which is too early according to the HTMLMediaElement spec.

Now it starts progressing when we're potentially playing. The difference being
that we now wait for mReadyState to go beyond HAVE_CURRENT_DATA before hooking
up the time progression mechanism.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 13:43:01 +00:00
Andreas Pehrson 0685c0e901 Bug 1577505 - Make mSrcStreamPlaybackEnded and mReadyState watchable. r=jib
This makes all inputs to IsPotentiallyPlayin() Watchable when we're playing a
MediaStream.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 13:42:58 +00:00
Andreas Pehrson aa162c3e88 Bug 1577505 - Rename UpdateSrcTrackTime back to UpdateSrcStreamTime. r=jib
It was incorrectly included in the renaming part of bug 1454998.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 13:42:56 +00:00
Andrea Marchesini 7d3e590015 Bug 1591579 - Retrieve the XHR response values only when needed, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D51412

--HG--
extra : moz-landing-system : lando
2019-11-04 13:31:14 +00:00
Andrea Marchesini ab585d76dc Bug 1591579 - XHR ArrayBufferBuilder needs to have a refcounted buffer handling, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D51088

--HG--
extra : moz-landing-system : lando
2019-11-04 13:31:14 +00:00
Andrea Marchesini c8f3306a45 Bug 1591579 - Test for XHR on sharedWorkers, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50951

--HG--
extra : moz-landing-system : lando
2019-11-04 13:23:48 +00:00
Andrea Marchesini 7c74de6d11 Bug 1591579 - XMLWorker takes data from XMLMainThread without calling GetResponse(), r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50921

--HG--
extra : moz-landing-system : lando
2019-11-04 13:23:29 +00:00
Andrea Marchesini ade7fec674 Bug 1591579 - XHR-MainThread exposes a set of methods to retrieve response values for workers, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50920

--HG--
extra : moz-landing-system : lando
2019-11-04 13:23:11 +00:00
Andrea Marchesini e9b74dd23e Bug 1591579 - XHR uses a ref-counted ArrayBufferBuilder, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50919

--HG--
extra : moz-landing-system : lando
2019-11-04 13:22:54 +00:00
Andrea Marchesini 2dc4652974 Bug 1591579 - XHR creates the Blob response only at the first GetResponse() call, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50918

--HG--
extra : moz-landing-system : lando
2019-11-04 13:22:39 +00:00
Emilio Cobos Álvarez 5949af2c3b Bug 1591717 - Add a pref to notify of unvisited uris in the history service. r=mak,lina
Behind a pref to ensure that we can turn this off pretty easily if it has perf
impact.

I want to leave the repainting stuff to another bug to land separately, to track
potential (though I hope not!) perf regressions more easily.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 13:28:58 +00:00
Olli Pettay a62c4333a4 Bug 1591334, use faster access to the existing doc in antitracking reporting,r=baku
Differential Revision: https://phabricator.services.mozilla.com/D50758

--HG--
extra : moz-landing-system : lando
2019-10-28 20:50:59 +00:00
Olli Pettay c1bb23c9ad Bug 1581084, nsDeviceSensors::IsSensorAllowedByPref should use the principal of the window, not docshell, to check whether to resist fingerprinting, r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D50525

--HG--
extra : moz-landing-system : lando
2019-11-04 12:43:43 +00:00
Olli Pettay ad704532b0 Bug 1593299 - Disconnect EventListenerManager is DOMEventTargetHelper's Unlink, r=masayuki
Differential Revision: https://phabricator.services.mozilla.com/D51423

--HG--
extra : moz-landing-system : lando
2019-11-03 00:03:12 +00:00
Alex Catarineu ea206b140d Bug 1581537 - Avoid several browser language leaks r=smaug
Spoof dom/dom.properties, layout/xmlparser.properties,
layout/MediaDocument.properties to en-US if needed.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 11:27:59 +00:00
Andreea Pavel 78343404b1 Backed out changeset 406197940297 (bug 1581040) for failing BrowserParent.cpp on a CLOSED TREE 2019-11-04 06:32:28 +02:00
James Teh fea47468f5 Bug 1581040: handle late creation/re-creation of OuterDocAccessible for OOP iframe. r=yzen,nika
1. When creating a DocAccessibleParent for an embedded document in an OOP iframe, it's possible that the embedder accessible hasn't been set yet.
    This can occur if the iframe is initially hidden.
    Previously, we incorrectly set the document up as a top level document (e.g. tab document) in this case.
    Now, we set up the document as top level in its content process, set up the proxy, etc.
    The document will be added to its child document later when the embedder is set.

2. When setting the embedder accessible for an OOP iframe, check if the embedded DocAccessibleParent already exists.
    This can happen if an iframe is hidden and then shown or an iframe is reflowed by layout.
    If it already exists, add the embedded (child) document to its embedder.

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

--HG--
extra : moz-landing-system : lando
2019-11-01 17:12:19 +00:00
Dan Glastonbury 7acec510f1 Bug 1561179 - P6: Handle shutdown of the GPU process and reconnect PVideoBridge. r=mattwoodrow
Add an observer to restart the PVideoBridge connection when GPU process
restarts.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 03:42:01 +00:00
Dan Glastonbury b1baf91ae9 Bug 1561179 - P5: Remove separate VideoBridgeChild Singletons. r=mattwoodrow
Combine sVideoBridgeToParentProcess and sVideoBridgeToGPUProcess into one
sVideoBridge. Each producing process, GPU or RDD, is only ever started with one
VideoBridgeChild endpoint. This is enough to get RemoteVideoDecoders in RDD
process to start using GPU memory to send video to compositor over PVideoBridge.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 03:41:59 +00:00
Dan Glastonbury 3332a9ad27 Bug 1561179 - P4: Create PVideoBridge between RDDProcess and GPUProcess. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D50401

--HG--
extra : moz-landing-system : lando
2019-11-04 03:41:57 +00:00
Dan Glastonbury 02ffa8e3f3 Bug 1561179 - P3: Merge EnsureRDDReady into LaunchRDDProcess. r=mattwoodrow
LaunchRDDProcess() and CreateContentBridge() create a sync creation. Merge the
functions into one function. Keep the IPDL messaging async to avoid adding a
exception for the message being sync.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 03:41:54 +00:00
Dan Glastonbury 35da282560 Bug 1561179 - P2: Rename VideoBridge methods and members. r=mattwoodrow
To bring the naming more inline with ImageBridge.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 03:41:47 +00:00
Dan Glastonbury 45381819c6 Bug 1561179 - P1: Enable the creation of multiple VideoBridgeParent actors. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D50398

--HG--
extra : moz-landing-system : lando
2019-11-04 03:41:45 +00:00
Razvan Maries 4eba7bb5e1 Bug 1548274 - Disabled browser_cancel_content_js.js on Windows10 x64 debug. r=gbrown
Differential Revision: https://phabricator.services.mozilla.com/D51496

--HG--
extra : moz-landing-system : lando
2019-11-03 20:48:08 +00:00
Masayuki Nakano 345f0e69ba Bug 1588745 - part 7: Remove `AutoScriptBlocker` from `TextControlState::SetValue()` r=Ehsan
For allowing `TextEditor` to dispatch DOM events synchronously, we should
remove `AutoScriptBlocker` in `TextControlState::SetValue()` right now.

According to the comment around the `AutoScriptBlocker`, `PrepareEditor()`
may be called while setting value.  Therefore, this patch makes
`AutoTextControlHandlingState` call it if `PrepareEditor()` is called
while handling `SetValue()` and when the top most `SetValue()` ends its job.

Depends on D51396

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

--HG--
extra : moz-landing-system : lando
2019-11-01 21:10:17 +00:00
Masayuki Nakano 129b58687c Bug 1588745 - part 6: Post processing of setting value with TextEditor should be done before dispatching "input" event r=Ehsan
Currently, "input" event is fired when the `AutoScriptBlocker` in `SetValue()`
is deleted.  So, for keeping same behavior, the post processing after calling
`TextEditor` methods should be done before editor dispatches "input" event.

Fortunately, `TextInputListener::OnEditActionHandled()` is a good chance to
do that.  Therefore, this patch makes it notify `TextControlState` and
`AutoTextControlHandlingState`.

Note that ideally, each method of `TextEditor` should return
`NS_ERROR_OUT_OF_MEMORY` coming from
`AutoTextControlHandlingState::OnEditActionHandled()`.  However, it requires
a lot of changes in editor classes, and the case is really rare since editor
does not use fallible allocation.  Therefore, it must be okay to crash in
editor if `OnEditActionHandled()` returns `NS_ERROR_OUT_OF_MEMORY`.

Depends on D51395

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

--HG--
extra : moz-landing-system : lando
2019-11-03 02:50:00 +00:00
Masayuki Nakano 4ea46b632e Bug 1588745 - part 5: Split `TextControlState::SetValue()` r=Ehsan
`TextControlState::SetValue()` does 4 things.
1. Committing composition if there is and if possible.
2. Setting value with `TextEditor` if text editor and frame are available.
3. Setting value without `TextEditor` otherwise.
4. Notifying value changed.

We can split #2 and #3 from it now because `AutoTextControlHandlingState`
manages nested actions.  Therefore, this patch creates
`SetValueWithTextEditor()` and `SetValueWithoutTextEditor()` which take
`AutoTextControlHandlingState`.

Depends on D51394

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

--HG--
extra : moz-landing-system : lando
2019-11-02 23:23:54 +00:00
Masayuki Nakano 3b61d80b0e Bug 1588745 - part 4: Make `TextControlState` reuse its instance by itself r=Ehsan
Currently, only `HTMLInputElement` reuses `TextControlState` instance since
`HTMLTextAreaElement` had the instance as a member rather than allocate it.

Now, all instances are allocated in the heap independently for guaranteeing
their lifetime.  So, the reuse mechanism should be managed by
`TextControlState` itself.

Depends on D51393

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

--HG--
extra : moz-landing-system : lando
2019-11-01 20:51:48 +00:00
Masayuki Nakano f3bf8ed506 Bug 1588745 - part 3: Make `TextControlState` not deleted actually while it handles something r=Ehsan
Currently, nobody guarantees that `TextControlState` won't be deleted while
it handles something with `MOZ_CAN_RUN_SCRIPT` methods.

This patch hides its destructor (and constructor) for making only
`TextControlState` itself can delete its instances.  Then, if instance owner
wants to delete it while handling action(s), the oldest `AutoHandlingState`
will delete the `TextControlState`.

Depends on D51392

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

--HG--
extra : moz-landing-system : lando
2019-11-01 20:49:12 +00:00
Masayuki Nakano e2c6cf597d Bug 1588745 - part 2: Move some `TextControlState` members to stack only class r=Ehsan
Some members of `TextControlState` are initialized and restored in same block
scopes.  Therefore, with creating new stack only class and storing latest one
with a new member variable, we can store all of them in the stack.

Depends on D51391

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

--HG--
extra : moz-landing-system : lando
2019-11-01 20:47:35 +00:00
Masayuki Nakano 91b4aa6851 Bug 1588745 - part 1: Rename `nsTextEditorState` to `mozilla::TextControlState` r=Ehsan
It should be in `mozilla` namespace and it manages not only `TextEditor`,
manages selection, selection controller and callback from editor. so that
I think it stores state of "text control widget". Therefore, I name it to
`TextControlState`.

And cleaning up the cpp file.

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

--HG--
rename : dom/html/nsTextEditorState.cpp => dom/html/TextControlState.cpp
rename : dom/html/nsTextEditorState.h => dom/html/TextControlState.h
extra : moz-landing-system : lando
2019-11-01 20:43:11 +00:00
Gijs Kruitbosch ea58459bc1 Bug 1545123 - move reading pluginreg and scanning for plugins to a background thread, r=handyman,mconley
Finally, let's move the actual IO away from the main thread.

This means there are now 3 ways of looking for plugins:
1. looking for changes from ReloadPlugins. This runs the PluginFinder runnable
   on the main thread.
2. loading plugins from LoadPlugins. This will:
   a) first check prefs and report the flash plugin based on that information,
      if the prefs indicate it exists (using the callback provided by
      nsPluginHost).
   b) then hopefully dispatch to a background thread, where it will read
      pluginreg.dat, scan the appropriate folders on disk, and see if
      anything changed. Once done, it sets mFinishedFinding to true and
      re-dispatches itself to the main thread.
   c) then on the main thread, it reports any changes to nsPluginHost.
3. if dispatching in 2(b) fails, we will run steps (b) and (c) on the main
   thread.

Note: if ReloadPlugins is called, we intiially do (1), but if we find
changes, we clear out the set of known plugins and then run LoadPlugins
again (meaning we go through 2 (or 3 if 2(b) fails)). This is how
reloading plugins worked prior to my changes and I've attempted not to
change it.

In order for this to work, there are some other changes in this commit:

- the sandbox prefs are being read "early" and cached for flash vs
  "everything else". We can't access prefs on non-main threads without
  using StaticPrefs, which doesn't seem worth it here.
- some of the plugin tag classes are moved to threadsafe refcounting.
  This is a bit unfortunate, but because they're instantiated on a non-
  mainthread, and then later used on the main thread, despite the
  fact that the architecture means nothing tries to touch them from
  more than one thread at once, without threadsafe refcounting we hit
  asserts in debug mode if we add references to them back on the main thread.
- we add shutdown blocking for pluginfinding. We don't really want to
  be halfway through finding plugins and then trying to shut them down,
  or re-instantiating plugins after they've been unloaded.
- we keep a reference to the "pending" pluginfinder instance while
  doing lookups away from the main thread (ie (2)), to avoid re-entrancy or
  trying to write to pluginreg while we're reading it somewhere else,
  etc. If there's an attempt to do more plugin finding while this is
  ongoing, we flip mDoReloadOnceFindingFinished and do a reload once
  our initial lookups are complete.

Depends on D48331

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

--HG--
extra : moz-landing-system : lando
2019-11-02 22:35:04 +00:00
Gijs Kruitbosch bdcd6e3107 Bug 1545123 - move plugin finding into its own class to clarify dependencies and data flows, r=handyman
This moves plugin finding logic into a separate class (PluginFinder).

PluginFinder is a runnable. After this commit, there are two ways in which it
can be used:
1. to actually find and load plugins.
2. to check if there have been any changes to plugins.

Although it is a runnable, at this point we still invoke its Run method on the
main thread, so all that's happening is we're separating the "look for plugins
on disk" bits out from everything else.

The goal is to be able to run the IO-intensive FindPlugins (including reading
and writing pluginreg) away from the main thread.

Depends on D48330

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

--HG--
rename : dom/plugins/base/nsPluginHost.cpp => dom/plugins/base/PluginFinder.cpp
extra : moz-landing-system : lando
2019-11-02 22:34:36 +00:00
Gijs Kruitbosch f37efef98a Bug 1545123 - remove obsolete things from nsPluginHost, r=handyman
Remove:
- a list of allowed mimetypes; we only support flash anyway.
- writing to disk when a plugin's enabled state changes; the plugin's enabled
  state is not kept on disk so there's no point.
- tracking which plugins should load in the parent as no plugins should do so
  if e10s is on.

Depends on D48329

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

--HG--
extra : moz-landing-system : lando
2019-11-02 22:34:13 +00:00
Gijs Kruitbosch 608f3e7539 Bug 1545123 - simplify how we get directory information for plugins, r=handyman,mconley
In this change we:
- stop treating the nsPluginDirServiceProvider as a directory provider, as its
  GetFile implementation was a no-op anyway - registering it didn't make any
  difference.
- stop treating it as a class entirely, because the PLID getters were already
  static, so instantiating it also didn't do anything.
- move IO from the plugin directory list provider and the Windows-only PLID
  getters into nsPluginHost. This enables us to move it off of the main thread
  later - the directory getting has to happen on the main thread, but we can
  postpone further checks on the nsIFile instances.
- in the process, stop doing exists() calls on files because we can fail more
  lazily. This allows us to remove more allowlist entries from
  browser_startup_mainthreadio, though the `isDirectory` calls will actually
  still cause IO - they don't seem to create IO markers in the profiler.
  We will move this IO away from the main thread in subsequent commits.

Depends on D48328

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

--HG--
extra : moz-landing-system : lando
2019-11-02 22:33:42 +00:00
Gijs Kruitbosch abcf21a78b Bug 1545123 - store flash information in prefs instead of pluginreg, r=handyman
By storing the plugin information in prefs when only flash is allowed, we can
avoid reading pluginreg and doing a plugin scan on the mainthread on startup.

As part of this, we're now keeping track of the 'is flash allowed' pref on the
plugin host, and no longer write 'valid' plugin info into pluginreg if so.

Also note that in this commit, we're changing `mPluginRegFile` to actually
refer to the file, rather than the containing directory.

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

--HG--
extra : moz-landing-system : lando
2019-11-02 22:33:28 +00:00
Noemi Erli 853acdf360 Backed out 5 changesets (bug 1552176) for causing multiple build bustages CLOSED TREE
Backed out changeset 203060e4af95 (bug 1552176)
Backed out changeset b52f0ff800c8 (bug 1552176)
Backed out changeset 9f8d159fe252 (bug 1552176)
Backed out changeset 751b518e08fa (bug 1552176)
Backed out changeset a11ffd474c0c (bug 1552176)
2019-11-02 23:20:28 +02:00
Valentin Gosu 27377bc488 Bug 1552176 - pass TRRMode into nsHTMLDNSPrefetch methods r=dragana
Differential Revision: https://phabricator.services.mozilla.com/D49159

--HG--
extra : moz-landing-system : lando
2019-11-02 20:43:30 +00:00
Valentin Gosu 5528771952 Bug 1552176 - Add nsIRequest.set/getTRRMode r=dragana
* Makes it possible to selectively enable TRR for pbmode/container/window/etc

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

--HG--
extra : moz-landing-system : lando
2019-11-02 20:42:42 +00:00
Ciure Andrei fdfd0105e6 Backed out 5 changesets (bug 1545123) for causing nsPluginTags.cpp build bustages CLOSED TREE
Backed out changeset 91313cceae8c (bug 1545123)
Backed out changeset d91549e68229 (bug 1545123)
Backed out changeset 269d89e09fbb (bug 1545123)
Backed out changeset a139ee115519 (bug 1545123)
Backed out changeset eb454f238f45 (bug 1545123)
2019-11-02 14:00:38 +02:00
Gijs Kruitbosch dc78268f2e Bug 1545123 - move reading pluginreg and scanning for plugins to a background thread, r=handyman,mconley
Finally, let's move the actual IO away from the main thread.

This means there are now 3 ways of looking for plugins:
1. looking for changes from ReloadPlugins. This runs the PluginFinder runnable
   on the main thread.
2. loading plugins from LoadPlugins. This will:
   a) first check prefs and report the flash plugin based on that information,
      if the prefs indicate it exists (using the callback provided by
      nsPluginHost).
   b) then hopefully dispatch to a background thread, where it will read
      pluginreg.dat, scan the appropriate folders on disk, and see if
      anything changed. Once done, it sets mFinishedFinding to true and
      re-dispatches itself to the main thread.
   c) then on the main thread, it reports any changes to nsPluginHost.
3. if dispatching in 2(b) fails, we will run steps (b) and (c) on the main
   thread.

Note: if ReloadPlugins is called, we intiially do (1), but if we find
changes, we clear out the set of known plugins and then run LoadPlugins
again (meaning we go through 2 (or 3 if 2(b) fails)). This is how
reloading plugins worked prior to my changes and I've attempted not to
change it.

In order for this to work, there are some other changes in this commit:

- the sandbox prefs are being read "early" and cached for flash vs
  "everything else". We can't access prefs on non-main threads without
  using StaticPrefs, which doesn't seem worth it here.
- some of the plugin tag classes are moved to threadsafe refcounting.
  This is a bit unfortunate, but because they're instantiated on a non-
  mainthread, and then later used on the main thread, despite the
  fact that the architecture means nothing tries to touch them from
  more than one thread at once, without threadsafe refcounting we hit
  asserts in debug mode if we add references to them back on the main thread.
- we add shutdown blocking for pluginfinding. We don't really want to
  be halfway through finding plugins and then trying to shut them down,
  or re-instantiating plugins after they've been unloaded.
- we keep a reference to the "pending" pluginfinder instance while
  doing lookups away from the main thread (ie (2)), to avoid re-entrancy or
  trying to write to pluginreg while we're reading it somewhere else,
  etc. If there's an attempt to do more plugin finding while this is
  ongoing, we flip mDoReloadOnceFindingFinished and do a reload once
  our initial lookups are complete.

Depends on D48331

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

--HG--
extra : moz-landing-system : lando
2019-10-30 15:53:15 +00:00
Gijs Kruitbosch bbe3145c81 Bug 1545123 - move plugin finding into its own class to clarify dependencies and data flows, r=handyman
This moves plugin finding logic into a separate class (PluginFinder).

PluginFinder is a runnable. After this commit, there are two ways in which it
can be used:
1. to actually find and load plugins.
2. to check if there have been any changes to plugins.

Although it is a runnable, at this point we still invoke its Run method on the
main thread, so all that's happening is we're separating the "look for plugins
on disk" bits out from everything else.

The goal is to be able to run the IO-intensive FindPlugins (including reading
and writing pluginreg) away from the main thread.

Depends on D48330

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

--HG--
rename : dom/plugins/base/nsPluginHost.cpp => dom/plugins/base/PluginFinder.cpp
extra : moz-landing-system : lando
2019-10-29 05:30:30 +00:00
Gijs Kruitbosch 45bfe8c917 Bug 1545123 - remove obsolete things from nsPluginHost, r=handyman
Remove:
- a list of allowed mimetypes; we only support flash anyway.
- writing to disk when a plugin's enabled state changes; the plugin's enabled
  state is not kept on disk so there's no point.
- tracking which plugins should load in the parent as no plugins should do so
  if e10s is on.

Depends on D48329

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

--HG--
extra : moz-landing-system : lando
2019-10-29 05:30:30 +00:00
Gijs Kruitbosch c04f0a7345 Bug 1545123 - simplify how we get directory information for plugins, r=handyman,mconley
In this change we:
- stop treating the nsPluginDirServiceProvider as a directory provider, as its
  GetFile implementation was a no-op anyway - registering it didn't make any
  difference.
- stop treating it as a class entirely, because the PLID getters were already
  static, so instantiating it also didn't do anything.
- move IO from the plugin directory list provider and the Windows-only PLID
  getters into nsPluginHost. This enables us to move it off of the main thread
  later - the directory getting has to happen on the main thread, but we can
  postpone further checks on the nsIFile instances.
- in the process, stop doing exists() calls on files because we can fail more
  lazily. This allows us to remove more allowlist entries from
  browser_startup_mainthreadio, though the `isDirectory` calls will actually
  still cause IO - they don't seem to create IO markers in the profiler.
  We will move this IO away from the main thread in subsequent commits.

Depends on D48328

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

--HG--
extra : moz-landing-system : lando
2019-10-29 05:30:29 +00:00
Gijs Kruitbosch 14a99d0f73 Bug 1545123 - store flash information in prefs instead of pluginreg, r=handyman
By storing the plugin information in prefs when only flash is allowed, we can
avoid reading pluginreg and doing a plugin scan on the mainthread on startup.

As part of this, we're now keeping track of the 'is flash allowed' pref on the
plugin host, and no longer write 'valid' plugin info into pluginreg if so.

Also note that in this commit, we're changing `mPluginRegFile` to actually
refer to the file, rather than the containing directory.

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

--HG--
extra : moz-landing-system : lando
2019-10-29 05:30:29 +00:00
Nihanth Subramanya 2164478f1e Bug 1584479 - Part 1: Add flag for blocked social cookies in the content blocking log. r=Ehsan,droeh
Differential Revision: https://phabricator.services.mozilla.com/D47427

--HG--
extra : moz-landing-system : lando
2019-11-01 23:24:25 +00:00
Edgar Chen acd2114113 Bug 1580491 - Use Element::HasNonEmptyAttr in various places; r=bzbarsky
This was done by reviewing the results of
https://searchfox.org/mozilla-central/search?q=%2F*GetAttr%5C(.%2B(%26%26%7C%5C%7C%5C%7C)&case=true&regexp=true
one by one and replacing them with Element::HasNonEmptyAttr if possible.

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

--HG--
extra : moz-landing-system : lando
2019-11-01 15:24:25 +00:00
Edgar Chen 5301c9ad90 Bug 1580491 - Introduce Element::HasNonEmptyAttr; r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D51213

--HG--
extra : moz-landing-system : lando
2019-10-31 16:09:19 +00:00
Dorel Luca b9074d53a1 Backed out 4 changesets (bug 1584479) for Browser-chrome failures in toolkit/components/antitracking/test/browser/browser_socialtracking.js
Backed out changeset b0d9877bd8b0 (bug 1584479)
Backed out changeset d2c56bd61b08 (bug 1584479)
Backed out changeset 0edb22786545 (bug 1584479)
Backed out changeset 7e03b392edb3 (bug 1584479)
2019-11-02 01:18:42 +02:00
Nihanth Subramanya e7620d9a8c Bug 1584479 - Part 1: Add flag for blocked social cookies in the content blocking log. r=Ehsan,droeh
Differential Revision: https://phabricator.services.mozilla.com/D47427

--HG--
extra : moz-landing-system : lando
2019-11-01 21:02:09 +00:00
Ehsan Akhgari 03fa12d685 Bug 1593162 - Remove the expired telemetry probes added in bug 1127552; r=edgar
Differential Revision: https://phabricator.services.mozilla.com/D51335

--HG--
extra : moz-landing-system : lando
2019-11-01 13:43:15 +00:00
Johann Hofmann b1120d1abc Bug 1592959 - Warn about non-user interaction Notification requests. r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D51260

--HG--
extra : moz-landing-system : lando
2019-11-01 09:55:06 +00:00
Oana Pop Rus 3d0252d00b Backed out 2 changesets (bug 1589913) on request from bz on a CLOSED TREE
Backed out changeset e8ee20fdf6ac (bug 1589913)
Backed out changeset 12d046056948 (bug 1589913)
2019-11-01 17:32:59 +02:00
Daosheng Mu 681b4117d9 Bug 1592713 - Avoid to update VR HMD sensor states when pages are not in the presenting mode. r=kip
Differential Revision: https://phabricator.services.mozilla.com/D51288

--HG--
extra : moz-landing-system : lando
2019-10-31 22:10:43 +00:00
Nicholas Nethercote a518709339 Bug 1587162 - Fix UBSAN complaints about pref callbacks. r=erahm
Lots of these callbacks have a non-`void*` final parameter, which UBSAN
complains about. This commit changes them to have a `void*` parameter.

This requires undoing the machinery added in the first two commits of bug
1473631: `TypePrefChangeFunc` and `PREF_CHANGE_METHOD`. The resulting code is
simpler (which is good) and more boilerplate-y (which is bad) but avoids the
undefined behaviour (which is good).

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

--HG--
extra : moz-landing-system : lando
2019-11-01 02:57:20 +00:00
Tom Tung 892ba56d80 Bug 1562667 - P3 - Check remoteType in IsCrossOriginIsolated; r=nika
Differential Revision: https://phabricator.services.mozilla.com/D51083

--HG--
extra : moz-landing-system : lando
2019-11-01 08:30:41 +00:00
Boris Chiou d77411c397 Bug 1429305 - Enable OMTA for motion path and add some tests for it. r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D50015

--HG--
extra : moz-landing-system : lando
2019-10-31 21:16:35 +00:00
Tim Huang 68e7c55743 Bug 1590111 - Make the test 'test_bug346659.html' compatible with fission. r=bzbarsky
This patch makes several changes in order to enable it in Fission.

1. We modify the way how testing child window and iframe get the test
number. It used to get the test number through opener/parent. However,
the property of the opener/parent is inaccessible if it is cross site.
So, for load tests, we use url parameter to propagate the test number to
child window. For write tests, we directly write the test number in the
markup.

2. We change to use SpecialPowers.spawn() to access testing window since
they could be cross origin from the test script.

In addition, we add comments for better understanding the test script
itself.

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

--HG--
extra : moz-landing-system : lando
2019-10-31 16:19:05 +00:00
thomasmo f5d510754c Bug 1589913 - Update FxR Desktop default home page r=imanol,rbarker
Fix crash on Android

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

--HG--
extra : moz-landing-system : lando
2019-10-31 19:08:38 +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
Gabriele Svelto ca472002f8 Bug 1538200 - Kill the preallocated process when we're low on memory r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D50926

--HG--
extra : moz-landing-system : lando
2019-10-31 15:55:40 +00:00
Cosmin Sabou 05894c8cec Backed out changeset 36a8c8887629 (bug 1588220) for causing a spike in browser chrome failures (eg: Bug 1592741).
--HG--
extra : rebase_source : 5c6e4a7f59d9cdce866139699e2257ffd801d926
2019-10-31 14:53:40 +02:00
Paul Adenot f321d6becd Bug 1592915 - Fix three warnings in `VideoFrameConverter.h` and `TestVideoTrackEncoder.h`. r=pehrsons
This warns because an expression with a side effect is inside a `static_assert` or
`sizeof`.

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

--HG--
extra : moz-landing-system : lando
2019-10-31 12:12:19 +00:00
Jon Coppeard 902b013ad7 Bug 1592598 - Ensure CC selected zones are scheduled for GC r=sfink,mccr8
The problem is that a GC can be triggered in a number of ways, so scheduling zones in nsJSContext::GarbageCollectNow is not effective. This patch schedules these zones in the GC callback, which is always called at the start of GC. This means we have to change the internal logic slightly to allow the GC callback to schedule addional zones; previously this state was saved and restored before/after running the callback.

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

--HG--
extra : moz-landing-system : lando
2019-10-30 21:39:07 +00:00
Cosmin Sabou 038065f636 Backed out 6 changesets (bug 1591579) for causing crashes @mozilla::dom::ArrayBufferBuilder::GetArrayBuffer. CLOSED TREE
Backed out changeset 188e5fcabf09 (bug 1591579)
Backed out changeset 0b036738dcc8 (bug 1591579)
Backed out changeset f887657889ad (bug 1591579)
Backed out changeset 1f0a3434af2b (bug 1591579)
Backed out changeset 150606f7639b (bug 1591579)
Backed out changeset ca31ccb7a42a (bug 1591579)
2019-10-31 13:45:21 +02:00
Cosmin Sabou e40bc670f8 Backed out changeset 75ed11ced625 (bug 1592915) for gtest failures on VP8VideoTrackEncoder. 2019-10-31 13:38:56 +02:00
Emilio Cobos Álvarez 672ef887fb Bug 1592474 - Report a console warning when we disable scroll anchoring on a scroller. r=dholbert,flod
Depends on D51024

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

--HG--
extra : moz-landing-system : lando
2019-10-31 09:19:21 +00:00
Paul Adenot 2f1622bec4 Bug 1592915 - Fix three warnings in `VideoFrameConverter.h` and `TestVideoTrackEncoder.h`. r=pehrsons
This warns because an expression with a side effect is inside a `static_assert` or
`sizeof`.

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

--HG--
extra : moz-landing-system : lando
2019-10-31 10:50:51 +00:00
Andrea Marchesini dcd4fd8998 Bug 1591579 - XHR ArrayBufferBuilder needs to have a refcounted buffer handling, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D51088

--HG--
extra : moz-landing-system : lando
2019-10-31 10:28:10 +00:00
Andrea Marchesini af78dacf26 Bug 1591579 - Test for XHR on sharedWorkers, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50951

--HG--
extra : moz-landing-system : lando
2019-10-31 10:27:51 +00:00
Andrea Marchesini 8add24034e Bug 1591579 - XMLWorker takes data from XMLMainThread without calling GetResponse(), r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50921

--HG--
extra : moz-landing-system : lando
2019-10-31 10:27:33 +00:00
Andrea Marchesini cff9f77d8c Bug 1591579 - XHR-MainThread exposes a set of methods to retrieve response values for workers, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50920

--HG--
extra : moz-landing-system : lando
2019-10-31 10:27:11 +00:00
Andrea Marchesini d7261d6930 Bug 1591579 - XHR uses a ref-counted ArrayBufferBuilder, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50919

--HG--
extra : moz-landing-system : lando
2019-10-31 10:26:54 +00:00
Andrea Marchesini 1045168094 Bug 1591579 - XHR creates the Blob response only at the first GetResponse() call, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50918

--HG--
extra : moz-landing-system : lando
2019-10-31 10:26:41 +00:00
Alex Chronopoulos c0b57094e7 Bug 1592555 - Not allow adding a null receiver in the AudioMixer callback list. r=padenot
A null MixerCallbackReceiver in the AudioMixer callback list can create a crash when the AudioMixer::FinishMixing() is being called. Verify that the receiver is not null before adding it in the list.

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

--HG--
extra : moz-landing-system : lando
2019-10-31 10:01:53 +00:00
Eden Chuang bbec89c3ed Bug 1590320 - enable dom/workers/test/test_multi_sharedWorker.html for fission. r=perry
Could not reproduce the test fail locally and on tryserver.
Enable the mochitest dom/workers/test/test_multi_sharedWorker.html for fission

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

--HG--
extra : moz-landing-system : lando
2019-10-30 16:32:46 +00:00
Simon Giesecke 8e4f7b783e Bug 1586189 - Fix behaviour of ThirdPartyUtil::IsThirdPartyWindow with Fission. r=ttung,Ehsan,kmag
Differential Revision: https://phabricator.services.mozilla.com/D49157

--HG--
extra : moz-landing-system : lando
2019-10-31 08:31:39 +00:00
Christoph Kerschbaumer e8e2dc31b7 Bug 1584998: Make x-frame-options work with fission enabled. r=jkt,farre,johannh,flod
Differential Revision: https://phabricator.services.mozilla.com/D50588

--HG--
extra : moz-landing-system : lando
2019-10-31 08:28:35 +00:00
Edwin Takahashi c0f93ea425 Bug 1591641 - annotate select-load.html with fuzzy-if condition for Android r=gbrown
Changes:
- annotate select-load.html test with `fuzzy-if(Android)`

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

--HG--
extra : moz-landing-system : lando
2019-10-30 21:25: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
Michael Froman 9265bb9e98 Bug 1586293 - simplify thread passing after merging PVideoDecoderManager into PRemoteDecoderManager. r=karlt
Differential Revision: https://phabricator.services.mozilla.com/D49021

--HG--
extra : moz-landing-system : lando
2019-10-31 01:19:16 +00:00
Razvan Maries cdb80ead85 Backed out 6 changesets (bug 1561179) for perma fails on browser_timeout_throttling_with_audio_playback.js. CLOSED TREE
Backed out changeset 5d8059472045 (bug 1561179)
Backed out changeset 90c207dd2cc2 (bug 1561179)
Backed out changeset e90af73ef3c4 (bug 1561179)
Backed out changeset 4678da971197 (bug 1561179)
Backed out changeset 55340b999a4e (bug 1561179)
Backed out changeset 4037cce56491 (bug 1561179)
2019-10-31 03:21:24 +02: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
Dan Glastonbury 1d885fe71e Bug 1561179 - P6: Handle shutdown of the GPU process and reconnect PVideoBridge. r=mattwoodrow
Add an observer to restart the PVideoBridge connection when GPU process
restarts.

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

--HG--
extra : moz-landing-system : lando
2019-10-30 23:48:54 +00:00
Dan Glastonbury c1e3f71ce3 Bug 1561179 - P5: Remove separate VideoBridgeChild Singletons. r=mattwoodrow
Combine sVideoBridgeToParentProcess and sVideoBridgeToGPUProcess into one
sVideoBridge. Each producing process, GPU or RDD, is only ever started with one
VideoBridgeChild endpoint. This is enough to get RemoteVideoDecoders in RDD
process to start using GPU memory to send video to compositor over PVideoBridge.

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

--HG--
extra : moz-landing-system : lando
2019-10-30 23:48:33 +00:00
Dan Glastonbury 23be69d49c Bug 1561179 - P4: Create PVideoBridge between RDDProcess and GPUProcess. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D50401

--HG--
extra : moz-landing-system : lando
2019-10-30 23:48:31 +00:00
Dan Glastonbury 254756a1de Bug 1561179 - P3: Merge LaunchRDDProcess and CreateContentBridge. r=mattwoodrow
LaunchRDDProcess() and CreateContentBridge() create a sync creation. Merge the
functions into one function. Keep the IPDL messaging async to avoid adding a
exception for the message being sync.

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

--HG--
extra : moz-landing-system : lando
2019-10-30 23:48:29 +00:00
Dan Glastonbury 86ccdef1b0 Bug 1561179 - P2: Rename VideoBridge methods and members. r=mattwoodrow
To bring the naming more inline with ImageBridge.

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

--HG--
extra : moz-landing-system : lando
2019-10-30 23:48:27 +00:00
Dan Glastonbury a98be7dd62 Bug 1561179 - P1: Enable the creation of multiple VideoBridgeParent actors. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D50398

--HG--
extra : moz-landing-system : lando
2019-10-30 23:48:25 +00: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
Edgar Chen 5349686dad Bug 1587386 - Enable test_bug260264.html on Fission; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50593

--HG--
extra : moz-landing-system : lando
2019-10-25 15:37:13 +00:00
Edgar Chen f148c2aaae Bug 1587386 - Use "browsing-context-discarded" to ensure window is closed instead; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50592

--HG--
extra : moz-landing-system : lando
2019-10-25 22:08:11 +00:00
Dylan Roeh 195f623a27 Bug 1402369 - Add WebShare support to GeckoView. r=geckoview-reviewers,snorp,marcosc,esawin
Differential Revision: https://phabricator.services.mozilla.com/D49614

--HG--
extra : moz-landing-system : lando
2019-10-30 22:31:04 +00:00
Boris Zbarsky 3d248ab528 Bug 1592771. Add tests for round-tripping of various external strings through bindings. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D51180

--HG--
extra : moz-landing-system : lando
2019-10-30 22:09:15 +00:00
Kashav Madan faf9a2e212 Bug 1582531 - Update fission annotations for tests that fail cleanly, r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D50508

--HG--
extra : moz-landing-system : lando
2019-10-30 21:51:35 +00:00
Kashav Madan c39158719d Bug 1582531 - Update fission annotations for tests that pass, r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D50507

--HG--
extra : moz-landing-system : lando
2019-10-30 21:51:22 +00:00
Razvan Maries dc147d06b0 Backed out changeset 5f185a11889b (bug 1584998) for perma fails on browser_bug593387.js. CLOSED TREE 2019-10-30 23:26:01 +02:00
alwu 14e7d17262 Bug 1591620 - part2 : allow more customers to moniter media keys event by adding a listener to the event source. r=chunmin
Create methods to add or remove listener directly to the media control keys event source.

So if anyone has a need to monitor media control keys event, they can simply implement their own listener and use `MediaControlService::GetMediaControlKeysManager()` to add or remove a listener.

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

--HG--
extra : moz-landing-system : lando
2019-10-30 20:07:14 +00:00
alwu cc8de527f1 Bug 1591620 - part1 : make 'MediaControlKeysEventListener' as a pure interface. r=chunmin
If the web extention also needs to implement its listener, they would definitely not need the current implementation in `KeyPressed()` for controlling media controller. Therefore, we should make `MediaControlKeysEventListener` as a pure interface and let inherited class to define their own `KeyPressed()`.

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

--HG--
extra : moz-landing-system : lando
2019-10-30 09:52:04 +00:00
Christoph Kerschbaumer 36376205fb Bug 1584998: Make x-frame-options work with fission enabled. r=jkt,farre,johannh
Differential Revision: https://phabricator.services.mozilla.com/D50588

--HG--
extra : moz-landing-system : lando
2019-10-30 17:54:36 +00:00
Dorel Luca eb22687c25 Backed out 6 changesets (bug 1591579) for Mochitest failures in dom/html/test/test_formData.html. CLOSED TREE
Backed out changeset a6a3816ce90a (bug 1591579)
Backed out changeset e5dff8a0b369 (bug 1591579)
Backed out changeset 891a7037f2ac (bug 1591579)
Backed out changeset 1b33ca1c22a7 (bug 1591579)
Backed out changeset 97732c922fb5 (bug 1591579)
Backed out changeset 299bd59f790d (bug 1591579)
2019-10-30 19:45:49 +02:00
Daniel Varga 617d42c7ed Backed out changeset ac8f6632f7e0 (bug 1584998) on request by dev. On a CLOSED TREE 2019-10-30 19:33:29 +02:00
Perry Jiang 8ae16063a4 Bug 1592699 - Fix test_serviceworker_lifetime.html r=asuth
- Reset idle timeout when dispatching service worker operations even if the
worker is alive.
- Use MessageEvent instead of FetchEvent to avoid creating objects that leak
when the test finishes.

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

--HG--
extra : moz-landing-system : lando
2019-10-30 17:23:53 +00:00
Ehsan Akhgari 5b7ceaf11d Bug 1528115 - Remove support for the hidden private window; r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D51099

--HG--
extra : moz-landing-system : lando
2019-10-30 15:35:31 +00:00
Kris Maglione 00bef42aff Bug 1588220: Keep track of last active inner window when BrowsingContext is discarded. r=bzbarsky
Any number of outer windows may be attached to a BrowsingContext over its
lifetime. While the BrowsingContext is alive, it's easy to keep track of which
of these is active, and therefore which of its inner windows is active. After
it has been discarded, though, it discards its docShell reference, so all we
can tell about an inner window is whether it is active for its own outer
window, but not whether it should be considered active for its
BrowsingContext.

This patch updates the BrowsingContext detach logic to store a flag on the
current inner window recording that it was active when its BrowsingContext was
detached, and then later checks that flag to determine if it is the current
window for a detached BrowsingContext.

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

--HG--
extra : moz-landing-system : lando
2019-10-30 17:22:37 +00:00
Thomas Nguyen ac066415f5 Bug 1586684 - Rewrite test_navigate_to.html to pass when fission enable r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D51096

--HG--
extra : moz-landing-system : lando
2019-10-30 17:14:56 +00:00
Perry Jiang 58a1a3d132 Bug 1591101 - bookkeep orphaned registrations r=asuth
Keeping track of these registrations is needed for when
ServiceWorkerManager::MaybeStartShutdown is called for the first time. At this
point, all living service workers must register themselves with the
ServiceWorkerShutdownBlocker. Non-idle registrations that are unregistered and
not controlling clients would otherwise not be found in the SWM's data.

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

--HG--
extra : moz-landing-system : lando
2019-10-30 17:12:10 +00:00
Christoph Kerschbaumer 9c55479432 Bug 1584998: Make x-frame-options work with fission enabled. r=jkt,farre,johannh
Differential Revision: https://phabricator.services.mozilla.com/D50588

--HG--
extra : moz-landing-system : lando
2019-10-30 14:47:19 +00:00
Andrea Marchesini c04d9bed7b Bug 1591579 - XHR ArrayBufferBuilder needs to have a refcounted buffer handling, r=smaug
Depends on D50951

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

--HG--
extra : moz-landing-system : lando
2019-10-30 13:14:06 +00:00
Andrea Marchesini 47d34c08a9 Bug 1591579 - Test for XHR on sharedWorkers, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50951

--HG--
extra : moz-landing-system : lando
2019-10-30 16:52:54 +00:00
Andrea Marchesini cba4ddc3ea Bug 1591579 - XMLWorker takes data from XMLMainThread without calling GetResponse(), r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50921

--HG--
extra : moz-landing-system : lando
2019-10-30 16:52:54 +00:00
Andrea Marchesini e50f24a158 Bug 1591579 - XHR-MainThread exposes a set of methods to retrieve response values for workers, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50920

--HG--
extra : moz-landing-system : lando
2019-10-30 12:28:02 +00:00
Andrea Marchesini 4abdaf7d20 Bug 1591579 - XHR uses a ref-counted ArrayBufferBuilder, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50919

--HG--
extra : moz-landing-system : lando
2019-10-30 12:28:00 +00:00
Andrea Marchesini 805a76831a Bug 1591579 - XHR creates the Blob response only at the first GetResponse() call, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50918

--HG--
extra : moz-landing-system : lando
2019-10-30 12:27:58 +00:00
Simon Giesecke 1a9ec13557 Bug 1586189 - Re-implement waitForMessage based on waitForContentEvent; r=mccr8,janv
Differential Revision: https://phabricator.services.mozilla.com/D49752

--HG--
extra : moz-landing-system : lando
2019-10-30 15:26:25 +00:00
Boris Zbarsky 733a6ca66b Bug 1591514 part 2. Add assertions to FakeString that its mData is only initialized once and not used before initialization. r=mccr8
Also removes some unused API bits to make the number of entry points smaller
and safer.

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

--HG--
extra : moz-landing-system : lando
2019-10-29 19:02:42 +00:00
Boris Zbarsky 168fcede40 Bug 1591514 part 1. Change bindings to use actual literal strings for string constants. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D50692

--HG--
extra : moz-landing-system : lando
2019-10-29 00:26:28 +00:00
Boris Zbarsky 84e60db6d8 Bug 1591481 part 2. Don't force copying when external strings are passed to Web IDL bindings. r=mccr8
The codesize impact is approximately 0 (actually positive by a a few KB),
because AssignJSString is not inlined.

If we were to force-inline AssignJSString, that would actually _save_ ~115KB
based on bloaty measurements for linux64 shippable opt builds (so with LTO),
because then ConvertJSValueToString stops being inlined in bindings.
Given that ConvertJSValueToString pretty much always calls AssignJSString, so
there is no slowdown from changing which of them is inlined, this is _really_
tempting to do, but I don't want to mess with compiler inlining heuristics...
Inlining both AssignJSString and ConvertJSValueToString increases codesize by
~2MB, so that's definitely _not_ desirable.

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

--HG--
extra : moz-landing-system : lando
2019-10-30 15:52:22 +00:00
Boris Zbarsky 40d45356a8 Bug 1591481 part 1. Make NormalizeUSVString fallible. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D50691

--HG--
extra : moz-landing-system : lando
2019-10-29 00:24:10 +00:00
Tom Ritter 1d804e6a9a Bug 1584602 - Enforce eval restrictions in Workers and do not enforce restrictions in Release r=ckerschb
This commit does two things. Firstly it enforces eval restrictions in Workers per Bug 1584602.
We're collecting telemetry on these in Beta (and not seeing any) so we can let enforcement ride up to Beta.

Secondly, it disables enforcement checks on Release (and late Beta, as explained in the comment) until
we can gather data about what's happening in Release. This is a counterpart to Bug 1592349 for -central.

We have two separate commits because the first part of this is a change in the same code and we'd have
rebase problems if we tried to do them both separately.

This does tie enforcement to a build-time constant instead of leaving it as a pref. This doesn't make
me very happy inside, but I don't think the extra complexity is worth it...

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

--HG--
extra : moz-landing-system : lando
2019-10-30 15:21:57 +00:00
thomasmo d3ac95a94e Bug 1589913 - Update FxR Desktop default home page r=kip,daoshengmu
This change updates the home page to webxr.today for Firefox Realty on Desktop. Further, since WebVR is not supported yet, this change includes a way to disable WebVR specifically for FxR windows without impacting Desktop Fx.

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

--HG--
extra : moz-landing-system : lando
2019-10-30 13:54:49 +00:00
Gijs Kruitbosch c45937d4ec Bug 1322864, r=NeilDeakin
Differential Revision: https://phabricator.services.mozilla.com/D50927

--HG--
extra : moz-landing-system : lando
2019-10-30 13:32:07 +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
Tom Tung ad81303d2e Bug 1562667 - P1 - Refine isCrossOriginIsolated check and agentcluster check for postmessage; r=nika
This patch does:
- Rename CanShareMemory to IsCrossOriginIsolated
- Only check COOP and COEP on the serializing side
- Check if the caller AgentClusterId is same as target on the deserializng side

Note that this patch assumes that it's safe to not throw for the case that the
target window is navigated to another origin but in the same agent cluster while
the MessageEvent is in-flight.

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

--HG--
extra : moz-landing-system : lando
2019-10-30 11:01:42 +00:00
Christoph Kerschbaumer 3ae6cda13c Bug 1557712: Fix intermittent test failure for test_frameancestors_userpass.html. r=jkt
Differential Revision: https://phabricator.services.mozilla.com/D51071

--HG--
extra : moz-landing-system : lando
2019-10-30 10:24:00 +00:00
Daniel Varga 6a2fd20e5e Backed out 2 changesets (bug 1591620) for mochitest-a11y leak at mozilla::dom::MediaControlService::MediaControlService. On a CLOSED TREE
Backed out changeset 9896df4aa26f (bug 1591620)
Backed out changeset daf24c18766f (bug 1591620)
2019-10-30 11:46:01 +02: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
alwu 67f934d684 Bug 1591620 - part2 : allow more customers to moniter media keys event by adding a listener to the event source. r=chunmin
Create methods to add or remove listener directly to the media control keys event source.

So if anyone has a need to monitor media control keys event, they can simply implement their own listener and use `MediaControlService::GetMediaControlKeysManager()` to add or remove a listener.

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

--HG--
extra : moz-landing-system : lando
2019-10-30 00:50:44 +00:00
alwu e4099c0683 Bug 1591620 - part1 : make 'MediaControlKeysEventListener' as a pure interface. r=chunmin
If the web extention also needs to implement its listener, they would definitely not need the current implementation in `KeyPressed()` for controlling media controller. Therefore, we should make `MediaControlKeysEventListener` as a pure interface and let inherited class to define their own `KeyPressed()`.

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

--HG--
extra : moz-landing-system : lando
2019-10-29 23:46:36 +00:00
Jan Varga f745bd76f9 Bug 1578177 - Crash in [@ mozilla::dom::quota::QuotaManager::EnsureTemporaryStorageIsInitialized]; r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D50969

--HG--
extra : moz-landing-system : lando
2019-10-29 20:42:24 +00:00
Gijs Kruitbosch 8af91551b6 Bug 1585732 - use staticprefs for media.cubeb.sandbox, r=haik
Differential Revision: https://phabricator.services.mozilla.com/D50955

--HG--
extra : moz-landing-system : lando
2019-10-29 23:33:45 +00:00
alwu c092a45ba0 Bug 1591608 - part3 : follow the new naming rule for define guards. r=chunmin
Per [1], we should follow our coding style.

[1] https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Coding_Style#CC_practices

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

--HG--
extra : moz-landing-system : lando
2019-10-29 23:08:05 +00:00
alwu b251629f2f Bug 1591608 - part2 : rename files from 'MediaHardwareKeysXXX' to 'MediaControlKeysXXX'. r=chunmin
File's name should reflect what the class is inside the file.

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

--HG--
rename : dom/media/mediacontrol/MediaHardwareKeysEvent.cpp => dom/media/mediacontrol/MediaControlKeysEvent.cpp
rename : dom/media/mediacontrol/MediaHardwareKeysEvent.h => dom/media/mediacontrol/MediaControlKeysEvent.h
rename : dom/media/mediacontrol/MediaHardwareKeysManager.cpp => dom/media/mediacontrol/MediaControlKeysManager.cpp
rename : dom/media/mediacontrol/MediaHardwareKeysManager.h => dom/media/mediacontrol/MediaControlKeysManager.h
extra : moz-landing-system : lando
2019-10-29 23:05:59 +00:00
alwu f2f6bb1b22 Bug 1591608 - part1 : rename `MediaHardwareKeysXXX` to `MediaControlKeysXXX`. r=chunmin
The media control key events can come from either physical devices, such as a keyboard or a headset, or from virtual interface, such as SMTC-based visual controller on Windows or MPRIS-based visual controller on Linux.

Therefore, we would be better to rename all those MediaHardwareKeysXXX to MediaControlKeysXXX in order to represent a generic concept.

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

--HG--
extra : moz-landing-system : lando
2019-10-29 23:05:24 +00:00
Sean Feng 74eaf3ce20 Bug 1592083 - Convert certList to raw array for nsITransportSecurityInfo r=keeler,Ehsan,kershaw
This patch converts the certList attribute of nsITransportSecurityInfo
from nsIX509CertList to Array<nsIx509Cert>

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

--HG--
extra : moz-landing-system : lando
2019-10-29 17:20:07 +00:00
Bryce Seager van Dyk 398e5555d9 Bug 1592371 - QueryDosDeviceWHook returns size of lpTargetPath copy on success. r=bobowen
Prior to the patch we appear to be returning the size of lpDeviceName rather
than lpTargetPath.

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

--HG--
extra : moz-landing-system : lando
2019-10-29 19:31:19 +00:00
Tom Ritter d72a6eb2f3 Bug 1588816 - Remove userChrome.css case since XBL is dead in Nightly r=bgrins
Differential Revision: https://phabricator.services.mozilla.com/D50964

--HG--
extra : moz-landing-system : lando
2019-10-29 17:10:59 +00:00
Emma Malysz 5d8c10a424 Bug 1591588, remove ComputeIndexOf call and negative index check from within GetWholeText r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D50885

--HG--
extra : moz-landing-system : lando
2019-10-29 16:04:29 +00:00
Kashav Madan a19f86daf7 Bug 1578465 - Update fission annotations, r=kmag
Depends on D49003

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

--HG--
extra : moz-landing-system : lando
2019-10-29 16:23:35 +00:00
Boris Zbarsky d867da8312 Bug 1588194 part 2. Add missing property use counters to Window. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D49045

--HG--
extra : moz-landing-system : lando
2019-10-29 16:20:49 +00:00
Boris Zbarsky 89b4cac9a3 Bug 1588194 part 1. Factor out the missing property use counter code into helper functions. r=peterv
This incidentally reduces the codesize, while allowing us to call those
functions from elsewhere.  The performance impact of the extra out-of-line call
is not measurable (that is, is within the noise level) on the testcase at
<https://bugzilla.mozilla.org/attachment.cgi?id=9096814>.

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

--HG--
extra : moz-landing-system : lando
2019-10-29 16:18:44 +00:00
Oana Pop Rus b180595588 Bug 1447586 Disable test_broadcastchannel_close2.html on Android, Linux64 and Mac r=gbrown
Differential Revision: https://phabricator.services.mozilla.com/D50853

--HG--
extra : moz-landing-system : lando
2019-10-29 14:07:57 +00:00
Edgar Chen ab7587b94a Bug 1554965 - Input event should be composed; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50910

--HG--
extra : moz-landing-system : lando
2019-10-29 13:19:06 +00:00
Sylvestre Ledru 0b21c7eb2c Bug 1592226 - Only build 'AbortOrientationPromises' when MOZ_WIDGET_ANDROID is defined r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50912

--HG--
extra : moz-landing-system : lando
2019-10-29 13:08:37 +00:00
Rob Wu 69d003b435 Bug 1591924 - Fix test_notifications_permission.html on beta r=tnguyen
Differential Revision: https://phabricator.services.mozilla.com/D50835

--HG--
extra : moz-landing-system : lando
2019-10-29 08:33:30 +00:00
Andreas Pehrson 8724107690 Bug 1582637 - Fix devicechange mochitest failing sometimes only (!) and use it also with loopback devices. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D48522

--HG--
extra : moz-landing-system : lando
2019-10-29 13:02:11 +00:00
Andreas Pehrson 3c23c98ba2 Bug 1582637 - Remove pref to enable devicechange in mochitest since it's enabled by default. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D48521

--HG--
extra : moz-landing-system : lando
2019-10-29 13:02:04 +00:00
Andreas Pehrson 0edab59f76 Bug 1582637 - Fix minor devicechange mochitest issues. r=jib
This makes rejections reject with an Error so that stacks make sense on failure.
It also changes some `let` to `const` since they're never assigned to.

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

--HG--
extra : moz-landing-system : lando
2019-10-29 13:01:56 +00:00
Andreas Pehrson 0316bbe28b Bug 1582637 - Inline MediaDevices' FuzzTimer callback and invert coalescing logic. r=jib
If MediaDevices received recurring devicechange events from MediaManager, the
FuzzTimer would be restarted for each one, to coalesce them into the same js
event. If the internal events kept coming sooner than the fuzz timer timeout,
the fuzz timer would never fire.

This patch inverts the logic, so that the first scheduled fuzz timer fires, and
any intermediate internal events are ignored. After it has fired, a new internal
event triggers a new fuzz timer.

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

--HG--
extra : moz-landing-system : lando
2019-10-29 13:01:54 +00:00
Andreas Pehrson 6bf15a7fdf Bug 1582637 - Reduce devicechange fake event and test timeout times. r=jib
This allows the mochitest to finish several seconds faster.

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

--HG--
extra : moz-landing-system : lando
2019-10-29 13:01:47 +00:00
Andreas Pehrson b89a421cf4 Bug 1582637 - Move internal DeviceChange events to higher order functions. r=jib,achronop
This does three major things:
1) Moves the DeviceChange events from manual callbacks/listeners to
   MediaEventSource/MediaEventListener. This is the reason this patch is so
   large, as it traverses a lot of files.
   There are four layers (from low to high):
   - CamerasChild for camera device list changes, and CubebDeviceEnumerator for
     microphone and speaker device list changes
   - MediaEngineWebRTC, which gathers these into a single listener
   - MediaManager, which owns the MediaEngineWebRTC backend
   - MediaDevices, where the events from MediaManager are exposed to js
2) Changes the fake event triggering from starting a 30-event burst on setting
   the js event listener, to a toggle, so that while the pref is on the events
   keep coming.
3) Moves the fake event generation from CamerasChild to MediaEngineWebRTC, since
   that's the lowest level where we are aware of both video and audio events.
   The fake event generation is also greatly simplified. From being a dedicated
   thread with periodic runnables, it is now a periodic timer on main thread
   that fires while fake events are enabled. MediaEventProducer gracefully
   handles thread safety.

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

--HG--
extra : moz-landing-system : lando
2019-10-29 13:01:43 +00:00
Andreas Pehrson 94356644ac Bug 1582637 - Remove unnecessary MediaEngineWebRTC::mMutex. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D48515

--HG--
extra : moz-landing-system : lando
2019-10-29 13:01:36 +00:00
Andreas Pehrson 5e2a4e0c27 Bug 1582637 - Remove cameras:: from most of MediaEngineWebRTC.cpp. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D48514

--HG--
extra : moz-landing-system : lando
2019-10-29 13:01:30 +00:00
Andreas Pehrson dc248d36a8 Bug 1582637 - Inject an already-initialized media thread to the MediaManager ctor. r=jib
This lets us dispatch tasks already in the MediaManager ctor.

This also removes the last usage of nsAutoPtr from MediaManager.

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

--HG--
extra : moz-landing-system : lando
2019-10-29 13:01:26 +00:00
Andreas Pehrson 893ba9b643 Bug 1582637 - Ensure MediaManager::sSingleton usage is thread safe by guarding it with a mutex. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D48512

--HG--
extra : moz-landing-system : lando
2019-10-29 13:01:24 +00:00
Sylvestre Ledru 022582d728 Bug 1592230 - Remove unused variable 'gIDGenerator' r=edgar
Differential Revision: https://phabricator.services.mozilla.com/D50914

--HG--
extra : moz-landing-system : lando
2019-10-29 12:40:15 +00:00
Emilio Cobos Álvarez 630c46a466 Bug 1591297 - Fix/remove a couple sanitizer tests now that we don't parse -moz-binding. r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D50590

--HG--
extra : moz-landing-system : lando
2019-10-29 08:32:06 +00:00
Emilio Cobos Álvarez 4825f0f201 Bug 1591297 - Remove -moz-binding, nsStyleDisplay::mBinding and similar. r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D50556

--HG--
extra : moz-landing-system : lando
2019-10-26 11:37:33 +00:00
Emilio Cobos Álvarez cc80d088a2 Bug 1591968 - Put window.mozPaintCount behind a default-off pref. r=bzbarsky
It's not the kind of thing we want people to allow observing, generally, and
even less so the kind of thing that we may want people to rely on.

Move internal callers (all of them tests) to a new DOMWindowUtils.paintCount
method.

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

--HG--
extra : moz-landing-system : lando
2019-10-29 10:25:53 +00:00
Christoph Kerschbaumer 8f2c346f91 Bug 1557712: Fix intermittent test failure for test_frameancestors_userpass.html. r=jkt
Differential Revision: https://phabricator.services.mozilla.com/D50907

--HG--
extra : moz-landing-system : lando
2019-10-29 09:23:57 +00:00
Tim Huang f97686beae Bug 1591467 - Add a null check when accessing the actor of the browser host in nsFrameLoader::TryRemoteBrowserInternal(). r=smaug
In some cases, the actor of the browser host might be null. So, we need
to check before accessing it in order to avoid crashes.

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

--HG--
extra : moz-landing-system : lando
2019-10-29 01:21:43 +00:00
Brian Birtles e50dce95ba Bug 1590971 - Move getAnimations from Document to DocumentOrShadowRoot; r=emilio,baku
This updates the Gecko implementation to match the following change to
the Web Animations spec:

  792453b952 (diff-4c9f5c055fb219a7fcad23a9a7a80b64)

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

--HG--
rename : testing/web-platform/tests/web-animations/interfaces/Document/getAnimations.html => testing/web-platform/tests/web-animations/interfaces/DocumentOrShadowRoot/getAnimations.html
extra : moz-landing-system : lando
2019-10-29 07:13:22 +00:00
Ehsan Akhgari f69aaf72a7 Bug 1591803 - Part 1: Remove the dead code in NotificationTelemetryService; r=johannh
Differential Revision: https://phabricator.services.mozilla.com/D50752

--HG--
extra : moz-landing-system : lando
2019-10-29 01:56:23 +00:00
Arthur Iakab 9c93bb3a7a Backed out 2 changesets (bug 1591803) for causing build bustages on XULAlerts.cpp CLOSED TREE
Backed out changeset 7eff50262110 (bug 1591803)
Backed out changeset c0b6f37d24d2 (bug 1591803)
2019-10-29 03:37:07 +02:00
Ehsan Akhgari 214c8d96df Bug 1590922 follow-up: the parts that didn't land in the first landing
Differential Revision: https://phabricator.services.mozilla.com/D50889

--HG--
extra : moz-landing-system : lando
2019-10-29 01:12:28 +00:00
Ehsan Akhgari 6b1d1d6821 Bug 1591803 - Part 1: Remove the dead code in NotificationTelemetryService; r=johannh
Differential Revision: https://phabricator.services.mozilla.com/D50752

--HG--
extra : moz-landing-system : lando
2019-10-28 20:26:23 +00:00
Daosheng Mu e8e8cac6e0 Bug 1565268 - Part 2: Removing mDisplayName/Id from VRDisplay. r=kip
We can remove mDisplayName/Id and just use VRDisplayInfo to get these two values.

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

--HG--
extra : moz-landing-system : lando
2019-10-29 00:42:52 +00:00
Daosheng Mu 21480b57c1 Bug 1565268 - Recovering VRDisplay status after VRService is shutdown. r=kip,jgilbert
When JS is paused, VRService will automatically shutdown because the timer is not updated,
we used to create a new VRDisplay to JS. However, the page is still using the older VRDisplay,
so it can't get the newest VRDisplayInfo status. We should exit presentation and
apply the VRDisplayInfo status to the original VRDisplay instead of creating new one.

Besides, we also need to release the VR screen buffer after exiting the immersive mode to avoid eglMakeCurrent error.

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

--HG--
extra : moz-landing-system : lando
2019-10-29 00:35:35 +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 bbc03b9834 Bug 1214364 part 2. Remove the dead code around MethodNotNewObjectError. r=peterv
I don't know when we stopped raising them, but we did at some point.

I am leaving the capability to not generate a union's ToJSVal method, because I will need it soon.

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

--HG--
extra : moz-landing-system : lando
2019-10-23 18:04:30 +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
Emilio Cobos Álvarez 30240152f3 Bug 1591132 - Make it easy to switch on and off these assertions in different build configurations. r=froydnj
Put them behind a MOZ_HASH_TABLE_CHECKS_ENABLED define, which right now is only
defined in DEBUG builds, preserving behavior.

MakeImmutable becomes an empty inline function when disabled, which should be
zero-cost.

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

--HG--
extra : moz-landing-system : lando
2019-10-28 23:27:30 +00:00
Olli Pettay 574f798fb3 Bug 1586750, don't compile event handlers on unloaded windows r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D48983

--HG--
extra : moz-landing-system : lando
2019-10-28 21:08:50 +00:00
Alexander J. Vincent 4061cf92e2 Bug 1476659, remove invertSelection from mozilla-central, r=NeilDeakin
Differential Revision: https://phabricator.services.mozilla.com/D50407

--HG--
extra : moz-landing-system : lando
2019-10-28 20:58:38 +00:00
Kagami Sascha Rosylight 8ae1d6eba9 Bug 1591849 - Support [Pure] for stringifier attributes r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D50795

--HG--
extra : moz-landing-system : lando
2019-10-28 20:39:09 +00:00
Boris Zbarsky 033a03eb89 Bug 1591491. Add more use of FakeString::ShareOrDependUpon. r=froydnj
If someone then saves the resulting string, this will let us avoid a copy.

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

--HG--
extra : moz-landing-system : lando
2019-10-28 20:41:59 +00:00
Arthur Iakab 470c5a07f1 Backed out 2 changesets (bug 1591803) for causing build busatges on PermissionManager.idl. CLOSED TREE
Backed out changeset 060f159fa43d (bug 1591803)
Backed out changeset b53a3d8c408d (bug 1591803)
2019-10-28 22:12:01 +02:00
Ehsan Akhgari 0863c29589 Bug 1591803 - Part 1: Remove the dead code in NotificationTelemetryService; r=johannh
Differential Revision: https://phabricator.services.mozilla.com/D50752

--HG--
extra : moz-landing-system : lando
2019-10-28 14:10:09 +00:00
Emilio Cobos Álvarez ee8c3bb702 Bug 1591712 - Remove useless OwnerDoc() checks in MediaPlayackDelayPolicy. r=alwu
OwnerDoc() always return non-null.

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

--HG--
extra : moz-landing-system : lando
2019-10-28 17:29:08 +00:00
Andrew McCreight ab1d1edf7b Bug 1591447, part 3 - Fix some name shadowing. r=mconley
Eslint complains about this, so fix it.

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

--HG--
extra : moz-landing-system : lando
2019-10-28 16:58:27 +00:00
Andrew McCreight deeda66d4f Bug 1591447, part 2 - Remove some addContentEventListener arguments in browser_bug1058164.js that aren't needed. r=mconley
browser_bug1058164.js doesn't need the full generality, so trim it
down a bit.

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

--HG--
extra : moz-landing-system : lando
2019-10-28 16:58:25 +00:00
Andrew McCreight 4f574805d8 Bug 1591447, part 1 - Copy over and use BrowserTestUtils.addContentEventListener() in browser_bug1058164. r=mconley
browser_bug1058164 wants to test the behavior of event handling for
frame scripts using BrowserTestUtils.addContentEventListener(). In bug
1586393, I'm changing addContentEventListener() to not use frame
scripts, so this test will no longer be testing that. To work around
that, I'm making a copy of that method specific to the test.

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

--HG--
extra : moz-landing-system : lando
2019-10-28 16:58:17 +00:00
John Dai 3a77b15ccb Bug 1589027 - Fix object.tabIndex should return 0 by default; r=smaug
The spec change HTMLObjectElement tabIndex default to 0, but `test_object_plugin_nav.html` will fail due to HTMLObjectElement’s sequence focus and .focus() rely on default tabIndex. In this patch I separate the logic to not rely on default tabIndex for HTMLObjectElement's plugin type and align the spec.

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

--HG--
extra : moz-landing-system : lando
2019-10-28 15:50:59 +00:00
Masayuki Nakano a434f646f8 Bug 1577058 - part 2: Make `nsFrameSelection::CommonPageMove()` handle `nsFrameSelection::ScrollSelectionIntoView()` too r=smaug
Currently, `nsFrameSelection::CommonPageMove()` is called before every caller
calls `nsFrameSelection::ScrollSelectionIntoView()`.  However, when an editing
host has focus, the scroll target may be outside of it.  In such case, without
moving caret, user may want only to scroll the scrollable element.

Chrome behaves like so.  Chrome also can scroll outside scrollable element
of focused editing host.  However, it scrolls caret into view only when
caret is moved actually.  Therefore, it makes sense to follow this behavior.

This patch makes `nsFrameSelection::CommonPageMove()` also call
`nsFrameSelection::ScrollSelectionIntoView()`.  However, it newly takes
`SelectionIntoView` flag for making callers can choose the condition.  I.e.,
`ScrollSelectionIntoView()` should be called always, or only when selection
is actually changed, or shouldn't be called.

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

--HG--
extra : moz-landing-system : lando
2019-10-28 10:03:37 +00:00
Razvan Maries 5461b139a7 Backed out changeset e48111fd8ea2 (bug 1586189) as per Tom's request. CLOSED TREE 2019-10-28 16:17:46 +02:00
Mirko Brodesser dc1dc0f9f0 Bug 1587433: part 2) Correct some comments and declare some variables const. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50607

--HG--
extra : moz-landing-system : lando
2019-10-28 08:45:33 +00:00
Mirko Brodesser 3682e4b36b Bug 1587433: part 1) Slightly refactor `nsRange::CharacterDataChanged` in order to make it understanable. r=smaug
The method performed too many tasks. Now, some of the tasks are
abstracted away, simplifying reasoning about it.

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

--HG--
extra : moz-landing-system : lando
2019-10-28 08:44:29 +00:00
Simon Giesecke 38c02fb8ce Bug 1586189 - Re-implement waitForMessage based on waitForContentEvent. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D49752

--HG--
extra : moz-landing-system : lando
2019-10-18 17:53:15 +00:00
Ehsan Akhgari 17090782fb Bug 1590922 - Fix parsing the blocklist in nsContentUtils::IsURIInList(); r=baku
Differential Revision: https://phabricator.services.mozilla.com/D50549

--HG--
extra : moz-landing-system : lando
2019-10-28 10:57:24 +00:00
Edgar Chen f8c0061b8f Bug 1586772 - Enable test_bug907892.html on Fission; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50664

--HG--
extra : moz-landing-system : lando
2019-10-28 11:37:52 +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
Thomas Nguyen feddf115a9 Bug 1590321 - Rewrite browser_test_referrer_loadInOtherProcess.js to work with fission enabled r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D50570

--HG--
extra : moz-landing-system : lando
2019-10-28 09:44:30 +00:00
Rob Wu 57e66afc2a Bug 1589754 - Rename nsGlobalWindowInner::GetTopLevelPrincipal r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D50068

--HG--
extra : moz-landing-system : lando
2019-10-24 12:57:21 +00:00
Rob Wu 1884e2a75a Bug 1589754 - Fix permissions.query in top-level document r=tnguyen
Differential Revision: https://phabricator.services.mozilla.com/D50067

--HG--
extra : moz-landing-system : lando
2019-10-24 12:57:23 +00:00
Cosmin Sabou c55cda47e6 Bug 1336075 - Disable test on mac and windows debug due to frequent failures. r=gbrown
Differential Revision: https://phabricator.services.mozilla.com/D48590

--HG--
extra : moz-landing-system : lando
2019-10-24 14:28:55 +00:00
Cosmin Sabou 3c54e28fc8 Backed out 2 changesets (bug 1577058) for causing bug 1541915 to nearly permafail.
Backed out changeset c556c5228132 (bug 1577058)
Backed out changeset d00a7e091efd (bug 1577058)
2019-10-27 17:38:58 +02:00
Rob Wu 96a36aa07a Bug 1591114 - test_bug260264.html should await SpecialPowers.testPermission r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50488

--HG--
extra : moz-landing-system : lando
2019-10-24 16:42:51 +00:00
Rob Wu 34c77beb98 Bug 1591102 - Let some SpecialPowers.pushPermissions callers use promises r=jdm
Some callers of SpecialPowers.pushPermissions wrapped the call in a
promise. That is not needed; directly use the returned promise instead.

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

--HG--
extra : moz-landing-system : lando
2019-10-27 15:28:41 +00:00
Alex Henrie 74cc0f4dce Bug 1591490 - Use the NS_IS_SURROGATE_PAIR macro everywhere. r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D50697

--HG--
extra : moz-landing-system : lando
2019-10-27 05:05:51 +00:00
Masayuki Nakano 7a894386f2 Bug 1577058 - part 2: Make `nsFrameSelection::CommonPageMove()` handle `nsFrameSelection::ScrollSelectionIntoView()` too r=smaug
Currently, `nsFrameSelection::CommonPageMove()` is called before every caller
calls `nsFrameSelection::ScrollSelectionIntoView()`.  However, when an editing
host has focus, the scroll target may be outside of it.  In such case, without
moving caret, user may want only to scroll the scrollable element.

Chrome behaves like so.  Chrome also can scroll outside scrollable element
of focused editing host.  However, it scrolls caret into view only when
caret is moved actually.  Therefore, it makes sense to follow this behavior.

This patch makes `nsFrameSelection::CommonPageMove()` also call
`nsFrameSelection::ScrollSelectionIntoView()`.  However, it newly takes
`SelectionIntoView` flag for making callers can choose the condition.  I.e.,
`ScrollSelectionIntoView()` should be called always, or only when selection
is actually changed, or shouldn't be called.

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

--HG--
extra : moz-landing-system : lando
2019-10-27 01:44:55 +00:00
Brad Werth 4305c71244 Bug 1561227 Part 2: Define and fire an internal event when BrowserChild has finished resizing. r=botond,emilio
This event is useful for tests that resize the RDM pane and need to
know when all resolution adjusting effects are complete.

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

--HG--
extra : moz-landing-system : lando
2019-10-25 21:05:48 +00:00
Emilio Cobos Álvarez e444a94218 Bug 1589766 - Experiment with implementing zoom as a transform + transform-origin shorthand. r=xidorn
This is a gross hack, of course, but has the advantage of not breaking sites
that use both zoom and -moz-transform / -moz-transform-origin.

There should be no behavior change when the pref is off, of course, and the
webcompat team wanted to experiment with this.

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

--HG--
extra : moz-landing-system : lando
2019-10-26 14:17:28 +00:00
Jan Varga 8ea2bacbc6 Bug 1591394 - QM: Add more getters to DirectoryLock; r=ttung
Differential Revision: https://phabricator.services.mozilla.com/D50610

--HG--
extra : moz-landing-system : lando
2019-10-26 08:50:43 +00:00
Jeff Walden 3e64c882fe Bug 1591655 - Remove the unnecessary |proto| argument from |JS::NewPromiseObject| and its callers, seeing as all callers pass |nullptr| (and therefore uniformly request the default prototype). r=jandem,bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D50695

--HG--
extra : moz-landing-system : lando
2019-10-26 08:14:05 +00:00
Andre Natal b0b2bb1db1 Bug 1590368 - Fix for Permafailing build bustage on OnlineSpeechRecognitionService.cpp:220:12: error: variable 'rv' set but not used on Linux x64 opt when Gecko 72 merges to Beta on 2019-12-02 r=smaug
Permafailing build bustage on OnlineSpeechRecognitionService.cpp:220:12: error: variable 'rv' set but not used on Linux x64 opt when Gecko 72 merges to Beta on 2019-12-02

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

--HG--
extra : moz-landing-system : lando
2019-10-26 07:11:49 +00:00
Makoto Kato 67ecac7a24 Bug 1453190 - Don't get editing session during destroying docshell. r=masayuki
When closing window / documnet, if content modifies an element that has
contenteditable via unload event, it hits assertion in
`nsDocShell::EnsureEditorData` due to destroying document. So we should
return error before getting editing session.

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

--HG--
extra : moz-landing-system : lando
2019-10-25 10:23:31 +00:00
Karl Tomlinson c8963484d2 Bug 1591254 set WorkletNodeEngine input and output span lengths appropriately for zero inputs and outputs r=padenot
AudioNodeTrack::ProcessInput() uses ProcessBlock() when input and output
counts are <= 1.

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

--HG--
extra : moz-landing-system : lando
2019-10-25 12:57:46 +00:00
Brian Grinstead ec30cc58df Bug 1587142 - Remove most XBL tests in dom/ r=bzbarsky
The following tests are not removed and need to be ported to Shadow DOM:
- test_bug330925.xhtml
- test_bug372086.html
- test_bug319374.xhtml

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

--HG--
extra : moz-landing-system : lando
2019-10-25 22:38:08 +00:00
Brendan Dahl b774381431 Bug 1590044 - Fix root HTML element attribute persistence. r=smaug
Attribute persistence for root elements should be handled by nsXULWindow,
not XULPersist. This was causing browser.xhtml with an <html> root to be
slightly smaller on each new window during the test
"open-features-non-integer-height.html."

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

--HG--
extra : moz-landing-system : lando
2019-10-25 20:14:25 +00:00
Edwin Takahashi a5bb04283f Bug 1591257 - remove skiaContent fuzzy condition from dom/html/reftests/autofocus/reftest.list r=gbrown
Changes:
- remove skiaContent from `dom/html/reftests/autofocus/reftest.list`

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

--HG--
extra : moz-landing-system : lando
2019-10-25 20:19:41 +00:00
Ciure Andrei 706c89437b Backed out 8 changesets (bug 1561227) for causing browser_viewport_resizing_scrollbar.js to permafail CLOSED TREE
Backed out changeset aa00b1b62ea7 (bug 1561227)
Backed out changeset b22440a67078 (bug 1561227)
Backed out changeset 4776cec83ae8 (bug 1561227)
Backed out changeset ac88bbefb95f (bug 1561227)
Backed out changeset aef3cfa2f539 (bug 1561227)
Backed out changeset a3759e1a04e2 (bug 1561227)
Backed out changeset cfcf79794049 (bug 1561227)
Backed out changeset 97be65338edf (bug 1561227)

--HG--
rename : devtools/client/responsive/test/browser/browser_viewport_zoom_toggle.js => devtools/client/responsive/test/browser/browser_toggle_zoom.js
2019-10-26 00:00:48 +03:00
Brad Werth 5007e7e93c Bug 1561227 Part 2: Define and fire an internal event when BrowserChild has finished resizing. r=botond,emilio
This event is useful for tests that resize the RDM pane and need to
know when all resolution adjusting effects are complete.

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

--HG--
extra : moz-landing-system : lando
2019-10-24 23:42:52 +00:00
kriswright 10581910fe Bug 1591226 - Convert network.http.referer.defaultPolicy.* to static prefs r=njn
Converts network.http.referer.defaultPolicy, network.http.referer.defaultPolicy.trackers, network.http.referer.defaultPolicy.pbmode, and network.http.referer.defaultPolicy.trackers.pbmode to static prefs and updates the uses of their old mirror values.

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

--HG--
extra : moz-landing-system : lando
2019-10-25 19:13:19 +00:00
kriswright 87eaba1b18 Bug 1591226 - Convert network.http.referer.XOriginTrimmingPolicy to static pref. r=njn
Converts network.http.referer.XOriginTrimmingPolicy to a static pref. Leverages do_not_use_directly and a getter to clamp the pref value.

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

--HG--
extra : moz-landing-system : lando
2019-10-25 04:55:12 +00:00
kriswright 22476a1d9e Bug 1591226 - Convert network.http.referer.trimmingPolicy to static pref. r=njn
Converts network.http.referer.trimmingPolicy and leverages do_not_use_directly with a getter to clamp the value.

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

--HG--
extra : moz-landing-system : lando
2019-10-25 04:53:08 +00:00
kriswright 45ce89e55d Bug 1591226 - Convert network.http.referer.XOriginPolicy to static pref. r=njn
Converts network.http.referer.XOriginPolicy to a static pref and leverages 'do_not_use_directly' and a getter in order to clamp the value.

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

--HG--
extra : moz-landing-system : lando
2019-10-25 04:52:05 +00:00