WaylandDMABufSurface is used as a backend for WaylandDMABUFTextureHostOGL.
Pixel data of WaylandDMABufSurface are located at GPU memory and are
binded from WaylandDMABUFTextureClientOGL.
WaylandDMABufSurface can be binded as EGLImage so EGLImageTextureSource is used.
Depends on D46836
Differential Revision: https://phabricator.services.mozilla.com/D46837
--HG--
extra : moz-landing-system : lando
WaylandDMABufSurface is used as a backend for WaylandDMABUFTextureClientOGL.
Pixel data of WaylandDMABufSurface are located at GPU memory and can be
shared by processes.
Differential Revision: https://phabricator.services.mozilla.com/D46836
--HG--
extra : moz-landing-system : lando
When a JSScript is partially initialized we must detect this and not
generate coverage information. This incomplete script may still have an
entry in the ScriptLCovMap. The existing collectCodeCoverageInfo code
handled this correctly but the new CollectScriptCoverage function did
not.
Differential Revision: https://phabricator.services.mozilla.com/D46888
--HG--
extra : moz-landing-system : lando
This also allows us to remove TabGroup::FindItemWithName, which is a
big step towards removing TabGroup entirely.
Differential Revision: https://phabricator.services.mozilla.com/D46285
--HG--
extra : moz-landing-system : lando
As it turns out, the difference between the snapped local rect and the
unsnapped local rect was not just that the former contained snapped
primitives and the latter contained unsnapped primitives, but also that
the former took into account surface inflation for primitives, the
entire clip chain instead of just the primitive's local clip, and
removal of culled primitives. As such, the picture's rects can be wildly
different, even if snapping has been taken care of earlier, and parts of
WebRender have come to rely upon this more accurate representation of a
picture.
Differential Revision: https://phabricator.services.mozilla.com/D46605
--HG--
extra : moz-landing-system : lando
This has been unnecessary/dead since bug 1522051 removed singleton CallObjects.
Differential Revision: https://phabricator.services.mozilla.com/D46788
--HG--
extra : moz-landing-system : lando
Let's use single Wayland configuration point at gfxPlatformGtk instead of various GDK_IS_X11_DISPLAY() calls.
Also provide info about enabled DMABuf surfaces when Wayland backend is used.
Depends on D46842
Differential Revision: https://phabricator.services.mozilla.com/D46843
--HG--
extra : moz-landing-system : lando
WaylandDMABufSurface is used as a backend for WaylandDMABUFTextureHostOGL.
Pixel data of WaylandDMABufSurface are located at GPU memory and are
binded from WaylandDMABUFTextureClientOGL.
WaylandDMABufSurface can be binded as EGLImage so EGLImageTextureSource is used.
Depends on D46836
Differential Revision: https://phabricator.services.mozilla.com/D46837
--HG--
extra : moz-landing-system : lando
WaylandDMABufSurface is used as a backend for WaylandDMABUFTextureClientOGL.
Pixel data of WaylandDMABufSurface are located at GPU memory and can be
shared by processes.
Differential Revision: https://phabricator.services.mozilla.com/D46836
--HG--
extra : moz-landing-system : lando
Adds a module documentation in segment.rs giving an overview of the role of primitive segments and how they interact with clipping. Also reformatted the clip.rs documentation to play well with rustdoc.
Differential Revision: https://phabricator.services.mozilla.com/D46472
--HG--
extra : moz-landing-system : lando
To hide some functions from `AudioChannelAgent` to avoid an access from `AudioChannelAgentCallback` (eg. media element, audio destination node...), and only allow `AudioChannelService` to use those functions.
Differential Revision: https://phabricator.services.mozilla.com/D45755
--HG--
extra : moz-landing-system : lando
Now other `WindowXXXChanged()` would receive the change directly from their input parameter, we should make `WindowVolumeChanged()` consistent with them, instead of asking `AudioChannelService` again.
Differential Revision: https://phabricator.services.mozilla.com/D45754
--HG--
extra : moz-landing-system : lando
After applying patch4, now we would pull the change from `AudioChannelService` everytime after starting the agent, so we don't need to rely on letting `NotifyStartedPlaying()` to modify the config and use it to update our state.
Differential Revision: https://phabricator.services.mozilla.com/D45753
--HG--
extra : moz-landing-system : lando
As we start audio capturing explicitly, we should also take responsibility to stop audio capturing when we don't need it.
We were hiding too many details on `AudioChannelAgent` before, which allow us hard to know who and where we handle audio capturing.
Differential Revision: https://phabricator.services.mozilla.com/D45752
--HG--
extra : moz-landing-system : lando
Instead of calling those callback functions seperately, we could provide a function to pull those changes at once after starting the agent.
In addition, `WindowXXXChanged` are callback functions of `nsIAudioChannelAgentCallback`, so they should only be called by `AudioChannelAgent`, to indicate receiving the change from `AudioChannelService`. We should not call them directly.
Differential Revision: https://phabricator.services.mozilla.com/D45751
--HG--
extra : moz-landing-system : lando
The suspend state and muted state are two different things, so changing the suspended state should not affect on the muted state.
As nsAPI doesn't provide suspending API, both muting and suspending are actually sharing the same implementation, which is to mute/unmute nsAPI.
Although we have used two separate variables to store muted and suspended state, in order to make them independent, we still don't want to unexpectedly unmute nsAPI when resuming from suspended state.
Therefore, before unmuting nsAPI, we should consider both states.
Differential Revision: https://phabricator.services.mozilla.com/D46319
--HG--
extra : moz-landing-system : lando
We have already had the same checking in `AudioCaptureStreamChange()`, so we can remove the checking in `AudioCaptureStreamChangeIfNeeded()`.
Differential Revision: https://phabricator.services.mozilla.com/D45749
--HG--
extra : moz-landing-system : lando
`nsIAudioChannelAgent` was created a common interface for a usage of in both js and C++ before, now we have no any JS code would use `nsIAudioChannelAgent`, it's only used in C++ code.
Therefore, in a coming refactoring (bug1580662), we will remove `nsIAudioChannelAgent` and use `AudioChannelAgent` as the only interface. Here we can make these classes start to reference `AudioChannelAgent`, instead of `nsIAudioChannelAgent`.
Differential Revision: https://phabricator.services.mozilla.com/D45748
--HG--
extra : moz-landing-system : lando