gecko-dev/gfx
Glenn Watson d4cbe654cd Bug 1599965 - Improve how dirty image detection works in webrender. r=nical
* The existing code to detect if an image is dirty fails in some
   cases. For external images, they were not being added to the
   list of dirty images when update was called. Further, since
   the dirty image keys hash set was cleared each frame, it was
   possible for an image to become dirty, but this detection to be
   missed if it is not queried until a subsequent frame (due to
   it being off-screen.

   Instead, each image template has a generation identifier that
   is incremented whenever an image template is updated. The picture
   caching code stores the generation of the image key when it was
   rasterized, and compares that to the current image key generation
   when comparing dependencies. This fixes both cases above.

 * Remove the is_cacheable logic that was previously used to
   invalidate picture cache tiles for external images. This would
   result in picture cache images that intersect with videos being
   invalidated every frame unconditionally. However, this code path
   is no longer required, due to the change above. By relying on
   the true image dirty check, we can skip invalidating tiles
   affected by video if the video frame has not advanced (e.g. it
   is paused, or advancing at a lower frame rate than we are
   currently compositing at).

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

--HG--
extra : source : 93ccc760c4dd69f63d6ac171ace357b0dd31412a
2019-12-02 18:59:07 +00:00
..
2d Backed out changeset e02c0652dd43 (bug 1595388) for reftest failures on filter-in-mask.html 2019-11-30 04:50:13 +02:00
angle Bug 1578910 - ANGLE Cherry-pick flickering fix for Ivy Bridge. r=lsalzman 2019-11-30 01:49:21 +00:00
cairo Bug 1584639 - silence Cairo shift warnings. r=aosmond 2019-11-19 11:49:35 +00:00
config Bug 1586396 - Add WebGPUThreading mock r=jgilbert 2019-10-15 21:57:37 +00:00
docs Bug 1583983 - Add threading / locking overview to APZ docs. r=tnikkel,nical 2019-09-26 09:48:24 +00:00
gl Bug 1577336: Part 6 - Make SurfaceDescriptorGPUVideo a union that contains SurfaceDescriptorRemoteDecoder r=mattwoodrow,jolin 2019-11-20 21:55:06 +00:00
graphite2 Bug 1584000 - Migrate glyph to character association code from libThebes to graphite for sandboxed libGraphite performance r=jfkthame,froydnj 2019-10-30 07:48:25 +00:00
harfbuzz Bug 1592165 - Update HarfBuzz to 2.6.4. r=jfkthame 2019-11-07 15:52:22 +00:00
ipc Bug 1583380. Plumb SideBits from the display list to WebRenderScrollDataWrapper. r=botond 2019-11-29 23:06:34 +00:00
layers Bug 1597861 - Pause compositor during hiding Wayland window r=stransky 2019-12-02 06:56:27 +00:00
ots
qcms
sfntly Bug 1583192 - Re-apply bug 1330495 after bug 1581145. r=froydnj 2019-11-11 13:41:11 +00:00
skia Bug 1593970 - scale subpixel contribution based on ClearType level setting. r=jfkthame 2019-11-09 13:03:47 +00:00
src Bug 1586843. Pass SideBits for fixed position content to webrender so it can pass it back via the HitTest api. r=botond 2019-11-29 23:06:59 +00:00
tests Bug 1587142 - Remove miscellaneous XBL tests r=bzbarsky 2019-10-25 21:53:33 +00:00
thebes Bug 1599862 - hide macos gpu migration on WR behind a pref. r=mstange 2019-12-02 22:06:05 +00:00
vr Bug 1599846 - Enable Background WebExtension scripts in FxR on PC r=zombie 2019-11-30 04:19:46 +00:00
webrender_bindings Bug 1600533 - Rename WaitForPreviousPresentQuery() r=gw 2019-12-02 10:41:57 +00:00
wgpu Bug 1596128 - Update wgpu to the version that has a separate wgpu-core 2019-11-21 21:54:26 +00:00
wr Bug 1599965 - Improve how dirty image detection works in webrender. r=nical 2019-12-02 18:59:07 +00:00
ycbcr
moz.build Bug 1594907 - Fix some duplicate URL segments in firefox-source-docs, r=sylvestre 2019-11-07 23:07:20 +00:00