Moonchild
cdda874cff
[NSS] Update NSS to pick up fixes.
2023-02-20 12:01:55 +08:00
Moonchild
bc50a7d3c6
[DOM] Check whether module load request was already cancelled when a load fails
2023-02-20 12:01:36 +08:00
Moonchild
bca689b483
[widget] Properly test for and handle errors in target-surface creation and mapping.
2023-02-20 12:01:04 +08:00
Job Bautista
cc6b0f11e7
Issue #2107 - Clean up caret when destroying editor.
...
Editor changes caret visibility during drag and drop. But when destroying
editor, we don't restore caret state. So we should restore it when destroying
editor.
Co-authored-by: Makoto Kato <m_kato@ga2.so-net.ne.jp>
2023-02-20 11:11:02 +08:00
Moonchild
1644bf94f0
No issue - Accept also video/vp8 as MIME type
2023-02-08 16:57:28 +08:00
FranklinDM
4c9665a4ae
Issue #2104 - Part 2: Indicate if a label was cropped via the "_is_cropped" attribute
2023-02-08 16:57:11 +08:00
FranklinDM
60c344a56b
Issue #2104 - Part 1: Implement "clip" attribute value for XUL string cropping
...
This implements the "clip" attribute value for the "crop" attribute found in XUL label elements. It functions similarly to having the text-overflow property set to an empty string or "". This shouldn't break previously established behavior as it only adds a new value to be checked.
The behavior of the "none" attribute value in the documentation (https://udn.realityripple.com/docs/Archive/Mozilla/XUL/Attribute/crop ) is incorrect. The "none" attribute value literally means "don't crop anything" if you'd check the code and is also equivalent to not setting the "crop" attribute at all. This has always been the case since Firefox 2 (earliest version I checked) and apparently, this section of the documentation was copied verbatim from XULPlanet without even checking if it's correct.
2023-02-08 16:56:51 +08:00
Moonchild
8d3f23ed00
Issue #2103 - Fix typo in RegExp Parser
...
This corrects the typo where the left-hand character would determine if
the right-hand character would be added or not.
Resolves #2103
2023-02-02 21:43:39 +08:00
Martok
f75e9d9441
Issue #2089 - Implement the Promise.any combinator
...
Based-on: m-c 1568903/9,1560300
2023-02-02 09:32:17 +08:00
Martok
9fc50a9920
Issue #2089 - Rename shared Promise combinator functions, with helpers for element functions
...
Based-on: m-c 1568903/{5-8}
2023-02-02 09:31:56 +08:00
Martok
61c99bf6cd
Issue #2089 - Implement AggregateError
...
Based-on: m-c 1568903/4,1641355(partial),1652148,1643397
2023-02-02 09:31:39 +08:00
Martok
209c8e06a2
Issue #2089 - Move ErrorObject parts from jsexn.cpp to ErrorObject.cpp
...
Based-on: m-c 1568903/2
2023-02-02 09:31:16 +08:00
Martok
92906d4da5
Issue #2089 - Add cache for Promise property lookups
...
Based-on: m-c 1475678/11
2023-02-02 09:31:00 +08:00
Job Bautista
10ef0da5a0
Issue #2099 - Remove unnecessary cast in GeneratorObject::suspend's do loop.
...
This resolves build bustage with --enable-debug.
2023-02-01 07:42:40 +08:00
Job Bautista
22dc363c3a
Issue #2083 - Follow-up: RegExpShared::source should be a GCPtr.
...
A hangover from before RegExpShared was a GC thing, as noted by m-c 1399928.
2023-02-01 07:42:23 +08:00
Martok
a215929a31
Issue #2089 - Report unhandled rejection for optimized away promise
...
Based-on: m-c 1498775
2023-02-01 07:42:07 +08:00
Martok
078daa705a
Issue #2089 - Further runtime perf improvements for PromiseState
...
- Reduce slot size of PromiseReactionRecord to fit into OBJECT8 alloc kind
- Use the Call() helper from Interpreter.h to reduce code duplication
- Clear the incumbent global slot when it's no longer used
Based-on: m-c 1475678/{12-14}
2023-02-01 07:40:48 +08:00
Martok
5ff7a51da0
Issue #2089 - Create a shared helper for PerformPromiseRace, PerformPromiseAll and PerformPromiseAllSettled
...
Replace the previous non-CommonPerformPromiseAllRace port with the unified one
Based-on: m-c 1475678/10,1539694
2023-02-01 07:40:29 +08:00
Martok
c0b1bf7e1e
Issue #2089 - Add a PromiseCapability struct, directly initialize dense elements in PerformPromiseAll using NewbornArrayPush
...
Based-on: m-c 1475678/{8,9}
2023-02-01 07:40:02 +08:00
Martok
1fd51e14f3
Issue #2089 - Improve Runtime perf of Promises
...
- reduce typecasting
- reduce rooting already rooted values
- directly handle unwrapped promises
Based-on: m-c 1475678/{1-7}
2023-02-01 07:39:42 +08:00
Martok
ee395231dd
Issue #2089 - Don't use BlockOnPromise fast path with non-default resolving functions, combine default resolving functions flags
...
Based-on: m-c 1474348
2023-02-01 07:39:25 +08:00
Martok
9744b0c2bc
Issue #2089 - Optimize Promise.then and Promise.all/race with default resolving functions
...
Based-on: m-c 1401508,1412200,1473970/{1-4}
2023-02-01 07:39:01 +08:00
Martok
55eacd43a4
Issue #2089 - Turn AsyncGeneratorResumeNext recursion into iteration to avoid stack overflow
...
Based-on: m-c 1416809
2023-02-01 07:38:35 +08:00
Martok
6e2201d3a8
Issue #2089 - Only create result Promises in Promise#then and Promise#catch if it's used or the creation is otherwise observable
...
Based-on: m-c 1342070
2023-02-01 07:38:16 +08:00
Martok
ed8af362be
Issue #2089 - Shrink Promise instances from 8 to 4 slots by moving debug information to an external object
...
Based-on: m-c 1342050
2023-02-01 07:37:53 +08:00
Job Bautista
233802c9ab
Revert "Issue #1382 - RegExpShared::groupsTemplate_ cannot be a GCPtr since RegExpShared is managed by C++"
...
This workaround has been obsoleted by the work on Issue #2083 .
This reverts commit bbd743608685ec77ebebe480761118db8a988253.
2023-02-01 07:37:24 +08:00
Job Bautista
b7e4530861
Issue #2083 - Part 5: Fix memory leak in RegExpObject.
...
Based on Mozilla bug 1345177.
2023-02-01 07:37:02 +08:00
Job Bautista
9824659d3c
Issue #2083 - Part 4: Give RegExpShared a finalizer.
...
Based on Mozilla bug 1345177.
2023-02-01 07:36:42 +08:00
Job Bautista
2ac60a27c7
Issue #2083 - Part 3: Fix RegExpShared rooting hazards now it's a GC thing.
...
Based on Mozilla bug 1345177.
Changes from the original bug's patch:
- The original patch didn't have a dotAll for a call to irregexp::ParsePattern,
so let's make our dotAll a member of the MutableHandleRegExpShared re.
- Make RegExpShared::initializeNamedCaptures, introduced in Issue #1285 , static.
This resolves a build bustage where static RegExpShared::compile was trying to
use a member function.
2023-02-01 07:36:25 +08:00
Job Bautista
d163d08cb2
Issue #2083 - Part 2: Remove use of RegExpGuard.
...
Based on Mozilla bug 1345177.
There were more uses of RegExpGuard in js/src/builtin/RegExp.cpp not found in
the original bug's patch.
2023-02-01 07:36:07 +08:00
Job Bautista
3796c7c1e1
Issue #2083 - Part 1: Make RegExpShared a GC thing.
...
Based on Mozilla bug 1345177.
Changes from the original bug's patch:
- We don't have JS::CurrentThreadIsHeapCollecting, so let's use
trc->runtime()->isHeapCollecting() instead.
- Mozilla bug 1337117 renamed runtimeFromMainThread to
runtimeFromActiveCooperatingThread for Firefox 54, so let's use the former
2023-02-01 07:35:50 +08:00
Moonchild
8bf892d728
[xpcom] remove incorrect assertion.
...
See https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2095#issuecomment-33796
2023-01-30 12:56:44 +08:00
Moonchild
d89f4e1454
No issue - bump default platform UA compatibility mode to 102.0
2023-01-30 12:56:18 +08:00
Moonchild
8f3badf882
Issue #1382 - Remove incorrect assertion.
...
Tag #2090 #2095
2023-01-30 12:56:00 +08:00
Martok
70279e1eb2
Issue #2093 - Trace HeapPtr<RegExpShared::groupsTemplate_> for GC move/compact events, regression from #2072
2023-01-26 11:41:33 +08:00
Job Bautista
8495231395
Issue #2091 - Parse \p{Extended_Pictographic} too.
...
This is essentially a follow up to Issue #1286 . We already have
UCHAR_EXTENDED_PICTOGRAPHIC in our in-tree ICU, so there's no reason to comment
this case out.
2023-01-26 11:41:21 +08:00
Martok
ece0496985
Issue #2089 - Avoid copying/recreating iterator result, AsyncGeneratorRequest and GeneratorObject expression stacks
...
Based-on: m-c 1394682,1410283,1396499
2023-01-26 11:40:56 +08:00
Martok
8322304fb3
Issue #2089 - In Promises, use a C++ version of SpeciesConstructor when calling from C++
...
Based-on: m-c 1344656,1386534
2023-01-26 11:40:28 +08:00
Martok
6b50dd5d06
Issue #2089 - Use JS engine stack if necessary when reporting errors
...
Based-on: m-c 996060
2023-01-26 11:39:57 +08:00
Martok
0216108195
No issue - Throw error when resolving or rejecting promise returned by async function with testing function
...
Based-on: m-c 1418106
2023-01-26 11:39:31 +08:00
Martok
531906eb87
No issue - add API to tell Profile Timeline Recording state to JS engine
...
Based-on: m-c 1342070/5
2023-01-26 11:38:40 +08:00
Martok
1230808583
No issue - Cleanup unused function exports to self-hosted global
...
Based-on: m-c 1325696
2023-01-26 11:38:19 +08:00
Martok
41c2b34542
No issue - Remove "code" from jsprototype.h macros
...
Based-on: m-c 1394084
2023-01-26 11:38:07 +08:00
Martok
7d2b83fafc
No issue - reformat GlobalObject::skipDeselectedConstructor
2023-01-26 11:37:54 +08:00
Martok
2db0386e65
No issue - implement js::NativeDefineDataProperty helper
2023-01-26 11:37:43 +08:00
Moonchild
f080f2e978
[DOM] Make nsHTMLContentSerializer handle noscript depending on the scripting enabled state of the document.
2023-01-19 09:42:47 +08:00
Moonchild
7764640b0b
[devtools] Improve Copy as cURL
...
Windows commonly fails to work because of --compressed, and its string
escaping needed improvement because of the complexities of argument
parsing in command windows.
2023-01-19 09:42:21 +08:00
Moonchild
d8756a58db
[DOM] Add some null checks for PerformanceWorkers
2023-01-19 09:41:54 +08:00
Moonchild
549389d327
No issue - factor out some frame iterator helper functions.
2023-01-19 09:41:27 +08:00
Moonchild
4381425b26
[gtk widget] Use text/uri-list for file drag&drop.
2023-01-19 09:41:00 +08:00