searching for reviewer(tnikkel)
a479292cb15ca5db48aa280cf3bec0e585ad8ed4: Bug 1550523 - Ensure that decoding methods for frozen images request the correct frame. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Tue, 21 May 2019 13:34:14 -0400 - rev 474942
Push 36051 by shindli@mozilla.com at Wed, 22 May 2019 15:28:21 +0000
Bug 1550523 - Ensure that decoding methods for frozen images request the correct frame. r=tnikkel With WebRender, we had observed that the print preview for animated images was not displaying correctly. It should display the first frame but it was showing nothing the first time the preview was opened. Once the decoded image was available in the cache, it would display correctly if the preview was reloaded. The StartDecoding and RequestDecode variants always requested FRAME_CURRENT for animated images. They should use FRAME_FIRST for static requests / FrozenImage. Correcting this fixes the print preview. Differential Revision: https://phabricator.services.mozilla.com/D32033
71bf2b9ca6ea2cbd97f4a07242e2ad7f20a1a2e5: Bug 1530190. Call SHGetFileInfo off the main thread in nsIconChannel on Windows. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Mon, 22 Apr 2019 17:30:40 -0500 - rev 474906
Push 36051 by shindli@mozilla.com at Wed, 22 May 2019 15:28:21 +0000
Bug 1530190. Call SHGetFileInfo off the main thread in nsIconChannel on Windows. r=tnikkel There are two reasons for this. One is performance, it can be slow. The second is that is can spin the event loop which can re-enter into things like layout. This patch uses the image decoder thread pool for that. But this is unsuitable (reason in next patch), the next patch changes it to use the img io thread used for network to pass data to imglib off main thread. Differential Revision: https://phabricator.services.mozilla.com/D28419
885f2b742a0252362ff92730c7602802863d9757: Bug 1548835 - Load moz-extension:// URIs from the cache over reloading. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Thu, 16 May 2019 14:55:19 -0400 - rev 474326
Push 36028 by shindli@mozilla.com at Fri, 17 May 2019 16:29:00 +0000
Bug 1548835 - Load moz-extension:// URIs from the cache over reloading. r=tnikkel Similar to bug 1373258 and moz-page-thumb:// URIs, we are getting bitten by the lack of caching support for non-HTTP channels. This may be removed once bug 1406134 is implemented. Differential Revision: https://phabricator.services.mozilla.com/D31515
c052518818dff9b913814d785606a0d11ec65e4e: Bug 1541253 - Test cases for CSS visibility propagation. r=tnikkel
Hiroyuki Ikezoe <hikezoe@mozilla.com> - Fri, 10 May 2019 10:35:45 +0000 - rev 473384
Push 35996 by dvarga@mozilla.com at Fri, 10 May 2019 21:46:48 +0000
Bug 1541253 - Test cases for CSS visibility propagation. r=tnikkel There are three test cases; 1) Two iframes are swapped 2) Changing the visibility of the parent document doesn't clobber a child document's visibility in the case where the child document has been hidden by another element in the parent document 3) an iframe is initially inside a visibility:hidden element in the parent document Depends on D26253 Differential Revision: https://phabricator.services.mozilla.com/D27842
57c522abe28f6d78f646d90c720022057205666c: Bug 1541253 - Check PresShell::IsUnderHiddenEmbedderElement where we need to check CSS visibility state across the document boundary. r=tnikkel
Hiroyuki Ikezoe <hikezoe@mozilla.com> - Fri, 10 May 2019 11:22:28 +0000 - rev 473383
Push 35996 by dvarga@mozilla.com at Fri, 10 May 2019 21:46:48 +0000
Bug 1541253 - Check PresShell::IsUnderHiddenEmbedderElement where we need to check CSS visibility state across the document boundary. r=tnikkel Depends on D26252 Differential Revision: https://phabricator.services.mozilla.com/D26253
335b9a8f496819c5777c0f67eff5f88bf983288b: Bug 1541253 - Propagate CSS visivibility information to descendant documents. r=tnikkel
Hiroyuki Ikezoe <hikezoe@mozilla.com> - Fri, 10 May 2019 11:15:43 +0000 - rev 473382
Push 35996 by dvarga@mozilla.com at Fri, 10 May 2019 21:46:48 +0000
Bug 1541253 - Propagate CSS visivibility information to descendant documents. r=tnikkel Depends on D26251 Differential Revision: https://phabricator.services.mozilla.com/D26252
d3340f866c7df1f283153c1dec37d5b83933bf7f: Bug 1541253 - Make PresShell::IsVisible const. r=tnikkel
Hiroyuki Ikezoe <hikezoe@mozilla.com> - Fri, 10 May 2019 11:15:30 +0000 - rev 473381
Push 35996 by dvarga@mozilla.com at Fri, 10 May 2019 21:46:48 +0000
Bug 1541253 - Make PresShell::IsVisible const. r=tnikkel Differential Revision: https://phabricator.services.mozilla.com/D26251
ea3a73c7788e2b9752d7f00976c8119183e3da18: Bug 1548483 - Don't assert that we have an invalidated frame when we encouter a new displayport, since it can have changed on an earlier paint if we didn't have display items. r=tnikkel
Matt Woodrow <mwoodrow@mozilla.com> - Mon, 06 May 2019 09:13:00 +0000 - rev 472777
Push 35978 by shindli@mozilla.com at Tue, 07 May 2019 09:44:39 +0000
Bug 1548483 - Don't assert that we have an invalidated frame when we encouter a new displayport, since it can have changed on an earlier paint if we didn't have display items. r=tnikkel Differential Revision: https://phabricator.services.mozilla.com/D29975
b3417a0b019fa428a2edbf79683ed5b2260c14cd: Bug 1524232 - Dispatch synthesized mousemoves to OOP iframes if that's where they land. r=tnikkel
Kartikaya Gupta <kgupta@mozilla.com> - Thu, 02 May 2019 19:57:16 +0000 - rev 472677
Push 35976 by opoprus@mozilla.com at Mon, 06 May 2019 21:44:12 +0000
Bug 1524232 - Dispatch synthesized mousemoves to OOP iframes if that's where they land. r=tnikkel Depends on D29731 Differential Revision: https://phabricator.services.mozilla.com/D29732
0e259884f052230b24601efc3cde3a5ef5d4e6ad: Bug 1535945 - Don't skip invalidating frames when creating displayports for async scrollable ancestors. r=tnikkel
Matt Woodrow <mwoodrow@mozilla.com> - Wed, 01 May 2019 04:23:07 +0000 - rev 472054
Push 35946 by apavel@mozilla.com at Wed, 01 May 2019 15:54:31 +0000
Bug 1535945 - Don't skip invalidating frames when creating displayports for async scrollable ancestors. r=tnikkel Differential Revision: https://phabricator.services.mozilla.com/D23816
c992709a5b8079d6cd6ec133e84fbcbdad3ef7ee: Bug 1543944 - Don't mark nsDisplayVideo as opaque for now because we were using a rectangle that's too big. r=tnikkel
Markus Stange <mstange@themasta.com> - Thu, 18 Apr 2019 17:22:29 +0000 - rev 470125
Push 35888 by aiakab@mozilla.com at Fri, 19 Apr 2019 09:47:45 +0000
Bug 1543944 - Don't mark nsDisplayVideo as opaque for now because we were using a rectangle that's too big. r=tnikkel Differential Revision: https://phabricator.services.mozilla.com/D27979
3502a44129b0a87c0a57c5c02643210d3410d8c6: Bug 1543584 - Always rasterize SVGs but clamp the maximum size. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Thu, 11 Apr 2019 15:30:48 -0400 - rev 470052
Push 35887 by apavel@mozilla.com at Fri, 19 Apr 2019 03:54:33 +0000
Bug 1543584 - Always rasterize SVGs but clamp the maximum size. r=tnikkel SVG performance with the fallback path with WebRender is very bad. This patch avoids fallback by always producing a rasterized surface we store in SurfaceCache, but also clamping the size consistently to a configured maximum. This will cause us to upscale rasterized SVGs which is undesirable visually but is a lower risk change that we can uplift to beta than fixing the underlying performance issue. Differential Revision: https://phabricator.services.mozilla.com/D27159
7b63cad25d9b4081eedc4a4d65004c60ac0c9277: Bug 1542663 - Make nsViewManager and nsView (nsIWidgetListener) use mozilla::PresShell directly rather than via nsIPresShell r=tnikkel
Masayuki Nakano <masayuki@d-toybox.com> - Sat, 13 Apr 2019 01:05:21 +0000 - rev 469384
Push 35865 by apavel@mozilla.com at Sat, 13 Apr 2019 21:44:49 +0000
Bug 1542663 - Make nsViewManager and nsView (nsIWidgetListener) use mozilla::PresShell directly rather than via nsIPresShell r=tnikkel This patch makes `nsViewManager::GetPresShell()` and `nsIWidgetListener::GetPresShell()` (overridden by `nsView` and `nsWebShellWindow::WidgetListenerDelegate`) return `mozilla::PresShell*`. Additionally, makes `nsWebShellWindow::GetPresShell()` also return `mozilla::PresShell()`. Differential Revision: https://phabricator.services.mozilla.com/D26454
946181497fb19b1293935525643dfc10a840967c: Bug 1516056 - Adjust ScrollToRestorePosition() to reflect that the layout scroll offset is clamped to the layout viewport. r=tnikkel
Botond Ballo <botond@mozilla.com> - Mon, 08 Apr 2019 23:35:25 +0000 - rev 468448
Push 35838 by nerli@mozilla.com at Tue, 09 Apr 2019 09:54:40 +0000
Bug 1516056 - Adjust ScrollToRestorePosition() to reflect that the layout scroll offset is clamped to the layout viewport. r=tnikkel Depends on D20282 Differential Revision: https://phabricator.services.mozilla.com/D20283
5a7f8303d682cc3ce7880c42dd0c74d75c0b5cd3: Bug 1501794 - Implement img decode API. r=bzbarsky,tnikkel
Andrew Osmond <aosmond@mozilla.com> - Thu, 08 Nov 2018 12:45:50 -0500 - rev 467660
Push 35807 by dvarga@mozilla.com at Wed, 03 Apr 2019 06:06:32 +0000
Bug 1501794 - Implement img decode API. r=bzbarsky,tnikkel The img decode API allows a web author to request that an image be decoded at its intrinsic size and be notified when it has been completed. This is useful to ensure an image is ready to display before adding it to the DOM tree -- this will help reduce flickering. Differential Revision: https://phabricator.services.mozilla.com/D11362
7f0d03ec917cfc831b7c4104729801fa33b1d167: Bug 1534240 - Boost loading priority of CSS images similarly to how we do for HTML images. r=tnikkel
Cameron McCormack <cam@mcc.id.au> - Thu, 28 Mar 2019 02:54:16 +0000 - rev 466509
Push 35768 by opoprus@mozilla.com at Thu, 28 Mar 2019 09:55:54 +0000
Bug 1534240 - Boost loading priority of CSS images similarly to how we do for HTML images. r=tnikkel Differential Revision: https://phabricator.services.mozilla.com/D24814
fdc7b66d76a4ded62d0292bef4de0ffb090d9587: Bug 1395964 - Don't clear the previously painted image on intrinsic size changes. r=tnikkel
Emilio Cobos Álvarez <emilio@crisal.io> - Mon, 18 Mar 2019 16:19:56 +0100 - rev 464822
Push 35727 by dvarga@mozilla.com at Tue, 19 Mar 2019 09:48:59 +0000
Bug 1395964 - Don't clear the previously painted image on intrinsic size changes. r=tnikkel This is needed if we want to handle cases like the reporter's example or Google Images. Rendering the old image upscaled is much better than not rendering anything while it's loading. I added a test for the reframing bit, but I don't know how to add a test for the second bit. Differential Revision: https://phabricator.services.mozilla.com/D23127
3f1e9dae2467e54c783215189e6cb9617cee7dcd: Bug 1395964 - Make image loading changes not reframe. r=tnikkel
Emilio Cobos Álvarez <emilio@crisal.io> - Mon, 18 Mar 2019 16:18:52 +0100 - rev 464821
Push 35727 by dvarga@mozilla.com at Tue, 19 Mar 2019 09:48:59 +0000
Bug 1395964 - Make image loading changes not reframe. r=tnikkel Bug 1472637 makes the decision of whether to construct an image frame not depend on this, so this is sound. We need to avoid reframing to fix this bug because otherwise we lose track of the previously painted image. Differential Revision: https://phabricator.services.mozilla.com/D23127
94682e23ba118dcfab3843a3280618b2e1686ecb: Bug 1472637 - Don't display alt text while loading, to match other UAs. r=tnikkel
Emilio Cobos Álvarez <emilio@crisal.io> - Mon, 18 Mar 2019 15:15:13 +0000 - rev 464820
Push 35727 by dvarga@mozilla.com at Tue, 19 Mar 2019 09:48:59 +0000
Bug 1472637 - Don't display alt text while loading, to match other UAs. r=tnikkel Differential Revision: https://phabricator.services.mozilla.com/D18518
52390d9090fbd8d46b00ea29034e7039511ff8a4: Bug 1530774 - Part 3. Remove decoder support for producing paletted frames. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Fri, 15 Mar 2019 13:29:02 -0400 - rev 464773
Push 35725 by rgurzau@mozilla.com at Mon, 18 Mar 2019 21:38:44 +0000
Bug 1530774 - Part 3. Remove decoder support for producing paletted frames. r=tnikkel Differential Revision: https://phabricator.services.mozilla.com/D23716
6dd55ee8961128d0c9e314d60e7509604e7548b2: Bug 1530774 - Part 2. Remove support for paletted surface pipes. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Mon, 11 Mar 2019 14:05:59 -0400 - rev 464772
Push 35725 by rgurzau@mozilla.com at Mon, 18 Mar 2019 21:38:44 +0000
Bug 1530774 - Part 2. Remove support for paletted surface pipes. r=tnikkel Differential Revision: https://phabricator.services.mozilla.com/D23715
e3315d7842089083b389fc666b51c693c05924fc: Bug 1530774 - Part 1. Remove support in FrameAnimator for blending partial/paletted frames. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Mon, 11 Mar 2019 13:20:49 -0400 - rev 464771
Push 35725 by rgurzau@mozilla.com at Mon, 18 Mar 2019 21:38:44 +0000
Bug 1530774 - Part 1. Remove support in FrameAnimator for blending partial/paletted frames. r=tnikkel Differential Revision: https://phabricator.services.mozilla.com/D23714
8647c1f78210adcb01511ea27eecfb53bc5c1a5d: Bug 1534188 - Use high quality downscaling for raster images embedded in SVGs. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Wed, 13 Mar 2019 12:43:52 -0400 - rev 463982
Push 35704 by dluca@mozilla.com at Thu, 14 Mar 2019 16:26:11 +0000
Bug 1534188 - Use high quality downscaling for raster images embedded in SVGs. r=tnikkel Differential Revision: https://phabricator.services.mozilla.com/D23374
ee808a9cfb1b66b02241216a674ef9dd9a8dd14c: Bug 1517895 - Scroll the visual viewport in ScrollToRestoredPosition(). r=tnikkel
Botond Ballo <botond@mozilla.com> - Wed, 13 Mar 2019 22:42:48 +0000 - rev 463901
Push 35700 by ncsoregi@mozilla.com at Thu, 14 Mar 2019 05:04:11 +0000
Bug 1517895 - Scroll the visual viewport in ScrollToRestoredPosition(). r=tnikkel We scroll the visual viewport in addition to the layout viewport to make sure that the layout viewport also ends up at the desired position; note that the layout viewport's desired position will change in bug 1516056 as we start clamping the layout viewport offset to the layout scroll range. Differential Revision: https://phabricator.services.mozilla.com/D19873
2d7395290c187ee80403a08267ea8c26eca2df8c: Bug 1530594, generate frames before setting the active child in a menulist, so that menulists with sizetopopup='none' will still allow keyboard navigation when the menulist has not yet been opened, updated to get popup type earlier to avoid possible crash, r=tnikkel
Neil Deakin <neil@mozilla.com> - Tue, 05 Mar 2019 04:32:40 -0500 - rev 462392
Push 35651 by shindli@mozilla.com at Tue, 05 Mar 2019 21:41:37 +0000
Bug 1530594, generate frames before setting the active child in a menulist, so that menulists with sizetopopup='none' will still allow keyboard navigation when the menulist has not yet been opened, updated to get popup type earlier to avoid possible crash, r=tnikkel
2e63fa41257b8950f5726fd88936ba3f5e2d8441: Bug 1530594, generate frames before setting the active child in a menulist, so that menulists with sizetopopup='none' will still allow keyboard navigation when the menulist has not yet been opened, r=tnikkel
Neil Deakin <neil@mozilla.com> - Fri, 01 Mar 2019 22:07:58 -0500 - rev 462128
Push 35635 by rmaries@mozilla.com at Sat, 02 Mar 2019 09:41:56 +0000
Bug 1530594, generate frames before setting the active child in a menulist, so that menulists with sizetopopup='none' will still allow keyboard navigation when the menulist has not yet been opened, r=tnikkel
6b78699bdf7ba05ed68892140dec7ba175ba95d9: Bug 1530222 - Allow libpng to allocate larger chunks for decoding purposes. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Thu, 28 Feb 2019 08:44:43 -0500 - rev 462088
Push 35635 by rmaries@mozilla.com at Sat, 02 Mar 2019 09:41:56 +0000
Bug 1530222 - Allow libpng to allocate larger chunks for decoding purposes. r=tnikkel Differential Revision: https://phabricator.services.mozilla.com/D21533
339a3c5969e1ccea01a68a0c61373cffd7436022: Bug 1519567, use medium high priority queue for imglib notifications, r=tnikkel
Olli Pettay <Olli.Pettay@helsinki.fi> - Fri, 01 Mar 2019 15:11:56 +0200 - rev 462087
Push 35635 by rmaries@mozilla.com at Sat, 02 Mar 2019 09:41:56 +0000
Bug 1519567, use medium high priority queue for imglib notifications, r=tnikkel
d5c0cad448f90eae7cf255f9a5e5ce45bbc0b299: Bug 1519621 - Make sure ScrollToRestoredPosition() restores both the layout and visual scroll positions. r=tnikkel
Botond Ballo <botond@mozilla.com> - Fri, 01 Mar 2019 20:18:35 +0000 - rev 461990
Push 35634 by rmaries@mozilla.com at Sat, 02 Mar 2019 09:26:10 +0000
Bug 1519621 - Make sure ScrollToRestoredPosition() restores both the layout and visual scroll positions. r=tnikkel Differential Revision: https://phabricator.services.mozilla.com/D18367
2c0ca241bd4b662f7022beb535509164ab7cde51: Bug 1519621 - Make sure ScrollToRestoredPosition() restores both the layout and visual scroll positions. r=tnikkel
Botond Ballo <botond@mozilla.com> - Wed, 27 Feb 2019 20:19:33 +0000 - rev 461514
Push 35625 by csabou@mozilla.com at Thu, 28 Feb 2019 10:55:23 +0000
Bug 1519621 - Make sure ScrollToRestoredPosition() restores both the layout and visual scroll positions. r=tnikkel Differential Revision: https://phabricator.services.mozilla.com/D18367
045d790ca417fc6e827b57eef8ec5aea2beef81a: Bug 1529780 - Compute ImageCacheKey's hash number lazily; r=tnikkel
Ehsan Akhgari <ehsan@mozilla.com> - Fri, 22 Feb 2019 14:25:04 +0000 - rev 460581
Push 35596 by rmaries@mozilla.com at Sat, 23 Feb 2019 04:13:22 +0000
Bug 1529780 - Compute ImageCacheKey's hash number lazily; r=tnikkel Differential Revision: https://phabricator.services.mozilla.com/D20746
a4a2586e511abbfd4e4947fb4154296e75863ba4: Bug 1520656 - BMPs from the clipboard may include extra padding. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Thu, 14 Feb 2019 14:37:06 -0500 - rev 459667
Push 35564 by ccoroiu@mozilla.com at Sat, 16 Feb 2019 09:37:16 +0000
Bug 1520656 - BMPs from the clipboard may include extra padding. r=tnikkel In the original Windows clipboard BMP decoder implementation in nsImageFromClipboard::ConvertColorBitMap, if the bitmap used bitfields compression, it always adjusted the offset to the RGB data by 12 bytes. It did this even for newer BMP header formats which explicitly include space for the bitfields in their header sizes. This patch updates our BMP decoder to do the same for clipboard BMPs, since we have observed pasted BMPs using bitfield compression appearing incorrectly. To the user this appears as if we read a color mask; completely red, blue, green pixels at the start of the last row, causing all of the other rows to start with the last three pixels of the previous row. Differential Revision: https://phabricator.services.mozilla.com/D19955
1c887a569595636763f17265af1e7c8cced30d50: Bug 1527951 - Ignore WebP image's alpha channel when a frame is marked as opaque. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Fri, 15 Feb 2019 15:46:08 -0500 - rev 459664
Push 35564 by ccoroiu@mozilla.com at Sat, 16 Feb 2019 09:37:16 +0000
Bug 1527951 - Ignore WebP image's alpha channel when a frame is marked as opaque. r=tnikkel Differential Revision: https://phabricator.services.mozilla.com/D19994
80e1aa2d745901c8825b9bb33402b087c1648218: Bug 1527235 - Fix how the alpha channel was missing from pasted clipboard images. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Thu, 14 Feb 2019 13:01:40 -0500 - rev 459541
Push 35562 by csabou@mozilla.com at Fri, 15 Feb 2019 18:40:35 +0000
Bug 1527235 - Fix how the alpha channel was missing from pasted clipboard images. r=tnikkel In order to get the alpha channel when encoding BMP images from a surface, we need to supply bmp=32 in the encoder options. Differential Revision: https://phabricator.services.mozilla.com/D19835
3e903717a513be0e690e6c99bf64435d24b83052: Bug 1523362 - Validate cursor data in TabParent::RecvSetCursor. r=tnikkel
Emilio Cobos Álvarez <emilio@crisal.io> - Mon, 28 Jan 2019 21:42:15 +0000 - rev 455744
Push 35457 by csabou@mozilla.com at Tue, 29 Jan 2019 09:20:40 +0000
Bug 1523362 - Validate cursor data in TabParent::RecvSetCursor. r=tnikkel I think the `stride < width * bpp` is the right thing to check for, since I don't know if there's any guarantee of it of the stride being equal, but let me know if I'm wrong. Differential Revision: https://phabricator.services.mozilla.com/D17851
b709624ce8fa0ca4146d8d0675036440e6807615: Bug 1510139 - Part 2. Do not invalidate vector image containers synchronously. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Thu, 03 Jan 2019 12:55:06 -0500 - rev 454009
Push 35383 by dvarga@mozilla.com at Wed, 16 Jan 2019 04:51:20 +0000
Bug 1510139 - Part 2. Do not invalidate vector image containers synchronously. r=tnikkel Originally we would invalidate image containers synchronously when SVGRootRenderingObserver::OnRenderingChange was called. However at this point in time, the layout tree is in the middle of updating its own state, and triggering a paint will be problematic. Animated vector images did not suffer from this problem because they would defer to the next refresh tick, but non-animated do not receive refresh tick events. As such, we should just defer the invalidation to immediately after the layout tree has finished updating itself. Differential Revision: https://phabricator.services.mozilla.com/D15668
325d06d3ba7341035f01ae14bc882643d0235083: Bug 1510139 - Part 1. Ensure we honor invalidations if using vector image containers. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Mon, 17 Dec 2018 08:31:04 -0500 - rev 454008
Push 35383 by dvarga@mozilla.com at Wed, 16 Jan 2019 04:51:20 +0000
Bug 1510139 - Part 1. Ensure we honor invalidations if using vector image containers. r=tnikkel If a vector image has an image container, it is unlikely the caller will call VectorImage::Draw (and thus Show indirectly) to display the image. As such, WebRender was missing subsequent invalidations and not regenerating the rasterized surface as expected. Thus we now resume honoring the invalidations if we updated the image container. Differential Revision: https://phabricator.services.mozilla.com/D15667
895cc0297ce2e47092dc5736cd444a573ba03ed2: Bug 1423013 - Expand the layout viewport to the minimum scale size for overflow:hidden pages. r=botond,tnikkel
Hiroyuki Ikezoe <hikezoe@mozilla.com> - Tue, 15 Jan 2019 09:48:18 +0000 - rev 453908
Push 35378 by btara@mozilla.com at Tue, 15 Jan 2019 16:08:45 +0000
Bug 1423013 - Expand the layout viewport to the minimum scale size for overflow:hidden pages. r=botond,tnikkel Depends on D15345 Differential Revision: https://phabricator.services.mozilla.com/D15347
91624c065046140dd88b670829892f3c4e41dc2d: Bug 1423013 - Expand the layout viewport to the minimum scale size for overflow:hidden pages. r=botond,tnikkel
Hiroyuki Ikezoe <hikezoe@mozilla.com> - Tue, 15 Jan 2019 03:28:10 +0000 - rev 453894
Push 35378 by btara@mozilla.com at Tue, 15 Jan 2019 16:08:45 +0000
Bug 1423013 - Expand the layout viewport to the minimum scale size for overflow:hidden pages. r=botond,tnikkel Depends on D15345 Differential Revision: https://phabricator.services.mozilla.com/D15347
c5f982e028923c2465f2d47303a9e9769912ea77: Bug 1516011 - Part 2. Deny recycling for frames used in blob recordings. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Thu, 10 Jan 2019 07:42:12 -0500 - rev 453778
Push 35373 by cbrindusan@mozilla.com at Mon, 14 Jan 2019 21:52:01 +0000
Bug 1516011 - Part 2. Deny recycling for frames used in blob recordings. r=tnikkel Given the crash resolved in part 1, it is possible for the blob rasterizer in the compositor process to still be using surfaces after the animation has advanced to the next frame. With recycling this can be problematic as the recycled surface will be reused for a future frame. In an ideal world, the blob recording would use the animation's image key instead, but the rasterizer doesn't have easy access to the mapping table. As such, for any frames used in a blob recording, we now explicitly mark them as non-recyclable and we will be forced to allocate a new frame instead. Differential Revision: https://phabricator.services.mozilla.com/D16192
3c5fcd8a2f4a860769a82132eb0ca97c577a441d: Bug 1516011 - Part 2. Deny recycling for frames used in blob recordings. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Thu, 10 Jan 2019 07:42:12 -0500 - rev 453614
Push 35361 by nbeleuzu@mozilla.com at Sat, 12 Jan 2019 09:41:19 +0000
Bug 1516011 - Part 2. Deny recycling for frames used in blob recordings. r=tnikkel Given the crash resolved in part 1, it is possible for the blob rasterizer in the compositor process to still be using surfaces after the animation has advanced to the next frame. With recycling this can be problematic as the recycled surface will be reused for a future frame. In an ideal world, the blob recording would use the animation's image key instead, but the rasterizer doesn't have easy access to the mapping table. As such, for any frames used in a blob recording, we now explicitly mark them as non-recyclable and we will be forced to allocate a new frame instead. Differential Revision: https://phabricator.services.mozilla.com/D16192
a99bf382e5f7a2e784f6aaad31e1ca7a502666f6: Bug 1498812 - Part 11: Use Visual Viewport for storing scroll position in the PresState. r=botond,tnikkel
Jan Henning <jh+bugzilla@buttercookie.de> - Fri, 11 Jan 2019 19:50:24 +0000 - rev 453555
Push 35360 by nbeleuzu@mozilla.com at Sat, 12 Jan 2019 09:39:47 +0000
Bug 1498812 - Part 11: Use Visual Viewport for storing scroll position in the PresState. r=botond,tnikkel Differential Revision: https://phabricator.services.mozilla.com/D15691
640e15aa79b9f8b4db4014167c66e8d6d5eea37e: Bug 1415987. Factor out ChooseScale from ChooseScaleAndSetTransform in FrameLayerBuilder. r=tnikkel
Jeff Muizelaar <jmuizelaar@mozilla.com> - Fri, 21 Dec 2018 16:07:18 -0600 - rev 451797
Push 35254 by ccoroiu@mozilla.com at Sat, 22 Dec 2018 04:13:22 +0000
Bug 1415987. Factor out ChooseScale from ChooseScaleAndSetTransform in FrameLayerBuilder. r=tnikkel
d8a3f89d4bb67f3d9c17fa9751f97be3ef1a0a38: Bug 1510601 - Part 2. Improve recycling of frames when an animation is reset. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Thu, 29 Nov 2018 13:59:53 -0500 - rev 449438
Push 35163 by shindli@mozilla.com at Wed, 05 Dec 2018 21:36:23 +0000
Bug 1510601 - Part 2. Improve recycling of frames when an animation is reset. r=tnikkel When an animation is reset, we can actually avoid the reallocations by keeping the frames in the mRecycle and mDiscard queues. There is no real need to do this. We just need to make sure the recycle rect calculation is done appropriately, particularly when we haven't reached the end yet and thus don't know the first frame refresh area yet. Differential Revision: https://phabricator.services.mozilla.com/D13465
0861a85d13bb1664c019b76fc543d2679e39c99f: Bug 1510601 - Part 1. Move size increments into AnimationFrameBuffer::InsertInternal. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Thu, 29 Nov 2018 14:38:28 -0500 - rev 449437
Push 35163 by shindli@mozilla.com at Wed, 05 Dec 2018 21:36:23 +0000
Bug 1510601 - Part 1. Move size increments into AnimationFrameBuffer::InsertInternal. r=tnikkel The size was originally incremented in AnimationFrameBuffer::Insert however if an animation was reset before we finished decoding, it would count some frames twice in the counter. Now we increment it inside InsertInternal, where AnimationFrameDiscardingQueue can make a more informed decision on whether the frame is a duplicate or not. Additionally we now fail explicitly when we insert more frames on subsequent decodes than the original decoders. This will help avoid getting out of sync with FrameAnimator. Differential Revision: https://phabricator.services.mozilla.com/D13464
3bc19b3fb522d366777d014e460b7e679bde5cc3: Bug 1501923 - Fix crash where we reset an animation just before crossing the discard threshold. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Thu, 29 Nov 2018 09:45:31 -0500 - rev 449436
Push 35163 by shindli@mozilla.com at Wed, 05 Dec 2018 21:36:23 +0000
Bug 1501923 - Fix crash where we reset an animation just before crossing the discard threshold. r=tnikkel If an animated frame buffer was reset just before the necessary frame to cross the discard threshold, followed by said frame being inserted by the decoder, it would insert a null pointer into the display queue for the first frame. This is because it assumed that we have always advanced past the first frame -- which was true, but the reset placed us back at the beginning. This would initially manifest to the user as the animation stopping, since it could not advance past the first frame. Once a memory report was requested, it would crash because we assume every frame in the display queue is valid. This patch removes the assumption about what frame we have advanced to. Differential Revision: https://phabricator.services.mozilla.com/D13407
0ce8f2b44c74bde240c7e66de0198cec83f474d0: Bug 1509998 - Ensure we handle empty frame rects properly in BlendAnimationFilter. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Wed, 28 Nov 2018 15:37:12 -0500 - rev 448632
Push 35120 by ccoroiu@mozilla.com at Thu, 29 Nov 2018 04:28:09 +0000
Bug 1509998 - Ensure we handle empty frame rects properly in BlendAnimationFilter. r=tnikkel Differential Revision: https://phabricator.services.mozilla.com/D13305
c36ca97de3d05dd769986a1ce315c1a4ed9a7f12: Bug 1509408 - Fix animated image distortion regressions caused by frame recycling. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Mon, 26 Nov 2018 07:30:50 -0500 - rev 448506
Push 35118 by ccoroiu@mozilla.com at Wed, 28 Nov 2018 21:49:40 +0000
Bug 1509408 - Fix animated image distortion regressions caused by frame recycling. r=tnikkel When bug 1508393 landed, it not only enabled producing of full frames on the decoder threads, it also enabled recycling of old animated image frame buffers it would have otherwise discarded. It reuses the contents of the buffer where possible given we know what pixels changed between the old frame and the frame we want to produce. However where this calculation was done was incorrect. We originally calculated it when we advanced the frame, but at that point there is no guarantee that we have all of the necessary information; we may have fallen behind on decoding. As such, we move the calculation to where we actually perform the recycling. At this point we are guaranteed to have all the necessary frames between the recycling and display queues. Differential Revision: https://phabricator.services.mozilla.com/D12903
98430e6d541b8e5ffd0492d84afd5c031eb79905: Bug 1508099 Part 2 - Record refcount changes for image decoders and decoding tasks, r=tnikkel.
Brian Hackett <bhackett1024@gmail.com> - Sat, 17 Nov 2018 12:55:12 -1000 - rev 448185
Push 35106 by rmaries@mozilla.com at Tue, 27 Nov 2018 09:44:10 +0000
Bug 1508099 Part 2 - Record refcount changes for image decoders and decoding tasks, r=tnikkel.
ccfa531dea0301244c99db4ff26d5610382487e2: Bug 1504699 - Part 7. Update animated image recycling queue to work well with WebRender. r=tnikkel
Andrew Osmond <aosmond@mozilla.com> - Tue, 16 Oct 2018 08:45:26 -0400 - rev 447527
Push 35082 by ccoroiu@mozilla.com at Wed, 21 Nov 2018 21:44:21 +0000
Bug 1504699 - Part 7. Update animated image recycling queue to work well with WebRender. r=tnikkel WebRender takes longer than OMTP to release its hold on the current frame. This is because it is in a separate process and holds onto the surface in between rendering frames, rather than getting a reference for each repaint. This patch makes us less aggressive about taking the most recent surface placed in the recycling queue out to avoid blocking on waiting for the surface to be released. Differential Revision: https://phabricator.services.mozilla.com/D10903