Commit Graph

35214 Commits

Author SHA1 Message Date
Andrew Osmond
7243a387ca Bug 1575258 - Make text rasterize, render and snap glyphs consistently. r=lsalzman
The glyph pixel space in which we rasterized glyphs differed from how we
rendered the rasterized glyphs in the shader. They need to be in
agreement because the glyph subpixel offset selected during
rasterization depends on it. This patch should make the paths consistent
with each other.

Additionally, during animations, we now snap the reference frame
relative offset ignoring the impact of any animated transforms. This
helps with minimizing glyph wiggling during the transition.

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

--HG--
extra : moz-landing-system : lando
2019-11-06 12:17:43 +00:00
Nicolas Silva
598b3a60a9 Bug 1594091 - Rename the instance user_data field into specific_resource_address. r=gw
This user_data field is currently only used as an address for some shader-specific resource in the gpu cache. We can always rename it back to something generic if we ever need to use the bits differently in other shaders in the future.

Depends on D51884

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

--HG--
extra : moz-landing-system : lando
2019-11-05 19:06:48 +00:00
Nicolas Silva
9393a43660 Bug 1594091 - Unify text and brush instance attribute decoding. r=gw
Depends on D51883

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

--HG--
extra : moz-landing-system : lando
2019-11-05 19:06:20 +00:00
Nicolas Silva
eff2972112 Bug 1594091 - Move clip_task_address to the second half of the glyph instance y field. r=gw
Depends on D51882

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

--HG--
extra : moz-landing-system : lando
2019-11-05 19:05:42 +00:00
Nicolas Silva
04523447d2 Bug 1594091 - Move glyph_index to the second half of the glyph instance z field. r=gw
Depends on D51880

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

--HG--
extra : moz-landing-system : lando
2019-11-05 19:05:25 +00:00
Nicolas Silva
d647d338f9 Bug 1594091 - Move color_mode and subpx_dir to the first half of the glyph instance z field. r=gw
Depends on D51879

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

--HG--
extra : moz-landing-system : lando
2019-11-05 19:05:00 +00:00
Nicolas Silva
58b5d88173 Bug 1594091 - Move user_data to the glyph instance w field. r=gw
First patch in of series that will rearrange the layout of the glyph instance attributes so that it matches brush instances.
This will be needed to add a unified shader that can render the most common alpha pass primitives, including text.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 19:04:54 +00:00
Brindusan Cristian
9a4043957e Backed out changeset c3813936e074 (bug 1589913) for mochitest assertion failures at nsGlobalWindowInner.cpp. CLOSED TREE 2019-11-06 02:42:43 +02:00
thomasmo
3ebc22a35d Bug 1589913 - Update FxR Desktop default home page r=kip,bzbarsky
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/D51426

--HG--
extra : moz-landing-system : lando
2019-11-05 22:45:38 +00:00
Glenn Watson
780c7f0f16 Bug 1593901 - Support debug / profiler overlays in native compositor mode. r=nical
Differential Revision: https://phabricator.services.mozilla.com/D51753

--HG--
extra : moz-landing-system : lando
2019-11-05 22:57:22 +00:00
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
Markus Stange
c0cdef1454 Bug 1592739 - Stop using the vibrant region as the transparent region. r=mattwoodrow
This code was assuming that the only non-opaque parts of compositor rendering would be the
parts of the window that had vibrancy. But now that the default window background is transparent,
we can have non-vibrant parts where we render into transparency. Dialog windows such as sheet
windows are an example of this.
So instead of using the non-vibrant region of the window as its opaque region, we now use
the region that is covered by opaque Gecko layers. This region is a lot more conservative:
For example, the main browser chrome is now entirely transparent, because the chrome's opaque
parts share a layer with its transparent parts.
As a result, this change slightly affects the CALayer partitioning in the main browser window:
The entire browser chrome is now transparent, not just the tab bar.
The web content area is still opaque.

I think this will be fine. The thing I'm most concerned about is that scrolling inside web
content might cause invalidations of pixels from the chrome, because then we'd recomposite
the CALayers that cover the vibrant tab bar. This doesn't seem to happen most of the time
though, from what I can tell.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 19:04:14 +00:00
Markus Stange
80992e260c Bug 1592739 - Stop clearing the background behind vibrant -moz-appearance items. r=mattwoodrow
Now that there is no Gecko-contributed background color in the window any more,
there's nothing that needs to be cleared away. This simplifies things.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 18:48:29 +00:00
Markus Stange
e8d0a3ca81 Bug 1593325 - Use NextSurfaceAsDrawTarget in nsChildView. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D50876

--HG--
extra : moz-landing-system : lando
2019-11-05 18:59:36 +00:00
Miko Mynttinen
9b72daa6e2 Bug 1554499 - Store WebRenderAnimationData using display item type as key r=jrmuizel
Depends on D50186

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

--HG--
extra : moz-landing-system : lando
2019-11-05 15:10:40 +00:00
Nicolas Silva
3e4e9cbc17 Bug 1568600 - Disable sub-px aa in WebRender if dual-source-blending is unavailable. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D42303

--HG--
extra : moz-landing-system : lando
2019-11-05 14:39:37 +00:00
Cosmin Sabou
ac35928c0f Backed out changeset 4c4b65f3e7fb (bug 1575258) for causing wrench bustages. CLOSED TREE
--HG--
extra : rebase_source : b27ff2fc38aa0fb3d83aa3841ff92e5f1916a4c0
2019-11-05 15:54:39 +02:00
sotaro
85db2de6eb Bug 1593903 - Change RenderCompositor::SurfaceIsYFlipped() to SurfaceOriginIsTopLeft() r=gw
Differential Revision: https://phabricator.services.mozilla.com/D51776

--HG--
extra : moz-landing-system : lando
2019-11-05 11:02:40 +00:00
Andrew Osmond
19674dcc8a Bug 1575258 - Make text rasterize, render and snap glyphs consistently. r=lsalzman
The glyph pixel space in which we rasterized glyphs differed from how we
rendered the rasterized glyphs in the shader. They need to be in
agreement because the glyph subpixel offset selected during
rasterization depends on it. This patch should make the paths consistent
with each other.

Additionally, during animations, we now snap the reference frame
relative offset ignoring the impact of any animated transforms. This
helps with minimizing glyph wiggling during the transition.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 11:58:01 +00:00
sotaro
b9dc0622aa Bug 1593383 - Force full rendering to external target r=nical,gw
LayerManagerComposite and LayerManagerMLGPU do full rendering for taking a snapshot. Then WR also does  full rendering for taking a snapshot.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 09:06:59 +00:00
sotaro
4260baaf8f Bug 1593319 - Set aFboId in DCLayerTree::Bind() r=gw,nical
EGLSurface could be bound only to framebuffer-zero.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 09:07:11 +00:00
Nicolas Silva
76c3d8c060 Bug 1593691 - Update comment about dual-source blending in text rendering doc. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D51622

--HG--
extra : moz-landing-system : lando
2019-11-04 14:53:59 +00:00
Glenn Watson
7613f6442d Bug 1591758 - Fix dirty rects for OS compositors without partial updates. r=nical
Differential Revision: https://phabricator.services.mozilla.com/D51773

--HG--
extra : moz-landing-system : lando
2019-11-05 08:43:10 +00:00
Nicolas Silva
4a8849bcc4 Bug 1587713 - Don't limit the number of rasterized blob tiles per transaction. r=jrmuizel
If this change lands without making waves, a lot of complicated blob infrastructure will be removed as a followup.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 14:55:40 +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
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
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
thomasmo
6b9384e37b Bug 1593361 - Define UNICODE in vrhost to support sending UTF16 character input r=kip
This change defines UNICODE for building vrhost so that wide chars can be sent from vrhost to Firefox.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 00:25:59 +00:00
Ciure Andrei
cd37b41655 Backed out changeset 27940bb91591 (bug 1593361) for causing build bustages CLOSED TREE 2019-11-05 01:03:19 +02:00
thomasmo
dda2b5209a Bug 1593361 - Define UNICODE in vrhost to support sending UTF16 character input r=kip
This change defines UNICODE for building vrhost so that wide chars can be sent from vrhost to Firefox.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 22:17:57 +00:00
Glenn Watson
005d8ccd27 Bug 1591580 - Support picture caching for parent process content. r=kvark
For content that comes from the parent process (e.g. about:support)
the shape of the display list is slightly different. In these cases
ensure that we setup picture caching slice markers on the root
stacking context.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 19:33:24 +00:00
Glenn Watson
56dcacf7f8 Bug 1591526 - Use occlusion culling to reduce number of picture cache tiles. r=nical
During the visibility pass, picture caches register themselves as
occluders, if they have a valid opaque region.

During the primitive preparation pass, each tile queries if it is
occluded. If so, it skips rasterization and compositing of itself
for this frame. In this way, tiles that are always occluded never
end up allocating GPU memory for a surface.

Also add support during primitive dependency generation for opaque
images to be considered as part of the opaque backdrop region.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 19:27:52 +00:00
Bob Owen
32869c5f76 Bug 1589718: Add a RenderedFrameId to RenderCompositor and use it to control release of textures. r=sotaro
This replaces mUpdatesCount in AsyncImagePipelineManager, which was really how
many times NotifyPipelinesUpdated was called with aRender == true. I think this
makes the release logic clearer as it is more explicit.
It also changes things for RenderCompositorANGLE, so that we check to see if
any other frames have completed even if we don't want to wait for them.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 16:15:20 +00:00
Bob Owen
a92e772fe9 Bug 1590619: Only clean up Remote Canvas IPC classes when the CanvasChild owns the only recorder reference. r=jrmuizel
This also removes the DrawEventRecorderPrivate::IsEmpty method as it is no
longer used. It doesn't undo the splitting out of the tracking of the
UnscaledFonts, which was added at the same time, because I think it is useful
to highlight the fact that they are never currently removed.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 14:15:22 +00:00
Nicolas Silva
cf9c5e0706 Bug 1584101 - Temporarily disable resource cache leak checks. r=jrmuizel
Bug 1593013 was filed to reenable them.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 14:11:22 +00:00
Jeff Muizelaar
ce81d707e0 Bug 1593094. Add glyph flashing pref. r=kvark
This makes it easier to debug glyph rasterization issues

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

--HG--
extra : moz-landing-system : lando
2019-11-04 14:03:57 +00:00
Glenn Watson
3300072e99 Bug 1591529 - Reduce OS compositor tiles sizes to save GPU memory. r=kvark
(1) Reduce size of content tiles from 2048 x 512 to 1024 x 512.

  This reduces the large extra overhead of tiles on screens that
  are not 4k resolution.

(2) Remove small 128 x 128 tiles.

  These typically create a lot of OS compositor surfaces, which
  adds significant overhead on some platforms. Having them be
  normal content tiles also means no resizing of the picture
  cache for the UI when the awesome bar and/or status bar is on.

(3) Add support for very narrow cache surfaces.

  This is a special use case for scrollbar caches. It's worth
  supporting this special case for the significant memory and
  performance savings for these surfaces.

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

--HG--
extra : moz-landing-system : lando
2019-11-04 05:53:31 +00:00
Andreea Pavel
0d0fd1b7e8 Backed out changeset 3a6ca30f318e (bug 1593094) for wrench bustages on a CLOSED TREE 2019-11-04 05:51:33 +02: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
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
Jeff Muizelaar
42e881bed5 Bug 1593094. Add glyph flashing pref. r=kvark
This makes it easier to debug glyph rasterization issues

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

--HG--
extra : moz-landing-system : lando
2019-11-01 15:41:49 +00:00
sotaro
34a65d16bb Bug 1575159 - Implement partial invalidation on Windows r=gw
Partial present for WR is off by default.

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

--HG--
extra : moz-landing-system : lando
2019-11-03 10:57:03 +00:00
Glenn Watson
3de743de9b Bug 1592417 - Reduce work done when picture cache tiles are inside the display port but not currently visible. r=nical
Previously, WR needed to update and track dependencies for all
allocated picture cache tiles in the virtual display port. This
means doing extra CPU work (dependency updates) and in some cases,
extra GPU work (larger off-screen child surfaces) than are strictly
required.

With this patch, each tile determines if it is currently visible in
pre_update. If the tile isn't visible, we skip doing dependency
updates until it is on screen again. More importantly, this is
used to reduce the world culling rect for primitive preparation,
which also means large child surfaces only require allocations
large enough to enclose the visible tiles, rather than the
display port.

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

--HG--
extra : moz-landing-system : lando
2019-11-03 03:38:57 +00:00
Botond Ballo
e8e4a8641f Bug 1586496 - Add a gtest. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D51480

--HG--
extra : moz-landing-system : lando
2019-11-01 23:00:42 +00:00