Commit Graph

43574 Commits

Author SHA1 Message Date
Andrew Osmond
3368585195 Bug 1779570. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D151857
2022-07-14 20:17:10 +00:00
Andrew Osmond
a9049b5248 Bug 1779519 - gfxFontCache expiration tracker operations should be more atomic. r=jfkthame
gfxFontCache acquires and releases its mutex during various operations.
In order to keep the state internally consistent, we should only release
the lock after the full operation is complete. This involves moving the
deletion of gfxFont to outside the lock via a temporary discard array.

The expiration state should not be protected by the gfxFont's mutex
since we don't hold it during most operations. Instead we should hold
gfxFontCache's mutex because then we can guarantee the operation is
atomic, particularly when a worker wants a font, and the main thread is
aging the generations.

When a font is returned from gfxFontCache, we now return it already
removed from the tracker, and with its refcount updated. This avoids any
potential races between the expiration timer and a worker accessing the
font, as well as simplying the callers so they don't need to be aware of
addref-ing manually in case the result is to be discarded (so that it
gets readded to the tracker).

Differential Revision: https://phabricator.services.mozilla.com/D151821
2022-07-14 19:53:09 +00:00
criss
ba063e13c6 Backed out changeset e4cd98b5984d (bug 1779519) for causing build bustages. CLOSED TREE 2022-07-14 22:06:53 +03:00
Botond Ballo
5a6eae75b5 Bug 1771822 - Remove the layers.low-precision-{buffer,resolution} prefs. r=tnikkel
These are no longer used.

Depends on D151796

Differential Revision: https://phabricator.services.mozilla.com/D151797
2022-07-14 18:39:33 +00:00
Botond Ballo
10724a7eb3 Bug 1771822 - Remove the apz.minimap.enabled pref. r=tnikkel
It's currently unused.

Depends on D151795

Differential Revision: https://phabricator.services.mozilla.com/D151796
2022-07-14 18:39:33 +00:00
Botond Ballo
d02f2b9038 Bug 1771822 - Do not explicitly set some other prefs, which are now always enabled, in tests. r=tnikkel
The prefs handled in this patch are:

apz.paint_skipping.enabled
apz.force_disable_desktop_zooming_scrollbars
apz.mac.enable_double_tap_zoom_touchpad_gesture
dom.event.default_to_passive_touch_listeners
dom.visualviewport.enabled (one use left over)

Differential Revision: https://phabricator.services.mozilla.com/D151795
2022-07-14 18:39:32 +00:00
Andrew Osmond
9f767ee84a Bug 1779519 - gfxFontCache expiration tracker operations should be more atomic. r=jfkthame
gfxFontCache acquires and releases its mutex during various operations.
In order to keep the state internally consistent, we should only release
the lock after the full operation is complete. This involves moving the
deletion of gfxFont to outside the lock via a temporary discard array.

The expiration state should not be protected by the gfxFont's mutex
since we don't hold it during most operations. Instead we should hold
gfxFontCache's mutex because then we can guarantee the operation is
atomic, particularly when a worker wants a font, and the main thread is
aging the generations.

When a font is returned from gfxFontCache, we now return it already
removed from the tracker, and with its refcount updated. This avoids any
potential races between the expiration timer and a worker accessing the
font, as well as simplying the callers so they don't need to be aware of
addref-ing manually in case the result is to be discarded (so that it
gets readded to the tracker).

Differential Revision: https://phabricator.services.mozilla.com/D151821
2022-07-14 18:35:49 +00:00
Kagami Sascha Rosylight
5c5782d0ee Bug 1769290 - Part 14: Apply mozilla-js-handle-rooted-typedef against gfx r=andi
Differential Revision: https://phabricator.services.mozilla.com/D151781
2022-07-14 17:00:20 +00:00
Travis Long
2855beea72 Bug 1772132 - Update Glean and remove cargo metadata replacement. r=janerik,supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D151499
2022-07-14 13:11:13 +00:00
Andi-Bogdan Postelnicu
72ba7fb691 Bug 1519636 - Reformat recent changes to the Google coding style. r=media-playback-reviewers,alwu
Updated with clang-format version 14.0.5 (taskcluster-cAkeFEZXQmihHYDO8Y4hRw)
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D151003
2022-07-14 08:10:07 +00:00
Bogdan Szekely
79c89f90f4 Backed out 4 changesets (bug 1774537) for causing mochitest failures on test_group_wheelevents.html CLOSED TREE
Backed out changeset 8a52eb5b9043 (bug 1774537)
Backed out changeset 5fb8ccdcbfea (bug 1774537)
Backed out changeset 44f1a68c16f4 (bug 1774537)
Backed out changeset 1f32db09b9a8 (bug 1774537)
2022-07-14 10:23:31 +03:00
Jim Blandy
89c88d35e8 Bug 1778767: Define MozClearPointer, a type-safe replacement for g_clear_pointer. r=stransky,jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D151410
2022-07-14 04:28:34 +00:00
Hiroyuki Ikezoe
251e2e49ef Bug 1774537 - Skip re-snapping if there's any async scroll is running. r=botond
Depends on D149497

Differential Revision: https://phabricator.services.mozilla.com/D150929
2022-07-14 02:19:12 +00:00
Hiroyuki Ikezoe
b300a9f04f Bug 1774537 - Propagate snap target ids for async scroll operations triggered on the main-thread, but will be processed in APZ. r=botond
Ideally we can write a wpt for this case, but it doesn't work due to
bug 1674687 and ClampAndAlignWithPixels [1] in our code. In the wpt we can use
waitForScrollTo [2] to wait for the end of an async scroll operation, say
a scrollBy call with `behavior: smooth`, at some point where it's close to the
final scroll destination APZ reports a fractional scroll offset close to the
destination, it will be clamped and rounded to the final destination value, thus
waitForScrollTo considers it reached to the end of the scroll operation. At the
moment APZ considers the async scroll is still in progress, which mean the snap
target ids haven't yet been reported to back the main-thread unfortunately.

[1] https://searchfox.org/mozilla-central/rev/170f06a720ddabee44c728b05ad30b18b066acca/layout/generic/nsGfxScrollFrame.cpp#2847
[2] https://searchfox.org/mozilla-central/rev/170f06a720ddabee44c728b05ad30b18b066acca/testing/web-platform/tests/css/css-scroll-snap/support/common.js#84

Depends on D149496

Differential Revision: https://phabricator.services.mozilla.com/D149497
2022-07-14 02:19:12 +00:00
Hiroyuki Ikezoe
802ddc1ef6 Bug 1774537 - Propagate last snap target id(s) from APZ to the content. r=botond
Depends on D149495

Differential Revision: https://phabricator.services.mozilla.com/D149496
2022-07-14 02:19:11 +00:00
Hiroyuki Ikezoe
52a1e4ddb2 Bug 1774537 - Call SetState with WEEL_SCROLL or KEYBOARD_SCROLL in the case of instant scoll. r=botond
It will ensure an APZ:TransformEnd notification.

Differential Revision: https://phabricator.services.mozilla.com/D149495
2022-07-14 02:19:11 +00:00
Norisz Fay
82c8f892b0 Backed out 8 changesets (bug 1754239, bug 1766308, bug 1766307, bug 1766310) for causing build bustages on UtilityAudioDecoderParent.cpp CLOSED TREE
Backed out changeset e383703e28cf (bug 1766307)
Backed out changeset 5fb04c68ae7a (bug 1766307)
Backed out changeset ee76505a46ff (bug 1766310)
Backed out changeset d76eae67ae79 (bug 1754239)
Backed out changeset fed974dcf641 (bug 1754239)
Backed out changeset 67c5fbd546a1 (bug 1766307)
Backed out changeset da49735366d2 (bug 1766308)
Backed out changeset 81ccd31d0f07 (bug 1766307)
2022-07-14 04:03:19 +03:00
az
4e1baacec1 Bug 1766308 - Add gfxVars::CodecSupportInfo to store user-readable codec support string r=media-playback-reviewers,alwu
Differential Revision: https://phabricator.services.mozilla.com/D147386
2022-07-14 00:32:37 +00:00
az
9eeb816180 Bug 1766307 - Enable PDMFactory::Supports/SupportsMimeType to process+return HW/SW decode info r=media-playback-reviewers,alwu
Differential Revision: https://phabricator.services.mozilla.com/D147385
2022-07-14 00:32:37 +00:00
Narcis Beleuzu
dce2ae28ba Merge Mozilla-Central to autoland on a CLOSED TREE 2022-07-14 00:55:03 +03:00
Narcis Beleuzu
913bc3e029 Backed out changeset 4226803862e0 (bug 1779344) for conflicting with the backout of 1771374. CLOSED TREE 2022-07-14 00:53:56 +03:00
Narcis Beleuzu
a9e7761934 Backed out 4 changesets (bug 1771374) for causing Google docs and maps rendering regressions. a=backout
Backed out changeset 9c65411d1843 (bug 1771374)
Backed out changeset 9f5cf953fcc8 (bug 1771374)
Backed out changeset 8b39f60971e4 (bug 1771374)
Backed out changeset ef52a6c462b6 (bug 1771374)
2022-07-14 00:43:56 +03:00
Norisz Fay
31e76fd90f Backed out changeset ce93635100b6 (bug 1772132) for causing webrender build bustage CLOSED TREE 2022-07-13 22:08:19 +03:00
Travis Long
a285a07c6e Bug 1772132 - Update Glean and remove cargo metadata replacement. r=janerik,supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D151499
2022-07-13 18:00:35 +00:00
Sebastian Hengst
8f66380392 Bug 1779344 - lowercase dxgitype.h include to fix mingw builds. r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D151691
2022-07-13 17:40:30 +00:00
Cosmin Sabou
3e22258e4c Merge mozilla-central to autoland. 2022-07-13 19:36:23 +03:00
Cosmin Sabou
f12c239da6 Backed out changeset cc1377cd7adb (bug 1778767) for causing Bug 1779364. a=backout 2022-07-13 19:28:49 +03:00
Kai Engert
27a60cd1a4 Bug 1779200 - Again allow warnings in harfbuzz because of new -Wcomma warnings. r=RyanVM
Differential Revision: https://phabricator.services.mozilla.com/D151687
2022-07-13 13:12:34 +00:00
Bogdan Szekely
6030807e22 Backed out changeset 1ff9bb6e4a8c (bug 1772132) for causing build bustage. CLOSED TREE 2022-07-13 16:17:53 +03:00
Travis Long
e826b78da5 Bug 1772132 - Update Glean and remove cargo metadata replacement. r=janerik,supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D151499
2022-07-13 12:59:16 +00:00
smolnar
36788ca992 Backed out changeset ab4790cd94eb (bug 1772132) for causing wrench bustage CLOSED TREE 2022-07-13 12:04:13 +03:00
Travis Long
86debe7916 Bug 1772132 - Update Glean and remove cargo metadata replacement. r=janerik,supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D151499
2022-07-13 08:43:41 +00:00
Kelsey Gilbert
f35027d825 Bug 1771374 - Fix build and lint warnings. r=gfx-reviewers,aosmond
Differential Revision: https://phabricator.services.mozilla.com/D150620
2022-07-12 23:55:51 +00:00
Kelsey Gilbert
32502f761c Bug 1771374 - Disable color management based on pref in DCLayerTree. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D150276
2022-07-12 23:55:51 +00:00
Kelsey Gilbert
8eb05ff04b Bug 1771374 - Support display-p3 output via DirectComposition on Windows. r=sotaro,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D150275
2022-07-12 23:55:50 +00:00
Csoregi Natalia
c97011ab89 Backed out 4 changesets (bug 1742797) for causing failures on /browser_ext_getViews.js. CLOSED TREE
Backed out changeset c48ff146a33d (bug 1742797)
Backed out changeset a692ca1d8401 (bug 1742797)
Backed out changeset cfc1f440fb6d (bug 1742797)
Backed out changeset 88f60761e884 (bug 1742797)
2022-07-13 01:02:54 +03:00
Jeff Muizelaar
8d06dee79d Bug 1769429. Revert 1719215. r=lsalzman
This fixes subimage drawing with Cairo.

Differential Revision: https://phabricator.services.mozilla.com/D151152
2022-07-12 17:48:41 +00:00
Bas Schouten
0a72fd804b Bug 1778395 - Part 2: Record time between frame creation and the start of rendering. r=jrmuizel,chutten
Differential Revision: https://phabricator.services.mozilla.com/D151185
2022-07-12 14:59:09 +00:00
Bas Schouten
1444526cbe Bug 1778395 - Part 1: Record time between frame creation and the start of frame building. r=jrmuizel,chutten
Differential Revision: https://phabricator.services.mozilla.com/D151184
2022-07-12 14:59:09 +00:00
Hiroyuki Ikezoe
a576a80a90 Bug 1742797 - Add a new IPC call to clear animation resources on WebRender, r=sotaro.
Differential Revision: https://phabricator.services.mozilla.com/D151481
2022-07-12 14:46:53 +00:00
Jim Blandy
147eeeac44 Bug 1778767: Define MozClearPointer, a type-safe replacement for g_clear_pointer. r=stransky,jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D151410
2022-07-12 07:41:31 +00:00
Lee Salzman
1f50b3d9b8 Bug 1777426 - Ensure MemoryTextureData frees memory when owned by RemoteTextureMap. r=aosmond,gfx-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D151422
2022-07-12 06:56:21 +00:00
Lee Salzman
0da1cdb579 Bug 1777426 - Remove CopySnapshotTo in favor of async present. r=aosmond
With async present we can now rely on being able to do readbacks from WebGL
in the GPU process, rather than needing CopySnapshotTo to accelerate this in
the content process. Just remove CopySnapshotTo since it doesn't help anymore.

Differential Revision: https://phabricator.services.mozilla.com/D150721
2022-07-12 06:56:20 +00:00
Lee Salzman
1d9820a99d Bug 1777426 - Support fast readbacks in CopyToSwapChain with async present. r=sotaro,jgilbert
Currently CopyToSwapChain creates spurious copies of the back buffer when SharedSurfaces aren't exportable (= ToSurfaceDescriptor returns Nothing from SharedSurface_Basic). These then later get read back into a CPU memory buffer when PresentFrontBufferToCompositor is used to send the buffer to RemoteTextureMap. This has associated performance and memory costs.

Conceptually, we want Present/CopyToSwapChain to just do the right thing and automatically push buffers to RemoteTextureMap, rather than secondarily needing a hidden call to PresentFrontBufferToCompositor. Then we can get rid of the need to create front buffers whose only purpose is to shuttle data to PresentFrontBufferToCompositor which then shuttles it RemoteTextureMap.

This patch achieves this by refactoring the guts of PresentFrontBufferToCompositor into Present/CopyToSwapChain. The remote texture ids are sent along inside SwapChainOptions if async present is enabled. Those remote texture ids are cached in ClientWebGLContext so that GetFrontBuffer can return them without any subsequent need for an IPDL call.

On the parent side, CopyToSwapChain will now notice if async present is to be used and if a SurfaceFactory does not generate SharedSurfaces that can be exported. In that case it cuts out the middle man and reads from the WebGLFramebuffer's back buffer directly into a CPU buffer to send to RemoteTextureMap.

This also adds a forceAsyncPresent option to SwapChainOptions so that in the future we can have a separate pref for Accelerated Canvas2D that will allow enabling async present independent of the global WebGL pref.

Differential Revision: https://phabricator.services.mozilla.com/D150720
2022-07-12 06:56:19 +00:00
Botond Ballo
fea611dcac Bug 1771822 - Do not explicitly set apz.allow_zooming in mochitests. r=tnikkel
We can't do likewise for reftests and web platform tests because
those test suites disable apz.allow_zooming by default on android.

Differential Revision: https://phabricator.services.mozilla.com/D151576
2022-07-12 06:49:11 +00:00
criss
a2b0dea609 Backed out 4 changesets (bug 1774537) for causing mochitest failures on test_group_scroll_snap.html
Backed out changeset 47bb66885515 (bug 1774537)
Backed out changeset 9bb536d111a7 (bug 1774537)
Backed out changeset e3ab56189fa0 (bug 1774537)
Backed out changeset 61b3c13db9ea (bug 1774537)
2022-07-12 08:59:19 +03:00
Hiroyuki Ikezoe
fc6888c9f9 Bug 1774537 - Skip re-snapping if there's any async scroll is running. r=botond
Depends on D149497

Differential Revision: https://phabricator.services.mozilla.com/D150929
2022-07-12 03:01:14 +00:00
Hiroyuki Ikezoe
db52d38a69 Bug 1774537 - Propagate snap target ids for async scroll operations triggered on the main-thread, but will be processed in APZ. r=botond
Ideally we can write a wpt for this case, but it doesn't work due to
bug 1674687 and ClampAndAlignWithPixels [1] in our code. In the wpt we can use
waitForScrollTo [2] to wait for the end of an async scroll operation, say
a scrollBy call with `behavior: smooth`, at some point where it's close to the
final scroll destination APZ reports a fractional scroll offset close to the
destination, it will be clamped and rounded to the final destination value, thus
waitForScrollTo considers it reached to the end of the scroll operation. At the
moment APZ considers the async scroll is still in progress, which mean the snap
target ids haven't yet been reported to back the main-thread unfortunately.

[1] https://searchfox.org/mozilla-central/rev/170f06a720ddabee44c728b05ad30b18b066acca/layout/generic/nsGfxScrollFrame.cpp#2847
[2] https://searchfox.org/mozilla-central/rev/170f06a720ddabee44c728b05ad30b18b066acca/testing/web-platform/tests/css/css-scroll-snap/support/common.js#84

Depends on D149496

Differential Revision: https://phabricator.services.mozilla.com/D149497
2022-07-12 03:01:14 +00:00
Hiroyuki Ikezoe
88f14ab50f Bug 1774537 - Propagate last snap target id(s) from APZ to the content. r=botond
Depends on D149495

Differential Revision: https://phabricator.services.mozilla.com/D149496
2022-07-12 03:01:13 +00:00
Hiroyuki Ikezoe
94a7d9b3fa Bug 1774537 - Call SetState with WEEL_SCROLL or KEYBOARD_SCROLL in the case of instant scoll. r=botond
It will ensure an APZ:TransformEnd notification.

Differential Revision: https://phabricator.services.mozilla.com/D149495
2022-07-12 03:01:13 +00:00
Robert Mader
f922ff35ad Bug 1777927 - Force-disable VAAPI if vaapitest() failed, r=gfx-reviewers,aosmond
`vaapitest()` is meant to be a sanity check. If it failed there's
likely something very broken about the driver and we log gfx
warnings accordingly, allowing to debug the problem.

Ensure to force-disable VAAPI in this case but still allow users
to enable the feature in blocklisted cases.

While on it add some additional fixes for issues encoutered while
testing:
- `InitVAAPIConfig()` was not run on X11-only builds, wrongly
  setting `sLayersSupportsHardwareVideoDecoding` to `true` there
  on allowlisted drivers. Thus replace `MOZ_WAYLAND` with
  `MOZ_WIDGET_GTK`, ensuring the "Wayland support missing" warning
  is shown in `about:support`.
- `UserForceEnable` must be run before `ForceDisable`, otherwise an
  assert is triggered on debug builds. Reorder this.
- `GetFeatureStatus` was run twice for
  `FEATURE_HARDWARE_VIDEO_DECODING`, once in `InitAcceleration()` in the
  common code path, the again in `InitVAAPIConfig()`. Untangle the common
  code path to only run `InitVAAPIConfig()`.
- Use the chance to turn `media.hardware-video-decoding.enabled` into a
  static pref so it matches `media.hardware-video-decoding.force-enabled`

Differential Revision: https://phabricator.services.mozilla.com/D150959
2022-07-12 01:49:39 +00:00
Butkovits Atila
071d1fd9a9 Backed out changeset eae66c448e16 (bug 1777927) for causing failures at test_gfxBlacklist_Version.js. CLOSED TREE 2022-07-12 04:37:54 +03:00
Robert Mader
23d8b84193 Bug 1777927 - Force-disable VAAPI if vaapitest() failed, r=gfx-reviewers,aosmond
`vaapitest()` is meant to be a sanity check. If it failed there's
likely something very broken about the driver and we log gfx
warnings accordingly, allowing to debug the problem.

Ensure to force-disable VAAPI in this case but still allow users
to enable the feature in blocklisted cases.

While on it add some additional fixes for issues encoutered while
testing:
- `InitVAAPIConfig()` was not run on X11-only builds, wrongly
  setting `sLayersSupportsHardwareVideoDecoding` to `true` there
  on allowlisted drivers. Thus replace `MOZ_WAYLAND` with
  `MOZ_WIDGET_GTK`, ensuring the "Wayland support missing" warning
  is shown in `about:support`.
- `UserForceEnable` must be run before `ForceDisable`, otherwise an
  assert is triggered on debug builds. Reorder this.
- `GetFeatureStatus` was run twice for
  `FEATURE_HARDWARE_VIDEO_DECODING`, once in `InitAcceleration()` in the
  common code path, the again in `InitVAAPIConfig()`. Untangle the common
  code path to only run `InitVAAPIConfig()`.
- Use the chance to turn `media.hardware-video-decoding.enabled` into a
  static pref so it matches `media.hardware-video-decoding.force-enabled`

Differential Revision: https://phabricator.services.mozilla.com/D150959
2022-07-12 00:00:59 +00:00
Kelsey Gilbert
a8ef6e3480 Bug 1779069 - Assert that we only ever use a GLContext on its original thread. r=gfx-reviewers,aosmond
Differential Revision: https://phabricator.services.mozilla.com/D151540
2022-07-12 00:00:28 +00:00
Kelsey Gilbert
925ea31507 Bug 1778855 - Use e.g. gfxEnv::MOZ_GL_DEBUG() instead of gfxEnv::GlDebug(). r=gfx-reviewers,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D151547
2022-07-11 23:59:53 +00:00
Kelsey Gilbert
10d601d798 Bug 1778855 - Remove unused gfxEnv getters. r=gfx-reviewers,aosmond
Differential Revision: https://phabricator.services.mozilla.com/D151546
2022-07-11 23:59:53 +00:00
Ryan VanderMeulen
9cc54fa7a9 Bug 1776802 - Remove obsolete lines from harfbuzz moz.build and enable warnings-as-errors. r=jfkthame
Depends on D150437

Differential Revision: https://phabricator.services.mozilla.com/D150438
2022-07-11 16:28:05 +00:00
Ryan VanderMeulen
7a7c344e74 Bug 1776802 - Update HarfBuzz to 4.4.1. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D150437
2022-07-11 16:28:04 +00:00
Tooru Fujisawa
03b55aae15 Bug 1667455 - Part 10: Stop importing Services.jsm from chrome-priv HTML code, multi-line cases. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D150899
2022-07-11 12:41:53 +00:00
Tooru Fujisawa
52c95734e7 Bug 1667455 - Part 9: Stop importing Services.jsm from chrome-priv HTML code, single-line cases. r=kmag,necko-reviewers,geckoview-reviewers,extension-reviewers,m_kato,dragana
Differential Revision: https://phabricator.services.mozilla.com/D150898
2022-07-11 12:41:52 +00:00
Tooru Fujisawa
47c8f80432 Bug 1667455 - Part 6: Stop importing Services.jsm from chrome-priv JS code, non-top-level or multi-line cases. r=kmag,perftest-reviewers,AlexandruIonescu,sparky
Differential Revision: https://phabricator.services.mozilla.com/D150895
2022-07-11 12:41:51 +00:00
Razvan Cojocaru
37dc531ce7 Bug 1769805 - Implement axis relocking in the sticky axis locking mode. r=botond,dlrobertson
Differential Revision: https://phabricator.services.mozilla.com/D150496
2022-07-09 20:42:47 +00:00
David Shin
d360f1fee3 Bug 1766041: Part 3: Migrate C++ BeforeFlag to that of Rust's. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D150567
2022-07-09 17:33:58 +00:00
sotaro
7138ddfa6d Bug 1778622 - Disable video overlay by IDXGISwapChain3::SetColorSpace1() error. r=gfx-reviewers,lsalzman
Current implementation quits video overlay rendering on the error. If the error continues, the video overlay is not rendered correctly. Then it seems better to disable video overlay on the error.

Differential Revision: https://phabricator.services.mozilla.com/D151350
2022-07-08 23:25:02 +00:00
Noemi Erli
b0843f1601 Backed out changeset 6bb855e0583c (bug 1769805) for causing failures related to APZCPinchTester CLOSED TREE 2022-07-09 02:53:32 +03:00
Razvan Cojocaru
d34124045b Bug 1769805 - Implement axis relocking in the sticky axis locking mode. r=botond,dlrobertson
Differential Revision: https://phabricator.services.mozilla.com/D150496
2022-07-08 22:27:53 +00:00
Andrew Osmond
325d34f8d7 Bug 1778711 - gfxCharacterMap should use threadsafe refcounting. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D151372
2022-07-08 17:34:47 +00:00
Andrew Osmond
e187e64f26 Bug 1778694 - Make gfxUserFontSet::IncrementGeneration use an atomic for tracking generations. r=jfkthame
This resolves some tsan warnings.

Differential Revision: https://phabricator.services.mozilla.com/D151366
2022-07-08 17:34:47 +00:00
Andrew Osmond
88c9da9314 Bug 1778681 - Cache prefs for gfxPlatformFontList::GetDefaultGeneric at initialization. r=jfkthame
Caching the pref values at initialization instead of on demand allows
this code to be threadsafe and accessible from DOM workers.

Differential Revision: https://phabricator.services.mozilla.com/D151365
2022-07-08 17:34:46 +00:00
Andrew Osmond
ccb3289c49 Bug 1778608 - Fix FontFaceSetWorkerImpl destruction off main thread. r=emilio
The loaders need to be destroyed on the main thread. Assertions for
gfxUserFontSet and gfxFontFamily need to be updated for workers.

Depends on D151342

Differential Revision: https://phabricator.services.mozilla.com/D151343
2022-07-08 17:34:46 +00:00
smolnar
5141a24432 Backed out 5 changesets (bug 1777287, bug 1778610, bug 1778681, bug 1778608, bug 1778694) for causing assertion failures in mozilla/ServoUtils.h CLOSED TREE
Backed out changeset 0aef1644a90e (bug 1777287)
Backed out changeset 53145a539af3 (bug 1778694)
Backed out changeset d2ec7b6792ec (bug 1778681)
Backed out changeset 921a5cd15b42 (bug 1778608)
Backed out changeset d1b85405ea07 (bug 1778610)
2022-07-08 17:17:00 +03:00
Andrew Osmond
f5944aec0b Bug 1778694 - Make gfxUserFontSet::IncrementGeneration use an atomic for tracking generations. r=jfkthame
This resolves some tsan warnings.

Differential Revision: https://phabricator.services.mozilla.com/D151366
2022-07-08 13:24:36 +00:00
Andrew Osmond
ae8452be9b Bug 1778681 - Cache prefs for gfxPlatformFontList::GetDefaultGeneric at initialization. r=jfkthame
Caching the pref values at initialization instead of on demand allows
this code to be threadsafe and accessible from DOM workers.

Differential Revision: https://phabricator.services.mozilla.com/D151365
2022-07-08 13:24:35 +00:00
Andrew Osmond
5865d04029 Bug 1778608 - Fix FontFaceSetWorkerImpl destruction off main thread. r=emilio
The loaders need to be destroyed on the main thread. Assertions for
gfxUserFontSet and gfxFontFamily need to be updated for workers.

Depends on D151342

Differential Revision: https://phabricator.services.mozilla.com/D151343
2022-07-08 13:24:35 +00:00
Nicolas Silva
c81b99c8ff Bug 1770219 - Disallow large buffer allocations. r=jimb
Differential Revision: https://phabricator.services.mozilla.com/D149631
2022-07-08 11:51:55 +00:00
Nicolas Silva
ba23af9d48 Bug 1750576 - Avoid passing raw strings in a couple of wgpu bindings entry points. r=emilio
Inspired by emilio's suggestion in the shader module API patch. This tries to be the most straightforward way to go from the strings coming from IPC to the ones consumed by wgpu.

Differential Revision: https://phabricator.services.mozilla.com/D151024
2022-07-08 08:11:39 +00:00
Nicolas Silva
1d6db74e44 Bug 1750576 - WebGPU shader module asynchronous CompilationInfo API. r=aosmond,emilio
This patch is a lot of plumbing for not that much functionality. The goal is to align CreateShaderModule's error reporting with the spec.
Creating a shader module is now a dedicated async IPDL message returning the compilation info so that it can be exposed as a promise by the WebGPU API.

Differential Revision: https://phabricator.services.mozilla.com/D146817
2022-07-08 08:11:39 +00:00
sotaro
b9e60f30de Bug 1778431 - Allocate canvas render thread for out-of-process WebGL r=gfx-reviewers,aosmond
If dedicated thread for out-of-process WebGL exists, compositor thread tasks are not delayed by WebGL tasks.

And Bug 1712486 requests that WebGL run on non-compositor thread.

Differential Revision: https://phabricator.services.mozilla.com/D151210
2022-07-08 04:02:41 +00:00
Csoregi Natalia
33193d6158 Backed out 5 changesets (bug 1766041) for gtest failures on APZCBasicTester. CLOSED TREE
Backed out changeset 3b0cd4ee7d1e (bug 1766041)
Backed out changeset 5de0ed4fd59b (bug 1766041)
Backed out changeset cc7ffb683e8a (bug 1766041)
Backed out changeset ce5a895e7a06 (bug 1766041)
Backed out changeset 315578c436ca (bug 1766041)
2022-07-08 03:12:42 +03:00
David Shin
07b055639d Bug 1766041: Part 3: Migrate C++ BeforeFlag to that of Rust's. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D150567
2022-07-07 22:52:58 +00:00
Andrew Osmond
e28f840226 Bug 1072107 - Part 6. Dispatch font calls and callbacks as necessary. r=emilio
Also update thread assertions.

Differential Revision: https://phabricator.services.mozilla.com/D149253
2022-07-07 21:24:10 +00:00
Boris Chiou
db1b58d707 Bug 1775327 - Part 2: Fix playing finished scroll animation on reversing scrolling. r=firefox-animation-reviewers,birtles
We have to make sure the scroll animations is still responsive at
boundaries even if it's playstate is finished.

This patch includes the update of UpdateFinishedState() to match the
spec, and make sure we still tick scroll animations at finished play state.

Getting a finished state might be strange for scroll animations, and this
might be a spec issue. However, for consistency with JS-generated animations,
we'd like to align the behaviors with other browsers, and make sure we are
still match the definition of finished state in the spec.

Besides, we have to use EndTime() on the compositor so
animation-iteration-count works properly.

Tests are in the last patch.

Differential Revision: https://phabricator.services.mozilla.com/D149940
2022-07-07 18:33:41 +00:00
Boris Chiou
ee025d7686 Bug 1775327 - Part 1: Make sure the scroll animation is still in active phase at boundaries. r=firefox-animation-reviewers,birtles
We have to introduce "at progress timeline boundary" which is defined in
web-animations-2 [1]. We need this to make sure the scroll animations
do not go into before phase or after phase.

The test of fill-mode should be together with delay, so I'd like to add the
tests in the last patch.

[1] https://drafts.csswg.org/web-animations-2/#at-progress-timeline-boundary

Differential Revision: https://phabricator.services.mozilla.com/D149684
2022-07-07 18:33:41 +00:00
Jamie Nicol
75236a237a Bug 1778150 - Override UV rect for cs_scale when source is external texture. r=gfx-reviewers,nical
In webrender, external textures provide an override UV rect which is
not known until during rendering when the texture is actually
resolved. For brush shaders this value is automatically read from the
GPU cache, but for other shaders the UVs are passed as instance
attributes. Currently we use the overridden UV rect correctly for the
composite shader, but not the cs_scale shader.

On Android devices which do not support the
GL_OES_EGL_image_external_essl3 extension, the cs_scale shader is used
to render video in some cases. Because we were not handling the
texture's UV rect correctly, video was being rendered upside down on
some websites as a result.

This patch makes us manually override the scale shader's instance
data's source_rects when the source is an external
texture. Additionally, the cs_scale shader needs adapted to handle the
case where the UV rect is inverted.

Differential Revision: https://phabricator.services.mozilla.com/D151233
2022-07-07 16:38:21 +00:00
Cristian Tuns
d4e4ae35a5 Backed out 2 changesets (bug 1750576) for causing lint failures and build bustages. CLOSED TREE
Backed out changeset 21ede22c4113 (bug 1750576)
Backed out changeset be7493c6f3cb (bug 1750576)
2022-07-07 10:51:38 -04:00
Nicolas Silva
c2f7c229ec Bug 1750576 - Avoid passing raw strings in a couple of wgpu bindings entry points. r=emilio
Inspired by emilio's suggestion in the shader module API patch. This tries to be the most straightforward way to go from the strings coming from IPC to the ones consumed by wgpu.

Differential Revision: https://phabricator.services.mozilla.com/D151024
2022-07-07 14:35:29 +00:00
Nicolas Silva
8b76f3e498 Bug 1750576 - WebGPU shader module asynchronous CompilationInfo API. r=aosmond,emilio
This patch is a lot of plumbing for not that much functionality. The goal is to align CreateShaderModule's error reporting with the spec.
Creating a shader module is now a dedicated async IPDL message returning the compilation info so that it can be exposed as a promise by the WebGPU API.

Differential Revision: https://phabricator.services.mozilla.com/D146817
2022-07-07 14:35:28 +00:00
Jamie Nicol
0cffcc7253 Bug 1777952 - Namespace SurfaceTexture handles by the process they were allocated in. r=gfx-reviewers,geckoview-reviewers,aosmond,calu
When Surfaces/SurfaceTextures are allocated they are given a handle,
which is a monotonically increasing 32-bit integer. To render
Surfaces, we typically pass the Surface handle to the compositor,
which then looks it up in a map to find the corresponding
SurfaceTexture.

Following a GPU process restart, content may be left with stale
handles referencing SurfaceTextures which no longer exist. Once new
SurfaceTextures are allocated, these stale handles may reference new
SurfaceTextures with no relation to the old handle. This can lead to
rendering the wrong texture. Additionally, we may crash when
allocating "sync" SurfaceTextures, as the previous sync texture for a
certain handle may not have been released yet.

To fix this, this patch combines the existing handle with a new ID
uniquely identifying the process in which the SurfaceTexture was
allocated (or 0 for the parent process). We use a monotonically
increasing value rather than the pid to guard against the new GPU
process possibly having the same pid as the previous instance. We
combine these two 32-bit integers and use the resulting 64-bit integer
as the Surface handle.

Differential Revision: https://phabricator.services.mozilla.com/D150963
2022-07-07 08:12:55 +00:00
James Graham
b57989d24a Bug 1773696 - Make wheel event IPC depend on test_events_async_enabled, r=smaug
The `widget->DispatchInputEvent` codepath only works in gecko CI
configurations, so to allow this to be used for e.g. WebDriver
implement a path that doesn't go via the parent process.

Differential Revision: https://phabricator.services.mozilla.com/D150632
2022-07-06 19:55:12 +00:00
Narcis Beleuzu
bacee02794 Backed out changeset 0a2e3c4ca14f (bug 1750576) for bustages on RefPtr . CLOSED TREE 2022-07-06 19:18:20 +03:00
Nicolas Silva
cce57e2aa3 Bug 1750576 - WebGPU shader module asynchronous CompilationInfo API. r=aosmond,emilio
This patch is a lot of plumbing for not that much functionality. The goal is to align CreateShaderModule's error reporting with the spec.
Creating a shader module is now a dedicated async IPDL message returning the compilation info so that it can be exposed as a promise by the WebGPU API.

Differential Revision: https://phabricator.services.mozilla.com/D146817
2022-07-06 15:22:59 +00:00
Jeff Muizelaar
d9dcf5b2b6 Bug 1778158 - quartz: Avoid reading beyond the end of image surfaces. r=jfkthame
The last row of data may have less than stride bytes so make sure we
only copy what we need.

This corresponds to cairo:cccc81ccba99600483621e02ae9438a4a5a3d024

Differential Revision: https://phabricator.services.mozilla.com/D151053
2022-07-06 12:25:10 +00:00
Kelsey Gilbert
4f87812c0f Bug 1778232 - ImageFormat::s/CAIRO_SURFACE/MOZ2D_SURFACE/. r=jrmuizel
Also remove comment that says it can't be off-main-thread.

Differential Revision: https://phabricator.services.mozilla.com/D151087
2022-07-06 07:46:17 +00:00
Kelsey Gilbert
98e17790db Bug 1776470 - Explicitly ask for ANGLE debug layer iff d3d11 debug layer pref enabled. r=gfx-reviewers,bradwerth
Differential Revision: https://phabricator.services.mozilla.com/D150274
2022-07-06 07:45:29 +00:00
Robert Longson
4bcc81eaf7 Bug 1777671 - Account for glyph orientations when returning rotation of character r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D150858
2022-07-06 06:01:22 +00:00
Glenn Watson
5bd787a0ba Bug 1778036 - Switch public primitive API to be clip-chain based r=gfx-reviewers,lsalzman
This is mostly just changing a small number of structs and function
params (most of the work has been done in previous patches).

Differential Revision: https://phabricator.services.mozilla.com/D150987
2022-07-05 20:52:31 +00:00
Glenn Watson
5c3d556f14 Bug 1778030 - Remove clip_id_stack from wrench r=gfx-reviewers,lsalzman
Also update reftests to only specify rect / rounded-rect / mask per clip.

Differential Revision: https://phabricator.services.mozilla.com/D150984
2022-07-05 20:52:31 +00:00
Jim Blandy
2f5eb12516 Bug 1777656: Delete mozilla::ipc::SharedMemory::SharedMemorytype. r=nika,media-playback-reviewers,padenot
Differential Revision: https://phabricator.services.mozilla.com/D150852
2022-07-05 20:08:31 +00:00
Glenn Watson
bbcff3fc66 Bug 1778017 - Remove ClipId-style parenting from rect clip public API r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D150983
2022-07-05 11:22:05 +00:00
Glenn Watson
60220b9b80 Bug 1778015 - Remove ClipId-style parenting from rounded-rects clip public API r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D150982
2022-07-05 09:53:28 +00:00
Glenn Watson
829af78106 Bug 1778013 - Remove ClipId-style parenting from image clip masks public API r=gfx-reviewers,lsalzman
Also make the parent in ClipTemplate an Option, so that the
semantics are a bit clearer (follow up patches will remove this
parent field entirely).

Differential Revision: https://phabricator.services.mozilla.com/D150980
2022-07-05 08:20:49 +00:00
Jonathan Kew
2f7b62ff61 Bug 1777209 - Use DrawSurface rather than FillRect to paint <canvas>, and don't use EXTEND_PAD when writing to PDF. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D150601
2022-07-05 07:55:56 +00:00
Dan Robertson
83ab6a777b Bug 1753019 - Adjust sticky position elements for the dynamic toolbar. r=botond
Use the animation id from the stacking context to find the hit-testing tree node
for hit tests of elements that are sticky positioned. Then use this hit-testing
tree node reference to apply APZ transforms if the sticky positioned element is
stuck to the root content.

Differential Revision: https://phabricator.services.mozilla.com/D150047
2022-07-04 18:14:59 +00:00
Dan Robertson
affccc0acb Bug 1753019 - Use the animation id to identify hit testing metadata. r=botond,gw
## Summary

Pass the fixed position element animation id through webrender, returning the
the animation id in the hit-test result if the element is a fixed position
element. This animation id then can be used to lookup the relevant Hit-Testing
Tree Node, which can be used to find the fixed (or sticky) position side bits.

## Motivation

Sticky content can be currently stuck to the root content or not, based on the
scroll position. As a result, when hit testing sticky content, APZ needs both
the sticky position side bits and additional information to determine if the
element is currently stuck to the root content. This is needed to fix the
hit-testing of sticky position content when a APZ transform is being applied,
such as overscroll and hiding the dynamic toolbar.

## Implementation

The information needed to determine if a element is currently stuck to the root
content and the fixed/sticky position side bits is already stored in the
hit-testing tree node. Any hit test result should have a corresponding
hit-testing tree node entry. When a hit-test result contains a animation id and
a hit-testing tree node is found, we can store a pointer to this node and use
this to check the fixed/sticky position side bits. Something similar is already
done for hit test results when a scrollbar is hit.

Differential Revision: https://phabricator.services.mozilla.com/D148648
2022-07-04 18:14:58 +00:00
Cristian Tuns
c35e657922 Backed out changeset 85d0efe7eb9b (bug 1773696) for causing mochitest failures in test_bug946632.html CLOSED TREE 2022-07-04 13:04:32 -04:00
Csoregi Natalia
da06c30fac Backed out changeset 1b43d3f38946 (bug 1777209) for causing reftest failures e.g. 602200-4.html. CLOSED TREE 2022-07-04 19:27:42 +03:00
Jonathan Kew
c94cf2c2a7 Bug 1777209 - Use DrawSurface rather than FillRect to paint <canvas>, and don't use EXTEND_PAD when writing to PDF. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D150601
2022-07-04 14:08:16 +00:00
James Graham
a60c9412c5 Bug 1773696 - Make wheel event IPC depend on test_events_async_enabled, r=smaug
The `widget->DispatchInputEvent` codepath only works in gecko CI
configurations, so to allow this to be used for e.g. WebDriver
implement a path that doesn't go via the parent process.

Differential Revision: https://phabricator.services.mozilla.com/D150632
2022-07-04 12:56:20 +00:00
Glenn Watson
775d9ac992 Bug 1777901 - Pt 2 - Port more wrench tests to specify clips via clip-chains r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D150927
2022-07-04 10:14:57 +00:00
Glenn Watson
c048d4ef0e Bug 1777901 - Port more wrench tests to specify clips via clip-chains r=gfx-reviewers,lsalzman
The intent is to deprecate specifying clips via ClipId::Clip(..)
as this will simplify the ongoing clip-interning work.

Differential Revision: https://phabricator.services.mozilla.com/D150925
2022-07-04 10:14:56 +00:00
Timothy Nikkel
421d004492 Bug 1737722. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D145721
2022-07-02 00:39:27 +00:00
sotaro
dd2b6633a9 Bug 1777657 - Remove SurfaceDescriptor from WebRenderTextureHost constructor r=gfx-reviewers,lsalzman
SurfaceDescriptor is not used anymore in WebRenderTextureHost constructor.

Differential Revision: https://phabricator.services.mozilla.com/D150853
2022-07-02 00:06:00 +00:00
Bogdan Szekely
ad5599bfa2 Backed out changeset 566b061ee95d (bug 1777209) for causing multiple failures CLOSED TREE 2022-07-01 18:16:27 +03:00
Joel Maher
537a5a0dc8 Bug 1777549 - remove remaining e10s conditions in manifest files. r=gbrown,extension-reviewers,zombie
Differential Revision: https://phabricator.services.mozilla.com/D150820
2022-07-01 13:49:42 +00:00
Jonathan Kew
9af0d47ce3 Bug 1777209 - Use DrawSurface rather than FillRect to paint <canvas>, and don't use EXTEND_PAD when writing to PDF. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D150601
2022-07-01 09:17:04 +00:00
Botond Ballo
041120d0b6 Bug 1777482 - Disable helper_bug1756529 on Mac. r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D150851
2022-07-01 05:35:19 +00:00
Hiroyuki Ikezoe
b3f8eec3ae Bug 1530253 - Implement the logic to choose the best snap point for re-snap. r=botond
Depends on D148861

Differential Revision: https://phabricator.services.mozilla.com/D148862
2022-07-01 01:35:32 +00:00
Hiroyuki Ikezoe
ce73d6bd80 Bug 1530253 - Make GetSnapPointForDestination return the last snapped target id(s). r=botond
Depends on D148856

Differential Revision: https://phabricator.services.mozilla.com/D148857
2022-07-01 01:35:30 +00:00
Hiroyuki Ikezoe
e176812c3d Bug 1530253 - Assign an id to each scroll snap target for tracking the last snapped element. r=botond,emilio
Depends on D148855

Differential Revision: https://phabricator.services.mozilla.com/D148856
2022-07-01 01:35:29 +00:00
Glenn Watson
70b436796a Bug 1777395 - Remove legacy clip-parenting in wrench r=gfx-reviewers,lsalzman
This removes the last piece of code in wrench and gecko (there is
one more callsite in WR itself) that relies on the legacy clip
parenting code.

Differential Revision: https://phabricator.services.mozilla.com/D150694
2022-06-30 20:38:14 +00:00
Martin Stransky
350446cc4b Bug 1777368 [Linux] Don't init VP8_HW_DECODE/VP9_HW_DECODE features on Linux as they're not used r=alwu
Differential Revision: https://phabricator.services.mozilla.com/D150739
2022-06-30 19:44:59 +00:00
smolnar
3fa084ce2f Backed out 3 changesets (bug 1771374) for causing build bustage in gfx/gl/gtest/TestColorspaces.cpp CLOSED TREE
Backed out changeset 4d01f260c43a (bug 1771374)
Backed out changeset fc62679f0a6c (bug 1771374)
Backed out changeset f4f12470f8b7 (bug 1771374)
2022-06-30 21:19:17 +03:00
Sebastian Hengst
304227d5c2 Bug 1774376 - update file-to-Bugzilla-component mappings for Graphics team r=perftest-reviewers,gfx-reviewers,sparky,aosmond,nical
Components got reorganized in bug 1774288.

Differential Revision: https://phabricator.services.mozilla.com/D149375
2022-06-30 18:07:29 +00:00
Kelsey Gilbert
ec0b1e1d29 Bug 1771374 - Fix lint warnings. r=gfx-reviewers,aosmond
Differential Revision: https://phabricator.services.mozilla.com/D150620
2022-06-30 17:56:27 +00:00
Kelsey Gilbert
5f12c188ca Bug 1771374 - Disable color management based on pref in DCLayerTree. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D150276
2022-06-30 17:56:26 +00:00
Kelsey Gilbert
bb48a57a8a Bug 1771374 - Support display-p3 output via DirectComposition on Windows. r=sotaro,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D150275
2022-06-30 17:56:26 +00:00
Jonathan Kew
a18e1814b0 Bug 1777475 - Add locking to the gfxGlyphExtents class. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D150750
2022-06-30 14:52:38 +00:00
Iulian Moraru
7ad40f6883 Backed out changeset 121326268074 (bug 1737722) for causing build bustages on WRHitTester.cpp. CLOSED TREE 2022-06-30 15:25:43 +03:00
Timothy Nikkel
24843e3503 Bug 1737722. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D145721
2022-06-30 12:06:40 +00:00
Bogdan Szekely
ff9c07ed1b Backed out changeset 83c2ba6648ac (bug 1773696) for causing mochitest failures on TimeStamp.h CLOSED TREE 2022-06-30 13:17:39 +03:00
James Graham
926ae49c33 Bug 1773696 - Make wheel event IPC depend on test_events_async_enabled, r=smaug
The `widget->DispatchInputEvent` codepath only works in gecko CI
configurations, so to allow this to be used for e.g. WebDriver
implement a path that doesn't go via the parent process.

Differential Revision: https://phabricator.services.mozilla.com/D150632
2022-06-30 08:34:10 +00:00
Glenn Watson
65bb3e9aee Bug 1777388 - Remove legacy clip-parenting from clip-to-frame in wrench r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D150683
2022-06-30 02:41:02 +00:00
criss
d5ece910a9 Backed out 3 changesets (bug 1771374) for causing bustages on Colorspaces.h. CLOSED TREE
Backed out changeset 498c27656dc3 (bug 1771374)
Backed out changeset 6f97bc39643f (bug 1771374)
Backed out changeset b4fdb70808b6 (bug 1771374)
2022-06-30 05:28:11 +03:00
Kelsey Gilbert
8fdac7788a Bug 1771374 - Fix lint warnings. r=gfx-reviewers,aosmond
Differential Revision: https://phabricator.services.mozilla.com/D150620
2022-06-29 23:38:23 +00:00
Kelsey Gilbert
24fcc06910 Bug 1771374 - Disable color management based on pref in DCLayerTree. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D150276
2022-06-29 23:38:23 +00:00
Kelsey Gilbert
c4f86e2e33 Bug 1771374 - Support display-p3 output via DirectComposition on Windows. r=sotaro,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D150275
2022-06-29 23:38:22 +00:00
Glenn Watson
46928eda22 Bug 1777363 - Add clip-chain definition shortcut to wrench r=gfx-reviewers,lsalzman
Add a way to define an item-local clip-chain from a series of
clips. Port a couple of tests to use this instead of relying on
legacy clip-parenting (which we plan to remove soon).

Differential Revision: https://phabricator.services.mozilla.com/D150662
2022-06-29 22:41:01 +00:00
criss
efb5f18b59 Backed out 3 changesets (bug 1771374) for causing build bustages on GLBlitHelper.cpp. CLOSED TREE
Backed out changeset 71d40a0a3c9c (bug 1771374)
Backed out changeset 6a42df6834fe (bug 1771374)
Backed out changeset be888d0fd0bf (bug 1771374)
2022-06-30 01:12:46 +03:00
Kelsey Gilbert
7cf061700c Bug 1771374 - Fix lint warnings. r=gfx-reviewers,aosmond
Differential Revision: https://phabricator.services.mozilla.com/D150620
2022-06-29 21:48:53 +00:00
Kelsey Gilbert
4fc89754ca Bug 1771374 - Disable color management based on pref in DCLayerTree. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D150276
2022-06-29 21:48:52 +00:00
Kelsey Gilbert
bad5d9146c Bug 1771374 - Support display-p3 output via DirectComposition on Windows. r=sotaro,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D150275
2022-06-29 21:48:52 +00:00
Botond Ballo
8db826da52 Bug 1771836 - Split helper_bug1756529 out into its own test group. r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D150616
2022-06-29 21:20:51 +00:00
Botond Ballo
1674044117 Bug 1777277 - Guard against infinite recursion in RemoteContentController::NotifyScaleGestureComplete(). r=mccr8
However, also add a MOZ_ASSERT because GetGeckoContentControllerForRoot()
returning a RemoteContentController here is unexpected and should be
investigated further.

Differential Revision: https://phabricator.services.mozilla.com/D150638
2022-06-29 20:53:59 +00:00
Glenn Watson
6672bf7be5 Bug 1777141 - Support spatial-id in wrench yaml files r=gfx-reviewers,lsalzman
Some more work towards removing the use of legacy clipid parenting
in wrench test files. Add support for specifying the spatial id
without also setting the clip parent. Port some more wrench tests
to use spatial-id and/or clip-chain.

Differential Revision: https://phabricator.services.mozilla.com/D150528
2022-06-29 19:34:18 +00:00
Botond Ballo
eb70096a5f Bug 1777151 - Call assertion functions like ok() without qualifying them as SimpleTest.ok() in APZ subtests. r=dlrobertson
The unqualified versions are the ones hooked to print the subtest name.

Depends on D150609

Differential Revision: https://phabricator.services.mozilla.com/D150610
2022-06-29 17:40:17 +00:00
Botond Ballo
461cd53745 Bug 1777151 - Move helper_bug982141 into test_group_scrollframe_activation. r=dlrobertson
helper_bug982141 was the first APZ test to be run in its own window, a technique
which we've since formalized in runSubtestsSeriallyInFreshWindows().

Rather than having a dedicated test_bug982141 to open its window,
move the subtest into test_group_scrollframe_activation.

Differential Revision: https://phabricator.services.mozilla.com/D150609
2022-06-29 17:40:17 +00:00
stransky
bea11a62d5 Bug 1773282 [Linux] Remove nsIGfxInfo::FEATURE_VAAPI and use nsIGfxInfo::FEATURE_HARDWARE_VIDEO_DECODING r=alwu
nsIGfxInfo::FEATURE_HARDWARE_VIDEO_DECODING is used on all platforms so let's use it on Linux too and don't add new feature for Linux only.

Differential Revision: https://phabricator.services.mozilla.com/D149765
2022-06-29 12:09:02 +00:00
stransky
59dfb5f41a Bug 1773282 [Linux] Don't print VP8_HW_DECODE/VP9_HW_DECODE on about:support on Linux as it's not used there r=alwu
Differential Revision: https://phabricator.services.mozilla.com/D149763
2022-06-29 12:09:02 +00:00
sotaro
a807c798e9 Bug 1712486 - Add async front buffer posting for out-of-process WebGL r=jgilbert,lsalzman,gfx-reviewers
The async front buffer posting is going to be enabled by another bug.

Async IPC was added for async front buffer posting for out-of-process WebGL.
Client does not use TextureClient for storing SurfaceDescriptor.
It works basically same way as to in-process WebGL around nsDisplayCanvas, WebRenderCanvasData, WebRenderCommandBuilder and WebRenderBridgeParent.
SharedSurfaces of SurfaceDescriptorD3D10 are kept alive during their usage. It is for keeping a shread handle valid.
Copied data buffers of SharedShurface_Basics are kept alive during their usage. It is for keeping RenderBufferTextureHost valid.

Differential Revision: https://phabricator.services.mozilla.com/D150197
2022-06-29 09:32:29 +00:00
Norisz Fay
f70f5a4b0f Backed out changeset af98fb4ff148 (bug 1712486) for causing build bustages on LayersSurfaces CLOSED TREE 2022-06-29 09:06:45 +03:00