Moonchild
f1ccc95daf
Issue #2364 - Only use HWA AlphaBoxBlur when targets are large enough.
...
There's considerable cost associated with creating HWA draw targets
which would negate and regress the performance won by it if used for
too small targets (like small spans of text).
This only uses HWA if >= 8K SurfaceAllocationSize to balance HWA draw
target cost with box blur cost.
2023-11-04 11:40:33 +08:00
Moonchild
3f618a55dc
Issue #2364 - Optimize the software-based box blur implementation.
2023-11-04 11:40:15 +08:00
Moonchild
4beb3b947c
Issue #2364 - use DrawTarget::DrawSurfaceWithShadow to render box shadows on platforms that accelerate it.
2023-11-04 11:40:00 +08:00
Moonchild
8d30faf95f
Issue #2364 - Re-factor AlphaBoxBlur
...
Only blur one quadrant of a box-shadow and mirror it to the other quadrants.
This applies only if the corners are symmetrical (square corners or equal
corner radii) otherwise we'll fall back to the old method.
2023-11-04 11:39:45 +08:00
roytam1
bac9ec9a84
Merge remote-tracking branch 'origin/tracking' into custom
2023-10-26 10:55:31 +08:00
Moonchild
e4d635f889
[WebGL] Add preffed limit to WebGL vertCount
...
Defaults to 30M, working around driver bugs (looking at you, Mesa)
2023-10-26 10:53:11 +08:00
Jeremy Andrews
9982ceb94f
Issue #2357 - Paused WebM videos w/alpha are 100% transparent if HA is disabled.
...
Mozilla found a bug in their initial implementation, causing paused WebM videos with alpha to become totally transparent if hardware acceleration is disabled. Straight port of the Firefox 54 fix.
Ref: BZ 1332952
2023-10-26 10:49:41 +08:00
Jeremy Andrews
c0ba3a8d2e
Issue #2357 - VPXDecoder does not decode alpha frames.
...
Another requirement to have transparency in videos. Straight port of Firefox 53 implementation, save for some oddities relating to needing to put uint8_t instead of uint8 in yuv_convert to get this to compile.
Ref: BZ 1321076, 1329104
2023-10-26 10:49:23 +08:00
roytam1
119feb053c
Revert "Issue #2301 - Make Gecko Media Plugins optional when not building EME or WebRTC"
...
This reverts commit 9e7d1492e6 .
2023-09-18 21:32:06 +08:00
roytam1
0c6e087291
Merge remote-tracking branch 'origin/tracking' into custom
2023-09-14 11:09:14 +08:00
Matheus Marinho
9e7d1492e6
Issue #2301 - Make Gecko Media Plugins optional when not building EME or WebRTC
...
Co-authored-by: Moonchild <moonchild@palemoon.org>
2023-09-14 10:22:47 +08:00
roytam1
92d9218cf1
Merge remote-tracking branch 'origin/tracking' into custom
2023-08-31 22:43:48 +08:00
Moonchild
56c53b3b8f
[gfx] Check if we have a valid texture before trying to delete it.
2023-08-31 22:43:18 +08:00
roytam1
4fae28f059
Merge remote-tracking branch 'origin/tracking' into custom
2023-06-26 10:38:35 +08:00
Moonchild
7f87cc1276
Issue #1769 - Follow-up: Default-enable JPEG-XL images if built
...
Sets the pref default to true and also add conneg entry for images
if jxl support is built.
Additionally, ifdefs the GfxPref to only observe when jxl is built.
2023-06-24 12:19:10 +08:00
Job Bautista
51ea0e4f3a
Issue #1769 - Part 2: Implement JPEG-XL decoder and about:config and MIME plumbing.
...
Backported from Mozilla bug 1707590 whereever possible.
2023-06-24 12:16:27 +08:00
roytam1
725b27a0f5
Merge remote-tracking branch 'origin/tracking' into custom
2023-05-05 23:02:05 +08:00
Moonchild
2f117eecaa
Issue #1656 - Remove more vim control lines.
...
Vim control lines were re-introduced or not entirely cleaned up.
This nukes them again.
Removing from embedding, extensions, gfx, hal, ipc, layout, mailnews,
media and memory. More to come.
2023-05-05 22:57:19 +08:00
roytam1
0a4a1d8a63
Merge remote-tracking branch 'origin/tracking' into custom
2023-05-01 06:55:51 +08:00
Job Bautista
51426d1053
Issue #1862 - Follow-up: Replace deprecated Harfbuzz functions with current ones.
...
Based on Mozilla bug 1500356.
2023-05-01 06:53:51 +08:00
roytam1
0b1d6ceeb6
Merge remote-tracking branch 'origin/tracking' into custom
2023-04-30 09:31:17 +08:00
Job Bautista
4584069f26
Issue #61 - Follow-up: Fix xul.dll link bustage related to Skia.
2023-04-30 09:29:43 +08:00
Job Bautista
6e2f70a70f
Issue #61 - Follow-up: Fix gkmedias.dll link bustage related to Skia.
...
I don't understand why SK_API is being a problem, but it seems they are.
2023-04-30 09:29:27 +08:00
Job Bautista
260f8e154a
Revert "Issue #61 - Place Skia in libxul"
...
This reverts commit 39cebe99e2db22d9e725499bf309b5668fcee413.
2023-04-30 09:29:05 +08:00
roytam1
ba3e46b173
partly import changes from tenfourfox: #651 : M1761233 M1687303 M1633019 M1797336 M1799748 M1801102 (fb91afbb4)
2023-04-24 11:39:08 +08:00
roytam1
b5e969b8aa
update harfbuzz to 3.2.0
2023-04-07 11:04:20 +08:00
roytam1
58116e6c55
update harfbuzz to 2.8.2
2023-04-07 08:56:17 +08:00
roytam1
16fb84538a
Merge remote-tracking branch 'origin/tracking' into custom
2023-04-07 08:25:05 +08:00
Job Bautista
d9e7c07ed3
Issue #2191 - Follow-up: Add missing mozilla::gfx in gfxFcPlatformFontList.cpp
...
Fixes build bustage in GNU/Linux
2023-04-07 08:24:38 +08:00
Job Bautista
44b74873c1
Issue #2191 - Remove virtual from gfxFont::GetCairoScaledFont.
...
Backported from Mozilla bug 1385029.
2023-04-07 08:24:27 +08:00
Job Bautista
0f7750cd27
Issue #2191 - Require implementation of gfxFont::GetScaledFont and remove unnecessary gfxPlatform::GetScaledFontForFont.
...
Backported from Mozilla bug 1385029.
2023-04-07 08:24:14 +08:00
Job Bautista
b721b6257f
Issue #2191 - Remove redundant CairoScaledFont accessor from gfxFont subclasses.
...
Backported from Mozilla bug 1385029.
2023-04-07 08:23:59 +08:00
Job Bautista
a35ce5e5e1
Issue #2191 - Get rid of gfxFontconfigUtils.h since gfxFontconfigFontBase is unnecessary.
...
Backported from Mozilla bug 1385029.
2023-04-07 08:23:39 +08:00
Job Bautista
c54e2502b0
Issue #2191 - Make ScaledFont::SetCairoScaledFont virtual so it can be accessed from outside Moz2D.
...
Backported from Mozilla bug 1385029.
2023-04-07 08:23:23 +08:00
Job Bautista
b5d5963a4f
Issue #2191 - Remove as much old fontconfig support as needed for Harfbuzz update.
...
Based on Mozilla bugs 1119128, 1285533, and 1421964.
gfx.font_rendering.fontconfig.fontlist.enabled is no longer available.
gfxFontconfigUtils.h still exists, and will be removed in another commit. Just
need more research on bug 1385029.
Tag #1862
2023-04-07 08:23:07 +08:00
roytam1
cc4ac7a04b
Merge remote-tracking branch 'origin/tracking' into custom
2023-03-28 13:30:04 +08:00
Moonchild
6b3767c443
Issue #61 - Place Skia in libxul
...
Skia does some nasty things that break with DLL calls like having virtual dtors
without a body definition (and it's honestly surprising that it even builds to
begin with the way it's done, but apparently they use some linking symbol voodoo
to work around that in dependent classes).
Not wanting to have to pull Google code apart to try and fix that for something
we're only using for canvas anyway, it's better to just let Skia reside in
libxul instead.
2023-03-28 12:07:39 +08:00
Moonchild
371d7cf05d
Issue #61 - Reinstate buildability with shared gkmedias dll
...
This fully works for splitting gkmedias.dll back out from xul with one exception
which is Skia throwing undefined externals when linking gkmedias.
2023-03-28 12:07:03 +08:00
roytam1
b03f6dd26e
Merge remote-tracking branch 'origin/tracking' into custom
2023-03-20 12:34:16 +08:00
Moonchild
fd5015faeb
[GFX] Add some sanity checks and clamps to SurfaceData calculations.
2023-03-20 10:44:29 +08:00
roytam1
7c0ddca067
Merge remote-tracking branch 'origin/tracking' into custom
2023-02-27 12:15:12 +08:00
u3shit
687733f9d1
Issue #2101 - Part 7: Add color range support on GPUs
2023-02-27 12:14:20 +08:00
u3shit
2b88f2c9ac
Issue #2101 - Part 6: Plumbing of ColorRange between video decoders and YUV convert
2023-02-27 12:11:30 +08:00
u3shit
b5f9e9abb6
Issue #2101 - Part 4: Add color range support to gfx/ycbcr
...
Loosely based on current mozilla code
https://hg.mozilla.org/mozilla-central/file/25a8668d92431d469b443f0f2030328bab754aea/gfx/ycbcr/yuv_convert.cpp
2023-02-27 12:09:18 +08:00
u3shit
a4d1f57b9e
Issue #2101 - Part 3: Update libyuv
...
Updated to version 1861, git revision 88b050f337cc0ca2a51800fe7bf4737222c87344 from
https://chromium.googlesource.com/libyuv/libyuv/
2023-02-27 12:08:54 +08:00
u3shit
42f3296899
Issue #2101 - Part 2: Use stdint.h types instead of uint8 and friends
...
Required for upcoming libyuv update
2023-02-27 12:06:38 +08:00
u3shit
c0c76cd455
Issue #2101 - Part 1: Add mColorRange info to YCbCrBuffer
...
https://hg.mozilla.org/integration/autoland/rev/6f4c7904cda8
2023-02-27 12:02:53 +08:00
roytam1
4ef2722f89
Merge remote-tracking branch 'origin/tracking' into custom
2023-02-27 11:09:21 +08:00
u3shit
3e62b1fc9f
Issue #2118 - Part 2: Add support for Identity YUVColorSpace
...
https://hg.mozilla.org/mozilla-central/rev/be342c90755d11551623362f2058c0326f63bbb3
2023-02-27 11:08:35 +08:00
u3shit
beef437602
Issue #2118 - Part 1: Update gfxUtils YuvColorMatrix functions to match upstream mozilla code more closely.
...
https://hg.mozilla.org/mozilla-central/file/4fba5295dc19f9d2f5d065ba502a44d8f2dc9e85/gfx/thebes/gfxUtils.cpp#l1246
2023-02-27 11:07:38 +08:00