Commit graph

5,446 commits

Author SHA1 Message Date
Job Bautista
00a5d64018 Issue #1769 - Part 1 Follow-up: Tidy up moz.build for highway and libjxl
highway upstream added a new header file to be included in highway.h after
 0.15.0 it seems, so we have to account for that in moz.build.
Also brought back allowing compiler warnings for libjxl and highway.
 Apparently the equivalent of AllowCompilerWarnings() is a bool whose name
 is UPPERCASE and uses under_scores instead of CamelCase.
2023-06-24 12:17:02 +08:00
Job Bautista
2df558509f Issue #1769 - Part 3: Cleanup nsJXLDecoder.
The mp4parse Rust component has been removed in Issue #58. It doesn't seem
 like the decoder uses any mp4parse function, so seems like it's safe to
 remove it.
Removed const DecoderType named GetType() because we don't have it in our
 Decoder.h.
I've decided to abandon the OS_RGBA backporting effort and instead went for
 using OS_RGBA's value which is R8G8B8A8. Turns out that there is much more
 going on in Mozilla's version of CreateSurfacePipe than I've expected, like
 the aInFormat and aOutFormat thing which I really don't want to delve into
 right now. Looking at the code it looks like all JPEG-XL images are expected
 to have an alpha channel anyway, so I think my workaround should be safe.
I also removed the dependency in OrientedIntSize and used Size() from gfx/2d/
 Point.h like our PNG and GIF decoders currently do. Migrating our decoders
 to OrientedInt types should be done in another PR instead.
Also also changed the coding style to be closer to UXP's.
Also also also, I made a mistake in Part 1's commit message; the commit used
for libjxl is 192ddd90fdf0c69cd1db1c8d7850db036dd87f4b.
2023-06-24 12:16:41 +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
Job Bautista
7983f5d8ba Issue #1769 - Part 1: Add vendored libjxl and highway sources.
Used old-configure to add the build option for enabling JPEG-XL support.
Highway version: 1.0.2
libjxl version: 0.7.0
2023-06-24 12:16:12 +08:00
FranklinDM
6444835acd Issue #21 - Follow-up: Remove experiment category images 2023-06-23 16:07:46 +08:00
FranklinDM
341632f865 Issue #21 - Part 3: Remove experiments localization
This also removes bits from about:support that weren't removed in bf6bb142fc5bcb49b053788e06160af304f639e5.
2023-06-23 16:07:23 +08:00
FranklinDM
9f8aa81a87 Issue #21 - Part 2: Remove experiment extension assets and styling 2023-06-23 16:07:05 +08:00
FranklinDM
369e68a663 Issue #21 - Part 1: Remove experiments base code from the Add-ons Manager
The experiments manager was already removed in bf6bb142fc5bcb49b053788e06160af304f639e5 and this was imported dead code from Tycho AM.
2023-06-23 16:06:49 +08:00
Moonchild
8658452304 No issue - Update SQLite lib to 3.42.0 2023-06-23 16:06:33 +08:00
FranklinDM
fe7244c016 Issue #1691 - Follow-up: Print leaking class name and remove crash reporter dependency 2023-06-23 16:05:54 +08:00
Moonchild
c4d665a0d0 No issue - Set the default for incremental cycle collector to be off.
Negative performance impact if enabled.
2023-06-23 16:05:16 +08:00
Jeremy Andrews
ccd69e165d Issue #1956 - Allow building with newer MSVC versions.
(P.S.: this rev is partly imported from upstream, without binaries. -Roy)
2023-06-23 16:03:03 +08:00
Moonchild
4b0e27bb4c [Pale-Moon] [SSUAO] Update chase.com override after breakage. 2023-06-02 10:39:13 +08:00
Moonchild
1768eb1930 [Pale-Moon] Issue #1925 - Follow-up: Throw errors on invalid values.
Uses defaults for negative values and caps upper limit.
2023-06-02 10:37:27 +08:00
Job Bautista
075eebec12 [Pale-Moon] Issue #1925 - Follow-up: Don't show link items when pref is less than 1.
A user setting the pref to 0 most likely wants to get rid of the items, so let's
allow that by simply not calling PlacesMenu.call at all in that case.
2023-06-02 10:37:01 +08:00
Moonchild
e3d51b39b6 [Pale-Moon] Issue #1925 - Add pref to control history menu length.
Limits set are minimum 1 entry (0 would mean unlimited so this can't
be used to completely remove the history list from the menu) and maximum
50 which would overflow on most screens anyway. Default remains 15 if
undefined.

Resolves #1925
2023-06-02 10:36:16 +08:00
Moonchild
2a7ff7ce1a Issue #2257 - Remove rematerialized frames after bailouts and exceptions.
This ensures that rematerialized frames used by the devtools debugger
are properly removed so that no stale data is used during bailouts.
2023-06-02 10:35:31 +08:00
Moonchild
77bd81595d Issue #2256 - Implement Object.hasOwn(object, property)
This is a convenience access function to hasOwnProperty.

Trivial, self-hosted implementation providing the interface to the
already existing hasOwnProperty cpp function with additional toObject
for spec compliance.

Resolves #2256
2023-06-02 10:35:08 +08:00
Brian Smith
106de86dc4 Issue #2252 - Prevent crash when attempting to load a script with execution disallowed. This issue is due to the ExecutionContext added in Issue #1691 not handling GetScript() in a context where script execution is not allowed. This expressed itself in crashes when playing MP4s with the NoScript extension installed and enabled. 2023-05-24 09:02:56 +08:00
FranklinDM
adaf6c3221 Issue #1592 - Follow-up: Ensure topmost scope marker is cleaned up 2023-05-24 09:02:40 +08:00
FranklinDM
3d917c9965 Issue #2250 - Part 2: Ignore the ancestor filter assertion if rule matching is restricted or if the current element is under a shadow host
This only affects debug builds.
2023-05-24 09:02:22 +08:00
FranklinDM
1c2dd6aee0 Issue #2250 - Part 1: Return early if the element being tested for is likely an ancestor and does not have an assigned slot 2023-05-24 09:02:07 +08:00
Job Bautista
a00793acff Issue #2221 - Follow-up: Simplify jit_ioncheck{1|2|3}_deunified_sources assignment. 2023-05-18 09:39:50 +08:00
Job Bautista
a2b45a9d53 Issue #2221 - Follow-up: Ensure jit_ioncheck{1|2|3}_deunified_sources is defined.
Should fix build bustage in armhf, as well as prevent bustage in mips32.
2023-05-18 09:39:39 +08:00
Job Bautista
bbb91e4833 Issue #2246 - Implement Array find from last.
Based on the implementation from Mozilla bug 1704385.
2023-05-18 09:39:18 +08:00
FranklinDM
6ae0a69ac7 Issue #1765 - Part 3: Provided token type should be used in LookForTokenType
I didn't realize this immediately after moving the code into a method. Oops.
2023-05-15 09:14:24 +08:00
FranklinDM
d678cc2c45 Issue #1765 - Part 2: Implement calc() parsing inside rgb/a() and the non-hue component of hsl/a()
This also adds a new helper method for checking the type of tokens that will be parsed after the current token, which is useful for determining the unit of values inside calc() functions.

Partially based on 8a0897d23f
2023-05-15 09:14:07 +08:00
FranklinDM
73a6dc3122 Issue #1765 - Part 1: Move ReduceNumberCalcOps struct up higher, rename IsCSSTokenCalcFunction to CSSParserImpl::IsCalcFunctionToken 2023-05-15 09:13:47 +08:00
Job Bautista
ae27fff4bb Issue #2241 - Part 7.2 Follow-up: Fix build bustage due to unified building in Basilisk.
Tag #80
2023-05-15 09:13:28 +08:00
Job Bautista
e072ef0dfc Issue #2241 - Part 8: Remove non-working layout.css.DOM*.enabled prefs.
A follow-up to fdfe7a8245eb33db252f2a9a3474ac931f15a7d8.
2023-05-15 09:13:07 +08:00
Job Bautista
4ec35fdcf2 Issue #2241 - Part 7.2: Implement .fromRect and .fromQuad.
Backported from Mozilla bug 1558101.
2023-05-15 09:12:47 +08:00
Job Bautista
0e2f687f4d Issue #2241 - Part 7.1: Implement .fromFloat{32/64}Array.
Backported from Mozilla bug 1558101.
2023-05-15 09:12:41 +08:00
Job Bautista
10bdcb7e5f Issue #2241 - Part 6: Implement DOMMatrix.fromMatrix.
Also fixes .multiply() to use DOMMatrixInit.

Backported from Mozilla bug 1560462.
2023-05-15 09:12:03 +08:00
Job Bautista
51f812bb80 Issue #2241 - Part 4&5 Follow-up: Fix WebIDL errors
Remove [Pref] attribute from Geometry interfaces as they're now exposed to web
workers too via Part 5.

Remove nonexistent toJSON objects erroneously added in Part 4.1.
2023-05-15 09:11:46 +08:00
Job Bautista
c3042a2f41 Issue #2241 - Part 5: Expose Geometry interfaces to web workers.
Exposes DOMMatrix, DOMPoint, DOMQuad, and DOMRect to workers.

Backported from Mozilla bug 1420580.
2023-05-15 09:11:24 +08:00
Job Bautista
69e45fd84e Issue #2241 - Part 4.3: Move devtools over to getBounds().
This leaves getAdjustedQuads alone because it lives in its own world and its
result gets sent over IPC. That leaves things in a bit of an intermediate state,
but that should be OK for now.

Backported from Mozilla bug 1186265.
2023-05-15 09:11:07 +08:00
Job Bautista
840658ab39 Issue #2241 - Part 4.2: Resurrect DOMQuad.bounds, but deprecated.
This also forces DOMQuad.toJSON() to only return the points.

Backported from Mozilla bug 1186265.
2023-05-15 09:10:49 +08:00
Job Bautista
60c88dd11b Issue #2241 - Part 4.1: Get DOMPoint, DOMQuad, DOMRect, DOMMatrix a bit closer to spec.
Backported from Mozilla bug 1186265's part 1.
2023-05-15 09:10:31 +08:00
Job Bautista
d2c3ea08eb Issue #2241 - Part 3: Extend DOMMatrixReadOnly to allow instantiation with a Matrix4x4.
Backported from Mozilla bug 1355675.
2023-05-15 09:10:14 +08:00
Job Bautista
621868a340 Issue #2241 - Part 2: Add SameValueZero implementation to mfbt/FloatingPoint.h
Backported from Mozilla bug 1560658.

This is to prevent duplication of code while implementing DOMMatrix operations.
2023-05-15 09:09:58 +08:00
Job Bautista
ec2fb72568 Issue #2241 - Part 1: Move {js::,JS_}{{Strictly,Loosely}Equal,SameValue} into their own header and implementation files
Backported from Mozilla bug 1516742.

The .from* methods are going to depend on SameValueZero, which needs to be
visible to /dom. This patch provides the foundation for that.
2023-05-15 09:09:41 +08:00
FranklinDM
1ae0d6ff7f [Pale-Moon] No issue - Remove invalid key attribute on Permissions menu item
There wasn't any assigned key combination for the Permissions page when this menu item was added. This is a follow-up to c2fd8a6466e1005f4266753708e7c8a38442db54

Oddly enough, there's actually a check if the key element exists. Unlike the warning for key conflicts on keyboards, this one doesn't show up on the Error Console and is available only on debug builds.
2023-05-12 10:42:53 +08:00
FranklinDM
a39686b91b [Pale-Moon] No issue - Ensure window.location exists before checking against the browser URL 2023-05-12 10:42:11 +08:00
FranklinDM
4a9e6100ec [Pale-Moon] No issue - Silence tab closing animation assert if the tabbrowser is not visible 2023-05-12 10:41:16 +08:00
Job Bautista
aadd6244c1 [Pale-Moon] Issue MoonchildProductions/UXP#1451 - Follow-up: Only copy hunspell shared library if we're not building against system Hunspell.
We've never supported system Hunspell AFAICS, but if that time comes, we should
prevent packaging from breaking if building against system Hunspell on *nix.
2023-05-12 10:40:35 +08:00
Job Bautista
6b13231b96 [Basilisk] Issue MoonchildProductions/UXP#1451 - Follow-up: Only copy hunspell shared library if we're not building against system Hunspell.
We've never supported system Hunspell AFAICS, but if that time comes, we should
prevent packaging from breaking if building against system Hunspell on *nix.
2023-05-12 10:40:08 +08:00
Moonchild
e39dc9d9b9 No issue - block a few problematic DLLs. 2023-05-11 09:29:07 +08:00
Moonchild
ea32d13dc3 No issue - Disable ms-cxh and ms-cxh-full protocol handling. 2023-05-11 09:28:50 +08:00
Moonchild
500af2fe51 [widget] Rewrite data-read loop in OnDataAvailable.
The read-loop in OnDataAvailable was needlessly baroque and used a very
strange dialect of Hungarian notation. Factored out the zero-element
case for simplicity, and added justification in comments as-appropriate.
2023-05-11 09:28:28 +08:00
Moonchild
cc6ef1f3b1 No issue - Limit JPEG decoder memory allocation to surface cache size.
This means that for trivial images whose header specifies large
dimensions but with no image data, we don't waste a lot of memory.
See BZ bug 1277397
2023-05-11 09:27:46 +08:00