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

34696 Коммитов

Автор SHA1 Сообщение Дата
Mihai Alexandru Michis 13b5aea376 Bug 1574745 - Fix bustages on OS X Cross Compiled. a=bustage-fix CLOSED TREE
--HG--
extra : amend_source : 3fcae6bae609b58437fbc1e981dc00b03a3e3432
2019-08-31 05:05:53 +03:00
Markus Stange 6d617acaca Bug 1574745 - Get everything ready for rendering into multiple native layers. r=mattwoodrow
This change breaks the draw-fps overlay when using native layers. I'll try to
fix that in a new bug soon.

The do { } while(0) loop looks a bit odd, but it'll get replaced with a proper
loop in bug 1574586.

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

--HG--
extra : moz-landing-system : lando
2019-08-30 21:52:32 +00:00
Markus Stange fe46c46820 Bug 1574745 - Reorder layer rendering invocations. r=mattwoodrow
This change groups the work that has to be done per compositing tile.

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

--HG--
extra : moz-landing-system : lando
2019-08-30 19:52:56 +00:00
Markus Stange 2fccca3dcc Bug 1574745 - Maintain a full window render target when rendering to native layers with CompositorOGL. r=mattwoodrow
This makes profiler screenshots and frame recording work again, when native
layers are used. The copying is a bit unfortunate. Maybe we can combine this
copy with the first downscaling step in the future. Or for frame recording,
which doesn't use downscaling, we could readback the layers individually and
reassemble them in CPU memory. But both of those solutions are more complex
than this.

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

--HG--
extra : moz-landing-system : lando
2019-08-30 19:52:40 +00:00
Markus Stange b2ce563f4b Bug 1574745 - Change BlitFrameBufferToFrameBuffer to take rects instead of sizes. r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D43876

--HG--
extra : moz-landing-system : lando
2019-08-31 01:30:53 +00:00
Markus Stange e9142df968 Bug 1574745 - Move ShouldRecordFrames() from BasicCompositor to Compositor because CompositorOGL will need it. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D43875

--HG--
extra : moz-landing-system : lando
2019-08-30 19:52:15 +00:00
Markus Stange 8490842d2f Bug 1574745 - Calculate mShouldInvalidateWindow at the beginning of the frame. r=mattwoodrow
This is so that we can invalidate all layers when screenshot profiling has
started, and not just the first layer.

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

--HG--
extra : moz-landing-system : lando
2019-08-30 19:52:13 +00:00
Markus Stange 611b0edd41 Bug 1574745 - Add BeginFrameForNativeLayers() and Begin/EndRenderingToNativeLayer. r=mattwoodrow
This will let us render into multiple layers within one compositor frame.

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

--HG--
extra : moz-landing-system : lando
2019-08-30 21:37:55 +00:00
Markus Stange 603b907093 Bug 1574745 - Add BeginFrameForTarget and replace Set/ClearTargetContext. r=mattwoodrow
This removes any *TargetContext methods from the Compositor interface and moves
 mTarget tracking into the compositor implementations.

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

--HG--
extra : moz-landing-system : lando
2019-08-30 19:51:59 +00:00
Markus Stange 5dc3f8c82a Bug 1574745 - Rename BeginFrame to BeginFrameForWindow. r=mattwoodrow
In the end we want to have BeginFrameForWindow, BeginFrameForTarget, and
BeginFrameForNativeLayers, the latter with multiple Begin/EndRenderingToNativeLayer
pairs nested inside.

This is the first step.

CompositorOGL and CompositorD3D11 keep their internal BeginFrame method but make
it private.

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

--HG--
extra : moz-landing-system : lando
2019-08-30 19:51:55 +00:00
Markus Stange cb05c82010 Bug 1574745 - Make DrawGeometry culling work more reliably. r=mattwoodrow
The call to TransformAndClipBounds already clips destRect to renderBounds.
However, if the resulting rect was empty, the Inflate call would make it
non-empty again. And now the decision whether we would cull would depend on the
rect's position: Sometimes TransformAndClipBounds would place the empty rect at
a position along an edge of renderBounds, and then the inflated-from-nothingness
2x2 rect would overlap renderBounds and we wouldn't cull.

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

--HG--
extra : moz-landing-system : lando
2019-08-30 19:51:45 +00:00
Markus Stange 4bcd4b8795 Bug 1574745 - Respect render target clip during DrawGeometry culling and overdraw pixel counting. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D43869

--HG--
extra : moz-landing-system : lando
2019-08-30 19:51:37 +00:00
Markus Stange c3ccb5e5ca Bug 1574745 - Prepare CompositorOGL for native layers that are not located at (0, 0). r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D42424

--HG--
extra : moz-landing-system : lando
2019-08-30 19:49:58 +00:00
Markus Stange 77e2ee0c73 Bug 1574745 - Treat aClipRect in CompositorOGL::DrawGeometry correctly when drawing to a root render target that's not at (0, 0). r=mattwoodrow
This uses the same workaround as BasicCompositor.

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

--HG--
extra : moz-landing-system : lando
2019-08-30 19:49:46 +00:00
Markus Stange e8fb08f553 Bug 1574745 - Prepare BasicCompositor for layers that are not located at (0, 0). r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D43867

--HG--
extra : moz-landing-system : lando
2019-08-30 19:49:27 +00:00
Markus Stange c9db8b17d1 Bug 1574745 - Use an explicit offset to deal with the fact that aClipRect in Compositor::DrawGeometry is relative to (0, 0) for the root render target, and not in the render target's device space. r=mattwoodrow
aClipRect is relative to
closestAncestorContainerLayerWithIntermediateSurface->GetVisibleRegion().GetBounds().TopLeft()
or (0, 0) if there is no ancestor with an intermediate surface.
It gets computed by Layer::CalculateScissorRect.
So if there is an intermediate surface, that origin matches the render target
origin. But if there is no intermediate surface, it does not always match: the
root render target's origin is not necessarily (0, 0).

In the past, BasicCompositor dealt with this by using the transform on the root
render target's mDrawTarget, which gets set in CreateRenderTargetAndClear
(renamed to CreateRootRenderTarget in this patch). Render targets created in the
regular CreateRenderTarget did not have a transform.
This allowed DrawGeometry to only conditionally apply an offset to aClipRect;
the offset was applied by calling PushClipRect before resetting the transform.
Now all render targets have a translation by -offset on their DrawTarget, not
just the root render target.

I went with an explicit "clip space origin" field on the render target.
Other alternatives would have been:
 - Having a bool IsRootRenderTarget() and using that to conditionally offset
   aClipRect by the render target origin or not.
 - Changing Layer::CalculateScissorRect so that the clip space origin is always
   (0, 0). I actually tried this first but ran into trouble with the MLGPU code.
   We can do it later.

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

--HG--
extra : moz-landing-system : lando
2019-08-30 19:49:14 +00:00
Bob Owen 2bee21f74c Bug 1575838: Check that we can create a similar DrawTarget first in canvas Adjusted targets. r=mattwoodrow
This also fixes DrawTargetSkia::CanCreateSimilarDrawTarget because currently
if only one of the height or width is negative then it doesn't get caught.

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

--HG--
extra : moz-landing-system : lando
2019-08-30 17:14:44 +00:00
Bob Owen 4ad6464c7c Bug 1575844: Allow for null/empty GradientStops in Moz2D recording code. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D43074

--HG--
extra : moz-landing-system : lando
2019-08-30 17:14:22 +00:00
Nicolas Silva 55060079d9 Bug 1562869 - Check for NaNs in project_rect. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D44114

--HG--
extra : moz-landing-system : lando
2019-08-30 11:27:40 +00:00
Jonathan Kew d762d6259d Bug 1576846 - Fix the content-process's use of mAliasTable to temporarily record alternate font family names on Windows. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D43746

--HG--
extra : moz-landing-system : lando
2019-08-30 13:14:26 +00:00
Jonathan Kew dc36677a7c Bug 1577669 - Cast to uint32_t before left-shifting byte value by 24 bits. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D44132

--HG--
extra : moz-landing-system : lando
2019-08-30 12:04:46 +00:00
Markus Stange 371563a53d Bug 1576499 - Remove BasicCompositor::mInvalidRect. r=mattwoodrow
It was only used in BeginFrame.

Depends on D43384

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

--HG--
extra : moz-landing-system : lando
2019-08-28 21:51:46 +00:00
Markus Stange 15208cabec Bug 1576499 - Clarify dest and buffer a little. r=mattwoodrow
The old code was making an autoRestoreTransform around dest and then quickly
overwriting dest with something new. I prefer creating the autoRestoreTransform
for buffer, which doesn't change over the course of this function.

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

--HG--
extra : moz-landing-system : lando
2019-08-28 21:50:27 +00:00
Markus Stange 044cc84a21 Bug 1576499 - Two random cleanups. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D43383

--HG--
extra : moz-landing-system : lando
2019-08-28 21:47:47 +00:00
Markus Stange 7d2a67390b Bug 1576499 - Eliminate mDrawTarget and mDrawTargetBounds. Add mFrontBuffer which is only used when drawing to a back buffer. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D43382

--HG--
extra : moz-landing-system : lando
2019-08-28 21:46:38 +00:00
Markus Stange 5726bb939e Bug 1576499 - Use mRenderTarget->mDrawTarget to create similar draw targets in CreateDrawTarget. r=mattwoodrow
This removes one user of mDrawTarget.

This change only makes a difference when we have a backbuffer; now we will create
DrawTargets that are similar to the back buffer instead of the front buffer.

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

--HG--
extra : moz-landing-system : lando
2019-08-27 20:35:44 +00:00
Markus Stange 2e7bfc34bb Bug 1576499 - Move back buffer creation out of CreateRenderTargetForWindow into BeginFrame. r=mattwoodrow
This makes it clear that only one of the possible call paths of
CreateRenderTargetForWindow can use a back buffer.
It causes some unfortunate duplication of the clear region computation.

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

--HG--
extra : moz-landing-system : lando
2019-08-27 08:20:49 +00:00
Markus Stange c94dc585ca Bug 1576499 - Split off EndRemoteDrawing from TryToEndRemoteDrawing and call it directly instead of calling TryToEndRemoteDrawing(true). r=mattwoodrow
This eliminates a boolean parameter whose meaning is not immediately obvious at the call site.

Depends on D43378

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

--HG--
extra : moz-landing-system : lando
2019-08-27 08:17:21 +00:00
Markus Stange 24bf8a7ca3 Bug 1576499 - Don't call TryToEndRemoteDrawing() in EndFrame when rendering to a copy target. r=mattwoodrow
None of the three main if branches in TryToEndRemoteDrawing were entered in that case:
 - if (!aForceToEnd && !mTarget && NeedsToDeferEndRemoteDrawing()) wasn't entered because
   mTarget was non-null.
 - if (mRenderTarget->mDrawTarget != mDrawTarget) wasn't entered because mTarget
   drawing doesn't use a back buffer.
 - if (aForceToEnd || !mTarget) wasn't entered because aForceToEnd was false and
   mTarget was non-null.

Depends on D43377

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

--HG--
extra : moz-landing-system : lando
2019-08-27 08:16:39 +00:00
Markus Stange 9c65656d3a Bug 1576499 - Move all mFullWindowRenderTarget maintenance to NormalDrawingDone(). r=mattwoodrow
It turns out there's not much benefit to creating the DrawTarget at the beginning of the frame.
It's only needed between NormalDrawingDone() and EndFrame().

Depends on D43376

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

--HG--
extra : moz-landing-system : lando
2019-08-27 08:15:08 +00:00
Markus Stange 05e96272fa Bug 1576499 - Turn aRenderBoundsOut outparam into a Maybe<> return value. r=mattwoodrow
Depends on D43375

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

--HG--
extra : moz-landing-system : lando
2019-08-26 00:58:45 +00:00
Markus Stange b018721497 Bug 1576499 - Rename actualBounds to bounds. r=mattwoodrow
Depends on D43374

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

--HG--
extra : moz-landing-system : lando
2019-08-26 00:58:45 +00:00
Markus Stange 2641a83544 Bug 1576499 - Another random rect simplification. r=mattwoodrow
Depends on D43373

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

--HG--
extra : moz-landing-system : lando
2019-08-26 00:58:44 +00:00
Markus Stange 865a952e99 Bug 1576499 - Turn aClipRectIn into a Maybe and rename it to aClipRect, now that aClipRectOut is gone. r=mattwoodrow
Depends on D43372

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

--HG--
extra : moz-landing-system : lando
2019-08-26 00:58:44 +00:00
Markus Stange eebce2e2ca Bug 1576499 - Combine the two calls to BeginFrame. r=mattwoodrow
Depends on D43371

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

--HG--
extra : moz-landing-system : lando
2019-08-26 00:58:44 +00:00
Markus Stange 0e282ae078 Bug 1576499 - Make clipRect an untyped IntRect. r=mattwoodrow
Depends on D43370

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

--HG--
extra : moz-landing-system : lando
2019-08-26 00:58:44 +00:00
Markus Stange 5381b751be Bug 1576499 - Eliminate bounds variable from LayerManagerComposite::Render. r=mattwoodrow
Depends on D43369

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

--HG--
extra : moz-landing-system : lando
2019-08-26 00:58:43 +00:00
Markus Stange 833a05e47e Bug 1576499 - Remove aClipRectOut parameter from Compositor::BeginFrame(). r=mattwoodrow
Whenever *aRenderBoundsOut was non-empty and aClipRectOut was non-null,
*aClipRectOut was set to the same value as *aRenderBoundsOut.

Depends on D43368

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

--HG--
extra : moz-landing-system : lando
2019-08-26 00:58:43 +00:00
Markus Stange ec9eb77ab3 Bug 1576499 - Change where aClipRectOut is set, in two BeginFrame implementations. r=mattwoodrow
There are three circumstances that make these transformations equivalent:
 - aClipRectIn and aClipRectOut are never both non-null.
 - The value of *aClipRectOut is ignored if *aRenderBoundsOut is empty.
 - aRenderBounds.TopLeft() is always (0, 0) because the ClientLayerManager
   calls targetBounds.MoveTo(0, 0) on the rect that eventually becomes
   aRenderBounds.
   (targetBounds -> Transaction::mTargetBounds -> TargetConfig::naturalBounds()
    -> LayerManagerComposite::mRenderBounds)

Depends on D43367

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

--HG--
extra : moz-landing-system : lando
2019-08-26 00:58:43 +00:00
Markus Stange 4b62be12b9 Bug 1576499 - Improve various rect things in BeginFrame implementations, no functional changes. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D43367

--HG--
extra : moz-landing-system : lando
2019-08-26 00:58:43 +00:00
Markus Stange 19057e1f9d Bug 1576968 - Use glFlush() instead of -[NSOpenGLContext flushBuffer] when we have no framebuffer zero. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D43648

--HG--
extra : moz-landing-system : lando
2019-08-28 21:45:23 +00:00
Sylvestre Ledru 843fae6aee Bug 1577236 - clang-10: Fix -Wimplicit-int-float-conversion warnings in gfx/ r=nical
Differential Revision: https://phabricator.services.mozilla.com/D43776

--HG--
extra : moz-landing-system : lando
2019-08-28 21:31:26 +00:00
Jeff Muizelaar 25ba978024 Bug 1577190. Don't treat Mask items like Filter items in DetectContainerLayerPropertiesBoundsChange. r=nical,mstange
This is a remnant from the previous implementation of masking. That
implementation was replaced in bug 1447880.

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

--HG--
extra : moz-landing-system : lando
2019-08-28 18:51:45 +00:00
Martin Stransky dffd5a7984 Bug 1576910 - [Wayland] Add SurfaceDescriptorDMABuf to enable dma buf surface import/export on Wayland and (potentially) X11, r=sotaro
Differential Revision: https://phabricator.services.mozilla.com/D43611

--HG--
extra : moz-landing-system : lando
2019-08-28 02:13:03 +00:00
Jonathan Kew 1121f75128 Bug 1576553 - Partial ligatures need to be drawn if either GLYPH_FILL or GLYPH_STROKE is in effect. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D43409

--HG--
extra : moz-landing-system : lando
2019-08-27 00:49:52 +00:00
Andreea Pavel 0b1366e317 Backed out 2 changesets (bug 1576553) for failing reftest at 1576553-1.html on a CLOSED TREE
Backed out changeset bc36c4359eef (bug 1576553)
Backed out changeset d653382c7997 (bug 1576553)
2019-08-27 03:43:54 +03:00
Jonathan Kew a358049095 Bug 1576553 - Partial ligatures need to be drawn if either GLYPH_FILL or GLYPH_STROKE is in effect. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D43409

--HG--
extra : moz-landing-system : lando
2019-08-26 23:05:45 +00:00
Mike Hommey 6f74a5cc9b Bug 1576034 - Fix bare-trait-objects warnings in direct-composition. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D43204

--HG--
extra : moz-landing-system : lando
2019-08-26 12:00:56 +00:00
Dorel Luca 9f6556162e Backed out changeset 025d1028313e (bug 1564851) wasn't ment to land on autoland 2019-08-26 18:11:09 +03:00
Kartikaya Gupta 5b1e8b9b47 Bug 1564851 - Disable gfx.webrender.all.qualified by default.
Differential Revision: https://phabricator.services.mozilla.com/D43456

--HG--
extra : moz-landing-system : lando
2019-08-26 14:26:19 +00:00
Markus Stange d62299cf77 Bug 1491451 - Limit CompositorOGL drawing to the invalid rect. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D42421

--HG--
extra : moz-landing-system : lando
2019-08-25 21:43:07 +00:00
Markus Stange 5349415d12 Bug 1574592 - When rendering into a copy target with CompositorOGL, and the window uses native layers for rendering, render into an offscreen RenderTarget instead of using a native layer. r=mattwoodrow
On platforms that don't use native layers for rendering, we usually want reftests
to see exactly what's going to end up in the window. It's conceivable that
rendering into offscreen framebuffers might miss bugs on those platforms (though
I'm not sure if we've seen any evidence of this).
But when we're rendering to native layers, we have non-default framebuffers either
way, so we might as well create our own framebuffer rather than asking a native
layer for one. We're not interested in getting this rendering to the screen, so
it's better to leave the native layer out of this.

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

--HG--
extra : moz-landing-system : lando
2019-08-25 17:11:39 +00:00
Markus Stange 1593f9f2ef Bug 1574592 - Create a render target per IOSurface, laying the groundwork for multiple native layers. r=mattwoodrow
This makes CompositorOGL always render into offscreen render targets.
CompositorOGL no longer expects the GLContext to have a default framebuffer.
This duplicates a bunch of code from GLContextCGL, but that code can be removed
from GLContextCGL once WebRender no longer needs it.
This also makes it so that we don't recreate render targets on every frame;
instead, we create one render target for every IOSurface in the native layer's
"swap chain" and cycle through those render targets. We only throw away the
render targets when the window is resized or closed.

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

--HG--
extra : moz-landing-system : lando
2019-08-25 17:11:25 +00:00
Markus Stange 3503a868b7 Bug 1574592 - Remove unused CompositorWidget::DrawWindowUnderlay. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D42404

--HG--
extra : moz-landing-system : lando
2019-08-25 17:11:11 +00:00
Markus Stange 28d283ab15 Bug 1574592 - Remove now-unused CompositorWidget::DoCompositorCleanup again. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D42403

--HG--
extra : moz-landing-system : lando
2019-08-25 17:11:02 +00:00
Markus Stange e0e54098e9 Bug 1574592 - Move NativeLayer management out of nsChildView and into LayerManagerComposite and RendererOGL. r=mattwoodrow
It looks like a big patch but it's mostly just moved code, with some duplication:
 - Layer creation and destruction moves to LayerManagerComposite and RendererOGL.
 - BasicCompositor IOSurface setup code moves to BasicCompositor.cpp.
 - OpenGL IOSurface setup code moves to CompositorOGL and RenderCompositorOGL.

The duplication is a bit unfortunate but the LayerManagerComposite code will
diverge from the WebRender code soon.

BeginFrame gets a new argument aNativeLayer. This argument will go away again
over the course of this patch queue. But for now, BeginFrame is the best place
to do the layer setup because it's a very close place to PreRender which is
where that code was previously.

I wasn't able to think of a nice way to give CompositorOGL and BasicCompositor
platform-specific behavior without #ifdefs. So now LayerManagerComposite uses
the "cross-platform" NativeLayer interface, but CompositorOGL and
BasicCompositor use NativeLayerCA because they actually need the IOSurface, and
they do that in #ifdef'd code.
Luckily, NativeLayerCA.h can be included in both .cpp files and in .mm files.

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

--HG--
extra : moz-landing-system : lando
2019-08-25 17:43:42 +00:00
Bastien Orivel 88e5c4b00e Bug 1576361 - Update ipc-channel to 0.12 in webrender. r=emilio
While not used in firefox, this is required to update ipc-channel in
servo

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

--HG--
extra : moz-landing-system : lando
2019-08-24 12:22:26 +00:00
sotaro dfe58e6580 Bug 1576073 - Clean up WebRenderImageHost a bit r=nical
Differential Revision: https://phabricator.services.mozilla.com/D43207

--HG--
extra : moz-landing-system : lando
2019-08-23 12:34:36 +00:00
Kearwood "Kip" Gilbert 291ee2b5f1 Bug 1574682 - Implement VREventObserver::NotifyEnumerationCompleted r=imanol
Differential Revision: https://phabricator.services.mozilla.com/D43202

--HG--
extra : moz-landing-system : lando
2019-08-23 06:30:56 +00:00
Ryan VanderMeulen 9b1cdd9e22 Bug 1576041 - Update HarfBuzz to 2.6.1. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D43201

--HG--
extra : moz-landing-system : lando
2019-08-23 14:12:12 +00:00
Timothy Nikkel 9126f41ac8 Bug 1575119. In brush_blend.glsl shader don't unpremultiply the alpha, only the colors. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D42970

--HG--
extra : moz-landing-system : lando
2019-08-23 00:09:30 +00:00
Kearwood "Kip" Gilbert 29c4fe1941 Bug 1574681 - VRManagerChild::GetVRDisplays returns void rather than bool r=thomasmo
Differential Revision: https://phabricator.services.mozilla.com/D42399

--HG--
extra : moz-landing-system : lando
2019-08-22 14:59:53 +00:00
Jonathan Kew 19da5d26be Bug 1575315 - Add noncharacter codepoints to those for which we never attempt font fallback. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D42730

--HG--
extra : moz-landing-system : lando
2019-08-22 20:59:57 +00:00
Lee Salzman abec95ddc1 Bug 1571838 - Backed out changeset a6f3fd30a0a7 (bug 1443181). r=jbonisteel
Differential Revision: https://phabricator.services.mozilla.com/D43080

--HG--
extra : moz-landing-system : lando
2019-08-22 15:15:08 +00:00
Botond Ballo 6faa60ff7c Bug 1575498 - Null-check state->mParent in GetStateForRoot(). r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D42909

--HG--
extra : moz-landing-system : lando
2019-08-22 07:15:52 +00:00
sotaro c423c98aca Bug 1557858 - Add multiple WebRenderBridgeParents support in WebRenderImageHost r=nical
Uses wr::PipelineId to identify user of WebRenderImageHost.

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

--HG--
extra : moz-landing-system : lando
2019-08-22 10:20:02 +00:00
Jonathan Kew 147bae39f1 Bug 1573249 followup, clang-format nits. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D42938

--HG--
extra : moz-landing-system : lando
2019-08-21 19:37:24 +00:00
Emilio Cobos Álvarez 4bde1e178c Bug 1575713 - Use Span<> rather than copying to return stuff from gfxFontFeatureValueSet. r=boris
It's a really minor perf improvement, but also a cleanup IMO.

Also be a bit more const-correct while at it.

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

--HG--
extra : moz-landing-system : lando
2019-08-22 00:24:47 +00:00
Emilio Cobos Álvarez dca2b09c76 Bug 1575713 - Use atoms for font-feature-values. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D42984

--HG--
extra : moz-landing-system : lando
2019-08-22 00:24:44 +00:00
Botond Ballo 52a4f25b4b Bug 1573014 - Early-exit ShrinkToDisplaySizeIfNeeded() in reader mode. r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D42967

--HG--
extra : moz-landing-system : lando
2019-08-21 23:33:14 +00:00
Emilio Cobos Álvarez f11bf00012 Bug 1575559 - Make font-variant-alternates use cbindgen. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D42859

--HG--
extra : moz-landing-system : lando
2019-08-21 22:45:26 +00:00
Mike Hommey 66d7fe943e Bug 1575420 - Replace MOZ_WIDGET_TOOLKIT value of "gtk3" with "gtk". r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D42765

--HG--
extra : moz-landing-system : lando
2019-08-21 12:25:42 +00:00
Botond Ballo 9d1532ac71 Bug 1575093 - Ensure initial-scale in a meta viewport tag is respected. r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D42949

--HG--
extra : moz-landing-system : lando
2019-08-21 22:00:43 +00:00
Jonathan Kew 129e7436f7 Bug 1573249 - patch 2 - Don't apply skip-ink to runs of CJK text, because it looks bad with many fonts. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D42529

--HG--
extra : moz-landing-system : lando
2019-08-21 15:07:20 +00:00
Jonathan Kew 38828a9be9 Bug 1573249 - patch 1 - Clean up some management of the GlyphRun array in gfxTextRun. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D42528

--HG--
extra : moz-landing-system : lando
2019-08-21 15:07:08 +00:00
Alexis Beingessner 31cd501ae3 Bug 1569131 - Also defer RecvParentCommands. r=jrmuizel
We defer ParentCommands when they come in attached to a display list,
but we forgot to defer them when they're sent directly. This was
causing us to crash when we defer updates that register textures
and the content process then suddenly decides we need to delete the
textures and only tells us through RecvParentCommands. We have no
idea what the textures are yet, so we need to defer these commands
along with everything else so that it's processed in the intended order.

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

--HG--
extra : moz-landing-system : lando
2019-08-21 13:59:49 +00:00
Coroiu Cristina f2e9770b54 Backed out 3 changesets (bug 1573249) for chrome failures at layout/inspector/tests/chrome/test_fontFaceGeneric.xul on a CLOSED TREE
Backed out changeset bdba80dae6e2 (bug 1573249)
Backed out changeset 21306e3f8d31 (bug 1573249)
Backed out changeset 3576d5b9f2db (bug 1573249)
2019-08-21 14:01:11 +03:00
Jonathan Kew 2898eb876f Bug 1573249 - patch 2 - Don't apply skip-ink to runs of CJK text, because it looks bad with many fonts. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D42529

--HG--
extra : moz-landing-system : lando
2019-08-21 09:39:02 +00:00
Jonathan Kew 64239ebc50 Bug 1573249 - patch 1 - Clean up some management of the GlyphRun array in gfxTextRun. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D42528

--HG--
extra : moz-landing-system : lando
2019-08-20 18:06:13 +00:00
Mats Palmgren 2525944e34 Bug 1574994 part 1 - Remove/replace display:-moz-inline-grid and -moz-inline-stack in tests. r=emilio
I replaced the values with -moz-inline-box in the crashtests
rather than removing them.  I think they are still valuable
after replacing the display value.

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

--HG--
extra : moz-landing-system : lando
2019-08-19 21:19:04 +00:00
Ryan VanderMeulen 943db786b5 Bug 1573841 - Update HarfBuzz to 2.6.0. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D42034

--HG--
extra : moz-landing-system : lando
2019-08-20 19:05:15 +00:00
Botond Ballo fafd7d38c6 Bug 1565525 - Clear layer transforms when a tab is moved from an APZ-enabled compositor to an APZ-disabled compositor. r=hsivonen
Depends on D42565

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

--HG--
extra : moz-landing-system : lando
2019-08-20 06:38:00 +00:00
Botond Ballo 629b3580ff Bug 1565525 - Modify MatrixMessage to carry a Maybe<Matrix>, so that a transform can be cleared by sending Nothing. r=hsivonen
Depends on D42564

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

--HG--
extra : moz-landing-system : lando
2019-08-20 06:37:05 +00:00
Botond Ballo 4232079a25 Bug 1565525 - Add helper functions to make working with Maybe<Matrix> easier. r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D42564

--HG--
extra : moz-landing-system : lando
2019-08-20 06:36:01 +00:00
Markus Stange 32ec0f3341 Bug 1491448 - Add NativeLayer::SetOpaqueRegion and implement it for NativeLayerCA by assembling opaque and transparent sublayers to cover the regions. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D40553

--HG--
extra : moz-landing-system : lando
2019-08-19 22:54:26 +00:00
Glenn Watson 0239393a23 Bug 1574838 - Allow generating dirty regions from picture caching dependency lists. r=kvark
Previously, additional dependencies (such as opacity bindings and
transforms) were stored in a simple hash set, which meant they
could not be correlated with primitive bounding rects (and thus
could not be used to derive dirty rects of a tile).

Now, by scanning the primitive list which contains the bounding
rect, we can also find additional dependencies for that primitive.
This will be used in future to create exact dirty rects (for
debugging / regression testing) and allow us to generate a
dependency descriptor for a split or merged tile from an existing
descriptor.

This patch also fixes a case where opacity bindings could result
in unnecessary invalidations, by retaining the opacity bindings
state across display lists.

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

--HG--
extra : moz-landing-system : lando
2019-08-19 21:16:53 +00:00
Markus Stange 529ee470f1 Bug 1573343 - Destroy mFullWindowRenderTarget in a different place. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D42415

--HG--
extra : moz-landing-system : lando
2019-08-19 22:41:27 +00:00
Markus Stange d417bf03ed Bug 1573343 - Use std::any_of to compute hasContentPaint. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D41681

--HG--
extra : moz-landing-system : lando
2019-08-19 22:41:07 +00:00
Markus Stange 66fc92f4e1 Bug 1573343 - Stop using LayoutDevice units in BasicCompositor. r=mattwoodrow
ScreenPixels would be a more appropriate unit. But inside BasicCompositor everything
is in the same coordinate space anyway so we're not getting much benefit from the
units. This patch eliminates a lot of .ToUnknown*() calls.

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

--HG--
extra : moz-landing-system : lando
2019-08-19 22:40:55 +00:00
Markus Stange 9fd442a1aa Bug 1573343 - Fix two comments in BasicCompositor. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D41678

--HG--
extra : moz-landing-system : lando
2019-08-19 22:40:17 +00:00
Markus Stange a5236f2abb Bug 1573343 - Remove an unnecessary null check and turn an emptiness check into an assertion. r=mattwoodrow
The null is unnecessary because mDrawTarget is already null-checked above:
If mTarget is non-null, then mDrawTarget = mTarget so mDrawTarget is non-null.
If mTarget is null, then we would enter a branch that had another null check
for mDrawTarget.

As for the assertion: When rendering to an external target (reftests),
LayerManagerComposite always sets the invalid region to the entire window, so it
should never be empty here.

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

--HG--
extra : moz-landing-system : lando
2019-08-19 22:40:05 +00:00
Markus Stange 4491f22f3b Bug 1573343 - Add mDrawTargetBounds to clarify the position of mDrawTarget in window space. r=mattwoodrow
There was an interesting "ExpandToEnclose(IntPoint(0, 0))" call in
CreateRenderTargetForWindow that snuck in some surprising behavior that this
change makes a bit more visible.

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

--HG--
extra : moz-landing-system : lando
2019-08-19 22:39:45 +00:00
Markus Stange 8b68a014ae Bug 1573343 - Pass a precise clear region to CreateRenderTargetForWindow. r=mattwoodrow
In the past, BeginFrame would clip mDrawTarget to the invalid region and then have
CreateRenderTargetForWindow clear a rectangle. So it was effectively clearing a
region, but only if BeginFrame's region clip happened to be set on the correct
DrawTarget. In the case where a back buffer was used, this was not the case:
The clip would be on mDrawTarget but the clear would happen on the back buffer
draw target. So we were clearing more than necessary.

Now we limit clearing to the invalid region even if a back buffer is used.

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

--HG--
extra : moz-landing-system : lando
2019-08-19 22:39:26 +00:00
Markus Stange a829cf1409 Bug 1573343 - Apply the translation in CreateRenderTargetForWindow instead of in BeginFrame. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D41674

--HG--
extra : moz-landing-system : lando
2019-08-19 22:39:12 +00:00
Markus Stange 19c25b1d89 Bug 1573343 - Move draw target clearing out of GetBackBufferDrawTarget. r=mattwoodrow
On Windows, where the DrawTarget is rewrapped in a Cairo/pixman DrawTarget,
this will now cause Cairo/pixman to be used for the clear.

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

--HG--
extra : moz-landing-system : lando
2019-08-19 22:39:00 +00:00
Markus Stange 2dbe70d234 Bug 1573343 - Reset the transform in a better place. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D41672

--HG--
extra : moz-landing-system : lando
2019-08-19 22:38:35 +00:00
Simon Sapin c9af673766 Bug 1568540 - Upgrade to ws 0.9 in WebRender r=emilio
[import_pr] From https://github.com/servo/webrender/pull/3720

MozReview-Commit-ID: AsI4hT0cFGJ

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

--HG--
extra : moz-landing-system : lando
2019-08-17 16:26:25 +00:00
Olli Pettay 26c09ef05a Bug 1574223, make touchstart/move passive by default also when using event handlers, not only event listeners, r=masayuki
Differential Revision: https://phabricator.services.mozilla.com/D42235

--HG--
extra : moz-landing-system : lando
2019-08-16 15:18:46 +00:00
Botond Ballo 86036ffa02 Bug 1574100 - For RefLayers with multiple metrics, only expose the event regions override for the bottom one. r=tnikkel
We only want the bottom LayerMetricsWrapper / WebRenderScrollDataWrapper to
be treated as a ref layer, and only ref layers have event regions overrides.

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

--HG--
extra : moz-landing-system : lando
2019-08-16 20:23:11 +00:00
Connor Brewster 75aedaa2f5 Bug 1573719 - Implement composite SVG filter primitive in WebRender r=nical
Differential Revision: https://phabricator.services.mozilla.com/D42057

--HG--
extra : moz-landing-system : lando
2019-08-16 16:17:01 +00:00
Connor Brewster 97f0a1af4b Bug 1561447 - Include picture shadow in local rect when building clip chain r=nical
Differential Revision: https://phabricator.services.mozilla.com/D42244

--HG--
extra : moz-landing-system : lando
2019-08-16 16:15:53 +00:00
Nicholas Nethercote b55ea25941 Bug 1572633 - Remove apz.overscroll.spring_{stiffness,friction}. r=botond
They are unused.

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

--HG--
extra : moz-landing-system : lando
2019-08-16 07:28:08 +00:00
Jeff Muizelaar 0d744a9591 Bug 1574299. Allow INTERNAL_THREADING_OPTIMIZATIONS when using WARP. r=aosmond
This seems to make a big difference when running tests with WARP.

e.g. Assertion failure: frameInfo.mDocFramesSeen == frameInfo.mDocFramesTotal,
at z:/build/build/src/gfx/webrender_bindings/RenderThread.cpp:303

and various other browser chrome test failures.

The original problem that added this flag only impacted AMD hardware as I
recall and we are unlikely to ever be running on WARP in production anyways.

When WARP is forced we also don't disable INTERNAL_THREADING_OPTIMIZATIONS.

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

--HG--
extra : moz-landing-system : lando
2019-08-15 22:37:43 +00:00
Jeff Muizelaar ade5ad48a8 Bug 1574327. Add a pref that we can use to disable d3d11 blacklist. r=aosmond
We'll use this to enable WARP on CI.

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

--HG--
extra : moz-landing-system : lando
2019-08-15 22:39:18 +00:00
Markus Stange d5d70b0f4a Bug 1491442 - Fix field order. r=fix CLOSED TREE
--HG--
extra : histedit_source : f55bd44f83746c0d1876b70ec978bc9dc8629616
2019-08-15 21:52:55 -04:00
Markus Stange 32f588365d Bug 1491442 - Remove call to ReadBuffer. r=jgilbert
There's no other caller that sets ReadBuffer to anything else, and GL_BACK is
the default for default framebuffers. Furthermore, this call triggers
GL_INVALID_OPERATION errors when called on a non-default framebuffer.

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

--HG--
extra : moz-landing-system : lando
2019-08-16 01:16:23 +00:00
Markus Stange 339de4b925 Bug 1491442 - Don't handle null render targets in this method. r=mattwoodrow
There's only one caller and it always passes a non-null render target.

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

--HG--
extra : moz-landing-system : lando
2019-08-16 01:15:59 +00:00
Markus Stange 3cfb0f5ea9 Bug 1491442 - Add interfaces mozilla::layers::NativeLayerRoot and NativeLayer, and add CoreAnimation implementations NativeLayerRootCA and NativeLayerCA. r=jrmuizel
NativeLayerRoot and NativeLayer allow building up a flat layer "tree" of sibling
layers. They're created and manipulated with a synchronous-looking API, but any
changes will only be applied to the underlying native layers when ApplyChanges()
is called. This ensures that the modifications can be limited to run within a
CoreAnimation transaction, and on a thread of the caller's choosing.
In the near future I'm planning to have LayerManagerComposite create these
layers. That's the reason for the pseudo-abstracted cross-platform C++ API:
LayerManagerComposite can create and place the layers, and any painting into the
layer surfaces will happen in the compositor implementations with platform-specific
code.
For now, the CoreAnimation implementation is the only implementation. I think
the current API will let us use the same infrastructure for DirectComposite
layers on Windows, but we'll likely need to make some API modifications once we
attempt that.
The classes are threadsafe; their methods can be called on any thread and the
caller is responsible for sufficient synchronization. In reality, there are only
two threads that would have a reason to use these layers: The compositor thread
and the main thread. The main thread creates and destroys the NativeLayerRootCA,
and sometimes it calls ApplyChanges, e.g. during window resizes. It also calls
SetBackingScale. All other methods are usually only called on the compositor
thread.

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

--HG--
extra : moz-landing-system : lando
2019-08-16 01:30:02 +00:00
Markus Stange dac6adef26 Bug 1491442 - Fold DoWidgetCleanup and DetachWidget into Compositor::Destroy. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D40867

--HG--
extra : moz-landing-system : lando
2019-08-16 01:09:48 +00:00
Markus Stange 62430de27f Bug 1491442 - Add CompositorWidget::DoCompositorCleanup() to give the widget a chance to clean up any state from PreRender/PostRender on the correct thread. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D40514

--HG--
extra : moz-landing-system : lando
2019-08-16 01:09:26 +00:00
Markus Stange 327b689a51 Bug 1491442 - Make reftest readback read from the current render target. r=mattwoodrow
This removes the assumption that there is a default framebuffer to read from,
in order to prepare for a world in which all rendering goes into non-default
framebuffers.
The current render target's framebuffer is already bound when this function is
called.

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

--HG--
extra : moz-landing-system : lando
2019-08-16 01:09:03 +00:00
Imanol Fernandez efb7b0fed5 Bug 1574218 - Fix broken VRManagerChild::NotifyPresentationGenerationChanged event. r=kip
Fix broken VRManagerChild::NotifyPresentationGenerationChanged event.

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

--HG--
extra : moz-landing-system : lando
2019-08-15 23:18:41 +00:00
Markus Stange 54166343c6 Bug 1573668 - Add MacIOSurface::GetAsDrawTargetLocked. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D41844

--HG--
extra : moz-landing-system : lando
2019-08-15 04:54:57 +00:00
Markus Stange 352f3971ce Bug 1573668 - Teach MacIOSurface about the kCVPixelFormatType_32BGRA pixel format. r=mattwoodrow
Depends on D41843

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

--HG--
extra : moz-landing-system : lando
2019-08-15 03:33:58 +00:00
Markus Stange 0d99ec9a50 Bug 1573668 - Use CFTypeRefPtr for managing the IOSurfaceRef in MacIOSurface. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D41843

--HG--
extra : moz-landing-system : lando
2019-08-14 14:53:45 +00:00
Markus Stange c31b8d8a28 Bug 1573668 - Use the real IOSurfaceRef type in MacIOSurface. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D41841

--HG--
extra : moz-landing-system : lando
2019-08-14 14:50:25 +00:00
Markus Stange cd5788b20f Bug 1545262 - Update BasicCompositor's mFullWindowRenderTarget before we capture the screenshot for the current frame. r=mattwoodrow
In the past, mFullWindowRenderTarget was updated in EndFrame, so the captured
screenshots (which were captured before EndFrame) were always one frame behind.
This affected both profiler screenshots and window recording screenshots.

This also fixes a bug with the destination offset in the call to
mFullWindowRenderTarget->mDrawTarget->CopySurface(): In the case where mTarget
was non-null, those calls would use mTargetBounds.TopLeft() as the destination
offset, which is very much unrelated to anything in mFullWindowRenderTarget.
Now the destination offset for mFullWindowRenderTarget is always zero -
mFullWindowRenderTarget->mDrawTarget's device space is the same as window space.

This patch also moves the creation of mFullWindowRenderTarget down to where we
have mRenderTarget->mDrawTarget, so that we can create a DrawTarget of a type
that can efficiently copy from mRenderTarget->mDrawTarget. I think this is
important on Windows where mRenderTarget->mDrawTarget will be the Cairo/pixman
re-wrapped DrawTarget and mDrawTarget is some kind of Windows/GDI DrawTarget.

Depends on D41612

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

--HG--
extra : moz-landing-system : lando
2019-08-14 06:34:24 +00:00
Markus Stange ff3fb7eef1 Bug 1545262 - Stop clearing mFullWindowRenderTarget. r=mattwoodrow
These areas only need to be cleared in rt->mDrawTarget. Once the invalid area gets
copied over to mFullWindowRenderTarget, any cleared pixels will be copied over and
clear those pixels in mFullWindowRenderTarget.
This clear wasn't only necessary, it also sometimes cleared to much, because the
clip to the invalid region that the caller sets does not apply to this DrawTarget.

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

--HG--
extra : moz-landing-system : lando
2019-08-14 01:18:07 +00:00
Markus Stange dfad7a59cc Bug 1567319 - Discard payloads for no-op composites. r=bas
Differential Revision: https://phabricator.services.mozilla.com/D40569

--HG--
extra : moz-landing-system : lando
2019-08-15 17:54:17 +00:00
Gabriele Svelto 14db2c37b8 Bug 1571711 - Factorize crash handling out of the various process IPC classes r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D41657

--HG--
extra : moz-landing-system : lando
2019-08-15 12:06:51 +00:00
Nicholas Nethercote bcfea34a74 Bug 1573720 - Convert ui.touch_activation.duration_ms to a static pref. r=botond
The commit also adds a missing StaticPrefs_dom.h include for APZEventState.cpp.

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

--HG--
extra : moz-landing-system : lando
2019-08-15 05:30:23 +00:00
Nicholas Nethercote cb6862ab2c Bug 1573720 - Convert ui.touch_activation.delay_ms to a static pref. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D41914

--HG--
extra : moz-landing-system : lando
2019-08-15 05:30:09 +00:00
Connor Brewster 7658b3e68d Bug 1573914 - Fix backdrop-filter jitter during animation due to snap offsets r=gw
Since the filtered-backdrop is 1:1 with the backdrop, we don't want any snap offsets to shift the contents

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

--HG--
extra : moz-landing-system : lando
2019-08-15 00:09:40 +00:00
Connor Brewster 1a77c310c4 Bug 1573649 - Implement feOffset SVG filter primitive in WebRender r=nical
Differential Revision: https://phabricator.services.mozilla.com/D41840

--HG--
extra : moz-landing-system : lando
2019-08-14 20:14:25 +00:00
Connor Brewster 6b1bbb5465 Bug 1573886 - Fix backdrop-filter blur errors due to incorrect scaling r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D42013

--HG--
extra : moz-landing-system : lando
2019-08-14 20:13:06 +00:00
Jed Davis 150e57c3cc Bug 1426526 - Delete file_util from ex-Chromium IPC source. r=froydnj
Depends on D26746

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

--HG--
extra : moz-landing-system : lando
2019-08-14 22:48:42 +00:00
Jed Davis 9a41450b28 Bug 1479960 - Get rid of base::SharedMemory::handle. r=froydnj
Despite the comment saying not to use the "handle" except as an opaque
identifier, it is being used to pass the handle to other OS APIs.  Direct
access to the handle needs to be controlled to make sure freezing is
safe, so this patch replaces that with interfaces that are more explicit
about ownership and lifetime.

Depends on D26739

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

--HG--
extra : moz-landing-system : lando
2019-08-14 22:48:22 +00:00
Bogdan Tara f326b67e0e Backed out changeset c60ee628dd0e (bug 1571711) for RemoteSandboxBroker related bustages CLOSED TREE 2019-08-15 01:50:01 +03:00
Gabriele Svelto d888c0a6b5 Bug 1571711 - Factorize crash handling out of the various process IPC classes r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D41657

--HG--
extra : moz-landing-system : lando
2019-08-13 21:43:00 +00:00
arthur.iakab 3e0e0472e5 Backed out changeset 71b7ef6e0ed8 (bug 1573649) for causing wrench build bustages on svg-filter-offset-ref.yaml.
--HG--
extra : rebase_source : 30f299066d80f51169d6ef3faba107db3c01fb1f
2019-08-14 22:34:12 +03:00
Markus Stange 979634bacb Bug 1565717 - Remove all dynamic loading of IOSurface functions. r=mattwoodrow
These functions were made public in 10.6. The oldest version we support is 10.9.

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

--HG--
extra : moz-landing-system : lando
2019-08-14 11:06:22 +00:00
Markus Stange 584d4c6a82 Bug 1565717 - Remove dynamic lookup of the kIOSurface constants. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D41812

--HG--
extra : moz-landing-system : lando
2019-08-14 11:05:47 +00:00
Markus Stange 75ec9254b7 Bug 1565717 - Don't use dynamic symbol lookup for CVPixelBufferGetIOSurface. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D41811

--HG--
extra : moz-landing-system : lando
2019-08-14 11:05:24 +00:00
Markus Stange a0d7363c7f Bug 1565717 - Don't use dynamic symbol lookup for CGLTexImageIOSurface2D. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D41810

--HG--
extra : moz-landing-system : lando
2019-08-14 11:05:07 +00:00
Markus Stange a646a9d6f9 Bug 1565717 - Remove unused MacIOSurface functions. r=mattwoodrow
These were used for creating accelerated CGContexts that render to an IOSurface.
We only used those experimentally on Nightly for a while but turned that option
off because of crashes. And in the meantime, DrawTargetCG has been removed
entirely. So we'll probably never use these functions again.

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

--HG--
extra : moz-landing-system : lando
2019-08-14 10:23:47 +00:00
Connor Brewster 32a649a30a Bug 1573649 - Implement feOffset SVG filter primitive in WebRender r=nical
Differential Revision: https://phabricator.services.mozilla.com/D41840

--HG--
extra : moz-landing-system : lando
2019-08-14 14:37:05 +00:00
Nathan Froyd 87c432d06a Bug 1570982 - remove `CPP_THROW_NEW`; r=glandium
We always define it to the same thing, and we're inconsistent in whether
we use `CPP_THROW_NEW` or `throw()`, so we might as well just use the
standard C++ thing and get rid of some baggage.

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

--HG--
extra : moz-landing-system : lando
2019-08-14 01:32:41 +00:00
Matt Woodrow 9e7b5fae3f Bug 1571341 - Default to using DocumentRelative for the root document being drawn, since callers generally expect coordinates relative to the document. r=rhunt
Differential Revision: https://phabricator.services.mozilla.com/D41728

--HG--
extra : moz-landing-system : lando
2019-08-14 10:23:39 +00:00
Matt Woodrow f9d2effd9a Bug 1569930 - Handle races in CrossProcessPaint without crashing, and instead report it back to the caller. r=rhunt
Differential Revision: https://phabricator.services.mozilla.com/D41727

--HG--
extra : moz-landing-system : lando
2019-08-14 10:23:34 +00:00
Jeff Gilbert 9c8ea204ee Bug 1573700 - s/GLParseRegistryXML.py/GLConsts.py/ and port to python3+mypy. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D41873

--HG--
extra : moz-landing-system : lando
2019-08-14 02:07:40 +00:00
Coroiu Cristina b4e3ce3f87 Backed out changeset 42cdb2c4c768 (bug 1573700) for flake8 failure at builds/worker/checkouts/gecko/gfx/gl/GLConsts.py 2019-08-14 03:44:33 +03:00
Jeff Gilbert ef22bd959b Bug 1573700 - s/GLParseRegistryXML.py/GLConsts.py/ and port to python3+mypy. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D41873

--HG--
extra : moz-landing-system : lando
2019-08-14 00:20:22 +00:00
Hiroyuki Ikezoe a2a3c33989 Bug 1508177 - Expand the minimum scale height even if the expanded area doesn't contain any contents. r=botond
As a result of the expansion, position:fixed elements are attached to the
expanded layout viewport.

The expanded value is used behind a pref which is enabled by default on nightly
initially, and the pref will be fliped in bug 1571599 on other channels.

scrollbars-in-landscape-content.html still fails since the vertical overlay
scrollbar doesn't appear since we are not yet using the expanded value during
reflow to tell whether we need overlay scrollbars or not.  This will be fixed
by the next commit.

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

--HG--
extra : moz-landing-system : lando
2019-08-13 22:37:57 +00:00
Connor Brewster b5f999f5ff Bug 1178765 - Part 5: Add optimization to render task depth assignment r=gw,nical
Fixes an issue when backdrop-filter is used many time on a page where we would
spend a large amount of time reevaluating render tasks when assigning task depths.

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

--HG--
extra : moz-landing-system : lando
2019-08-13 22:03:16 +00:00
Connor Brewster 04d4ece0af Bug 1178765 - Part 3: Add backdrop-filter display items to Gecko r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D39099

--HG--
extra : moz-landing-system : lando
2019-08-13 22:02:57 +00:00
Connor Brewster dbce0f3810 Bug 1178765 - Part 2: Implement backdrop-filter in WebRender r=gw
Differential Revision: https://phabricator.services.mozilla.com/D39098

--HG--
extra : moz-landing-system : lando
2019-08-13 22:02:44 +00:00
Connor Brewster afa1fcbaed Bug 1178765 - Part 1: Add backdrop-filter WebRender display items r=gw
Differential Revision: https://phabricator.services.mozilla.com/D39097

--HG--
extra : moz-landing-system : lando
2019-08-13 22:02:37 +00:00
Jeff Muizelaar d637067186 Bug 1573645. Set the force-warp user pref before the others to avoid assertions. r=lsalzman
The user pref already takes precedent over the environment so there's no need
to run the code later. Further, we assert that environment values haven't been
set.

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

--HG--
extra : moz-landing-system : lando
2019-08-13 21:21:22 +00:00
sotaro 8ea107367c Bug 1569881 - Short term workaround for Intel GPU r=jrmuizel
When Windows version is mort than 1903 and GPU is intel GPU, it could cause flickering with DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL. See Bug 1556634. As a short term workaround, use DXGI_ALPHA_MODE_PREMULTIPLIED instead of DXGI_ALPHA_MODE_IGNORE at SwapChain.

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

--HG--
extra : moz-landing-system : lando
2019-08-13 22:17:47 +00:00
Jeff Muizelaar 2f622224e3 Bug 1573616. Stop using null desc for WARP device. r=lsalzman
This makes us use the actual adapter description instead of a null one.
This fixes the problem of a mismatch being detected in ContentAdapterIsParentAdapter which
is using D3D11Checks::GetDxgiDesc to determine the adapter.

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

--HG--
extra : moz-landing-system : lando
2019-08-13 20:09:34 +00:00