Commit graph

5,745 commits

Author SHA1 Message Date
Moonchild
b19fe58909 No issue - Stop supporting data: scheme in SVG <use> elements. 2023-11-14 15:34:40 +08:00
athenian200
926ee14909 Issue #1824 - Use elfdump on SunOS instead of readelf.
GNU readelf isn't available as consistently as I assumed across SunOS,
and it can be named different things on different illumos distros (some call
it readelf, others call it greadelf, etc), so it's safer to use elfdump.
This is a fairly easy fix, just kind of annoying.
2023-11-14 15:34:12 +08:00
Moonchild
6c37943e1c No Issue - add mutex in EventSource
Potentially avoids a gc crash when load is high.
2023-11-10 15:33:13 +08:00
Brian Smith
c68105436b Issue #2376 - Split NSPR sed into BSD and GNU. Mac and the BSDs use [^[:space:]]. Use GNU sed on other platforms with \S. 2023-11-10 15:32:53 +08:00
Moonchild
1ac65a828d No Issue - Adjust configure to deal with FreeBSD regex breakage for \S 2023-11-10 15:32:35 +08:00
athenian200
42db0b335f Issue #1824 - Support SunOS Linker mapfiles.
Generating OS-appropriate mapfiles from a provided SYMBOL_FILE is
apparently required to work with newer ffvpx. Nothing else in our
codebase actually seemed to require it. Also seems to reduce the amount
of console spam I see relating to symbol visibility during the build
process, and I think it even makes libxul.so link a bit faster.

Signed-off-by: athenian200 <athenian200@outlook.com>
2023-11-10 15:32:11 +08:00
Basilisk-Dev
ae5bfc9ff2 No Issue - StructuredClone serialize and deserialize should treat back reference consistently
Backport of https://bugzilla.mozilla.org/show_bug.cgi?id=1538622
2023-11-10 15:31:51 +08:00
Basilisk-Dev
727a24d78e No issue - Structured clone algorithm doesn't serialize Array Length contrary to HTML spec, resulting in truncation of trailing sparse arrays like [1,2,3,,]
Backport of https://bugzilla.mozilla.org/show_bug.cgi?id=1476955
2023-11-10 15:31:33 +08:00
Moonchild
17f1bcac4c Make ECMA v6 the default for devtools pretty-printing. 2023-11-04 11:42:01 +08:00
Moonchild
0db18745f4 Issue #2364 - Limit the growth of scaling for animated nsDisplayTransform in the fallback case.
This ensures we don't scale the underlying size of the layer beyond what
is close to the current display size. When box shadows get much larger
than this, they start taking so much time to render that successive
frames grow in scale too fast for any inter-frame reuse to be possible.

With this, we avoid that and no longer get crushed by re-rendering
gigantic box shadows every single frame.

See BZ 1383825
2023-11-04 11:41:44 +08:00
Moonchild
d4cdecec81 Add Min() and Max() convenience functions for 2d point types.
This will return (min(x1,x2), min(y1,y2)) and equivalent max from 2
passed-in (x1,y1) (x2,y2) points
2023-11-04 11:41:21 +08:00
Moonchild
3bdb386b6e Fix a bug in SizeTyped templating
A second template parameter 'F' was previously added to SizeTyped, but
was not correspondingly added to the argument passed for the 'Sub'
parameter of BaseSize.
2023-11-04 11:40:55 +08:00
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
Moonchild
8d42309580 [DOM] For now, use C++11 static_asserts only.
Single-param static_assert is C++17 or later.
Follow-up to 3d92b8212595769c40da7ccfbafb3898cfaaf7bd
2023-11-04 11:39:19 +08:00
Brian Smith
cd66a17327 Issue #2354 - Restore ARM32 buildability on Linux. Fix ION breakages due to BigInt changes. Fix breakages from libjpeg, libyuv and libvpx upgrades. Restore ARM(32/64) NEON FPU support in libyuv. 2023-11-04 11:36:56 +08:00
Basilisk-Dev
9e6a0c089f No Issue - Implement crypto.randomUUID
We already have code in the platform to generate random UUIDs. This simply exposes that functionality via the crypto.UUID function
2023-10-26 10:55:10 +08:00
Moonchild
48c27934c7 [WebRTC] Give ::Terminated() the same treatment as ::Close_g 2023-10-26 10:54:43 +08:00
Moonchild
74a4260ecd [XPCOM] Add several app/msi file types to the executables list (Win).
This errs on the side of caution for what are installer packages, but
people getting conned into thinking this is safe is a bit too common.
They are akin in danger to .exe files in that respect as it installs
software, and should be treated similarly, so, warn about the potential
danger.
2023-10-26 10:54:13 +08:00
Moonchild
aae5866390 [DOM] Drop mWrappedRunnable early in workers.
This should prevent some intermittent crashes.
2023-10-26 10:53:41 +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
Moonchild
f2b0066036 [widget] Change RegisterDragDrop to be called on idle.
This is a low-priority init function that should not be called with
immediate dispatch to the current thread, for performance reasons.
Additionally, do not call RegisterDragDrop for hidden windows.
2023-10-26 10:52:28 +08:00
Moonchild
38f8fde3e3 [network] Block more invalid cookie name characters.
This blocks the following characters from use in the cookie name:
0x3B (semi-colon), 0x3D (equals) and 0x7F (del)
2023-10-26 10:51:50 +08:00
Moonchild
fe37319996 [DOM] Ignore status 206 and vary header checking for opaque responses in the Cache API. 2023-10-26 10:51:17 +08:00
Moonchild
eb44f633ee [media] Use RefPtr<TrackBuffersManager> instead of raw pointers 2023-10-26 10:50:47 +08:00
Jeremy Andrews
83ecbdfacb Issue #2357 - Add reftest for WebM alpha.
I figured I should include the reftest for the sake of completeness, though I have already verified the feature working from the site mentioned in the forum thread that prompted me to look into this in the first place.

Ref: BZ 1331528
2023-10-26 10:50:17 +08:00
Jeremy Andrews
490df49307 Issue #2357 - WebM w/alpha renders black if WMF decoder is enabled.
Mozilla forgot to force use of VPXDecoder on Windows in their initial implementation, this is pretty much what they did for Android as well. Straight port of the Firefox 67 fix.

Ref: BZ 1528652
2023-10-26 10:50:02 +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
Jeremy Andrews
71cc0ef940 Issue #2357 - WebM demuxer can't tell when a video wants to be transparent.
Required to have an alpha channel (which in the strange world of graphics seems to refer to transparency, and not experimental code) in WebM videos. Straight port of Firefox 53 implementation, adapted slightly for a couple of patches previously taken without this.

Ref: BZ 1320829
2023-10-26 10:49:04 +08:00
Basilisk-Dev
ef54fc458c PR #2356 - Treat all GLSL versions >=450 as 450
Backport of https://bugzilla.mozilla.org/show_bug.cgi?id=1446548
2023-10-25 09:59:41 +08:00
Moonchild
0bcaa2ff90 Issue #2355 - Apply self-transforms to the frame of top level <svg>
We previously didn't do this because we relied on our anonymous wrapper
to perform transforms. However, that resulted in only the children
transforming, and the frame's cliprect wouldn't be updated,
giving the impression of the z-ordering being wrong.

Also adds reftests from the relevant BZ bug found later.

Resolves #2355
2023-10-25 09:58:41 +08:00
Brian Smith
bb656856b6 Issue #2282 - Part 2 - Re-add some timer clamping that got clobber erroneously. 2023-10-21 11:04:56 +08:00
Brian Smith
373fb9ae07 Issue #2282 - Align the Performance Observer navigation and resource with the spec. This now passes the conformance tests. https://bugzilla.mozilla.org/show_bug.cgi?id=1425458 Resource timing entries Workers - part 2 - PerformanceTimingData. https://bugzilla.mozilla.org/show_bug.cgi?id=1462605 PerformanceNavigationTiming.name must be the value of the address of the current document. https://bugzilla.mozilla.org/show_bug.cgi?id=1462883 Update PerformanceTimingData::mReportCrossOriginRedirect in SetPropertiesFromHttpChannel. https://bugzilla.mozilla.org/show_bug.cgi?id=1462879 PerformanceNavigationTiming must be notified correctly - part 1 - notify. 2023-10-21 11:04:41 +08:00
Moonchild
e65b46ba0f Issue #2350 - Part 2: Allow "maximumFractionDigits" option in Intl.NumberFormat to be less than the default minimum fraction digits.
This implements the changes from the "has consensus" PR in TC39
The second pair of `DefaultNumberOption()` calls was inlined, because
only the fallback case is relevant anyway.

Steps 12.d and 12.e from the spec PR were combined into a single
`if`-block. That way it also matches step 12.f more closely.
Also changed the single `if` steps into an `if-else if` chain, because
the steps are mutually exclusive.
2023-10-21 11:04:15 +08:00
Moonchild
be81bae5b7 Issue #2350 - Part 1: Apply "minimumIntegerDigits" to number-formatters with fraction-digits.
Implements the changes to `SetNumberFormatDigitOptions` and
`FormatNumberToString`, except for the support of the new
"compact-rounding" mode.
This also includes a few minor fixes for edge cases (like -0 vs. 0)
2023-10-21 11:03:56 +08:00
Moonchild
735bb78c28 Issue #2350 - Part 0: Add a helper function DefaultNumberOption
This is the abstract operation that converts an option value to a number
value, checking whether it is in the allowed range, and filling in a
fallback value if necessary.
2023-10-21 11:03:34 +08:00
Basilisk-Dev
9f63203a43 Issue #2332 - Hyphenate rtc stats type as per spec
Backport of https://bugzilla.mozilla.org/show_bug.cgi?id=1322503
2023-10-21 11:03:07 +08:00
Basilisk-Dev
4edd2f91b4 [Basilisk] Issue #19 followup - remove DNT from mozscreenshots We technically don't use mozscreenshots at all, but this should still be removed since it is no longer a valid setting 2023-10-18 11:50:56 +08:00
Basilisk-Dev
30e47eb5bc [Basilisk] Issue #19 - Implement GlobalPrivacyControl 2023-10-18 11:49:14 +08:00
Moonchild
6cefc52d32 [Basilisk] Issue #2 - Remove Safebrowsing and TrackingProtection from the FE
This resolves #2
2023-10-18 11:29:58 +08:00
Moonchild
591a887bf3 [Pale-Moon] Issue MoonchildProductions/UXP#1721 - Implement GlobalPrivacyControl
Front-end and locale changes for GPC in preferences as well as migration.
Also bumps the back-end pointer to pick up the platform changes necessary.
2023-10-18 10:19:59 +08:00
Moonchild
50ad087351 Issue #1721 - Implement GlobalPrivacyControl
(and get rid of failed DoNotTrack)
2023-10-18 10:17:23 +08:00
Moonchild
0315aeee73 Issue #1721 - Follow-up: Properly protect GPC header
Make it a singleton so it cannot be overwritten.
2023-10-18 09:54:42 +08:00
Basilisk-Dev
84ca5fdfc7 PR #2347 - Backport of Mozilla tooltip bugs:
Bug 148624 - only show tooltip when document has focus
Partial Bug 1857513 - Use window activeness rather than document.hasFocus() to display chrome-only tooltips
2023-10-18 09:54:12 +08:00
Brian Smith
46024cd872 Issue #1442 Follow-up: Stop pretending proxies have a JSNative call/construct hook. https://bugzilla.mozilla.org/show_bug.cgi?id=1471924 Part 1 Also remove an erroneous debug assert and guard against future issues. This fixes crashes on vk.com but still does not behave correctly. 2023-10-18 09:48:01 +08:00
Moonchild
4ec7fa4f5f Clean up dom\webidl
Fix CRLF line endings in some files.
2023-10-16 09:33:24 +08:00
Moonchild
9cd7fd3bf4 Issue #2340 - Return an array (actually frozen sequence) for {border|content}BoxSize
Resolves #2340
2023-10-16 09:31:05 +08:00