Lee Salzman
1e18317694
Bug 1829026 - Implement DrawShadow in DrawTargetRecording. r=aosmond
...
DrawTargetWebgl relies upon DrawShadow for shadow performance. This was never
implemented in DrawTargetRecording, which this patch rectifies.
Differential Revision: https://phabricator.services.mozilla.com/D194354
2023-12-05 09:37:04 +00:00
Lee Salzman
ada9a43cc2
Bug 1829026 - Update CanvasTranslator to work with DrawTargetWebgl. r=aosmond
...
This adds the necessary infrastructure for CanvasTranslator to allocate DrawTargetWebgl
instead of just allocating TextureData, and to use RemoteTextureMap to handle sending
the DrawTargetWebgl frames to the compositor.
This optimizes snapshot transport to use fewer copies to and from shmems when we know
the snapshot contents can be sourced from a shmem.
This adds a blocking mechanism separate from deactivation so that existing DrawTargetWebgls
can continue processing events while denying further ones from being created in the event
that allocating further DrawTargetWebgls might cause problems, but so that we don't disrupt
canvases that are already in flight.
PersistentBufferProviderAccelerated still remains the buffer provider for the new setup,
but just allocates a single RecordedTextureData internally. Since DrawTargetWebgl already
does its own swap chain management internally, we do not want to use the multiple texture
client strategy that PersistentBufferProviderShared does.
This adds a fallback mechanism such that if DrawTargetWebgl allocation fails, a TextureData
is allocated instead that still sends results to RemoteTextureMap. This has the advantage
that we don't need to synchronously block in the content process to verify if acceleration
succeeded, as the costs of such blocking are rather extreme and we must still produce the
rendered frame to ensure the user sees the correct result if the speculative acceleration
failed. It then notifies the content process asynchronously via the refresh mechanism to
try to recreate a non-accelerated buffer provider when it is ready.
There is one additional hitch in RemoteTextureMap that we need to add a mechanism to deal
with the setup of the RemoteTextureOwner. When display list building initially needs to get
the remote texture, the RemoteTextureOwner might not exist yet. In this case, we need to add
a block to ensure we wait for that to occur so that we do not render an erroneous result.
Previously, this block was handled in ClientWebGLContext. Since that is no longer used,
the block must be reinstated somewhere else until a non-blocking mechanism for display list
building to proceed with a stub texture host wrapper can be implemented.
Currently this leaves the gfx.canvas.remote and gfx.canvas.accelerated prefs as separate
toggles rather than trying to lump everything into one mechanism. While this may be desirable
in the future, currently Direct2D remote canvas is a separate acceleration mechanism that
needs to co-exist with the WebGL acceleration, and so being able to toggle both on or off
for testing is desirable.
Differential Revision: https://phabricator.services.mozilla.com/D194352
2023-12-05 09:37:03 +00:00
Lee Salzman
4cf322976a
Bug 1829026 - Allow invalidating the current TLS context on establishing TLS scope. r=aosmond
...
On a given thread, if there are outside users of OpenGL (such as WebRender) that don't go
through the GLContext interface to set the current context, the TLS current context value
may be incorrect. To solve this, we need to assume that on establishing some TLS scopes,
that the current context value is unreliable and invalidate it so that it gets properly
reset.
Differential Revision: https://phabricator.services.mozilla.com/D194350
2023-12-05 09:37:02 +00:00
Iulian Moraru
8af1c585c1
Backed out changeset 774b13e9f1e7 (bug 1865830) for causing mass build bustages. CLOSED TREE
2023-12-05 01:27:27 +02:00
Nicolas Silva
0a15b03add
Bug 1868143 - Update `wgpu` to revision 767ac03245ee937d3dc552edc13fe7ab0a860eec. r=webgpu-reviewers,supply-chain-reviewers,ErichDonGubler
...
# Changelog
* #4708 Fix max_vertex_buffers validation
By nical in https://github.com/gfx-rs/wgpu/pull/4708
* #4729 Remove expected failure on AMD/DX12 from msaa example
By teoxoy in https://github.com/gfx-rs/wgpu/pull/4729
* #4711 [naga] Add `Literal::I64`, for signed 64-bit integer literals.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4711
* #4736 Bump serde from 1.0.192 to 1.0.193
By dependabot[bot] in https://github.com/gfx-rs/wgpu/pull/4736
* #4735 [naga]: Let `TypeInner::Matrix` hold a `Scalar`, not just a width.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4735
* #4741 [naga] Fix type error in test.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4741
* #4742 [naga]: Make snapshot tests include paths in errors.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4742
* #4723 Test And Normalize Vertex Behavior on All Backends
By cwfitzgerald in https://github.com/gfx-rs/wgpu/pull/4723
* #4746 Skip Flaky Test
By cwfitzgerald in https://github.com/gfx-rs/wgpu/pull/4746
* #4744 Ensure DeviceLostClosureC callbacks have null-terminated message strings
By bradwerth in https://github.com/gfx-rs/wgpu/pull/4744
* #4745 [naga wgsl-in] Test hex float suffix handling corner case.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4745
* #4737 Make the command_encoder_clear_buffer's size an Option<BufferAddress>
By nical in https://github.com/gfx-rs/wgpu/pull/4737
* #4701 [naga msl-out] Emit and init `struct` member padding always
By ErichDonGubler in https://github.com/gfx-rs/wgpu/pull/4701
* #4701 [naga msl-out] Emit and init `struct` member padding always
By ErichDonGubler in https://github.com/gfx-rs/wgpu/pull/4701
* #4701 [naga msl-out] Emit and init `struct` member padding always
By ErichDonGubler in https://github.com/gfx-rs/wgpu/pull/4701
* #4701 [naga msl-out] Emit and init `struct` member padding always
By ErichDonGubler in https://github.com/gfx-rs/wgpu/pull/4701
* #4733 [naga wgsl-in] Preserve type names in `alias` declarations.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4733
* #4734 [naga] Make compaction preserve named types, even if unused.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4734
* #4752 Logging cleanups in device/global.rs
By nical in https://github.com/gfx-rs/wgpu/pull/4752
* #4753 Fix Mac Event Loop
By cwfitzgerald in https://github.com/gfx-rs/wgpu/pull/4753
* #4754 wgpu-hal(vk): Add WGPU_ALLOW_NONCOMPLIANT_ADAPTER
By i509VCB in https://github.com/gfx-rs/wgpu/pull/4754
* #4748 Allow Tests to Expect Certain Panic or Validation Messages
By cwfitzgerald in https://github.com/gfx-rs/wgpu/pull/4748
* #4756 Move to A Single Example Executable
By cwfitzgerald in https://github.com/gfx-rs/wgpu/pull/4756
* #4747 [naga wgsl-in] Experimental 64-bit floating-point literals.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4747
* #4747 [naga wgsl-in] Experimental 64-bit floating-point literals.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4747
* #4761 [naga] Make the `example_wgsl` test build without `wgsl-in` feature.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4761
* #4769 Conditionally lift API logging from trace to info level
By nical in https://github.com/gfx-rs/wgpu/pull/4769
* #4771 Downgrade some of wgpu_core's logging level from info to trace and debug
By nical in https://github.com/gfx-rs/wgpu/pull/4771
* #4760 Rename `ALLOW_NONCOMPLIANT_ADAPTER` to `ALLOW_UNDERLYING_NONCOMPLIANT_ADAPTER`
By teoxoy in https://github.com/gfx-rs/wgpu/pull/4760
* #4772 Downgrade resource lifetime management log level to trace.
By nical in https://github.com/gfx-rs/wgpu/pull/4772
* #4765 Revamp Examples to Match Website
By cwfitzgerald in https://github.com/gfx-rs/wgpu/pull/4765
* #4774 Update examples readme files
By roffs in https://github.com/gfx-rs/wgpu/pull/4774
* #4781 remove_abandoned fix
By gents83 in https://github.com/gfx-rs/wgpu/pull/4781
* #4777 Bump web-sys to 0.3.65
By torokati44 in https://github.com/gfx-rs/wgpu/pull/4777
* #4780 Fixes for Skybox and All Examples
By cwfitzgerald in https://github.com/gfx-rs/wgpu/pull/4780
* #4782 Remove resources ONLY when needed inside wgpu and not in user land
By gents83 in https://github.com/gfx-rs/wgpu/pull/4782
* #4786 Don't keep a strong ref in storage for destroyed resources
By gents83 in https://github.com/gfx-rs/wgpu/pull/4786
* #4795 Fix Arcanization changelog
By a1phyr in https://github.com/gfx-rs/wgpu/pull/4795
* #4794 Delete/rename now-unused gpu.rs
By exrook in https://github.com/gfx-rs/wgpu/pull/4794
* #4794 Delete/rename now-unused gpu.rs
By exrook in https://github.com/gfx-rs/wgpu/pull/4794
* #4573 Support nv12 texture format
By xiaopengli89 in https://github.com/gfx-rs/wgpu/pull/4573
* #4789 Bump js-sys from 0.3.65 to 0.3.66
By dependabot[bot] in https://github.com/gfx-rs/wgpu/pull/4789
* #4784 Bump winit from 0.29.3 to 0.29.4
By dependabot[bot] in https://github.com/gfx-rs/wgpu/pull/4784
* #4798 Bump JamesIves/github-pages-deploy-action from 4.4.3 to 4.5.0
By dependabot[bot] in https://github.com/gfx-rs/wgpu/pull/4798
* #4800 Bump web-sys from 0.3.65 to 0.3.66
By dependabot[bot] in https://github.com/gfx-rs/wgpu/pull/4800
* #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4743
* #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4743
* #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4743
* #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4743
* #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4743
* #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4743
* #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4743
* #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4743
* #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4743
* #4799 Bump wasm-bindgen-futures from 0.4.38 to 0.4.39
By dependabot[bot] in https://github.com/gfx-rs/wgpu/pull/4799
* #4796 Remove surface extent validation (and thus fix the annoying `Requested size ... is outside of the supported range` warning)
By Wumpf in https://github.com/gfx-rs/wgpu/pull/4796
* #4804 Add space to a comment inside make_spirv_raw
By ComfyFluffy in https://github.com/gfx-rs/wgpu/pull/4804
* #4803 `features`/`limits` refactors
By teoxoy in https://github.com/gfx-rs/wgpu/pull/4803
* #4803 `features`/`limits` refactors
By teoxoy in https://github.com/gfx-rs/wgpu/pull/4803
* #4803 `features`/`limits` refactors
By teoxoy in https://github.com/gfx-rs/wgpu/pull/4803
* #4803 `features`/`limits` refactors
By teoxoy in https://github.com/gfx-rs/wgpu/pull/4803
* #4803 `features`/`limits` refactors
By teoxoy in https://github.com/gfx-rs/wgpu/pull/4803
* #4805 [naga] Improve ConstantEvaluatorError::InvalidCastArg message.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4805
* #4801 update deno
By crowlKats in https://github.com/gfx-rs/wgpu/pull/4801
* #4806 Fixes and changes to the documentation for increasing clarity
By Blatko1 in https://github.com/gfx-rs/wgpu/pull/4806
* #4809 [naga wgsl-in] Use a better span for errors in constructors.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4809
* #4808 [naga wgsl-in] Drop spanless labels from front-end error messages.
By jimblandy in https://github.com/gfx-rs/wgpu/pull/4808
* #4822 Fix expected error message
By teoxoy in https://github.com/gfx-rs/wgpu/pull/4822
* #4759 Add feature float32-filterable
By almarklein in https://github.com/gfx-rs/wgpu/pull/4759
* #4813 Bump core-graphics-types from 0.1.2 to 0.1.3
By dependabot[bot] in https://github.com/gfx-rs/wgpu/pull/4813
Differential Revision: https://phabricator.services.mozilla.com/D195438
2023-12-04 22:30:03 +00:00
Nicolas Silva
bc39e78852
Bug 1865830 - Implement CommandEncoder.clearBuffer. r=webgpu-reviewers,webidl,emilio,ErichDonGubler
...
Differential Revision: https://phabricator.services.mozilla.com/D194233
2023-12-04 22:11:21 +00:00
Iulian Moraru
95f4da1719
Backed out 8 changesets (bug 1839051) for causing assertion failures on NotificationController.cpp. CLOSED TREE
...
Backed out changeset 94a4c163e417 (bug 1839051)
Backed out changeset 5204b97e40bc (bug 1839051)
Backed out changeset 8443a22a399d (bug 1839051)
Backed out changeset 2ab1e27d5945 (bug 1839051)
Backed out changeset 20a850a4fd7e (bug 1839051)
Backed out changeset 658568fe9662 (bug 1839051)
Backed out changeset 82525b11a7c3 (bug 1839051)
Backed out changeset 720e6863c41a (bug 1839051)
2023-12-04 22:34:25 +02:00
Glenn Watson
6e436ebb49
Bug 1868026 - Fix compositor surface promotion with underlay + masks on translucent slices r=gfx-reviewers,lsalzman
...
Differential Revision: https://phabricator.services.mozilla.com/D195384
2023-12-04 19:09:41 +00:00
Jens Stutte
c0200af50a
Bug 1839051 - Use std::sort for nsTArray and deprecate NS_QuickSort. r=emilio,nika,janv,dom-storage-reviewers
...
Until now we used our own, well-aged C-style implementation of quick sort, based on code from 1992/93. Apart from being old (which is not bad as such), this code had some
disadvantages, namely:
- It was not typesafe and invocations could not be optimized by inlining.
- [Quick Sort](https://en.wikipedia.org/wiki/Quicksort ) has a worst case performance of O(n<sup>2</sup>).
- Quick Sort can recurse deeply and thus cause stack overflows.
- On Windows, [Control Flow Guard](https://learn.microsoft.com/en-us/windows/win32/secbp/control-flow-guard ) inspects any function invocation via function pointers to check if the called function was known at compile time. This comes with a [notable overhead](https://bugzilla.mozilla.org/show_bug.cgi?id=1842079 ) when calling the compare function repeatedly.
`std::sort` and `std::stable_sort` are preferred and have an optimal, guaranteed worst case performance.
Differential Revision: https://phabricator.services.mozilla.com/D181339
2023-12-04 18:33:39 +00:00
Sylvestre Ledru
ef35fa7374
Bug 1519636 - Reformat recent changes to the Google coding style r=emilio,media-playback-reviewers,padenot
...
clang-format version 17.0.6 (taskcluster-QueHFUviQeyM8Y7r_d7MQQ)
# ignore-this-changeset
Differential Revision: https://phabricator.services.mozilla.com/D195397
2023-12-04 10:09:36 +00:00
Hiroyuki Ikezoe
d3d4a5137d
Bug 1715179 - Handle `overflow: visible` case in OOP iframes. r=botond
...
Differential Revision: https://phabricator.services.mozilla.com/D193755
2023-12-04 09:31:23 +00:00
Hiroyuki Ikezoe
80e4683e9e
Bug 1715179 - Allow double-tap-to-zoom to zoom in contents inside OOP iframes. r=botond
...
Depends on D186325
Differential Revision: https://phabricator.services.mozilla.com/D186326
2023-12-04 09:31:23 +00:00
Hiroyuki Ikezoe
7f283c3839
Bug 1715179 - Propagate transform matrix and relevant zoom values to convert CSSRect/CSSPoint in OOPIF to top level content document cooords. r=botond
...
Depends on D186324
Differential Revision: https://phabricator.services.mozilla.com/D186325
2023-12-04 09:31:23 +00:00
Hiroyuki Ikezoe
f89be3e0e6
Bug 1715179 - Propagate VisualViewport rect and the root scrollable rect and use them on the main-thread. r=botond
...
Depends on D186323
Differential Revision: https://phabricator.services.mozilla.com/D186324
2023-12-04 09:31:22 +00:00
Hiroyuki Ikezoe
3aa9a37a1e
Bug 1715179 - Add two test cases where `touch-action:manipulation` prevents double-tap-to-zoom. r=botond
...
Though there's no open bugs corresponding to these test cases, there were no
test cases to make sure `touch-action:manipulation` prevents double-tap-to-zoom
on __touchscreen__ and doesn't prevent it on __touchpad__.
I've confirmed both Chrome and Safari have the same behavior on touchpad.
Differential Revision: https://phabricator.services.mozilla.com/D186321
2023-12-04 09:31:22 +00:00
Botond Ballo
be52d1d4a2
Bug 1846935
- In helper_relative_scroll_smoothness, limit the duration for which samples are checked. r=hiro
...
During local testing, I observed the test failing because we were still
collecting samples after the animations had completed. Since we are
only synthesizing wheel events that trigger animations for a certain
duration (1500 ms), it's safer to only check samples for 1500 ms.
Differential Revision: https://phabricator.services.mozilla.com/D194019
2023-12-04 01:51:15 +00:00
Botond Ballo
2e086fbfa6
Bug 1846935
- In helper_relative_scroll_smoothness, relax the expectation on scroll offsets from strictly increasing to non-decreasing for MSD physics. r=hiro
...
Depends on D195351
Differential Revision: https://phabricator.services.mozilla.com/D195352
2023-12-04 01:51:14 +00:00
Botond Ballo
750a4885f8
Bug 1846935
- In APZ tests that need to slow down smooth scroll animations, slow them down with MSD physics too. r=hiro
...
Differential Revision: https://phabricator.services.mozilla.com/D195351
2023-12-04 01:51:14 +00:00
Botond Ballo
30b4e05998
Bug 1846935
- Run helper_relative_scroll_smoothness in both Bezier and MSD physics variants. r=hiro
...
Depends on D195349
Differential Revision: https://phabricator.services.mozilla.com/D195350
2023-12-04 01:51:13 +00:00
Botond Ballo
99bd89bff6
Bug 1846935
- Factor out a buildRelativeScrollSmoothnessVariants helper. r=hiro
...
Depends on D195348
Differential Revision: https://phabricator.services.mozilla.com/D195349
2023-12-04 01:51:13 +00:00
Botond Ballo
a6c8fd0a4d
Bug 1846935
- Factor out a getSmoothScrollPrefs helper. r=hiro
...
Depends on D195347
Differential Revision: https://phabricator.services.mozilla.com/D195348
2023-12-04 01:51:12 +00:00
Botond Ballo
516f7c2a26
Bug 1846935
- Use 'scrollend' to wait for the animation to complete in helper_mainthread_scroll_bug1662379.html. r=hiro
...
Depends on D193393
Differential Revision: https://phabricator.services.mozilla.com/D195347
2023-12-04 01:51:12 +00:00
Botond Ballo
4abbad51c7
Bug 1846935
- Use FuzzyEqualsCoordinate in the computation of userScrolled. r=hiro
...
Differential Revision: https://phabricator.services.mozilla.com/D193393
2023-12-04 01:51:12 +00:00
Sylvestre Ledru
d6cea3eede
Bug 1519636 - Remove nbsp in the doc r=firefox-source-docs-reviewers,geckoview-reviewers,ahal,m_kato
...
Differential Revision: https://phabricator.services.mozilla.com/D194782
2023-12-03 11:01:53 +00:00
Noemi Erli
a08fb1a2d8
Backed out 2 changesets (bug 1867639) for causing wrench bustages CLOSED TREE
...
Backed out changeset 014768de11ca (bug 1867639)
Backed out changeset 375a5bb63fa7 (bug 1867639)
2023-12-01 23:21:07 +02:00
Ben Dean-Kawamura
c34d9f3c2d
Bug 1867639 - Vendor in new application-services / Glean / UniFFI. r=markh,janerik,supply-chain-reviewers,mach-reviewers,ahal
...
Updated uniffi-bindgen-gecko-js to work with UniFFI 0.25.2:
- Use `config.toml` to list UniFFI sources. This makes it easier to
associate data with them, for example the `crate_name` field that's
now required to generate the sources.
- Enable the `extern-rustbuffer` feature on `uniffi_core`
- Updated the external types fixture to work around
https://github.com/mozilla/uniffi-rs/issues/1872
Ran mach vendor and mach cargo vet to update the Rust crates.
Differential Revision: https://phabricator.services.mozilla.com/D195163
2023-12-01 14:26:03 +00:00
Alex Jakobi
6b974d7582
Bug 1683776 - Reset focus state when adopting child tab from other window. r=botond
...
Differential Revision: https://phabricator.services.mozilla.com/D191298
2023-12-01 05:50:15 +00:00
Hiroyuki Ikezoe
a9d2d55848
Bug 1783681 - Make sure to sample scroll offsets on the next couple of frames if we have changes to the scroll offset. r=botond
...
Since bug 1675614 we can effectively handle multiple input events in a single
vsync tick.
In the cases of smooth scrolling it doesn't matter because there should be an
`mAnimation` instance, thus AsyncPanZoomController::UpdateAnimation never
returns false [1] even if the function gets called multiple times in a vsync
tick, it will ensure compositing (though every sampling time stamp in the vsync
tick is identical thus whether to sample the animated offset isn't a problem).
But in the cases of instant scrolling the function returns false on the second
and subsequent calls, it skips generating the next frame [2] on the next
composition because we don't invoke
CompositorBridgeParent::ScheduleRenderOnCompositorThread in the case where the
function returns false.
[1] https://searchfox.org/mozilla-central/rev/ffbf86ccd1f7c14346da94f39023a8f012d01983/gfx/layers/apz/src/AsyncPanZoomController.cpp#4655-4657
[2] https://searchfox.org/mozilla-central/rev/ce4599d3d4e20e34cb6db68f255c3dff1aec246b/gfx/layers/wr/WebRenderBridgeParent.cpp#2338-2341
[3] https://searchfox.org/mozilla-central/rev/ce4599d3d4e20e34cb6db68f255c3dff1aec246b/gfx/layers/apz/src/APZCTreeManager.cpp#752-755
Differential Revision: https://phabricator.services.mozilla.com/D186851
2023-12-01 02:27:44 +00:00
sotaro
faaff9538c
Bug 1867447 - Add workaround for video overlay's SwapChain Present() on Windows r=gfx-reviewers,lsalzman
...
Implement a workaround of overlay's SwapChain Present() that exists in chromium.
Differential Revision: https://phabricator.services.mozilla.com/D195073
2023-11-30 19:43:29 +00:00
Cosmin Sabou
36061c2d62
Backed out changeset 7aa58b8ef68a (bug 1655101) for causing bustages on dom/WebGLIpdl.h. CLOSED TREE
2023-11-30 21:06:53 +02:00
Kelsey Gilbert
f69f941a95
Bug 1655101 - Allow webgl.texImage gpu-blit for RGB8 if supported. r=gfx-reviewers,aosmond
...
Differential Revision: https://phabricator.services.mozilla.com/D194943
2023-11-30 17:40:42 +00:00
Sandor Molnar
51f7095383
Backed out changeset 88c02f86a668 (bug 1783681) for causing Gtest failures CLOSED TREE
2023-11-30 11:12:18 +02:00
Hiroyuki Ikezoe
8f24f2aa1d
Bug 1783681 - Make sure to sample scroll offsets on the next two frames in the case of keyboard instant scrolling. r=botond
...
Since bug 1675614 we can effectively handle multiple input events in a single
vsync tick.
In the cases of async scrolling it doesn't matter because there should be an
`mAnimation` instance, thus AsyncPanZoomController::UpdateAnimation never
returns false [1] even if the function gets called multiple times in a vsync
tick, it will ensure compositing (though every sampling time stamp in the vsync
tick is identical thus whether to sample the animated offset isn't a problem).
But in the cases of instant scrolling the function returns false on the second
and subsequent calls, it skips generating the next frame [2] on the next
composition because we don't invoke
CompositorBridgeParent::ScheduleRenderOnCompositorThread in the case where the
function returns false.
[1] https://searchfox.org/mozilla-central/rev/ffbf86ccd1f7c14346da94f39023a8f012d01983/gfx/layers/apz/src/AsyncPanZoomController.cpp#4655-4657
[2] https://searchfox.org/mozilla-central/rev/ce4599d3d4e20e34cb6db68f255c3dff1aec246b/gfx/layers/wr/WebRenderBridgeParent.cpp#2338-2341
[3] https://searchfox.org/mozilla-central/rev/ce4599d3d4e20e34cb6db68f255c3dff1aec246b/gfx/layers/apz/src/APZCTreeManager.cpp#752-755
Differential Revision: https://phabricator.services.mozilla.com/D186851
2023-11-30 07:55:13 +00:00
Ashley Hale
8c0266380b
Bug 1843782 - WebGL software rendering when mesa/vmwgfx driver detected r=gfx-reviewers,bradwerth,jrmuizel,jgilbert
...
Differential Revision: https://phabricator.services.mozilla.com/D192039
2023-11-29 21:45:27 +00:00
sotaro
c199b59dd1
Bug 1866021 - Set to MultithreadProtected during creating CompositorDevice r=gfx-reviewers,jrmuizel
...
Set to MultithreadProtected by gfx::DeviceManagerDx::GetImageDevice() caused a thread safe problem. MultithreadProtected needs to be set during CompositorDevice creation.
Differential Revision: https://phabricator.services.mozilla.com/D194907
2023-11-29 04:16:19 +00:00
Butkovits Atila
fe1644b3dc
Backed out changeset 8d11a3a0d707 (bug 1843782) for causing failures complaining about RemoteProcessMonitor . CLOSED TREE
2023-11-29 05:51:34 +02:00
Ashley Hale
5fed10025e
Bug 1843782 - WebGL software rendering when mesa/vmwgfx driver detected r=gfx-reviewers,bradwerth,jrmuizel,jgilbert
...
Differential Revision: https://phabricator.services.mozilla.com/D192039
2023-11-29 02:15:17 +00:00
Karl Tomlinson
e01e8e4950
Bug 1863846 change VideoInfo::Rotation to non-nested enum class VideoRotation so that it can be forward declared r=aosmond,media-playback-reviewers,padenot
...
Differential Revision: https://phabricator.services.mozilla.com/D193163
2023-11-29 01:44:45 +00:00
Stanca Serban
2b58cc84d0
Backed out 5 changesets (bug 1715179) for causing mochitests failures in test_group_double_tap_zoom-2.html. CLOSED TREE
...
Backed out changeset 600afc2dc0ca (bug 1715179)
Backed out changeset 75c2c7f6230e (bug 1715179)
Backed out changeset b851e0aff383 (bug 1715179)
Backed out changeset 0acfcbbdf460 (bug 1715179)
Backed out changeset b0c83c964ccf (bug 1715179)
2023-11-28 18:45:32 +02:00
Hiroyuki Ikezoe
3482b47436
Bug 1715179 - Handle `overflow: visible` case in OOP iframes. r=botond
...
Differential Revision: https://phabricator.services.mozilla.com/D193755
2023-11-28 09:42:23 +00:00
Hiroyuki Ikezoe
bde5e3b047
Bug 1715179 - Allow double-tap-to-zoom to zoom in contents inside OOP iframes. r=botond
...
Depends on D186325
Differential Revision: https://phabricator.services.mozilla.com/D186326
2023-11-28 09:42:22 +00:00
Hiroyuki Ikezoe
ed4976ed3c
Bug 1715179 - Propagate transform matrix and relevant zoom values to convert CSSRect/CSSPoint in OOPIF to top level content document cooords. r=botond
...
Depends on D186324
Differential Revision: https://phabricator.services.mozilla.com/D186325
2023-11-28 09:42:22 +00:00
Hiroyuki Ikezoe
b2f944eea1
Bug 1715179 - Propagate VisualViewport rect and the root scrollable rect and use them on the main-thread. r=botond
...
Depends on D186323
Differential Revision: https://phabricator.services.mozilla.com/D186324
2023-11-28 09:42:21 +00:00
Hiroyuki Ikezoe
61c8e65c69
Bug 1715179 - Add two test cases where `touch-action:manipulation` prevents double-tap-to-zoom. r=botond
...
Though there's no open bugs corresponding to these test cases, there were no
test cases to make sure `touch-action:manipulation` prevents double-tap-to-zoom
on __touchscreen__ and doesn't prevent it on __touchpad__.
I've confirmed both Chrome and Safari have the same behavior on touchpad.
Differential Revision: https://phabricator.services.mozilla.com/D186321
2023-11-28 09:42:21 +00:00
Sandor Molnar
3b95748905
Backed out changeset c1e95a42b8d7 (bug 1843782) for causing gv-junit-fis failures. CLOSED TREE
2023-11-28 02:31:02 +02:00
Ashley Hale
5150f6a2bf
Bug 1843782 - WebGL software rendering when mesa/vmwgfx driver detected r=gfx-reviewers,bradwerth,jrmuizel,jgilbert
...
Differential Revision: https://phabricator.services.mozilla.com/D192039
2023-11-27 23:25:14 +00:00
Brad Werth
d06c9ec44b
Bug 1859625 Part 4: Do feature support for OPENGL_COMPOSITING in InitOpenGLConfig. r=jgilbert
...
This feature needs to have defaults set before user force enables are
processed. Before this change, both ImportContentDeviceData and
InitOpenGLConfig potentially could do both defaults and user setting,
making it an error if both functions are called (in either order). This
change makes it so that InitOpenGLConfig is solely responsible for
setting defaults and user force enable for this feature. This change
prevents the content process from inheriting parent process data
available in ImportContentDeviceData, but as long as InitOpenGLConfig
fully configures the feature and makes the right decision, that doesn't
matter.
Differential Revision: https://phabricator.services.mozilla.com/D194436
2023-11-27 21:11:11 +00:00
Brad Werth
cb5944eb4c
Bug 1859625 Part 3: Stop sending the GetOutputColorProfileData message. r=ipc-reviewers,mccr8
...
Differential Revision: https://phabricator.services.mozilla.com/D193139
2023-11-27 21:11:10 +00:00
Brad Werth
7ae9549693
Bug 1859625 Part 2: Stop sending the GetGraphicsDeviceInitData message. r=ipc-reviewers,mccr8
...
Differential Revision: https://phabricator.services.mozilla.com/D192999
2023-11-27 21:11:10 +00:00
Brad Werth
8272a162fb
Bug 1859625 Part 1: Stop sending the GetGfxVars message. r=ipc-reviewers,mccr8
...
Differential Revision: https://phabricator.services.mozilla.com/D192996
2023-11-27 21:11:09 +00:00