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

30812 Коммитов

Автор SHA1 Сообщение Дата
sotaro f4af09856a Bug 1479181 part 1 - Expose glxGetConfig() in GLXLibrary r=jgilbert 2018-08-07 14:13:17 +09:00
Ryan VanderMeulen ae8b50b2bc Bug 1478153 - Update OTS to version 7.1.7. r=jfkthame
--HG--
extra : rebase_source : 6dbc63989bb3d88e0b9c813210370fe70051578d
2018-07-24 16:09:00 -04:00
Daniel Varga edef4f17d4 Backed out changeset 08fa47a24e89 (bug 1445451) for failing Btup 2018-08-09 02:20:25 +03:00
Myk Melez 2d46903ee1 Bug 1445451 - vendor rkv r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D2246

--HG--
rename : third_party/rust/synstructure/.cargo-checksum.json => third_party/rust/synstructure-0.8.1/.cargo-checksum.json
rename : third_party/rust/synstructure/Cargo.toml => third_party/rust/synstructure-0.8.1/Cargo.toml
rename : third_party/rust/synstructure/README.md => third_party/rust/synstructure-0.8.1/README.md
rename : third_party/rust/synstructure/src/lib.rs => third_party/rust/synstructure-0.8.1/src/lib.rs
rename : third_party/rust/synstructure/src/macros.rs => third_party/rust/synstructure-0.8.1/src/macros.rs
extra : moz-landing-system : lando
2018-08-08 20:59:21 +00:00
Jeff Muizelaar da9d4bb3c0 Bug 1481655. Don't add recordings of the hit test info to blob images. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D2938

--HG--
extra : moz-landing-system : lando
2018-08-08 18:15:00 +00:00
dvarga de4435eec5 Backed out changeset 37ac6d023498 (bug 1481655) for bustage at build/src/gfx/layers/wr/WebRenderCommandBuilder.cpp on a CLOSED TREE 2018-08-08 21:00:23 +03:00
Jeff Muizelaar f0b0ce30f2 Bug 1481655. Don't add recordings of the hit test info to blob images. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D2938

--HG--
extra : moz-landing-system : lando
2018-08-08 17:32:52 +00:00
Imanol Fernandez 5424767924 Bug 1481393 - Implement a listener for WebVR PresentationGenerationContext changes; r=kip,rbarker,nika
MozReview-Commit-ID: FAR1fYnNM0U

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

--HG--
extra : moz-landing-system : lando
2018-08-07 23:09:42 +00:00
L. David Baron 1e88f0f003 Bug 1369941: Replace single integers N in fuzzy() and fuzzy-if() with 0-N ranges. r=dholbert
This patch was written entirely by the following script:

  #!/bin/bash

  if [ ! -d "./.hg" ]
  then
    echo "Not in a source tree." 1>&2
    exit 1
  fi

  find . -regex '.*\(ref\|crash\)test.*\.list' | while read FILENAME
  do
    echo "Processing ${FILENAME}."
    # The following has four substitutions:
    # * The first one replaces the *first* argument to fuzzy() when it doesn't
    #   have a - in it, by replacing it with an explicit 0-N range.
    # * The second one does the same for the *second* argument to fuzzy().
    # * The third does the same for the *second* argument to fuzzy-if().
    # * The fourth does the same for the *third* argument to fuzzy-if().
    #
    # Note that this is using perl rather than sed because perl doesn't
    # support non-greedy matching, which is needed for the first argument to
    # fuzzy-if.
    perl -pi -e 's/(fuzzy\()([^ ,()-]*)(,[^ ,()]*\))/${1}0-${2}${3}/g;s/(fuzzy\([^ ,()]*,)([^ ,()-]*)(\))/${1}0-${2}${3}/g;s/(fuzzy-if\([^ ]*?,)([^ ,()-]*)(,[^ ,()]*\))/${1}0-${2}${3}/g;s/(fuzzy-if\([^ ]*?,[^ ,()]*,)([^ ,()-]*)(\))/${1}0-${2}${3}/g' "${FILENAME}"
  done

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

--HG--
extra : moz-landing-system : lando
2018-08-09 20:10:21 +00:00
Myk Melez 2c2b6eebf9 Bug 1445451 - vendor rkv; r=froydnj
MozReview-Commit-ID: KbcADpNltYq

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

--HG--
rename : third_party/rust/synstructure/.cargo-checksum.json => third_party/rust/synstructure-0.8.1/.cargo-checksum.json
rename : third_party/rust/synstructure/Cargo.toml => third_party/rust/synstructure-0.8.1/Cargo.toml
rename : third_party/rust/synstructure/README.md => third_party/rust/synstructure-0.8.1/README.md
rename : third_party/rust/synstructure/src/lib.rs => third_party/rust/synstructure-0.8.1/src/lib.rs
rename : third_party/rust/synstructure/src/macros.rs => third_party/rust/synstructure-0.8.1/src/macros.rs
extra : moz-landing-system : lando
2018-08-09 19:42:17 +00:00
Botond Ballo d51598b4d9 Bug 1480866 - Avoid creating a fling animation with zero velocity. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D2743

--HG--
extra : moz-landing-system : lando
2018-08-07 20:48:23 +00:00
Tiberius Oros 4199099335 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-08-09 13:04:39 +03:00
Martin Stransky 8b68257be5 Bug 1478454 - [Linux/WebRender] Create glxContext with GLX visual chosen at nsWindow::Create(), r=jgilbert
We need to use the same visual for X drawable and glxContext,
otherwise we get BadMatch when we try to make the glxContext current.

The correct glx visual is already configured at nsWindow::Create()
so just use it if it also matches the frame buffer config.

MozReview-Commit-ID: 78IIfiwOnsf

--HG--
extra : rebase_source : 5ddfc0f94abafc7a1441eea095e546568bc31596
2018-08-03 16:20:09 +02:00
Jonathan Kew a7dc2e2bd2 Bug 1481842 - Apply 50% opacity as intended to the border (or filled box on mobile) used for missing-glyph rendering. r=lsalzman 2018-08-08 17:15:42 +01:00
Bas Schouten 4e20187f58 Bug 1480832: Convert nsRegion's internal bounds representation to nsRectAbsolute, and define overflow behaviors. r=mattwoodrow 2018-08-07 15:54:32 +00:00
Nathan Froyd 6ce3ba74db Bug 1481534 - avoid compiling nsRect SSE code on non-x86-ish architectures; r=Bas 2018-08-08 09:24:08 -04:00
Kartikaya Gupta 7879461f7f Bug 1480433 - Update for API changes in WR PR 2948. r=jrmuizel
MozReview-Commit-ID: Linx9qsVeAb
2018-08-07 14:46:56 -04:00
Kartikaya Gupta 56cfeb9660 Bug 1480433 - Update webrender to commit c939a61b83bcc9dc10742977704793e9a85b3858. r=jrmuizel
MozReview-Commit-ID: 8msYpcE1tCx
2018-08-07 14:44:43 -04:00
Jeff Gilbert 6a1d75ae7a Bug 1477817 - Try to get RBAB even with EXT_create_context_robustness. - r=kvark 2018-08-07 12:24:53 -07:00
Brindusan Cristian 181d4f159b Backed out 10 changesets (bug 1478815) for reftest failures on /reftests/layers/forced-bg-color-outside-visible-region.html. CLOSED TREE
Backed out changeset 7ae4c893867a (bug 1478815)
Backed out changeset b865a866fe5a (bug 1478815)
Backed out changeset 405ad3518218 (bug 1478815)
Backed out changeset 64cb50b227e0 (bug 1478815)
Backed out changeset 392a724d5acd (bug 1478815)
Backed out changeset 01110727f2e9 (bug 1478815)
Backed out changeset 56d967e03ee2 (bug 1478815)
Backed out changeset 082638a5c643 (bug 1478815)
Backed out changeset 3dc47f17fa44 (bug 1478815)
Backed out changeset 699c954992f8 (bug 1478815)

--HG--
rename : gfx/2d/BufferEdgePad.cpp => gfx/layers/BufferEdgePad.cpp
rename : gfx/2d/BufferEdgePad.h => gfx/layers/BufferEdgePad.h
rename : gfx/2d/BufferUnrotate.cpp => gfx/layers/BufferUnrotate.cpp
rename : gfx/2d/BufferUnrotate.h => gfx/layers/BufferUnrotate.h
2018-08-07 20:57:27 +03:00
Ryan Hunt d8c8b51305 Bug 1478815 part 10 - Don't submit PaintTask's if the DrawTargetCapture is empty. r=bas
This commit exposes a method on DrawTargetCapture to see if it has
captured any drawing commands. This allows us to not dispatch
paint tasks if they will do nothing.

Ideally these tasks would execute instantly on the PaintThread, and
we would never delay sending the layer transaction or block on the
next paint, but with thread starvation and context switches it's
best to just not send them.

MozReview-Commit-ID: 7ywkEDBw6EX

--HG--
extra : rebase_source : c8f628180a3d908c8851e5c576296f903b9b255d
2018-07-31 17:47:51 -05:00
Ryan Hunt 8b6aa26413 Bug 1478815 part 9 - Add ability to create a DrawTargetCapture that can flush to its destination draw target. r=bas
This commit adds the ability to create a different kind of DrawTargetCapture which
has a limit on the size of which its CaptureCommandList can grow before it is
synchronously flushed to its destination DrawTarget.

Special care is taken to not do a sync flush until we would need to resize
the backing store of the CaptureCommandList. This allows us to not waste
memory we've already allocated.

The async painting content clients are updated to use it, and get a default
value from a new preference.

MozReview-Commit-ID: CJL7ffvaRzR

--HG--
extra : rebase_source : 546d9838808320c51d9ceef0ed0ffcbb88a16269
2018-07-26 16:33:07 -05:00
Ryan Hunt af49011c30 Bug 1478815 part 8 - Remove buffer operations for ContentClient. r=nical
This commit moves ContentClient from creating a CapturedBufferState for
buffer operations, to performing all of those operations on the
DrawTarget(Capture). Creating a DrawTargetCapture is now performed
by the RotatedBuffer when we BeginPaint, all operations are performed
on this capture, and then it's returned to the ClientPaintedLayer
as a PaintTask.

This commit is an involved refactoring of ContentClient and RotatedBuffer
to get this all to work. Here are the major parts:

1. RotatedBuffer is refactored to always perform operations on a single
   DrawTarget, which may be a single DT, dual DT, or capture.
2. RotatedBuffer adds BeginCapture and EndCapture methods to switch
   which DT is used in operations
3. ContentClient uses the RB capture methods when we are async painting
4. CC::BeginPaint is refactored to only perform capturing on a single
   RotatedBuffer. This is because we can't have the output of one
   PaintTask be the input of a different PaintTask due to the design
   of the Snapshot API.
      a. This can occur, today, by doing a FinalizeFrame only to later
         fail to Unrotate the buffer, causing a new RB to be created
         and painted into
      b. The previous PaintThread code worked because it used the
         buffer operations which didn't use Snapshot's
      c. This is fixed by not doing FinalizeFrame on a buffer if we
         realize we cannot unrotate it, and switching to initializing
         a buffer using the front buffer which should be up to date.
      d. I don't like touching this code, but it passes reftests,
         might be a performance improvement, and I've tested it on
         known regressions from the last time I messed up this code.
5. CC::PrepareForPaint is inlined into BeginPaint because dual draw
   targets can be cleared correctly from a previous commit
6. The code paths in ClientPaintedLayer are unified because we no
   longer need to special case this beyond setting the correct
   ContentClient flag.
7. CapturedPaintState and CapturedBufferState are removed in favor
   of PaintTask. Additionally EndLayer is no longer needed as all
   quadrants of a rotated buffer are in the same capture, so we
   don't need special case flushing code.

MozReview-Commit-ID: 9UI40dwran

--HG--
extra : rebase_source : 2f63464c1f8ca03992700b33838c4aa56608f872
2018-07-26 11:23:26 -05:00
Ryan Hunt 6c76c39c97 Bug 1478815 part 7 - Add a buffer unrotate operation to DrawTarget. r=bas
This commit adds a buffer unrotate operation to DrawTarget. It's
initially implemented with LockBits in DrawTarget. DrawTargetDual
overrides the implementation to pass on the operation to it's
DrawTargets.

No override is given for DrawTargetCapture as we intentionally
avoid this code path when async painting as it can fail.

This is needed so that RotatedBuffer can expose a single DrawTarget,
which can be a DrawTarget (for normal alpha), DrawTargetDual (for
component alpha), or DrawTargetCapture (when async painting).

MozReview-Commit-ID: csjjZ733hl

--HG--
rename : gfx/layers/BufferUnrotate.cpp => gfx/2d/BufferUnrotate.cpp
rename : gfx/layers/BufferUnrotate.h => gfx/2d/BufferUnrotate.h
extra : rebase_source : efc838a3a4b196f78eda79ff3304c15d386bdc63
2018-08-01 12:50:32 -05:00
Ryan Hunt 90b1c71102 Bug 1478815 part 6 - Add ability to create a SourceSurfaceDual directly. r=bas
This commit adds the ability to create a SourceSurfaceDual directly,
instead of only from a DrawTargetDual. This allows SourceRotatedBuffer
to expose itself as a single SourceSurface for a later commit.

MozReview-Commit-ID: K21K42cGDy1

--HG--
extra : rebase_source : 33a523e45f7102343ebd5b3aa1faf2ff1f3d6f87
2018-08-01 12:49:19 -05:00
Ryan Hunt dfb4539ae9 Bug 1478815 part 5 - Rename CapturedTiledPaintState to PaintTask. r=nical
This commit renames CapturedTiledPaintState to PaintTask as in a future
commit I will fold CapturedPaintState into it.

MozReview-Commit-ID: 8py7SrK4s29

--HG--
extra : rebase_source : 1b5259cca6520761ae99e64157d047441b90b563
2018-07-24 15:39:35 -05:00
Ryan Hunt af1087297b Bug 1478815 part 4 - Remove buffer operations for TiledContentClient. r=nical
This commit refactors TiledContentClient to not create PaintThread
buffer operations, but to instead perform all of these operations
on the DrawTarget(Capture). This simplifies the code dramatically
and allows us to add flushing behavior to DrawTargetCapture in a
future commit.

With this change, CapturedTiledPaintState is simply a container
for a DrawTarget, DrawTargetCapture, and keep-alive TextureClients.

Part of this commit is moving the logic of locking the texture
clients, constructing a dual draw target, and constructing a capture
into TiledContentClient so it can be shared.

MozReview-Commit-ID: 2rwz9aDI737

--HG--
extra : rebase_source : 16a4b87263f28b32f5bcb5fd6d9756548f137e11
2018-07-24 14:29:44 -05:00
Ryan Hunt a5f58a4250 Bug 1478815 part 3 - Add a DualTextureClientLock for texture clients used for component alpha. r=nical
This commit adds a RAII class for the common operation of attempting
to lock one or two TextureClients and then maybe constructing a
DrawTargetDual from them.

MozReview-Commit-ID: ECQkDSgpyuL

--HG--
extra : rebase_source : abad14bfee32ea2fd1626069f8229487d1f05015
2018-08-01 12:46:35 -05:00
Ryan Hunt 74645824fc Bug 1478815 part 2 - Make DrawTargetDual aware of component alpha clearing. r=bas
This commit changes the behavior of DrawTargetDual::Clear to be aware that
it has on-white and on-black buffers, and perform clearing appropriately.

This is slightly against what the DrawTarget documentation says the method
should do, but it allows us to move another paint thread operation into
DrawTargetCapture and simplify our ContentClient implementations.

I haven't seen any obvious breakage with this, and reftests are green.

An alternative would be to add a separate Clear method with documented
difference here.

MozReview-Commit-ID: 65CzcxlRqv7

--HG--
extra : rebase_source : 47403847e56521be90190eb6b70ec333f6daf5c0
2018-08-01 12:45:35 -05:00
Ryan Hunt 748ab5ad0f Bug 1478815 part 1 - Add a PadEdges operation to DrawTarget. r=bas
This commit adds an operation to perform 'edge padding' on a draw
target. By default this is performed using LockBits, but it's
overriden in DrawTargetTiled and DrawTargetCapture to propagate
the call so it functions correctly.

This helps TiledContentClient move from applying this operation
on a per texture client basis, to being able to do it on the
DrawTargetTiled after painting. This in turn helps move all
paint thread operations into DrawTargetCapture.

MozReview-Commit-ID: 2ncOTxGXQfk

--HG--
rename : gfx/layers/BufferEdgePad.cpp => gfx/2d/BufferEdgePad.cpp
rename : gfx/layers/BufferEdgePad.h => gfx/2d/BufferEdgePad.h
extra : rebase_source : ab850358a763853d50d1f374f28e67a197740443
2018-08-01 12:44:33 -05:00
Gabriele Svelto 15adf94f4d Bug 1348273 - Convert crash annotations into a machine-readable list of constants; r=ted.mielczarek,njn,dholbert,mak,cpearce,mcmanus,froydnj,Dexter,jrmuizel,jchen,jimm,bz,surkov
This introduces the machinery needed to generate crash annotations from a YAML
file. The relevant C++ functions are updated to take a typed enum. JavaScript
calls are unaffected but they will throw if the string argument does not
correspond to one of the known entries in the C++ enum. The existing whitelists
and blacklists of annotations are also generated from the YAML file and all
duplicate code related to them has been consolidated. Once written out to the
.extra file the annotations are converted in string form and are no different
than the existing ones.

All existing annotations have been included in the list (and some obsolete ones
have been removed) and all call sites have been updated including tests where
appropriate.

--HG--
extra : source : 4f6c43f2830701ec5552e08e3f1b06fe6d045860
2018-07-05 15:42:11 +02:00
sotaro bf2bee5c8e Bug 1481995 - Remove WebRenderBridgeParent::mForceRendering r=nical 2018-08-10 08:10:11 +09:00
Noemi Erli be6ab34c54 Merge mozilla-central to inbound. a=merge CLOSED TREE
--HG--
extra : rebase_source : 691b5b30b6c3b2ddece605c045ad913e466fdbab
2018-08-10 00:35:58 +03:00
Ryan Hunt 8091824d19 Bug 1478815 part 10 - Don't submit PaintTask's if the DrawTargetCapture is empty. r=bas
This commit exposes a method on DrawTargetCapture to see if it has
captured any drawing commands. This allows us to not dispatch
paint tasks if they will do nothing.

Ideally these tasks would execute instantly on the PaintThread, and
we would never delay sending the layer transaction or block on the
next paint, but with thread starvation and context switches it's
best to just not send them.

MozReview-Commit-ID: 7ywkEDBw6EX

--HG--
extra : rebase_source : c60c1c25d551e4a7c14c529137f8e0babc888466
extra : source : 7ae4c893867a5f7df81e0757d4b4a6a21cbc6986
2018-07-31 17:47:51 -05:00
Ryan Hunt 16e8c5d426 Bug 1478815 part 9 - Add ability to create a DrawTargetCapture that can flush to its destination draw target. r=bas
This commit adds the ability to create a different kind of DrawTargetCapture which
has a limit on the size of which its CaptureCommandList can grow before it is
synchronously flushed to its destination DrawTarget.

Special care is taken to not do a sync flush until we would need to resize
the backing store of the CaptureCommandList. This allows us to not waste
memory we've already allocated.

The async painting content clients are updated to use it, and get a default
value from a new preference.

MozReview-Commit-ID: CJL7ffvaRzR

--HG--
extra : rebase_source : f646862dcef7a480b21dfb7ddb1fa165338ba506
extra : source : b865a866fe5a3257615cb54b7e5e790cc9331988
2018-07-26 16:33:07 -05:00
Ryan Hunt 2dd7814423 Bug 1478815 part 8 - Remove buffer operations for ContentClient. r=nical
This commit moves ContentClient from creating a CapturedBufferState for
buffer operations, to performing all of those operations on the
DrawTarget(Capture). Creating a DrawTargetCapture is now performed
by the RotatedBuffer when we BeginPaint, all operations are performed
on this capture, and then it's returned to the ClientPaintedLayer
as a PaintTask.

This commit is an involved refactoring of ContentClient and RotatedBuffer
to get this all to work. Here are the major parts:

1. RotatedBuffer is refactored to always perform operations on a single
   DrawTarget, which may be a single DT, dual DT, or capture.
2. RotatedBuffer adds BeginCapture and EndCapture methods to switch
   which DT is used in operations
3. ContentClient uses the RB capture methods when we are async painting
4. CC::BeginPaint is refactored to only perform capturing on a single
   RotatedBuffer. This is because we can't have the output of one
   PaintTask be the input of a different PaintTask due to the design
   of the Snapshot API.
      a. This can occur, today, by doing a FinalizeFrame only to later
         fail to Unrotate the buffer, causing a new RB to be created
         and painted into
      b. The previous PaintThread code worked because it used the
         buffer operations which didn't use Snapshot's
      c. This is fixed by not doing FinalizeFrame on a buffer if we
         realize we cannot unrotate it, and switching to initializing
         a buffer using the front buffer which should be up to date.
      d. I don't like touching this code, but it passes reftests,
         might be a performance improvement, and I've tested it on
         known regressions from the last time I messed up this code.
5. CC::PrepareForPaint is inlined into BeginPaint because dual draw
   targets can be cleared correctly from a previous commit
6. The code paths in ClientPaintedLayer are unified because we no
   longer need to special case this beyond setting the correct
   ContentClient flag.
7. CapturedPaintState and CapturedBufferState are removed in favor
   of PaintTask. Additionally EndLayer is no longer needed as all
   quadrants of a rotated buffer are in the same capture, so we
   don't need special case flushing code.

MozReview-Commit-ID: 9UI40dwran

--HG--
extra : rebase_source : 809d9816970648468de972c30b0c230c2f21e27b
extra : source : 405ad351821813333c0e989b93e2aeb49ba8552c
2018-07-26 11:23:26 -05:00
Ryan Hunt a71d0035ad Bug 1478815 part 7 - Add a buffer unrotate operation to DrawTarget. r=bas
This commit adds a buffer unrotate operation to DrawTarget. It's
initially implemented with LockBits in DrawTarget. DrawTargetDual
overrides the implementation to pass on the operation to it's
DrawTargets.

No override is given for DrawTargetCapture as we intentionally
avoid this code path when async painting as it can fail.

This is needed so that RotatedBuffer can expose a single DrawTarget,
which can be a DrawTarget (for normal alpha), DrawTargetDual (for
component alpha), or DrawTargetCapture (when async painting).

MozReview-Commit-ID: csjjZ733hl

--HG--
rename : gfx/layers/BufferUnrotate.cpp => gfx/2d/BufferUnrotate.cpp
rename : gfx/layers/BufferUnrotate.h => gfx/2d/BufferUnrotate.h
extra : rebase_source : 5d96e2a5d36a01f2f9992adb37830e56436c7c35
extra : source : 64cb50b227e0ae604653f03ce2e892493126392e
2018-08-01 12:50:32 -05:00
Ryan Hunt e3b25e9b10 Bug 1478815 part 6 - Add ability to create a SourceSurfaceDual directly. r=bas
This commit adds the ability to create a SourceSurfaceDual directly,
instead of only from a DrawTargetDual. This allows SourceRotatedBuffer
to expose itself as a single SourceSurface for a later commit.

MozReview-Commit-ID: K21K42cGDy1

--HG--
extra : rebase_source : d3fe48ac711f9cd28799bfd8d36b74750cb15554
extra : source : 392a724d5acd25854e871fa47335c4b938fe9ae1
2018-08-01 12:49:19 -05:00
Ryan Hunt ce8baf18ae Bug 1478815 part 5 - Rename CapturedTiledPaintState to PaintTask. r=nical
This commit renames CapturedTiledPaintState to PaintTask as in a future
commit I will fold CapturedPaintState into it.

MozReview-Commit-ID: 8py7SrK4s29

--HG--
extra : rebase_source : 7abdf127351cdc82ee4c40112dce7150bdb67243
extra : source : 01110727f2e9e0846fc06997653e04860efb23dc
2018-07-24 15:39:35 -05:00
Ryan Hunt 7e8f465799 Bug 1478815 part 4 - Remove buffer operations for TiledContentClient. r=nical
This commit refactors TiledContentClient to not create PaintThread
buffer operations, but to instead perform all of these operations
on the DrawTarget(Capture). This simplifies the code dramatically
and allows us to add flushing behavior to DrawTargetCapture in a
future commit.

With this change, CapturedTiledPaintState is simply a container
for a DrawTarget, DrawTargetCapture, and keep-alive TextureClients.

Part of this commit is moving the logic of locking the texture
clients, constructing a dual draw target, and constructing a capture
into TiledContentClient so it can be shared.

MozReview-Commit-ID: 2rwz9aDI737

--HG--
extra : rebase_source : 4ac317f632c0a2c21480bc88e6246f4dc0daf0be
extra : source : 56d967e03ee225e032034ffd193b6f42b343226b
2018-07-24 14:29:44 -05:00
Ryan Hunt b3f614693b Bug 1478815 part 3 - Add a DualTextureClientLock for texture clients used for component alpha. r=nical
This commit adds a RAII class for the common operation of attempting
to lock one or two TextureClients and then maybe constructing a
DrawTargetDual from them.

MozReview-Commit-ID: ECQkDSgpyuL

--HG--
extra : rebase_source : 6debecb9d4ca33895daa78de3a52a1ed575706e1
extra : source : 082638a5c6432e0ca6ce377986d84ed130b32ad3
2018-08-01 12:46:35 -05:00
Ryan Hunt 9c419c4c91 Bug 1478815 part 2 - Make DrawTargetDual aware of component alpha clearing. r=bas
This commit changes the behavior of DrawTargetDual::Clear to be aware that
it has on-white and on-black buffers, and perform clearing appropriately.

This is slightly against what the DrawTarget documentation says the method
should do, but it allows us to move another paint thread operation into
DrawTargetCapture and simplify our ContentClient implementations.

I haven't seen any obvious breakage with this, and reftests are green.

An alternative would be to add a separate Clear method with documented
difference here.

MozReview-Commit-ID: 65CzcxlRqv7

--HG--
extra : rebase_source : 299adbb02e79f66f7d6860c5fe86784bad8332f8
extra : source : 3dc47f17fa446bb7f2b5876753f8271a93c0e0c8
2018-08-01 12:45:35 -05:00
Ryan Hunt 53537230f9 Bug 1478815 part 1 - Add a PadEdges operation to DrawTarget. r=bas
This commit adds an operation to perform 'edge padding' on a draw
target. By default this is performed using LockBits, but it's
overriden in DrawTargetTiled and DrawTargetCapture to propagate
the call so it functions correctly.

This helps TiledContentClient move from applying this operation
on a per texture client basis, to being able to do it on the
DrawTargetTiled after painting. This in turn helps move all
paint thread operations into DrawTargetCapture.

MozReview-Commit-ID: 2ncOTxGXQfk

--HG--
rename : gfx/layers/BufferEdgePad.cpp => gfx/2d/BufferEdgePad.cpp
rename : gfx/layers/BufferEdgePad.h => gfx/2d/BufferEdgePad.h
extra : rebase_source : a3315644fe31f2a432935dcbfdb9969c58b691e1
extra : source : 699c954992f87db7fc792f5562090de42a8162cb
2018-08-01 12:44:33 -05:00
Jan Beich 5677cde33a Bug 1473732 - Base default number of OMTP workers on the number of logical CPU cores. r=rhunt
system-info is a stub on Tier3 platforms while physical vs. logical
difference only matters for hyper-threading. As hyper-threading
is usually available on CPUs with more than 2 physical cores this
change has no impact there as the default is clamped to [1, 4].
However, on Intel i3-* CPUs with 2 physical and 4 logical cores this
bumps the default from 1 to 3.

MozReview-Commit-ID: 1Yh8rJL2JcN

--HG--
extra : rebase_source : 5c563ec8e388a3fd05a0650e8d4c330d48675332
2018-06-30 22:41:59 +00:00
Andi-Bogdan Postelnicu b2d4c86823 Bug 1453795 - GFX - Initialize member fields in classes/ structures. r=nical
--HG--
extra : rebase_source : 56f2cc017632bf27115490ae05254019108c6179
extra : amend_source : 98ea6c3c02a9f7650d2cf65deaf5085cf9a2efa4
2018-06-16 17:42:33 +03:00
Masatoshi Kimura 3b21b7868b Bug 1090497 - Re-enable warnings as errors on clang-cl. r=froydnj
--HG--
extra : rebase_source : c09366fb93e5b0f72abe1e99d3094e3d96a934fb
extra : intermediate-source : 5950c9d63c3b4fd63a25464a7b50944aaec7079f
extra : source : ca1b9a2bcc4381795f556fea2fb59066567c30f3
2018-07-31 22:10:07 +09:00
Andrew Osmond b30de56ba9 Backed out changeset 3f41992ab77e (bug 1446309) because wrong bug number. r=backout 2018-08-10 09:33:31 -04:00
Andrew Osmond cf006cd593 Bug 1446309 - Store a shared surface's dirty rect update if we cannot process it immediately. r=nical
Multiple tabs in the same process could be viewing the same image. If it
is an image we are taking some time to download from the network, it may
not be displayed all at once. As a result, it could generate several
dirty rects for the newly decoded lines each time we paint. Since we
only apply the dirty rect to the active tab, and forget it afterwards,
then when one returns to the other tab(s), it may not reupload all of
the modified image data. Now we save the dirty rect and accumulate it
for the handles which weren't able to be updated immediately.
2018-08-10 09:30:24 -04:00
Lee Salzman bf12f26ad9 Bug 1479196 - draw missing glyphs from an atlas instead of rectangles. r=jfkthame 2018-08-21 12:40:36 -04:00
Lee Salzman daa9f58360 Bug 1479196 - add support to TextDrawTarget for defining and pushing WR images. r=nical 2018-08-21 12:36:48 -04:00
Kearwood "Kip" Gilbert 7be6545dd6 Bug 1320616 - Use the render pose rather than the gameplay pose for OpenVR headsets r=daoshengmu
The WebVR api was returning a headset pose predicted one additional frame in the
future, but the SteamVR async reprojection was reprojecting it using the
prior (correct) frame's pose.

This resulted in a sickness inducing swimming effect as well as deregistration
from the Vive chaperone bounds.

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

--HG--
extra : moz-landing-system : lando
2018-08-03 22:05:06 +00:00
ISHIKAWA, Chiaki 4293b59efc Bug 1479950: Bug Fixes the incorrect use of && in place of &. r=lsalzman 2018-07-31 21:17:00 +03:00
Bogdan Tara 4759ec60f7 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-08-03 13:28:32 +03:00
Lee Salzman 864930c221 Bug 1479010 - don't populate a ScaledFont's cairo scaled font unless targeting cairo. r=jrmuizel 2018-08-03 00:56:06 -04:00
Kartikaya Gupta 4e5a308827 Bug 1479939 - Ensure we tell WR to remove the compositable pipelines when clearing resources. r=sotaro
MozReview-Commit-ID: AxuvERUalhb

--HG--
extra : rebase_source : 674a20346c234912f7389d9fc7078c956cf08fc7
2018-08-02 00:17:36 -04:00
Narcis Beleuzu 4684ccf98e Merge inbound to mozilla-central. a=merge 2018-08-03 01:28:14 +03:00
Cosmin Sabou de8c2bd891 Backed out changeset 5950c9d63c3b (bug 1090497) for build bustages on several files. CLOSED TREE 2018-08-02 19:59:53 +03:00
Brian Hackett 3c13dd9f31 Bug 1479641 - Don't record counting allocator amount, r=froydnj.
--HG--
extra : rebase_source : 23de9644662c1f9ed36429074837e54bb7cac868
2018-07-31 19:22:54 +00:00
Masatoshi Kimura feea19030c Bug 1090497 - Re-enable warnings as errors on clang-cl. r=froydnj
--HG--
extra : rebase_source : a62521fdc66def4e4d5d7bf52e68365a786b5c55
extra : source : ca1b9a2bcc4381795f556fea2fb59066567c30f3
2018-07-31 22:10:07 +09:00
Boris Zbarsky 357b6b1348 Bug 1479570. Get Add a getter to get a docshell from nsIWindowlessBrowser. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D2669

--HG--
extra : moz-landing-system : lando
2018-08-03 00:05:07 +00:00
Kartikaya Gupta 83d156a753 Bug 1479432 - Update webrender to commit 7a1b919e37d6cd0155077aa90f98cfcdf9fa5bae. r=jrmuizel
MozReview-Commit-ID: 1SJgRWEp2qf

--HG--
extra : rebase_source : ec6ffe0686f8ef0bf8149347fcfd48e3870bc316
2018-08-02 10:20:04 -04:00
Noemi Erli 8f66a71e70 Merge inbound to mozilla-central. a=merge 2018-08-02 11:54:46 +03:00
Kartikaya Gupta 5090ab5988 Bug 1368603 - Fix intermittent scrollbar drag test failure on Linux. r=botond
On Linux, when synthesizing mousemove events interleaved with button
press/release events, the caller is responsible for waiting for the
mousemove events be dispatched before attempting to synthesize the
press/release buttons, otherwise the events can be delivered by the OS
out of order. This updates a few tests to ensure this is done correctly.

MozReview-Commit-ID: 42HkqTCWToP

--HG--
extra : rebase_source : 57fbc84bcfbed345d8f6d90aaadb3399e691894e
2018-08-01 23:25:05 -04:00
dvarga 956d57e7f2 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-08-02 01:26:29 +03:00
dvarga e487e6e564 Merge inbound to mozilla-central. a=merge 2018-08-02 01:09:38 +03:00
Nicolas Silva 97855cd84d Bug 1474722 - Add a reftest. r=Bas 2018-08-01 17:13:18 +02:00
Nicolas Silva 514e74387d Bug 1474722 - Prevent large rect integer overflows without forbidding large nine-patches. r=Bas 2018-08-01 17:13:12 +02:00
Jonathan Kew 0165cf1194 Bug 1478716 - Ensure we only call FT_Get_MM_Var once per face (and cache the result in the font entry), to avoid being bitten by freetype bug 52955 on Ubuntu. r=lsalzman 2018-08-01 22:39:05 +01:00
David Major f9500eac94 Bug 1479842: Don't PGO gfxFontInfoLoader.cpp with clang-cl. r=froydnj 2018-08-01 15:10:13 -04:00
Randall Barker 6d045ccecb Bug 1479549 Add a pref to disable double tap zooming in APZ r=botond
MozReview-Commit-ID: HK5RWuI6lIk
2018-08-01 11:25:32 -07:00
sotaro 60415ddc5b Bug 1479680 - Change clear_color to (0.0, 0.0, 0.0, 0.0) in webrender r=nical 2018-08-01 08:50:48 +09:00
Xidorn Quan 8421040c69 Bug 1479995 - Rename ScrollbarStyles to ScrollStyles. r=mstange
This change also renames several related functions, as well as fields,
and the header is moved into EXPORTS.mozilla given it is defined under
mozilla namespace.

MozReview-Commit-ID: LqCdcW8fmUN

--HG--
rename : layout/base/ScrollbarStyles.cpp => layout/base/ScrollStyles.cpp
rename : layout/base/ScrollbarStyles.h => layout/base/ScrollStyles.h
extra : rebase_source : 8933f3bca88d5db4b9508e3947f695ecf7511b3e
2018-08-01 16:14:26 +10:00
Bogdan Tara 9c44097a0d Merge inbound to mozilla-central. a=merge 2018-08-01 00:58:55 +03:00
Kartikaya Gupta 43a729e246 Bug 1478035 - Add crashtest. r=mstange
MozReview-Commit-ID: Fopmx8cJtc7

--HG--
extra : rebase_source : b9f9b8e10fc95845fd6f2d6d413106b17e97efee
2018-07-24 15:46:28 -04:00
Lee Salzman c3f5240478 Bug 1258781 - reduce Skia font cache size to 5MB. r=bz 2018-07-31 14:03:22 -04:00
Lee Salzman 0a080bf168 Bug 1473732 - avoid race condition when accessing and creating SkCairoFTTypeface. r=rhunt 2018-07-31 13:32:12 -04:00
Jim Chen 2c94ad0e54 Bug 1472140 - 3. Remove ForceIsFirstPaint ipdl call; r=kats
Remove the PCompositorBridge::ForceIsFirstPaint call that's no longer
used anywhere.
2018-07-31 12:21:49 -04:00
Kearwood Gilbert 17fa5240f0 Bug 1476797 - Indicate VR session activity indepenently of layer presence r=daoshengmu
MozReview-Commit-ID: 4F0vclSj5gB

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

--HG--
extra : moz-landing-system : lando
2018-07-31 01:41:25 +00:00
Hiroyuki Ikezoe d096c8bddf Bug 1479234 - Include missing headers in D3D11YCbCrImage.cpp and VRLayerChild.cpp. r=hiro
MozReview-Commit-ID: C8VQO46Lm1

--HG--
extra : rebase_source : 5751da5530ac9771ed349b71a2c10fec28904a97
2018-07-31 08:13:19 +09:00
Hiroyuki Ikezoe 0020eaf1a1 Bug 1479234 - Fix the header for gfx::Glyph. r=kats
MozReview-Commit-ID: I0ukIwuxv7z

--HG--
extra : rebase_source : 74c7ad6a43520c3ba5ce96cbd2b13dedd6aaaa22
2018-07-31 06:13:15 +09:00
Hiroyuki Ikezoe 221a08d59e Bug 1479234 - Drop GetAnimationOpacity and GetAnimationTransform ipc calls. r=boris,froydnj
They are no longer used.

MozReview-Commit-ID: 1SaIkj4ryUF

--HG--
extra : rebase_source : 0666e3f297e9c12f8a024e96944d99c2c301820c
2018-07-31 06:13:15 +09:00
Hiroyuki Ikezoe 94f5f622eb Bug 1479234 - Introduce a generic function to get an animation value on the compositor. r=boris,froydnj
On the compositor we store animation values in a hash table and the hash is
the compositor animation id which is a unique id for each property respectively.
So we can get the corresponding animation value for the given property.

In this patch there are lots of duplicated code, but they will be removed in the
next patch.

MozReview-Commit-ID: 7EboVcculcg

--HG--
extra : rebase_source : 304ea80849af8af72a07437736041aeabbe47eeb
2018-07-31 06:13:15 +09:00
Jim Chen 9c55d02aa5 Bug 1472140 - 1. Set first paint flag when resuming and resizing composition; r=rbarker
When resuming composition in a new GeckoView, we wait for the first
paint signal in order to uncover the SurfaceView. This patch makes sure
that we always send the first paint signal.

MozReview-Commit-ID: EZeOR80d8HY

--HG--
extra : rebase_source : f82ab94ef87e5b0651f368918e8cd8a97469c68e
2018-07-30 16:38:35 -04:00
Imanol Fernandez 25d362ba4f Bug 1479424 - Fix VRManager NotifyVSync not called when compositor is paused on Android; r=kip,rbarker
MozReview-Commit-ID: JY8xyCSKIgv

--HG--
extra : rebase_source : 8ae0ba070bba5cc03137c4053a7730ad89090e96
2018-07-30 18:14:05 +02:00
Coroiu Cristina 9e8155b8f6 Merge inbound to mozilla-central a=merge 2018-07-31 00:58:28 +03:00
Cosmin Sabou 09c97210a7 Backed out 2 changesets (bug 1473732) for devtools and web platform reftest leaks. CLOSED TREE
Backed out changeset 7742f4ea046b (bug 1473732)
Backed out changeset 3354b6d032f3 (bug 1473732)
2018-07-30 20:52:11 +03:00
Jonathan Kew a78b7458a9 Bug 1478720 - Increase the fractional adjustment applied to 'opsz' on macOS to avoid using the font's default setting, which may be mishandled by Core Text. r=lsalzman 2018-07-30 17:53:09 +01:00
Jamie Nicol 35e92591dd Bug 1474883 - Ensure D2D glyph cache is pruned after rendering 1000 transformed glyphs. r=bas
Rendering glyphs at many different rotations was causing the D2D glyph
cache to grow very large. Calling EndDraw/BeginDraw will prune the
cache, but is costly, so only do it for every 1000 glyphs.

MozReview-Commit-ID: HUFpxDvYAzQ

--HG--
extra : rebase_source : de283c5e687da07e5417e0d221d7f45b992080d5
2018-07-26 15:23:19 +01:00
Kartikaya Gupta 78157f60ff Bug 1477970 - Update webrender to commit 8a4fe66528aa362721e4048aac3cd5abf7faaf2c. r=jrmuizel
MozReview-Commit-ID: H40i6i2LmAl

--HG--
extra : rebase_source : 5bd5ea3be3463b3f91a2e64da4e2c99c55cecd45
2018-07-30 09:35:05 -04:00
Kartikaya Gupta 3faf3e38d9 Bug 1478016 - Add a strongly-typed LayersObserverEpoch type. r=mattwoodrow
MozReview-Commit-ID: 6fELexXRYeV

--HG--
extra : rebase_source : 0eb028ee9b98199d18421f7ff28433189940fdca
2018-07-30 09:24:50 -04:00
sotaro 2d7e793ae4 Bug 1478570 - Fix ExternalImageId allocation of AsyncImagePipelineManager r=jrmuizel 2018-07-30 10:16:03 +09:00
Imanol Fernandez 3866161569 Bug 1478754 - WebGL crash when webgl.enable-surface-texture is enabled on Android; r=jgilbert,rbarker
MozReview-Commit-ID: GBTvZiLspvP

--HG--
extra : rebase_source : ff568522fecd415decd27b6b8bf7abe72c0bcd99
2018-07-28 12:33:55 +02:00
Gurzau Raul ebe874201b Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-07-28 12:49:02 +03:00
Gurzau Raul db79375c66 Merge inbound to mozilla-central. a=merge 2018-07-28 12:45:44 +03:00
Kartikaya Gupta 22456cd52b Bug 1479075 - Ensure FlushRenderingAsync actually flushes the compositor. r=sotaro
MozReview-Commit-ID: AfVIwLj2YJp

--HG--
extra : rebase_source : 3c9f4af10be9ab38fb708a2be4cb9393cd7e86c7
2018-07-28 04:47:08 -04:00
Mitch Ament c7c03f661b Bug 1477335 - Replace reference member AsyncPanZoomController::mFrameMetrics with getter functions which return mScrollMetadata.mMetrics. r=botond
This fixes a const correctness loophole.

MozReview-Commit-ID: I8yM74OAr8m

--HG--
extra : rebase_source : 8aeea554bfeff7efe03cd9a00539a6100e040b8a
2018-07-27 14:58:46 -04:00
Cosmin Sabou d71fce60ce Merge mozilla-central to mozilla-inbound. a=merge 2018-07-28 01:56:40 +03:00
Jeff Gilbert 0e128a3868 Bug 1470985 - s/PodEqual/ArrayEqual/ from ArrayUtils.h. - r=waldo
We can't use memcmp to compare PODs, largely because of undefined
padding. The rest of the Pod* functions are fine though, since we're
replicating or zeroing PODs.

MozReview-Commit-ID: LSspAi8qCWw
2018-07-27 14:11:18 -07:00
Ryan Hunt d50993e6a4 Bug 1477799 - Use the paint thread instead of workers when we only have one worker. r=jrmuizel
MozReview-Commit-ID: 3mR4KrS924N

--HG--
extra : rebase_source : 3075243361b7f1772854c85336e7d75a207b8cb6
extra : source : ccf97cb6779fafeb54f30b251487ae24c630e08b
2018-07-19 12:41:34 -05:00
Doug Thayer 3604605cfc Bug 1478704 - Compute shader adjustments for mask separately r=jrmuizel,mstange
When masking as a secondary effect to RENDER_TARGET, mFBOTextureTarget
will have a target of GL_TEXTURE_2D, leading us to not use sampler2DRect
and friends for the mask. This fixes that, and also assures our coord
adjustments are based on the mask texture's dimensions.

MozReview-Commit-ID: JSDfDJuLNSa

--HG--
extra : rebase_source : 77010ae331f4d004e9b716e6063334d98529bf5f
2018-07-27 09:56:34 -07:00
Doug Thayer a6b91271e5 Bug 1478704 - Use GL_TEXTURE_RECTANGLE_ARB for client storage r=jrmuizel
Now that the shader problems are fixed it's a simple switch.

MozReview-Commit-ID: 6MJlEVITwii

--HG--
extra : rebase_source : cb33bd45196eca26476c52c2c50e51f03f6129f8
2018-07-26 16:55:55 -07:00
Doug Thayer 2df99d5c56 Bug 1478704 - Fully generalize shader generation to rect textures r=jrmuizel
I'm not sure if there was a reason for not fully generalizing the
sampler2DRect and texture2DRect stuff throughout the shader
generalization file. It seemed the simplest thing was to fully
replace it - even if in some cases it doesn't make sense it's
more consistent, and it definitely fixes the trouble we were having
with switching to GL_TEXTURE_RECTANGLE_ARB for client storage.

MozReview-Commit-ID: 7243OjQdakN

--HG--
extra : rebase_source : 756741bbff4c56edec64cc6dd367328974b83b35
2018-07-26 16:54:48 -07:00
Andreea Pavel 3746d597a1 Backed out 3 changesets (bug 1478704) on request by dthayer for breaking video
Backed out changeset c57be31d3c06 (bug 1478704)
Backed out changeset c77acf366e1c (bug 1478704)
Backed out changeset 3329c8f5582a (bug 1478704)
2018-07-28 01:23:16 +03:00
Doug Thayer 030dbb65b5 Bug 1478704 - Compute shader adjustments for mask separately r=jrmuizel,mstange
When masking as a secondary effect to RENDER_TARGET, mFBOTextureTarget
will have a target of GL_TEXTURE_2D, leading us to not use sampler2DRect
and friends for the mask. This fixes that, and also assures our coord
adjustments are based on the mask texture's dimensions.

MozReview-Commit-ID: JSDfDJuLNSa

--HG--
extra : rebase_source : c779b18789196c9352a862a17f4a1e8d799805ec
2018-07-27 09:56:34 -07:00
Doug Thayer dcac2af944 Bug 1478704 - Use GL_TEXTURE_RECTANGLE_ARB for client storage r=jrmuizel
Now that the shader problems are fixed it's a simple switch.

MozReview-Commit-ID: 6MJlEVITwii

--HG--
extra : rebase_source : 7c91165633d5bc4fb07135781774998b0e1f1cf0
2018-07-26 16:55:55 -07:00
Doug Thayer f2242da77b Bug 1478704 - Fully generalize shader generation to rect textures r=jrmuizel
I'm not sure if there was a reason for not fully generalizing the
sampler2DRect and texture2DRect stuff throughout the shader
generalization file. It seemed the simplest thing was to fully
replace it - even if in some cases it doesn't make sense it's
more consistent, and it definitely fixes the trouble we were having
with switching to GL_TEXTURE_RECTANGLE_ARB for client storage.

MozReview-Commit-ID: 7243OjQdakN

--HG--
extra : rebase_source : d1b9f51f45d0cb875c82f3de5b2ea917e0385077
2018-07-26 16:54:48 -07:00
Jan Beich b252c0cc61 Bug 1473732 - Base default number of OMTP workers on the number of logical CPU cores. r=rhunt
system-info is a stub on Tier3 platforms while physical vs. logical
difference only matters for hyper-threading. As hyper-threading
is usually available on CPUs with more than 2 physical cores this
change has no impact there as the default is clamped to [1, 4].
However, on Intel i3-* CPUs with 2 physical and 4 logical cores this
bumps the default from 1 to 3.

MozReview-Commit-ID: 1Yh8rJL2JcN

--HG--
extra : rebase_source : 3e497f254ce91e4a8e539d475f90690831bcbe07
2018-06-30 22:41:59 +00:00
Lee Salzman adfdc21527 Bug 1473732 - Avoid race condition when accessing and creating SkCairoFTTypeface. r=rhunt
--HG--
extra : rebase_source : 658a1fc2a7e3f3bcab1c6f5d7a5070d762beaeef
2018-07-30 12:11:46 -04:00
Kartikaya Gupta b154baea17 Bug 1478504 - Inline function only used in a couple of places. r=sotaro
MozReview-Commit-ID: JfOgsxUHSlu

--HG--
extra : rebase_source : bc08909aa478071daf862ba355e2e4df03dfcf00
2018-07-27 09:43:41 -04:00
Kartikaya Gupta bfa67498d5 Bug 1478504 - Use NotifyPipelineRendered instead of DidComposite for WebRender. r=sotaro
MozReview-Commit-ID: 4eaMTEPD9NY

--HG--
extra : rebase_source : 7d2f5b5fe4d45f135f0899dccf6a910848b5c7e4
2018-07-27 09:42:30 -04:00
Dorel Luca 704612cf44 Merge mozilla-inbound to mozilla-central. a=merge 2018-07-27 13:19:26 +03:00
Csoregi Natalia 470d472200 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-07-27 01:01:27 +03:00
Thomas P. cd613a5787 Bug 1477858 - add Qcms fuzzing target dictionary. r=decoder 2018-07-23 22:34:16 +00:00
Emilio Cobos Álvarez 517256e365 Bug 1478391: Autogenerate StyleAppearance. r=jwatt
This builds on bug 1428676 and introduces StyleAppearance, which replaces the
NS_THEME_* constants.

Really sorry for the size of the patch.

There's a non-trivial change in the gtk theme, which I submitted separately as
bug 1478385.

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

MozReview-Commit-ID: DiSmMWK7Krp
2018-07-26 17:06:17 +02:00
Jeff Muizelaar fd810fa7ce Bug 1478150. Restrict webrender qualified to modern Nvidia gpus. r=kats
MozReview-Commit-ID: 1CyOgLkqD40

--HG--
extra : rebase_source : 0766de768efa82cf70f98a262d7e33b6dfd258d9
2018-07-26 15:10:35 -04:00
Lee Salzman 8a02469d65 Bug 1478084 - fix recursive locking in SkFontHost_cairo. r=jrmuizel 2018-07-26 15:23:53 -04:00
Lee Salzman 79d6db9a30 Bug 1478084 - make cairo_font_face_set_user_data thread-safe. r=jrmuizel 2018-07-26 15:23:25 -04:00
Cosmin Sabou acd8ea2c75 Backed out changeset e354029775b8 (bug 1473732) for causing leaks at gfxFT2FontBase::GetGlyph, GetCharWidth. CLOSED TREE 2018-07-26 04:40:00 +03:00
Jan Beich 061b467f45 Bug 1473732 - Base default number of OMTP workers on the number of logical CPU cores. r=rhunt
system-info is a stub on Tier3 platforms while physical vs. logical
difference only matters for hyper-threading. As hyper-threading
is usually available on CPUs with more than 2 physical cores this
change has no impact there as the default is clamped to [1, 4].
However, on Intel i3-* CPUs with 2 physical and 4 logical cores this
bumps the default from 1 to 3.

MozReview-Commit-ID: 1Yh8rJL2JcN

--HG--
extra : rebase_source : 77613cbb99c14f19217592080bfd51ea2194422b
2018-06-30 22:41:59 +00:00
Cosmin Sabou a313ea14ff Merge mozilla-inbound to mozilla-central. a=merge 2018-07-25 21:21:50 +03:00
Cosmin Sabou 76b0913227 Merge autoland to mozilla-central. a=merge 2018-07-25 21:20:49 +03:00
Andreea Pavel da179a7f47 Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2018-07-25 18:13:30 +03:00
sotaro 2bcc8b96f5 Bug 1477608 - Reuse same ExternalImageId for different video frames if possible r=jrmuizel 2018-07-25 23:30:08 +09:00
Sebastian Hengst bd900ee36a Merge mozilla-inbound to mozilla-central. a=merge 2018-07-25 17:16:53 +03:00
Tiberius Oros 036999d0a9 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-07-25 13:43:03 +03:00
Kartikaya Gupta e16af06073 Bug 1468020 - Add crashtest. r=mstange
MozReview-Commit-ID: KeWy2KHPSjl

--HG--
extra : rebase_source : d077abc9c926feaa13808d624b15024729560e6a
2018-07-24 16:38:25 -04:00
Kartikaya Gupta 533c8b4d83 Bug 1468020 - Extract helper function to avoid duplicated code. r=mstange
MozReview-Commit-ID: JuirkAId7Km

--HG--
extra : rebase_source : c9d15e9fd4a823b321aff9c1048b659f87d03823
2018-07-24 16:38:25 -04:00
Kartikaya Gupta ad4d295efb Bug 1468020 - Conform to static analysis bot suggestion. r=mstange
MozReview-Commit-ID: KeWy2KHPSjk

--HG--
extra : rebase_source : 87764ba4387e1a53d8d6fdb66c1fe03669dee943
2018-07-24 16:38:25 -04:00
Kartikaya Gupta c219864291 Bug 1468020 - Don't layerize filter and mask items. r=mstange
This restricts the active-item-detection code to wrap lists and
perspective items because other wrapper items are not supported yet.

MozReview-Commit-ID: JuirkAId7Kk

--HG--
extra : rebase_source : 971de2c56d183090bb9a8701af62ada493e39b77
2018-07-24 16:37:38 -04:00
Bogdan Tara 1cd7dec7b6 Backed out 4 changesets (bug 1468020) for crashtest failures on gfx/tests/crashtests/1468020.html CLOSED TREE
Backed out changeset 262d541a474f (bug 1468020)
Backed out changeset 621ab5087373 (bug 1468020)
Backed out changeset 866492bf5ccf (bug 1468020)
Backed out changeset eb6a2ae68d09 (bug 1468020)
2018-07-24 22:57:02 +03:00
Imanol Fernandez c7746a52c2 Bug 1476380 - Remove the spin wait in Android gfxVRExternal PullState calls; r=kip
MozReview-Commit-ID: 7pwMhE7emwY

--HG--
extra : rebase_source : f7ce0053855e51c0b166a0a9e686e2f2e9a09e22
2018-07-24 16:27:58 +02:00
Jeff Gilbert c4da2d9fee Bug 1471632 - Cherry-pick mingw clang compilation fix.
Differential Revision: https://phabricator.services.mozilla.com/D2346

--HG--
extra : moz-landing-system : lando
2018-07-24 23:23:52 +00:00
Kartikaya Gupta 76a7f3cba7 Bug 1468020 - Add crashtest. r=mstange
MozReview-Commit-ID: KeWy2KHPSjl

--HG--
extra : rebase_source : d22c55d1d0fa17bf722f4540ab7fb3243a3001af
2018-07-24 14:21:09 -04:00
Kartikaya Gupta 970bd5648f Bug 1468020 - Extract helper function to avoid duplicated code. r=mstange
MozReview-Commit-ID: JuirkAId7Km

--HG--
extra : rebase_source : 3e2b3d228b3ad6dafc11dc89631778cd23580c9c
2018-07-24 14:21:08 -04:00
Kartikaya Gupta af58b4a732 Bug 1468020 - Conform to static analysis bot suggestion. r=mstange
MozReview-Commit-ID: KeWy2KHPSjk

--HG--
extra : rebase_source : 4280ba5c9f2b77e5c5ed98cfc9b9e586c4794add
2018-07-24 14:21:08 -04:00
Kartikaya Gupta 614fc7e747 Bug 1468020 - Don't layerize filter and mask items. r=mstange
This restricts the active-item-detection code to wrap lists because
other wrapper items are not supported yet.

MozReview-Commit-ID: JuirkAId7Kk

--HG--
extra : rebase_source : 5dbb8af8504f301ca49273b4f6f434a91524860a
2018-07-24 14:21:07 -04:00
Mike Hommey ef4934a8dd Bug 1478228 - Avoid R_ARM_V4BX relocations on android builds. r=froydnj
--HG--
extra : rebase_source : 5f9d2490345382b562380fffb0666af2ebb25cf2
2018-07-25 18:40:49 +09:00
Boris Zbarsky 75abc43e0d Bug 1476145 part 8. Stop using getInterface(nsIDOMWindowUtils) in various test code. r=kmag 2018-07-24 19:47:43 -04:00
Nathan Froyd 309ddc0be2 Bug 1477048 - part 2 - remove non-ipc/chromium moz.build uses of OS_TEST; r=gps
The deletions in xptcall are when we don't even have support for the CPU
in moz.configure, so I assume that people haven't been compiling on
those architectures for quite some time.
2018-07-24 16:08:56 -04:00
Nathan Froyd 5158597854 Bug 1477048 - part 1 - remove `'86' in CONFIG['OS_TEST']` stanzas from moz.build files; r=gps
The current code is somewhat non-obvious to a first-time reader, and
OS_TEST is a bizarre thing anyway, since it's actually the name of the
CPU we're running on.  We'd do well to minimize the use of OS_TEST.

Note that the complete nuking of the xptcall/md/unix/moz.build lines are
because we don't support OS X/x86 anymore.
2018-07-24 16:08:56 -04:00
Nathan Froyd 32d63fdca4 Bug 1477047 - make fewer assumptions about MSVC compiling for x86-ish code; r=chmanchester
ARM64 Windows is a thing now, so this assumption is no longer valid.
2018-07-24 16:08:56 -04:00
Lee Salzman 585bfee6dc Bug 1478070 - cache default DWrite rendering params in Skia. r=jrmuizel 2018-07-25 23:29:15 -04:00
Boris Zbarsky 754087a992 Bug 1446940 part 5. Stop getting docshells from windows via getInterface in dom/editor/etc code. r=kmag 2018-08-01 13:07:11 -04:00
David Major a9e8069a9b Bug 1479456: Fix some non-unified bustage in gfx/thebes. r=jrmuizel 2018-08-01 13:02:18 -04:00
Kartikaya Gupta dfc93a4506 Bug 1477471 - Add missing pop_back call. r=jrmuizel 2018-07-24 14:06:30 -04:00
Kartikaya Gupta 3dfe60b882 Bug 1477471 - Implement PushLayerWithBlend for DrawTargetTiled. r=jrmuizel 2018-07-24 14:06:23 -04:00
Brian Hackett 3b2167ce37 Bug 1465466 Part 5 - Don't use APZ in recording/replaying processes, r=kats,mconley.
--HG--
extra : rebase_source : 01a76161037131e0df626f591543bf9316016597
2018-07-23 21:51:24 +00:00
Brian Hackett 562987ce84 Bug 1465466 Part 3 - When recording/replaying, composite in the main thread's event loop instead of waiting for vsyncs, r=nical.
--HG--
extra : rebase_source : 0dbdcb4698e349ceb53e0621d5fa453bb1f17357
2018-07-23 21:47:28 +00:00
Brian Hackett 99d34528e4 Bug 1465466 Part 1 - Use a separate compositor in recording/replaying processes, r=nical.
--HG--
extra : rebase_source : 003f6557370f2e4e6959ea14e833f7e2e617c5b0
2018-07-23 21:46:47 +00:00
Gurzau Raul 19e302fb18 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-07-24 12:52:06 +03:00
Gurzau Raul f2e1e857f1 Merge inbound to mozilla-central. a=merge 2018-07-24 12:49:23 +03:00
Jeff Muizelaar bfec1c104f Bug 1477505. Update webrender to commit e850fbd2e0e60a8de76c2d2464f0fa27316d5949 2018-07-23 23:48:02 -04:00
Kris Maglione 7aa3564a28 Bug 1477579: Part 3 - Avoid duplicating static strings in category manager entries. r=froydnj
Much like the component manager, many of the strings that we use for category
manager entries are statically allocated. There's no need to duplicate these
strings.

This patch changes the category manager APIs to take nsACStrings rather than
raw pointers, and to pass literal nsCStrings when we know we have a literal
string to begin with. When adding the category entry, it then skips making
copies of any strings with the LITERAL flag.

MozReview-Commit-ID: EJEcYSdNMWs
***
amend-catman

--HG--
extra : source : aa9a8f18e98f930a3d8359565eef02f3f6efc5f9
extra : absorb_source : 81a22ab26ee8017ac43321ff2c987d8096182d37
2018-07-23 17:41:06 -07:00
Brindusan Cristian 91a3707d5f Backed out 3 changesets (bug 1477579) for build bustages on xpcshell\selftest.py and crashtest failures on /components/nsComponentManager.cpp. CLOSED TREE
Backed out changeset aa9a8f18e98f (bug 1477579)
Backed out changeset 5fb0b7746a5d (bug 1477579)
Backed out changeset 8359f8fe4184 (bug 1477579)
2018-07-24 04:55:03 +03:00
Kris Maglione dfd38a6ac3 Bug 1477579: Part 3 - Avoid duplicating static strings in category manager entries. r=froydnj
Much like the component manager, many of the strings that we use for category
manager entries are statically allocated. There's no need to duplicate these
strings.

This patch changes the category manager APIs to take nsACStrings rather than
raw pointers, and to pass literal nsCStrings when we know we have a literal
string to begin with. When adding the category entry, it then skips making
copies of any strings with the LITERAL flag.

MozReview-Commit-ID: EJEcYSdNMWs
***
amend-catman

--HG--
extra : rebase_source : 4f70e7b296ecf3b52a4892c92155c7c163d424d2
2018-07-23 17:41:06 -07:00
Brian Hackett e897f52beb Bug 1207696 Part 6c - Disable accelerated canvases when recording or replaying, r=dvander.
--HG--
extra : rebase_source : 7076c2b59d6f6546d91fe785f448b0c829c4c56a
2018-07-23 14:41:58 +00:00
Kartikaya Gupta 38c46ea534 Bug 1468020 - More correctly detect active items in the grouper. r=mstange 2018-07-23 17:09:01 -04:00
Jeff Gilbert 6089f7eebc Bug 1475010 - Also, assert in DEBUG if we don't get a KeyedMutex. - r=kvark
Disableable via env var.

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

--HG--
extra : moz-landing-system : lando
2018-07-23 20:48:51 +00:00
Tanushree Podder a468f78119 Bug 1473699 - Async-scroll the layout viewport even if it's smaller than the visual viewport. r=botond
When the layout viewport is smaller than the visual viewport and the user
scrolls a web page, the layout viewport remains fixed to its position before
the scroll event took place. However, the visual viewport moves according to
the new scroll position. This patch addresses this issue by moving the layout
viewport along with the visual viewport.

MozReview-Commit-ID: 3Mk1o6AF2wr

--HG--
extra : rebase_source : 8c6068059593038dc443cb9c96242483de97e9d9
2018-07-22 01:59:37 -04:00
Robert Longson da1ac338dc Bug 1474284 - cope with degenerate bezier curves r=baz 2018-07-23 18:36:09 +01:00
Emilio Cobos Álvarez ed8949d457 Bug 1477678 - Remove useless Compositor::SetDispAcquireFence. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D2295

--HG--
extra : moz-landing-system : lando
2018-07-23 13:06:24 +00:00
Doug Thayer 323ffd48be Bug 1265824 - Plug holes in texture size restrictions r=mattwoodrow
When computing whether we have an intermediate buffer or not, which
in our case amounts to the inverse of deciding whether we want to use
a DirectMapTextureSource or not, we want to ensure that we don't use
one if the texture is too big to be a single texture in OpenGL. This
will default to using a TiledTextureImage. In a perfect world we
would build tiling logic into the client storage approach, but that
shouldn't block this.

MozReview-Commit-ID: 7Oi86oGis93

--HG--
extra : rebase_source : df9d314ef3d9a285bb10a9e21b87dc280a88fa84
2018-07-22 20:27:48 -07:00
Doug Thayer 68e5aaf03a Bug 1265824 - Remove CreateForYCbCrWithBufferSize r=mattwoodrow
This seems to be unused. Not sure if it's still left in here for
a reason or not.

MozReview-Commit-ID: 3wxaCDI7eCO

--HG--
extra : rebase_source : 25dda76dce892e580dbf31741e359d3a78f5742a
2018-07-22 20:22:12 -07:00
Doug Thayer 9b62998d60 Bug 1265824 - Guard client storage stuff behind a pref r=mattwoodrow
MozReview-Commit-ID: DjKhtMDJ91C

--HG--
extra : rebase_source : b9abb9b9b13132cd560d1ca9677183790b2d06e2
2018-06-22 11:10:41 -07:00
Doug Thayer cd54f8c184 Bug 1265824 - Wait on texture handles with IPC r=jld,mattwoodrow
There's a lot going on here, but it all fits under the idea of
being able to communicate about texture locking statuses
without spinning on IsReadLocked. This is a bit of a trade -
we could just always allocate/grab a texture from the pool,
which would put a smaller cap on the amount of time we can
possibly spend when a texture is locked. However, this eats
up more CPU and memory than waiting on the textures to unlock,
and could take longer, especially if there were a large number
of textures which we just need to wait for for a short amount
of time. In any case, we very rarely hit the case where we
actually need to wait on the sync IPC to the compositor - most
of the time the textures are already unlocked.

There is also an async IPC call in here, which we make before
flushing async paints. This just causes the compositor to
check whether the GPU is done with its textures or not and
unlock them if it is. This helps us avoid the case where we
take a long time painting asynchronously, turn IPC back on at
the end of that, and then have to wait for the compositor
to to get into TiledLayerBufferComposite::UseTiles before
getting a response. Specifically this eliminates several talos
regressions which use ASAP mode.

Lastly, there seem to be no other cases of static Monitors
being used. This seems like it falls under similar use cases
as StaticMutexes, so I added it in. I can move it into its own
file if we think it might be generally useful in the future.

MozReview-Commit-ID: IYQLwUqMxg2

--HG--
extra : rebase_source : 4f05832f51dae6db98773dcad03cb008a80eca6c
2018-05-05 15:46:26 -07:00
Doug Thayer e166b5a5e9 Bug 1265824 - handle the texture uploading and readLock related things for direct mapping texture source r=mattwoodrow
MozReview-Commit-ID: BC065h1Ac6k

--HG--
extra : rebase_source : 45be796ebd62cc116ae6fce51c4fe83010c6563c
2018-05-02 18:31:31 -07:00
Doug Thayer e42c2737b7 Bug 1265824 - implement CreateDataTextureSourceAroundYCbCr() and CreateDataTextureSourceAround() for CompositorOGL r=mattwoodrow
This patch will use DirectMapTextureSource to wrap the DataSourceSurface data for gpu access.
That could improve the texture uploading performance.

MozReview-Commit-ID: CGPFcCsR1RY

--HG--
extra : rebase_source : fd0e5076357d8893e9283930fc4d6fb944a3f1de
2018-05-02 18:31:08 -07:00
Doug Thayer c0c56d6901 Bug 1265824 - Pass the texture direct mapping info to all texture creating functions r=mattwoodrow
The client side can't get the GL context in CompositorOGL. So, it can't know
the texture direct mapping capability directly. This patch adds the texture
direct mapping info in TextureFactoryIdentifier. Then, the client side could
get the info form the TextureFactoryIdentifier.

MozReview-Commit-ID: KEazDVg0p9Y

--HG--
extra : rebase_source : 09ce1065cd076a3a5dc276f93837d608443c60a1
2018-05-02 18:20:25 -07:00
Doug Thayer f1353d2962 Bug 1265824 - Add a new texture source type "DirectMapTextureSource" r=mattwoodrow
The DirectMapTextureSource could let the compositor to read the buffer directly.
That could get rid of some memory copy operations during texture uploading.

MozReview-Commit-ID: CHhoR96P7VG

--HG--
extra : rebase_source : 65c167644096a1b72fe5dfbb55837842f41377bb
2018-05-02 18:20:10 -07:00
Doug Thayer ad1ca0fa4e Bug 1265824 - Remove the unsed member in GLTextureSource r=mattwoodrow
The "mExternallyOwned" is used for gralloc buffer. We don't use the gralloc buffer now.

MozReview-Commit-ID: 7Gurpa3kdp0

--HG--
extra : rebase_source : 5c0bf4facba5ed2cc8772df78bb702965e77a4ab
2018-05-02 18:19:54 -07:00
Brian Hackett 11d1005390 Bug 1465466 Part 2 - Synchronously composite into a graphics shmem buffer when recording/replaying, r=nical.
--HG--
extra : rebase_source : a89c5fd8f87f82e5a93f9b3311617317a67b3333
2018-07-22 12:02:26 +00:00
Jeff Muizelaar 940b6557ee Bug 1477400. Update webrender to commit c2c5aaebdd6df22ce13941c1a4b16ef47eaa9f7b 2018-07-21 12:54:34 -04:00
Cosmin Sabou 0676c53741 Merge mozilla-central to mozilla-inbound. a=merge 2018-07-21 00:51:00 +03:00
Cosmin Sabou 0d3874d7d6 Merge mozilla-inbound to mozilla-central. a=merge 2018-07-21 00:42:01 +03:00
Cosmin Sabou 1b2d97930a Merge autoland to mozilla-central. a=merge 2018-07-21 00:39:51 +03:00
Ryan VanderMeulen 7c56172d60 Backed out 5 changesets (bug 1465616) for causing Fennec scrolling regressions.
Backed out changeset 403ba3d9539a (bug 1465616)
Backed out changeset ea79ddd406f4 (bug 1465616)
Backed out changeset 559c8997eb53 (bug 1465616)
Backed out changeset 3f5ca59998bf (bug 1465616)
Backed out changeset 9e48a27950be (bug 1465616)

--HG--
extra : amend_source : 8cc378d26e9fea0ed6277b69f227191e849001d8
2018-07-20 14:40:51 -04:00
Nicolas Silva 6d4507f6ff Bug 1455422 - Implement the new blob image rasterization hooks. r=kats, gankro 2018-07-19 16:33:05 -04:00
Jeff Muizelaar 8ebc4e4580 Bug 1476636. Update webrender to commit 9f21ee5dba0694818a1e2e46d95734ede281447c 2018-07-20 17:24:47 -04:00
Miko Mynttinen c9202e2933 Bug 1477260 - Clip the rect in Matrix4x4TypedFlagged::TransformAndClipBounds, when transform is an identity matrix r=bas
MozReview-Commit-ID: 3a8vnl3K87n

--HG--
extra : rebase_source : b4bdd2b14e10becee20007e453497e9d7a204097
2018-07-20 17:28:37 +02:00
sotaro 8b12e2f10c Bug 1476876 - Make FlushRendering async if DComp is used on Windows with WebRender r=nical 2018-07-20 22:58:40 +09:00
Kartikaya Gupta e750c8c1b4 Bug 1475637 - Add a mechanism for dumping an interleaved display list. r=jrmuizel
The prefs, when enabled, will dump the gecko DL items followed by the
WR DL items that were generated from that gecko item. This allows us to
easily go from a DOM element with known id/class attributes to e.g. an
ImageKey of an image that was generated for that element.

Also, this logging can be enabled in CI builds just like gecko display-list
dumping, instead of the ifdef that we previously had in WebRenderLayerManager.

MozReview-Commit-ID: Eeo4iO62YY1

--HG--
extra : rebase_source : b4a348b2e8bced976489257b966f70b29c56df25
2018-07-19 15:30:30 -04:00
Jeff Muizelaar c4b5567231 Bug 1477036. Expose wrQualified in telemetry. r=kats
This adds a WEBRENDER_QUALIFIED feature that's set whenever the webrender could
be used on a machine regardless of whether it's actually being used.

MozReview-Commit-ID: Eke6PMKQOnx

--HG--
extra : rebase_source : 977d371c12c9e8ab3273d6e65655e0378c22c226
2018-07-19 14:05:29 -04:00
Miko Mynttinen 0c42827471 Bug 1462672 - Part 5: Add a pref flag to allow flattening inactive nsDisplayTransform items r=mattwoodrow
MozReview-Commit-ID: BQGzaAMzReF

--HG--
extra : rebase_source : 42678409280a795fe891e10eceb86fa269d1d2de
2018-07-16 21:27:08 +02:00
Jeff Gilbert 84984223c4 Bug 1475010 - Build ANGLE with ANGLE_ENABLE_KEYEDMUTEX. r=jrmuizel,kvark
Without KeyedMutex we use glFinish, which is bad.
We accidentally stopped asking ANGLE for KeyedMutexes during some build changes.

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

--HG--
extra : moz-landing-system : lando
2018-07-17 02:52:06 +00:00
Robert Bartlensky dbbe5d1893 Bug 1476645: Fix DEAD_STORE errors in gfx/*. r=lsalzman
MozReview-Commit-ID: GYAWaLcpfsz

--HG--
extra : rebase_source : 30b9bdfda57e2773d5311dad83fa7ea468865c70
2018-07-18 16:54:00 +01:00
Gurzau Raul 8a871a6c46 Merge inbound to mozilla-central. a=merge 2018-07-19 12:54:18 +03:00
Lee Salzman 778675de84 Bug 1474968 - pass DWrite font gamma and contrast to WebRender. r=jrmuizel 2018-07-18 22:16:50 -04:00
Margareta Eliza Balazs b1e7992b82 Backed out 8 changesets (bug 1265824) for bustage in /builds/worker/workspace/build/src/gfx/layers/opengl/CompositorOGL.cpp on a CLOSED TREE
Backed out changeset 1099d6f15f9f (bug 1265824)
Backed out changeset b5ba15b1a70f (bug 1265824)
Backed out changeset 51795de4adaf (bug 1265824)
Backed out changeset be68741ff4ce (bug 1265824)
Backed out changeset 4731dc56702d (bug 1265824)
Backed out changeset 984133e9614b (bug 1265824)
Backed out changeset efce316a4425 (bug 1265824)
Backed out changeset 367abce30668 (bug 1265824)
2018-07-19 09:33:28 +03:00
sotaro 432fb44cee Bug 1475187 - Remove AsyncImagePipelineManager::ApplyAsyncImages() call from WebRenderBridgeParent::RecvSetDisplayList() r=kats 2018-07-19 07:51:37 +09:00
shindli 6cdfd81b2e Merge inbound to mozilla-central. a=merge 2018-07-19 00:45:25 +03:00
Ryan Hunt c7eb70ba65 Bug 1471639 - Allow OMTP with edge-padding. r=nical
MozReview-Commit-ID: JUNk79jLQcj

--HG--
extra : source : a6aacf58c4a6dc5621c3faa0387f775d699aa6f1
2018-07-16 15:01:26 -05:00
Cosmin Sabou 099320d8ad Merge mozilla-central to autoland. a=merge 2018-07-18 20:21:59 +03:00
Cosmin Sabou 88199de427 Merge mozilla-inbound to mozilla-central. a=merge 2018-07-18 20:19:59 +03:00
Kartikaya Gupta bbf5082371 Bug 1475252 - Update for API change in WR PR 2893. r=jrmuizel
MozReview-Commit-ID: JOxruqyKcFp

--HG--
extra : rebase_source : c9814622ebe9ad409b1edab44fa7e56407861f77
2018-07-18 12:04:13 -04:00
Martin Robinson b4ca607f57 Bug 1475252 - Update for API changes in WR PR 2871. r=kats
This change has WrClipId contain the ClipId type (except for clip
chains, which are handled separately) in the least significant bit of
the size_t. On 32-bit systems this limits the number of clip and spatial
nodes to 2,147,483,648 which is likely more than what WebRender can
handle.

MozReview-Commit-ID: 1cpZCBt1wL7

--HG--
extra : rebase_source : 8183570e37bf6da69a3e7335d63fc47cad191fe9
2018-07-04 13:27:59 +02:00
Kartikaya Gupta 2e759049d9 Bug 1475252 - Update Cargo lockfiles, re-vendor rust dependencies, and re-generate FFI header. r=jrmuizel
MozReview-Commit-ID: 72cMhrmtbIq

--HG--
extra : rebase_source : a66d0da4efd86d3a6f164f35c753053719ebc5f8
2018-07-18 12:04:12 -04:00
Kartikaya Gupta f2b5cc3b94 Bug 1475252 - Update webrender to 88dab3f611b05516c1c54a7cb35813b796b08584. r=jrmuizel
MozReview-Commit-ID: 8LaR1FMY1M3

--HG--
extra : rebase_source : 1de336969d47ca8d2ce21585844bb261f7e3d10b
2018-07-18 12:04:12 -04:00
Kashav Madan 1b2d8260ea Bug 1465616 - Add a mochitest for fixed position hit-testing. r=botond
MozReview-Commit-ID: IC82JZoVgPs

--HG--
extra : rebase_source : 44c01a0433c255bbdc51521e75b1aee4680cd198
2018-07-04 16:17:31 -04:00
Kashav Madan 7077153dc5 Bug 1465616 - Add reftests for fixed and sticky elements. r=botond
MozReview-Commit-ID: IzSUQqvjrUp

--HG--
extra : rebase_source : 3fe48273aae060e32491e6aea7c83f197561a743
2018-07-04 16:16:09 -04:00
Kashav Madan bf18fe089c Bug 1465616 - Remove call to AlignFixedAndStickyLayers for RCD-RSF. r=botond
MozReview-Commit-ID: B8HH6mbjTnv

--HG--
extra : rebase_source : 15eff992861e9a51b40a580df57067bfc5b88760
2018-07-04 15:52:03 -04:00
Ryan Hunt d4252e26ba Bug 1471704 - Correct the refcounting definition for CaptureTiledPaintState. r=nical
MozReview-Commit-ID: 8ZqsWQMOD9W

--HG--
extra : source : daca69006d44692ffe2df6ad503610ba64768aff
2018-07-16 17:37:53 -05:00
Bas Schouten 2ffa4da191 Bug 1476506: Move RoundedRect into Moz2D and convert all callers. r=mattwoodrow 2018-07-18 08:55:43 +02:00
Ryan Hunt 41f7f579b7 Bug 1471639 - Move edge padding to the paint thread. r=nical
This commit ports over the last remaining operation for tiling that doesn't work
on the paint thread.

The difficult part for edge padding is that it is done outside of ValidateTile
so it doesn't have an associated CapturedTilePaintState to be added to as an
operation. We need it to be in the same paint state so that it's guaranteed
to be run after painting has finished.

This commit changes edge padding to instead be decided inside of ValidateTile
and either sent to the paint thread if there is OMTP or executed right away.

MozReview-Commit-ID: JDD4rH1fVwW

--HG--
extra : source : 9b0a54842d3169960a606fa1dd335acf6aa70dbe
extra : intermediate-source : bcbab66c16c5cc2b917f12b4481bbbb8fe3eb097
2018-06-26 17:12:56 -05:00
Doug Thayer aa98d8cbd6 Bug 1265824 - Guard client storage stuff behind a pref r=mattwoodrow
MozReview-Commit-ID: DjKhtMDJ91C

--HG--
extra : rebase_source : 3f281360a5731e95ba345c92af8c550af9acf498
2018-06-22 11:10:41 -07:00
Sylvestre Ledru 6c3c26c3f7 Bug 1468273 - Fix flake8/pep8 issues by hand in gfx/ r=ted
MozReview-Commit-ID: BFnq9JpWZxq

--HG--
extra : rebase_source : d56375d1ff0f183f95e0565851191190fe41e34b
2018-06-10 14:15:18 +02:00
Sylvestre Ledru 13b20f9b86 Bug 1468273 - autopep8 on gfx/ r=ted
MozReview-Commit-ID: 8j8EU3E08GP

--HG--
extra : rebase_source : 1f38ac0b7283505622cc95a120a0a0d4cea96803
2018-06-10 14:13:44 +02:00
Tiberius Oros d6492ca47e Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-07-18 00:59:21 +03:00
Tiberius Oros d701ae940f Merge inbound to mozilla-central. a=merge 2018-07-18 00:55:33 +03:00
Andreea Pavel eb8aaacd2d Backed out 3 changesets (bug 1471704) for failing css/css-transforms/transform3d-preserve3d-013.html on a CLOSED TREE
Backed out changeset e4d9e6cdd630 (bug 1471704)
Backed out changeset 0bd6762c91fb (bug 1471704)
Backed out changeset 065a16bd6b0a (bug 1471704)
2018-07-17 20:10:01 +03:00
Kartikaya Gupta dc1007a996 Bug 1471962 - Flush scene builds when flushing rendering. r=jrmuizel
MozReview-Commit-ID: 1BqhTG1u3nT

--HG--
extra : rebase_source : 031ad412d1f08b4658ad19a6e0d331562665b69a
2018-07-17 11:34:31 -04:00
Ryan Hunt 8b606bdac2 Bug 1471704 - Correct the refcounting definition for CaptureTiledPaintState. r=nical
MozReview-Commit-ID: 8ZqsWQMOD9W

--HG--
extra : source : d2dfabce90d5977e025a071d7a22615e5c245111
2018-07-16 17:37:53 -05:00
Coroiu Cristina f3162b921c Merge mozilla-central to mozilla-inbound a=merge on a CLOSED TREE 2018-07-17 12:48:47 +03:00
Kris Maglione 82a9ede2c1 Bug 1473631: Part 9 - Replace pref observers with callbacks in gfxPlatformFontList. r=njn
MozReview-Commit-ID: AT8BmGNj6QD

--HG--
extra : rebase_source : 008374f7dcf5a0e5f8b611a3ab37b4ce4dc80e5e
2018-07-05 14:47:39 -07:00
Kris Maglione ef3718fbe1 Bug 1473631: Part 8 - Replace pref observers with callbacks in gfxPlatform. r=njn
MozReview-Commit-ID: GNTGqvahsoz

--HG--
extra : rebase_source : 4ca9d989ffd1f30d2fb4b9726ec0d814a7412266
2018-07-05 14:43:02 -07:00
Kris Maglione 0bfdb4329f Bug 1473631: Part 0a - Make preference callbacks typesafe. r=njn
I initially tried to avoid this, but decided it was necessary given the number
of times I had to repeat the same pattern of casting a variable to void*, and
then casting it back in a part of code far distant from the original type.

This changes our preference callback registration functions to match the type
of the callback's closure argument to the actual type of the closure pointer
passed, and then casting it to the type of our generic callback function. This
ensures that the callback function always gets an argument of the type it's
actually expecting without adding any additional runtime memory or
QueryInterface overhead for tracking it.

MozReview-Commit-ID: 9tLKBe10ddP

--HG--
extra : rebase_source : 7524fa8dcd5585f5a31fdeb37d95714f1bb94922
2018-07-06 12:24:41 -07:00
Xidorn Quan 1f2e5ca9b2 Bug 1472386 - Take overflow-wrap into account when calculating min-content intrinsic size. r=jfkthame
MozReview-Commit-ID: Fu6Gbmxs4PN

--HG--
extra : rebase_source : b90c58f16c5cad717961b586fc0a6574343a5692
2018-07-09 14:54:34 +10:00
Andreea Pavel 1261098dca Backed out 3 changesets (bug 1474300) on request by kats for introducing a crasher a=backout
Backed out changeset f7659b60b7b0 (bug 1474300)
Backed out changeset a65429a135c7 (bug 1474300)
Backed out changeset 376e702ed3ea (bug 1474300)
2018-07-15 17:57:36 +03:00
Matt Woodrow 9171c79a67 Bug 1372458 - Fold opacity into filter drawing rather than using a temporary surface. r=bas,mstange
MozReview-Commit-ID: GOBTUhN7fcC

--HG--
extra : rebase_source : 8355d2001dcc8fba5e43d4ace6483896a9d9cd31
2018-07-14 15:25:49 +12:00
Noemi Erli e9d21cd259 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-07-14 01:22:25 +03:00
Noemi Erli 9793ca2da4 Merge inbound to mozilla-central. a=merge 2018-07-14 00:52:51 +03:00
Alexis Beingessner a8977d3600 Bug 1465948 - factor in the BuildingRect for filters and masks. r=jrmuizel
MozReview-Commit-ID: BABKDG5U0UB
2018-07-13 13:50:39 -04:00
Alexis Beingessner ae6bb80dd4 Bug 1474970 - mark wrap lists as ContainersLayerItems. r=mstange
MozReview-Commit-ID: KDz50Xlp0Ps

--HG--
extra : rebase_source : b2b1dfc96aa9639ee6af6cfb669551208fbe02bb
2018-07-11 13:20:58 -04:00
Tanushree Podder e8cc1dc6df Bug 1470267 - Store the visual viewport offset in nsIPresShell. r=botond
Added a data member to nsIPresShell to store the visual viewport offset. APZ
will update the visual viewport offset in the presShell for root scroll frames
on every repaint request.

MozReview-Commit-ID: Ksou43hrE6H

--HG--
extra : rebase_source : 812c88efc7556c4bff2a62834cfaaec6e6945093
2018-07-11 17:24:56 -04:00
Ryan Hunt cfffe8f09f Bug 1471892 - Block OMTP before OSX 10.10 to work around CoreGraphics crash. r=jrmuizel
MozReview-Commit-ID: JYmlucAG6rB

--HG--
extra : rebase_source : 03c0963bf54b967f34108fa7c879b180685dd868
extra : amend_source : b17adf02508d9a93d1d4149a1573919192440fe8
2018-07-10 16:12:58 -05:00
Kartikaya Gupta 63972a55bf Back out cset 5b8041f7f604 (bug 1446181) for introducing a low-volume crash. r=me 2018-07-13 12:00:29 -04:00
Ryan VanderMeulen 16fa6aac83 Bug 1473064 - Update HarfBuzz to version 1.8.3. r=jfkthame
--HG--
extra : rebase_source : 3c306d165a8c22c9f38f6faa9aa755d07ad197c8
2018-07-11 10:47:57 -04:00
Nicolas Silva 69b2908737 Bug 1474940 - Add a crashtest for very large blurred rects. r=Bas
--HG--
extra : source : 16e2aaf4043cc315126c18fbb9fc14a1bb130276
2018-07-13 11:36:47 +02:00
Cosmin Sabou fe3851b801 Backed out changeset 16e2aaf4043c (bug 1474940) for causing crashes on crashtests/1393272.webm 2018-07-13 14:13:05 +03:00
Cosmin Sabou 5b013c7fc5 Backed out 2 changesets (bug 1474722) for causing multiple mochitest failures on several files. CLOSED TREE
Backed out changeset 68019e52d1b9 (bug 1474722)
Backed out changeset 77597cd3461c (bug 1474722)
2018-07-13 13:10:56 +03:00
Nicolas Silva 4a4d59570c Bug 1474940 - Add a crashtest for very large blurred rects. r=Bas 2018-07-13 11:36:47 +02:00
Nicolas Silva 7a270b1782 Bug 1474722 - Allow very large nine-patched shadows. r=Bas 2018-07-13 11:30:57 +02:00
Nicolas Silva 61fd0c3a3e Bug 1474722 - Add a reftest. r=Bas 2018-07-13 11:30:51 +02:00
Margareta Eliza Balazs 448f792f96 Merge inbound to mozilla-central. a=merge 2018-07-13 11:52:00 +03:00
Andrea Marchesini bc5414c5f3 Bug 1471189 - Removing 'Terminating' state in workers, r=mrbkap 2018-07-12 19:33:41 +02:00
Andreea Pavel 10f6df7c1f Merge mozilla-central to autoland. a=merge on a CLOSED TREE
--HG--
rename : dom/webidl/ScrollBoxObject.webidl => dom/chrome-webidl/XULScrollElement.webidl
rename : layout/xul/ScrollBoxObject.cpp => dom/xul/XULScrollElement.cpp
rename : layout/xul/ScrollBoxObject.h => dom/xul/XULScrollElement.h
2018-07-13 00:53:43 +03:00
Lee Salzman 41ab2c5cfb Bug 1473041 - save and restore PermitSubpixelAA state for basic layer paint callback. r=mstange 2018-07-12 14:19:07 -04:00
Kartikaya Gupta 614342989c Bug 1469528 - Flush the clip push/pop draw commands so they don't end up in the wrong entry. r=jrmuizel
MozReview-Commit-ID: 7PVPxaF2RnK

--HG--
extra : rebase_source : 6630f06f3c5316720a1ebbcb219a34f5f2c11f43
2018-07-12 14:27:15 -04:00
Kartikaya Gupta 8ef74e941d Bug 1474300 - Update for API changes in WR PR 2871. r=Gankro
This change has WrClipId contain the ClipId type (except for clip
chains, which are handled separately) in the least significant bit of
the size_t. On 32-bit systems this limits the number of clip and spatial
nodes to 2,147,483,648 which is likely more than what WebRender can
handle.

MozReview-Commit-ID: 8ohMKqTZcKT

--HG--
extra : rebase_source : cce763be7c0637bf97e96c23f8dba5aeff34baaf
2018-07-12 10:36:04 -04:00
Kartikaya Gupta 8ba5f9a3a2 Bug 1474300 - Update webrender to commit e600bfe68efac6416ce2e8091d7344744771f6db. r=Gankro
MozReview-Commit-ID: 2sxOBvDqDCc

--HG--
extra : rebase_source : dcdbb3c8d790ceb2d479c1d5de1396d6f63abfb8
2018-07-12 10:34:35 -04:00
Kartikaya Gupta 475557764c Bug 1475024 - Add Stringify overloads for RectAbsolute. r=bas
MozReview-Commit-ID: GLisM28IEVG

--HG--
extra : rebase_source : af648babcd1f5dfac1256deb68d229fcecbf1f43
2018-07-13 09:51:43 -04:00
Imanol Fernandez 6672f5861e Bug 1475270 - Avoid deadlock when pausing the compositor while gfxVRExternal is waiting for a SubmitFrame result; r=kip
--HG--
extra : amend_source : d7344800392a8b22c72a9deac717feca07ea9e58
2018-07-12 17:22:20 +02:00
Kashav Madan 67e397d141 Bug 1475217 - Remove scroll position assertion in ScrollFrameTo. r=botond
There is a race between when APZ is made aware of a main thread change to a
frame's overflow property and when it decides whether to allow scrolling in
response to an input event. If the processing of the input event wins the race,
APZ can allow scrolling an element that has recently been made overflow:hidden.

The main thread previously asserted about the attempt to scroll an
overflow:hidden element, but since this can occur in practice, is relatively
benign, and is hard to avoid, we will now allow it.

MozReview-Commit-ID: IkH7xWyMOEl

--HG--
extra : rebase_source : 9d5ca0986979ba570f8cab481ac9da5eed43f35a
2018-07-16 12:40:59 -04:00
Margareta Eliza Balazs 46292b1212 Merge inbound to mozilla-central. a=merge 2018-07-12 12:28:13 +03:00
Kearwood Gilbert d0b35a2ff4 Bug 1470527 - Implement Controller support for gfxVRExternal and VRServiceOpenVR,r=daoshengmu
MozReview-Commit-ID: I1xHfmAPMxT

--HG--
extra : rebase_source : 5d957ff6172f3e730b61878b9067ec506ea4a383
extra : source : 66c97a5d22efc6436aab76756759b9b51517e940
2018-07-11 12:20:51 -07:00
Gurzau Raul ea7ebc8d56 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-07-12 01:09:58 +03:00
Gurzau Raul cf965b1f59 Merge inbound to mozilla-central. a=merge 2018-07-12 01:04:09 +03:00
Ciure Andrei 4a390e2fc4 Backed out 1 changesets (bug 1470527) for build bustages on OpenVRSession.cpp CLOSED TREE
Backed out changeset 66c97a5d22ef (bug 1470527)
2018-07-11 23:23:42 +03:00
Kearwood Gilbert 0ee53b44e4 Bug 1470527 - Implement Controller support for gfxVRExternal and VRServiceOpenVR
--HG--
extra : amend_source : d639de8cb929b209bbde0f44b47acadd23a9e257
2018-07-11 12:20:51 -07:00
Kearwood Gilbert 04e66eb0c1 Bug 1470348 - Enable gfxVRExternal for Android; r=kip
MozReview-Commit-ID: 4XMdLLoedIh

--HG--
extra : rebase_source : b71d5d73b832f1f16ae261463860b4f60b38c559
2018-07-10 17:41:58 -07:00
Gurzau Raul fff6ccd0b0 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-07-12 01:08:09 +03:00