searching for reviewer(jrmuizel)
036e6fc8e0b853e8b665a06800366d9465263ee8: Bug 1741452 - Use nsWeakPtr in mHwndRootWindowMap r=jrmuizel a=tjr
sotaro <sotaro.ikeda.g@gmail.com> - Wed, 12 Jan 2022 00:12:18 +0000 - rev 673732
Push 16229 by dmeehan@mozilla.com at Wed, 12 Jan 2022 19:36:50 +0000
Bug 1741452 - Use nsWeakPtr in mHwndRootWindowMap r=jrmuizel a=tjr Use nsWeakPtr instead of RefPtr<nsBaseWidget>, since nsBaseWidget::~nsBaseWidget() and nsWindow::~nsWindow() seem to expect that a widget might be released without calling Destroy(). Differential Revision: https://phabricator.services.mozilla.com/D135512
7e3cdb88790d2ddf7a3797a4374cf38f106b86d0: Bug 1742358 - Set default clear color to widget window background on expose, and reset it on first contentful paint. r=jrmuizel,stransky
Emilio Cobos Álvarez <emilio@crisal.io> - Sat, 08 Jan 2022 23:52:54 +0000 - rev 673694
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1742358 - Set default clear color to widget window background on expose, and reset it on first contentful paint. r=jrmuizel,stransky Differential Revision: https://phabricator.services.mozilla.com/D135075
cd56ada936928e6157a3921ad5bd4cec4e572dd3: Bug 1748989: Protect Nightly-only video layer pref code with ifdefs. r=gfx-reviewers,jrmuizel
Brad Werth <bwerth@mozilla.com> - Fri, 07 Jan 2022 18:40:23 +0000 - rev 673654
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1748989: Protect Nightly-only video layer pref code with ifdefs. r=gfx-reviewers,jrmuizel This code was left unprotected when it landed. The prefs only exist in Nightly, so they generated compile-time errors without these changes. Differential Revision: https://phabricator.services.mozilla.com/D135395
f2b9c824a01a5e287bf7db839292a81a1ac8f0d4: Bug 1748077 - Escape any backslashes in the URL when creating PDF links via cairo. r=gfx-reviewers,jrmuizel
Jonathan Kew <jkew@mozilla.com> - Thu, 06 Jan 2022 18:32:25 +0000 - rev 673579
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1748077 - Escape any backslashes in the URL when creating PDF links via cairo. r=gfx-reviewers,jrmuizel Differential Revision: https://phabricator.services.mozilla.com/D135227
8df35e043394ee09750f64aa3a13e6bebd83cc0c: Bug 1748216 - Ensure that we invalidate previously decoded images without a surface ready. r=jrmuizel
Andrew Osmond <aosmond@mozilla.com> - Tue, 04 Jan 2022 22:01:26 +0000 - rev 673363
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1748216 - Ensure that we invalidate previously decoded images without a surface ready. r=jrmuizel Part of how invalidation works with WebRender is that we assume frames with a WebRenderUserData object attached to them are in view. This means for images that we must ensure we create an empty WebRenderImageProviderData object even when we have no provider or surface for display. This will allow us to invalidate properly when we get the FRAME_COMPLETE notification from imagelib indicating that the redecode has completed. Differential Revision: https://phabricator.services.mozilla.com/D135077
f9b516037ec72639a4223d7ce638e887bce2ff70: Bug 1748038 - Ship media.rdd-ffmpeg.enabled to release, r=jrmuizel
Robert Mader <robert.mader@posteo.de> - Fri, 31 Dec 2021 00:41:58 +0000 - rev 673169
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1748038 - Ship media.rdd-ffmpeg.enabled to release, r=jrmuizel With bug 1743926 apparently done, bug 1744777 so far appears to be the only reason not to ship to release. Given that bug 1744777 likely also applies to VP9, that's probably acceptable. On the pro-side are better sandboxing and easy to enable VAAPI decoding. So let's ship. Differential Revision: https://phabricator.services.mozilla.com/D134890
2429b99637c75b4321c3b6714535f9590e3ebeef: Bug 1746110 - Turn on OffscreenCanvas in nightly only by default. r=gfx-reviewers,emilio,jrmuizel
Andrew Osmond <aosmond@mozilla.com> - Tue, 21 Dec 2021 02:14:44 +0000 - rev 672460
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1746110 - Turn on OffscreenCanvas in nightly only by default. r=gfx-reviewers,emilio,jrmuizel Differential Revision: https://phabricator.services.mozilla.com/D133935
084688f0cf60c7ea5e6892902c99e1dee3ffeca8: Bug 1738814 - Only set MESA_ACCELERATED when explicitly advertised by Mesa, r=gfx-reviewers,jrmuizel
Robert Mader <robert.mader@posteo.de> - Mon, 20 Dec 2021 21:38:53 +0000 - rev 672441
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1738814 - Only set MESA_ACCELERATED when explicitly advertised by Mesa, r=gfx-reviewers,jrmuizel Mesa explicitly advertises the `EGL_MESA_device_software` extension when appropriate. Only ever set `MESA_ACCELERATED` when that is the case to avoid confusion around edge-cases and driver bugs. The `EGL_MESA_device_software` extension is supported whenever `eglQueryDeviceStringEXT` is. If the later is not supported, fall back to GLX to make sure we continue detecting software drivers on old Mesa versions. We don't want to enable EGL on such old drivers anyway. Note: this will break `glxtest` on the Wayland backend for old drivers. This is not problem though as we don't ship it yet, don't plan to ship it on old Mesa drivers and there don't seem to be any distributions that ship such a combination (even RHEL 8 appears to ship newer Mesa by now). Differential Revision: https://phabricator.services.mozilla.com/D134254
f323fd90f9472e7dbf09418147ff22fda248fc5a: Bug 1746530 - Save and restore previous FBO in SwCompositor::create_tile. r=jrmuizel
Lee Salzman <lsalzman@mozilla.com> - Fri, 17 Dec 2021 16:21:09 +0000 - rev 672100
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1746530 - Save and restore previous FBO in SwCompositor::create_tile. r=jrmuizel Differential Revision: https://phabricator.services.mozilla.com/D134131
f5c2b2e49d210c0e1745dfc611565b2d8e582752: Bug 1744135 Part 2: Annotate macOS font loading with font name if a crash happens. r=gfx-reviewers,jrmuizel
Brad Werth <bwerth@mozilla.com> - Thu, 16 Dec 2021 21:57:23 +0000 - rev 672021
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1744135 Part 2: Annotate macOS font loading with font name if a crash happens. r=gfx-reviewers,jrmuizel Differential Revision: https://phabricator.services.mozilla.com/D133426
18fe281d3b21ea09edfbed1b4151f8642b893be8: Bug 1744135 Part 1: Add a 'FontName' key for crash reports. r=gfx-reviewers,gsvelto,jrmuizel
Brad Werth <bwerth@mozilla.com> - Thu, 16 Dec 2021 21:57:22 +0000 - rev 672020
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1744135 Part 1: Add a 'FontName' key for crash reports. r=gfx-reviewers,gsvelto,jrmuizel Differential Revision: https://phabricator.services.mozilla.com/D133425
d10a3223dc486cb5825ab186a33bf6dcc8eb8b51: Bug 1746473 - Make wrench jobs run on all branches r=jrmuizel
Michelle Goossens <michelle@masterwayz.nl> - Thu, 16 Dec 2021 19:38:50 +0000 - rev 672006
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1746473 - Make wrench jobs run on all branches r=jrmuizel Differential Revision: https://phabricator.services.mozilla.com/D134058
7a2debb638b4b017f01ef67f460434f15760ef79: Bug 1744052 - Speed up the guillotine allocator. r=jrmuizel
Nicolas Silva <nsilva@mozilla.com> - Thu, 16 Dec 2021 18:18:20 +0000 - rev 671988
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1744052 - Speed up the guillotine allocator. r=jrmuizel - Store the free rect sizes with fewer bits in a spearate array to scan it faster (the bulk of the optimization is here) - Round up the allocation sizes to reduce fragmentation a bit - Remove the dead best-area-fit code, we can resurrect it later if need be. With this patch the guillotine allocator almost disappears from the profile. Differential Revision: https://phabricator.services.mozilla.com/D134009
3fba3d5d27c9a3c4c1fde593a458fd90cecf0036: Bug 1736267 - Generally allow HW-WR on Mesa drivers in nightly, r=gfx-reviewers,jrmuizel
Robert Mader <robert.mader@posteo.de> - Sat, 11 Dec 2021 21:17:12 +0000 - rev 671510
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1736267 - Generally allow HW-WR on Mesa drivers in nightly, r=gfx-reviewers,jrmuizel This mostly affects ARM drivers which become more and more popular and capable, see https://mesamatrix.net/ Block GL(ES) < 3 hardware to reduce noise on older hardware. Depends on D133572 Differential Revision: https://phabricator.services.mozilla.com/D133573
1a7c7c028d3f029b545f78c72852368a163ea8cd: Bug 1736267 - Switch WebRender on Intel from allowlist to blocklist on Linux, r=gfx-reviewers,jrmuizel
Robert Mader <robert.mader@posteo.de> - Sat, 11 Dec 2021 19:56:45 +0000 - rev 671508
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1736267 - Switch WebRender on Intel from allowlist to blocklist on Linux, r=gfx-reviewers,jrmuizel Essentially a port of D130926 to Linux. As result we enable HW-WR on all Intel devices on gen 6 (sandybridge) and newer, i.e. all hardware that supports GL(ES) 3.x. Also stop blocking Baytrail. It was added in bug 1708682 which turned out to be a duplicate of bug 1710400. Differential Revision: https://phabricator.services.mozilla.com/D133572
0ed87284de011372bf192fa819276f732bc3eea8: Bug 1733008 - Allow AMD Lucienne devices (0x164c) r=gfx-reviewers,jrmuizel
Robert Mader <robert.mader@posteo.de> - Sat, 11 Dec 2021 19:52:44 +0000 - rev 671507
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1733008 - Allow AMD Lucienne devices (0x164c) r=gfx-reviewers,jrmuizel Differential Revision: https://phabricator.services.mozilla.com/D133565
5d68cc62e2bc275f68bc01d8286c3f20285b8163: Bug 1744162 - Expand FOG IPC to RDD process, to collect CPU and GPU time used there, r=chutten,jrmuizel.
Florian Queze <florian@queze.net> - Fri, 10 Dec 2021 12:20:10 +0000 - rev 671419
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1744162 - Expand FOG IPC to RDD process, to collect CPU and GPU time used there, r=chutten,jrmuizel. Differential Revision: https://phabricator.services.mozilla.com/D132749
c65614b3233acd9ed90c77baf1c3a6c688eff0ca: Bug 1744691 - Remove SerializedRunnable r=jrmuizel,gfx-reviewers
sotaro <sotaro.ikeda.g@gmail.com> - Tue, 07 Dec 2021 22:31:36 +0000 - rev 670942
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1744691 - Remove SerializedRunnable r=jrmuizel,gfx-reviewers SerializedRunnable was created only for holding RefPtr<nsISerialEventTarget>. It could be removed. Differential Revision: https://phabricator.services.mozilla.com/D133060
366c90fe20d97c34620ce0889e607f3daa7cad31: Bug 1742382 - Clamp bounds to sampler. r=jrmuizel
Lee Salzman <lsalzman@mozilla.com> - Tue, 07 Dec 2021 21:43:44 +0000 - rev 670936
Push 16213 by ffxbld-merge at Mon, 10 Jan 2022 14:37:06 +0000
Bug 1742382 - Clamp bounds to sampler. r=jrmuizel Differential Revision: https://phabricator.services.mozilla.com/D132720
5206581c6270d67b64133a6550177e65ac0a2ce9: Bug 1746530 - Save and restore previous FBO in SwCompositor::create_tile. r=jrmuizel,a=dsmith
Lee Salzman <lsalzman@mozilla.com> - Fri, 17 Dec 2021 16:21:09 +0000 - rev 670655
Push 16168 by dsmith@mozilla.com at Mon, 20 Dec 2021 17:04:01 +0000
Bug 1746530 - Save and restore previous FBO in SwCompositor::create_tile. r=jrmuizel,a=dsmith Differential Revision: https://phabricator.services.mozilla.com/D134131
d1024c3538b7da3e7dc7733c5c382635a8eead4b: Bug 1742382 - Clamp bounds to sampler. r=jrmuizel,a=dsmith
Lee Salzman <lsalzman@mozilla.com> - Tue, 07 Dec 2021 21:43:44 +0000 - rev 670567
Push 16131 by dsmith@mozilla.com at Fri, 10 Dec 2021 17:54:09 +0000
Bug 1742382 - Clamp bounds to sampler. r=jrmuizel,a=dsmith Differential Revision: https://phabricator.services.mozilla.com/D132720
6616fe7301d4342db2cf70500cdd744f0d47d200: Bug 1642583 - Push clips when applying D2D blend effect. r=jrmuizel
Lee Salzman <lsalzman@mozilla.com> - Thu, 02 Dec 2021 18:30:41 +0000 - rev 670405
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1642583 - Push clips when applying D2D blend effect. r=jrmuizel Differential Revision: https://phabricator.services.mozilla.com/D132723
0e8787dbc04c79f8fd8036177b147cc783e82d68: Bug 1743930 - Remove unused TextureAllocationFlags flag handling r=gfx-reviewers,jrmuizel
sotaro <sotaro.ikeda.g@gmail.com> - Thu, 02 Dec 2021 07:08:43 +0000 - rev 670324
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1743930 - Remove unused TextureAllocationFlags flag handling r=gfx-reviewers,jrmuizel Differential Revision: https://phabricator.services.mozilla.com/D132648
d889e102b481dd9efd656aede5c86b86ff0e3515: Bug 1743930 - Remove unused TextureAllocationFlags flag handling r=gfx-reviewers,jrmuizel
sotaro <sotaro.ikeda.g@gmail.com> - Thu, 02 Dec 2021 02:42:00 +0000 - rev 670306
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1743930 - Remove unused TextureAllocationFlags flag handling r=gfx-reviewers,jrmuizel Differential Revision: https://phabricator.services.mozilla.com/D132648
2d1f7196e88a3aee7d084225f4381b6952b545ce: Bug 1689978 - Fill out-of-bounds texelFetchPtr with zeroes rather than clamping. r=jrmuizel
Lee Salzman <lsalzman@mozilla.com> - Wed, 01 Dec 2021 08:24:06 +0000 - rev 670188
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1689978 - Fill out-of-bounds texelFetchPtr with zeroes rather than clamping. r=jrmuizel Attempting to just clamping the base address returning from texelFetchPtr might be causing some crashes in the case the texture is actually smaller than the offset area. Instead, switch out the sampler with a zero buffer to ensure we have something sane to sample without having to do slow bounds checking on everything. Differential Revision: https://phabricator.services.mozilla.com/D132508
1a01c1aa7817e9fd99182bc4b737ee4ce6359619: Bug 1743525 - Enable window occlusion on early beta on Windows r=gfx-reviewers,jrmuizel
sotaro <sotaro.ikeda.g@gmail.com> - Tue, 30 Nov 2021 22:30:51 +0000 - rev 670158
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1743525 - Enable window occlusion on early beta on Windows r=gfx-reviewers,jrmuizel window occlusion needs to be tested by more users. Differential Revision: https://phabricator.services.mozilla.com/D132432
6eddf62ebcd789f4ed30251599cbfcc46971eb4a: Bug 1743521 - Remove unused fuctions of CompositableForwarder r=gfx-reviewers,jrmuizel
sotaro <sotaro.ikeda.g@gmail.com> - Tue, 30 Nov 2021 22:30:03 +0000 - rev 670157
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1743521 - Remove unused fuctions of CompositableForwarder r=gfx-reviewers,jrmuizel Differential Revision: https://phabricator.services.mozilla.com/D132431
43a61bc21c1ba2c172423f6938b3544672cf2560: Bug 1743176 - Collect the GPU time used in the parent process through Glean, r=chutten,jrmuizel.
Florian Quèze <florian@queze.net> - Tue, 30 Nov 2021 21:07:28 +0000 - rev 670137
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1743176 - Collect the GPU time used in the parent process through Glean, r=chutten,jrmuizel. Differential Revision: https://phabricator.services.mozilla.com/D132265
3005d9eca42db537e70d4270b656608faaf95055: Bug 1742340 - Handle WebGL context loss in DrawTargetWebgl. r=jrmuizel,gfx-reviewers
Lee Salzman <lsalzman@mozilla.com> - Tue, 30 Nov 2021 16:59:42 +0000 - rev 670111
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1742340 - Handle WebGL context loss in DrawTargetWebgl. r=jrmuizel,gfx-reviewers Differential Revision: https://phabricator.services.mozilla.com/D131826
456ac0463f5cf233a07fbc90ec208b23c141ec57: Bug 1741956 - Avoid OP_OVER on Cairo Xlib window surface. r=jrmuizel
Lee Salzman <lsalzman@mozilla.com> - Mon, 29 Nov 2021 16:34:23 +0000 - rev 669845
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1741956 - Avoid OP_OVER on Cairo Xlib window surface. r=jrmuizel When we use OP_OVER for the final blit in WindowSurfaceX11Image::Commit, this causes Cairo to hit a compositing fallback that uses XGetImage on the window to get the pixel data, blends to it, then XPutImage's the result back. We want to avoid this both because XGetImage may cause errors and it is slow to read back from the window server. If we use CopySurface/OP_SOURCE instead we avoid the readback via XGetImage and so bypass both problems. Differential Revision: https://phabricator.services.mozilla.com/D132319
c4b3480996ec9bdbea7040e5cb9e05215d9acb16: Bug 1743057 - Notify windows visibility change to WindowOcclusionTracker when window is activated r=gfx-reviewers,jrmuizel
sotaro <sotaro.ikeda.g@gmail.com> - Sat, 27 Nov 2021 02:24:22 +0000 - rev 669768
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1743057 - Notify windows visibility change to WindowOcclusionTracker when window is activated r=gfx-reviewers,jrmuizel When Firefox was activated by Alt+Tabbing, there was a case that event hook of WindowOcclusionCalculator could not detect an event of window activated. Then it is necessary to trigger window occlusion calculation from nsWindows. Differential Revision: https://phabricator.services.mozilla.com/D132206
aac57050b23eb4c32ca64ff209036b23df85f8ab: Bug 1742907 - Update fuzziness for animate-preserve3d-parent.html r=gfx-reviewers,jrmuizel
Glenn Watson <git@intuitionlibrary.com> - Thu, 25 Nov 2021 20:10:02 +0000 - rev 669606
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1742907 - Update fuzziness for animate-preserve3d-parent.html r=gfx-reviewers,jrmuizel Needs a few extra pixels fuzziness on tier 2 platforms. Differential Revision: https://phabricator.services.mozilla.com/D132181
9d10b5e675c5225b9e053de4f353bc32d70a6617: Bug 1742472 - Use QueryProcessCycleTime on Windows to report total CPU time spent when the CPU has a constant TSC, r=gerald,jrmuizel.
Florian Queze <florian@queze.net> - Wed, 24 Nov 2021 10:46:45 +0000 - rev 669461
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1742472 - Use QueryProcessCycleTime on Windows to report total CPU time spent when the CPU has a constant TSC, r=gerald,jrmuizel. Differential Revision: https://phabricator.services.mozilla.com/D131834
a05524e8eb205d8824af05a48cd4d26926f12bee: Bug 1742472 - fix the clang implementation of has_cpuid_bits for the levels in the 0x80000000 range, r=jrmuizel.
Florian Queze <florian@queze.net> - Wed, 24 Nov 2021 10:46:44 +0000 - rev 669460
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1742472 - fix the clang implementation of has_cpuid_bits for the levels in the 0x80000000 range, r=jrmuizel. Differential Revision: https://phabricator.services.mozilla.com/D131946
b9f7f3add8d6a3ff7788f1b8c6bf855c280f1eae: Bug 1741742 - Put the window ID in the composite profile marker name. r=gfx-reviewers,jrmuizel
Nicolas Silva <nsilva@mozilla.com> - Fri, 19 Nov 2021 10:07:59 +0000 - rev 669094
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1741742 - Put the window ID in the composite profile marker name. r=gfx-reviewers,jrmuizel It's useful to be able to see in profiles when multiple windows are being rendered. Differential Revision: https://phabricator.services.mozilla.com/D131510
c2f3aadb9333fbf437bae0cf478167dd62decf80: Bug 1742017 - include CompositorWidget.h before #ifdef MOZ_WIDGET_SUPPORTS_OOP_COMPOSITING r=gfx-reviewers,jrmuizel
sotaro <sotaro.ikeda.g@gmail.com> - Fri, 19 Nov 2021 02:44:22 +0000 - rev 669062
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1742017 - include CompositorWidget.h before #ifdef MOZ_WIDGET_SUPPORTS_OOP_COMPOSITING r=gfx-reviewers,jrmuizel We need to include "mozilla/widget/CompositorWidget.h" before "#ifdef MOZ_WIDGET_SUPPORTS_OOP_COMPOSITING", Differential Revision: https://phabricator.services.mozilla.com/D131575
b475f14c7de2c3f225cd9d1675abc760c37b618d: Bug 1741584 - Add a profile event marker for the number of bytes and items uploaded. r=gfx-reviewers,jrmuizel
Nicolas Silva <nsilva@mozilla.com> - Wed, 17 Nov 2021 21:33:55 +0000 - rev 668947
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1741584 - Add a profile event marker for the number of bytes and items uploaded. r=gfx-reviewers,jrmuizel Differential Revision: https://phabricator.services.mozilla.com/D131395
84ef54ebd02c6800491e4766acab076fed84f1f1: Bug 1741314 - Use OP_SOURCE in DrawTargetWebgl::FlushFromSkia. r=jrmuizel
Lee Salzman <lsalzman@mozilla.com> - Wed, 17 Nov 2021 01:26:24 +0000 - rev 668857
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1741314 - Use OP_SOURCE in DrawTargetWebgl::FlushFromSkia. r=jrmuizel I was accidentally using OP_OVER when trying to flush the Skia target to the WebGL context. This meant any alpha values caused blending with the previous WebGL context contents, rather than overwriting them entirely which was the actually desired effect. Incidental finding while debugging this is that we also need to handle empty rects better by just ignoring them. Differential Revision: https://phabricator.services.mozilla.com/D131305
dd386f862205e57c6935c0781df3a59952c4d95c: Bug 1741349 - Add logs to WindowOcclusionCalculator r=gfx-reviewers,jrmuizel
sotaro <sotaro.ikeda.g@gmail.com> - Wed, 17 Nov 2021 00:59:38 +0000 - rev 668852
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1741349 - Add logs to WindowOcclusionCalculator r=gfx-reviewers,jrmuizel Logs for debugging help. Differential Revision: https://phabricator.services.mozilla.com/D131209
e51d895aa6927c805cbb451ad6b299dc869d2e87: Bug 1741453 - Unlink GlyphCacheEntry on failure. r=gfx-reviewers,jrmuizel
Lee Salzman <lsalzman@mozilla.com> - Tue, 16 Nov 2021 21:25:09 +0000 - rev 668838
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1741453 - Unlink GlyphCacheEntry on failure. r=gfx-reviewers,jrmuizel If we fail to rasterize text for a GlyphCacheEntry, it may not have a linked TextureHandle by the time it is destructed. Check that a handle exists before we try to unlink it. Also, if rasterization fails, just unlink it immediately so we don't keep around a bunch of empty entries in the glyph cache. This also fixes some incidental debug assertions that were hit while debugging this - passing rectData on the stack to the GL, and the mTextureHandles linked list needs to be empty before its destructor is hit. Differential Revision: https://phabricator.services.mozilla.com/D131274
c930a7012236a82688bf27bc49148c3605b6fded: Bug 1741121 - LayersBackend::LAYERS_CLIENT r=gfx-reviewers,jrmuizel
sotaro <sotaro.ikeda.g@gmail.com> - Mon, 15 Nov 2021 22:39:40 +0000 - rev 668681
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1741121 - LayersBackend::LAYERS_CLIENT r=gfx-reviewers,jrmuizel Differential Revision: https://phabricator.services.mozilla.com/D131106
3a753938cf4363a1c84eaee73b3707ebc18c3330: Bug 1741114 - Remove tileview debugger r=gfx-reviewers,jrmuizel
Glenn Watson <git@intuitionlibrary.com> - Mon, 15 Nov 2021 20:07:40 +0000 - rev 668661
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1741114 - Remove tileview debugger r=gfx-reviewers,jrmuizel Unfortunately this is not currently maintained (it's been broken since the addition of sub_slice compositor surface support). It's also complicating efforts underway to refactor the way that picture cache dependencies are handled as part of the visibility pass refactoring work. For these reasons, let's remove this functionality. If we find someone with time to maintain it in future, it's likely that we could restore most of the viewer code, and update the picture cache code in WR to output the appropriate information. Differential Revision: https://phabricator.services.mozilla.com/D131105
a7bc1d371c67f5c3fc062ae69e1ded8b58938afb: Bug 1740879 - Remove KnowsCompositor::DeviceCanReset() r=gfx-reviewers,jrmuizel
sotaro <sotaro.ikeda.g@gmail.com> - Fri, 12 Nov 2021 23:28:05 +0000 - rev 668523
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1740879 - Remove KnowsCompositor::DeviceCanReset() r=gfx-reviewers,jrmuizel KnowsCompositor::DeviceCanReset() is not used. Differential Revision: https://phabricator.services.mozilla.com/D131041
e3051b96067a480b020bd8c984a54491665c765e: Bug 1739448 - Implement a prototype WebGL-backed Canvas2D. r=gfx-reviewers,nical,jrmuizel
Lee Salzman <lsalzman@mozilla.com> - Thu, 11 Nov 2021 07:16:58 +0000 - rev 668411
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1739448 - Implement a prototype WebGL-backed Canvas2D. r=gfx-reviewers,nical,jrmuizel This mainly provides DrawTargetWebgl, which implements the subset of the DrawTarget API necessary for integration with CanvasRenderingContext2D. It translates them to suitable commands for its internal ClientWebGLContext, which then manages remoting WebGL requests to the parent/GPU process. Currently two shaders are used for drawing Canvas2D primitives, but can be expanded in the future. These are an image shader and a solid color shader. The core of this implementation revolves around TexturePacker and TextureHandle, which cope with the necessity of frequently uploading SourceSurfaces for use with WebGL. TexturePacker implements a bin-packing algorithm for packing these uploads into texture pages, which can either be SharedTextures if they are reasonably small, or StandaloneTextures if they are too big to pack in a SharedTexture. Each upload is assigned a TextureHandle which is used to manage it in a move-to-front cache, so that we can easily eject TextureHandles from the back of the cache if we have too many. These TextureHandles are associated with the SourceSurface that spawned them to more easily manage their lifetimes. There are further dependent caches for dealing with blurred shadows and with text. Shadows are cached in an uploaded texture bound to the SourceSurface that generated them. Text is handled by caching entire runs in the GlyphCache (keyed by both their rendering parameters and their glyphs). The text is first rasterized to a surface and then uploaded to a texture in the GlyphCache which can be reused should the text be encountered again. To deal with commands we can't accelerate, a separate internal DrawTargetSkia is also maintained. The content of the WebGL framebuffer is copied into it so that drawing can then proceed in software from there. It remains in this fallover state until the next frame, when it resets back to using the WebGL framebuffer again. This acceleration is disabled by default. To enable it, you must toggle the pref "gfx.canvas.accelerated" to true. This should be suitably different from the naming of the previous SkiaGL prefs to not alias with them. There are a few dependent prefs that follow from the previous SkiaGL prefs for setting the size limitations for acceleration and also limitations for the internal texture cache. Differential Revision: https://phabricator.services.mozilla.com/D130388
7b82837e2f56582e1e86897285f4109856b72000: Bug 1739448 - Implement a prototype WebGL-backed Canvas2D. r=gfx-reviewers,nical,jrmuizel
Lee Salzman <lsalzman@mozilla.com> - Thu, 11 Nov 2021 04:33:50 +0000 - rev 668407
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1739448 - Implement a prototype WebGL-backed Canvas2D. r=gfx-reviewers,nical,jrmuizel This mainly provides DrawTargetWebgl, which implements the subset of the DrawTarget API necessary for integration with CanvasRenderingContext2D. It translates them to suitable commands for its internal ClientWebGLContext, which then manages remoting WebGL requests to the parent/GPU process. Currently two shaders are used for drawing Canvas2D primitives, but can be expanded in the future. These are an image shader and a solid color shader. The core of this implementation revolves around TexturePacker and TextureHandle, which cope with the necessity of frequently uploading SourceSurfaces for use with WebGL. TexturePacker implements a bin-packing algorithm for packing these uploads into texture pages, which can either be SharedTextures if they are reasonably small, or StandaloneTextures if they are too big to pack in a SharedTexture. Each upload is assigned a TextureHandle which is used to manage it in a move-to-front cache, so that we can easily eject TextureHandles from the back of the cache if we have too many. These TextureHandles are associated with the SourceSurface that spawned them to more easily manage their lifetimes. There are further dependent caches for dealing with blurred shadows and with text. Shadows are cached in an uploaded texture bound to the SourceSurface that generated them. Text is handled by caching entire runs in the GlyphCache (keyed by both their rendering parameters and their glyphs). The text is first rasterized to a surface and then uploaded to a texture in the GlyphCache which can be reused should the text be encountered again. To deal with commands we can't accelerate, a separate internal DrawTargetSkia is also maintained. The content of the WebGL framebuffer is copied into it so that drawing can then proceed in software from there. It remains in this fallover state until the next frame, when it resets back to using the WebGL framebuffer again. This acceleration is disabled by default. To enable it, you must toggle the pref "gfx.canvas.accelerated" to true. This should be suitably different from the naming of the previous SkiaGL prefs to not alias with them. There are a few dependent prefs that follow from the previous SkiaGL prefs for setting the size limitations for acceleration and also limitations for the internal texture cache. Differential Revision: https://phabricator.services.mozilla.com/D130388
19481aa87b1d748104f550836aaf79954a151dbb: Bug 1735937 - Flip gfx.offscreencanvas.enabled for WPT OffscreenCanvas related tests. r=jrmuizel
Andrew Osmond <aosmond@mozilla.com> - Tue, 09 Nov 2021 20:16:05 +0000 - rev 668260
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1735937 - Flip gfx.offscreencanvas.enabled for WPT OffscreenCanvas related tests. r=jrmuizel In this patch, we set the gfx.offscreencanvas.enabled pref to true for some WPT tests. This will increase our coverage for OffscreenCanvas and help prevent regressions for the tests that are already passing. Differential Revision: https://phabricator.services.mozilla.com/D128546
0c0987ddaf62e25677b8242b0720f66afa000102: Bug 1739621 - Remove remaining UseAdvancedLayers() r=jrmuizel,gfx-reviewers,bradwerth
sotaro <sotaro.ikeda.g@gmail.com> - Sun, 07 Nov 2021 12:44:53 +0000 - rev 667921
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1739621 - Remove remaining UseAdvancedLayers() r=jrmuizel,gfx-reviewers,bradwerth Differential Revision: https://phabricator.services.mozilla.com/D130467
79acac71ec88b977389f57f6eb08c64499e02dbf: Bug 1732736 - Enable window occlusion on Nightly on Windows r=jrmuizel,gfx-reviewers
sotaro <sotaro.ikeda.g@gmail.com> - Fri, 05 Nov 2021 22:13:07 +0000 - rev 667886
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1732736 - Enable window occlusion on Nightly on Windows r=jrmuizel,gfx-reviewers Differential Revision: https://phabricator.services.mozilla.com/D127366
2cd924fe39cb02e99b91bf5a4d40d7bd28b8f517: Bug 1739677 - Fix includes for PQuotaRequest.ipdl. r=jrmuizel
Andrew Osmond <aosmond@mozilla.com> - Fri, 05 Nov 2021 20:23:37 +0000 - rev 667856
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1739677 - Fix includes for PQuotaRequest.ipdl. r=jrmuizel Differential Revision: https://phabricator.services.mozilla.com/D130505
413ecffe1156cbecf64c7e7e5b1b4df846742fe2: Bug 1734649 - Part 2. Create PCanvasManager to manage WebGL instances. r=jrmuizel
Andrew Osmond <aosmond@mozilla.com> - Thu, 04 Nov 2021 16:29:44 +0000 - rev 667710
Push 16109 by ffxbld-merge at Mon, 06 Dec 2021 17:28:51 +0000
Bug 1734649 - Part 2. Create PCanvasManager to manage WebGL instances. r=jrmuizel This patch adds the necessary IPDL plumbing to allow us to create WebGL instances off the main thread in the content process, and to execute them on the Renderer thread in the compositor process. Differential Revision: https://phabricator.services.mozilla.com/D127839