| Commit message (Collapse) | Author | Age | Lines |
|
|
|
|
|
|
|
|
|
| |
This commit does several things:
- Moves the pref check from ScriptLoader to ns[I]Document so it can be called on
the document.
- Changes the atrribute freezing function to a better name that takes the
document as a parameter.
- Sets the proper async/defer attributes on HTML script elements based on
keywords and whether they are module scripts or not.
|
|
|
|
|
|
| |
This simplifies handling of combinations of async/defer by assigning one and
only one state to scripts.
If async then always async > if defer or module then defer > otherwise blocking.
|
|
|
|
|
|
| |
This makes sure we don't block body-referred sub-resources by head-referenced
defer and async scripts. This is important for all script loads, not just
modules, but is added here because it was run into while implementing modules.
|
| |
|
| |
|
|
|
|
| |
Because the spec says so.
|
| |
|
|
|
|
| |
module map after fetch errors.
|
| |
|
| |
|
|
|
|
| |
Because the spec says so.
|
| |
|
|
|
|
| |
Because the spec says so.
|
|
|
|
| |
Because the spec says so.
|
|
|
|
|
| |
This is an ahead-of time port to try and address #1624.
This is based on BZ 1461751 and Jon Coppeard's work in it.
|
| |
|
|
|
|
|
|
| |
a visited set
Ref: BZ 1365187
|
|
|
|
| |
Ref: BZ 1365187
|
|
|
|
|
|
|
|
| |
follow up
MODULE_STATUS_ERRORED is no more. Replacing with newer API.
Ref: BZ 1420420
|
|
|
|
|
|
| |
The added debug assertion does not work due to missing API.
They were added in BZ 1337491, 1395366, and others, but were primarily used for multi-threading.
This uses our existing non-multithreaded syntax instead, resolving a `no member named` build error.
|
|
|
|
|
|
| |
handling works correctly
Ref BZ 1395896
|
|
|
|
|
|
|
| |
Make it so they are not allocated on a background thread in a different zone to
the final module.
Ref: BZ 1372258
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
According to the spec this isn't created until the module is instantiated, but
we create it when we compile the module.
We stored this previously in InitialEnvironmentSlot and copied it to
EnvironmentSlot when it was supposed to be created, but we can just store it in
the latter slot straight away and check the module's status and return null if
it shouldn't exist yet.
This reduces the number of slots needed on a moduleObject to 17.
Re: BZ 1420412 Part 1
We can't implement the second part to further reduce our number of slots,
because it relies on SetProxyReservedSlot which in turn relies on
rearchitecturing JS proxies to make reserved slots dynamic. That's a rabbit hole
we really don't want to fall into.
So, we'll end up being a bit slower because it can't be in-line allocated with
having more than 16 slots, but so be it. I sincerely doubt it will make any
practical difference.
|
|
|
|
|
|
|
|
| |
This updates module implementation to match spec regarding handling of
instantiation errors, after it was changed yet again, this time to not remember
instantiation errors, but instead immediately rethrow applicable ones.
Ref: BZ 1420420
|
|
|
|
|
|
|
| |
When module dependencies fail, don't spam with errors for each import; only fire
the error event once.
Ref: BZ 1421259
|
|
|
|
|
|
| |
Keyboard.jsm back in EXTRA_JS_MODULES
JSMs are NOT Components.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Our use of SQLite explicitly avoids using MSVC's _msize which the lib would
notrmally use. This was set up this way in BZ bug 719579 for legitimate reasons
(because _msize would end up using the system symbol, which would crash trying
to get the size information from jemalloc allocations). Since we build the
SQLite lib separately there is no easy way to avoid this warning as it's not
directly linked against mozglue.dll which has the jemalloc functions it wants
for _msize when not using the system allocator. It is implicitly assuming the
function is an extern returning an int (with the call specifically casting to
int) which is correct (well, correct _enough_, anyway) so the warning can
safely be ignored for our specific use as it all lines up at link time.
|
| |
|
| |
|
|
|
|
|
|
|
| |
Newly introduced aspect-ratio property did not have CSS_PROP_LIST_EXCLUDE_INTERNAL defines, resulting in the following assertion:
\!nsCSSProps::PropHasFlags(p, (1<<28)) (properties defined outside of #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL sections must not have the CSS_PROPERTY_INTERNAL flag), at ...layout/style/nsCSSProps.cpp:289
This patch resolves the assertion by adding #ifndef around the aspect-ratio property.
|
|
|
|
|
|
|
|
|
|
| |
Since this is supported as an alias by Firefox and Edge for the same
reasons and we have websites using this to (attempt to) override the
system-provided styling with their own, leaving out the only supported
keyword we'd otherwise have (with -moz- prefix) but still stating
-webkit-.
TODO: unprefix this completely and make the vendor prefixes aliases.
|
|
|
|
| |
A simpler name feels so much cleaner.
|
| |
|
| |
|
|
|
|
|
|
|
| |
This is apparently used for fallback selection and if available it is "assumed"
Shadow DOM is also available, while this is a utility function.
Webcompat is a nightmare sometimes.
|
| |
|
|
|
|
|
|
| |
At first, HTMLEditor::GetActiveEditingHost might return null in this situation, we should check whether nullptr is returned. At second, SplitNodeDeep returns error since curent is design mode and selection node has no parent. So we should check error.
Ref: Bug 1350772
|
|
|
|
|
|
| |
We can replace old nsIEditor API with nsIAtom version.
Ref: Bug 1324996
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
SetAttribute/RemoveAttribute/CloneAttirubte.
Add nsIAtom version of the following.
- CloneAttribute
- RemoveAttribute
- RemoveAttributeOrEquivalent
- SetAttribute
- SetAttributeOrEquivalent
Ref: Bug 1324996
|
|
|
|
|
|
| |
There is a lot of string compare when using CSS property name. We should use nsGkAtoms instead.
Ref: Bug 1323138
|
|
|
|
| |
Baby has his bottle, you ok now?
|
| |
|
| |
|
|
|
|
|
| |
Ensures aspect ratio numerator and denominator aren't swapped in vertical writing modes.
https://bugzilla.mozilla.org/show_bug.cgi?id=1548768
|
|
|
|
|
| |
This existed in Firefox before this bug.
I don't know if it came from a previous bug or was removed post-fork.
|
|
|
|
|
|
|
|
|
| |
https://bugzilla.mozilla.org/show_bug.cgi?id=1547792
Aspect Ratio handling simplified by using floating point integers:
- Multiplication of value (or inverse value) to a known side for Scaling
- No unequal equal values such as "4/3" vs "8/6" vs "20/15"
- Truly "Empty" aspect ratios, even if one dimension is not 0
|
| |
|
| |
|
|
|
|
|
|
| |
EditorBase parameter of GetTextNode is unnecessary because it uses static method only. Also, we should return nsINode to reduce QI.
Resolves #1617
|