roytam1
d27b63fc1c
Merge remote-tracking branch 'origin/tracking' into custom
2023-04-08 07:34:30 +08:00
FranklinDM
7c759b2c21
Issue #252 - Follow-up: Include a null check against mDocument
2023-04-08 07:33:48 +08:00
FranklinDM
b2d7504112
Issue #252 - Move getElementsByName from HTMLDocument to Document
...
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1415176
2023-04-08 07:29:02 +08:00
roytam1
16fb84538a
Merge remote-tracking branch 'origin/tracking' into custom
2023-04-07 08:25:05 +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
68d130e554
gkmedias: add missing _moz_cairo_scaled_font_get_hint_metrics export, fix linking
2023-03-28 13:59:56 +08:00
roytam1
cc4ac7a04b
Merge remote-tracking branch 'origin/tracking' into custom
2023-03-28 13:30:04 +08:00
Matt A. Tobin
6b510a74e7
Issue #61 - Add missing external symbols for gkmedias when WebRTC is built
2023-03-28 12:09:00 +08:00
Matt A. Tobin
c85f28b0c0
Issue #61 - Add missing external symbol cubeb_set_log_callback to gkmedias symbols.def
2023-03-28 12:08:38 +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
77fe104113
Merge remote-tracking branch 'origin/tracking' into custom
2023-03-27 16:11:31 +08:00
Moonchild
dd2697172e
Issue #2176 - Don't reconstruct the parent when tearing down display:contents nodes with pseudo-elements.
...
We need to use StyleChildrenIterator which iterates over them, instead.
This is a bit of a hack but we can't always have our cake.
We need to be a bit careful though, since ::before and ::after are owned
by their own frame, and thus could be unbound from the tree or even dead
after removing the frame.
This basically ports bugs 1435566 and 1438467
2023-03-27 16:10:54 +08:00
roytam1
00534b26fa
Merge remote-tracking branch 'origin/tracking' into custom
2023-03-24 23:32:59 +08:00
FranklinDM
f169940742
Issue #2135 - Don't discard event state mask when matching ::slotted() or :host arguments
...
This should fix issues with selectors like :host(:hover) that continue to be matched although the cursor is no longer hovering over those elements.
2023-03-24 23:32:36 +08:00
roytam1
3298c8907d
Merge remote-tracking branch 'origin/tracking' into custom
2023-03-24 09:14:11 +08:00
FranklinDM
4cd0de04d0
Issue #1592 - Part 8: Test the assigned slot for type/class/ID/attribute instead of the slottable when matching ::slotted()
2023-03-24 09:12:35 +08:00
FranklinDM
19226fd560
Issue #1592 - Part 7: Slottables cannot be matched from the outer tree.
2023-03-24 09:12:15 +08:00
FranklinDM
91d2b6f4cf
Issue #1592 - Part 6: Allow pseudo-classes with a forgiving selector list argument to follow pseudo-elements
...
Pseudo-classes with a forgiving selector list argument are allowed to follow a pseudo-element, but must treat any selector that is not of the same type as invalid. It doesn't make any sense, but that's the behavior of other tainted browsers.
2023-03-24 09:12:00 +08:00
FranklinDM
8d2533ad70
Issue #1592 - Part 5: Use flattened element tree when looking for a parent while matching ::slotted()
2023-03-24 09:11:26 +08:00
FranklinDM
518c41fd7a
Issue #1592 - Part 4: Walk ::slotted()-containing rules for slottables
...
- Check against all selector parts and not the leftmost selector only for ::slotted()
- Walk rules for ::slotted() regardless if the shadow root is opened/closed
- Ensure that ::slotted() rules are walked in the right order
- Fix ::slotted inheritance from topmost shadow root
2023-03-24 09:11:07 +08:00
FranklinDM
92b31dd255
Issue #1592 - Part 3: Ensure only tree-abiding pseudo-elements will follow ::slotted()
2023-03-24 09:10:42 +08:00
FranklinDM
77ad970db6
Issue #1592 - Part 2: Parse ::slotted() pseudo-element as if it were a pseudo-class
...
- Block slot elements from being matched by ::slotted
- Ensure ::slotted() is serialized as a pseudo-element
- Add pref to control whether the pseudo-class is enabled
2023-03-24 09:07:36 +08:00
FranklinDM
ab63b7b946
Issue #1592 - Part 1c: Pass SelectorParsingFlags as a reference
2023-03-24 09:04:18 +08:00
FranklinDM
460e8db94c
Issue #1592 - Part 1b: Move <slot> UA rule to html.css
...
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1468127
2023-03-24 09:03:58 +08:00
FranklinDM
0232bcdfa4
Issue #1592 - Part 1a: Prevent crashing if a slot element was selected via DOM Inspector
2023-03-24 09:03:42 +08:00
roytam1
6a7219fb70
Merge remote-tracking branch 'origin/tracking' into custom
2023-03-23 09:04:10 +08:00
FranklinDM
7374ca6716
Issue #1593 - Follow-up: Fix :host matching from inside the shadow tree
...
Previously, we'd match :host despite the element having a different shadow root from the one that we currently have. Also, there's a test where :host should be blocked from matching if it is a descendant of an explicit universal selector.
2023-03-23 09:02:47 +08:00
roytam1
2b9187d8bf
Merge remote-tracking branch 'origin/tracking' into custom
2023-03-12 07:16:48 +08:00
FranklinDM
2be0261d54
Issue #2078 - Follow-up: Ensure empty selector lists aren't iterated when serialized
...
Really odd that this wasn't caught/doesn't cause any issues on MSVC/unoptimized GCC. Must've been luck, I guess.
2023-03-12 07:10:40 +08:00
FranklinDM
ef36c56593
Issue #2137 - Part 4: Fix namespace regression
2023-03-12 07:09:56 +08:00
FranklinDM
b257a71cce
Issue #2137 - Part 3: Don't always use the internal pseudo-class for handling negations
2023-03-12 07:09:41 +08:00
FranklinDM
3bb3c193d0
Issue #2137 - Part 2: Implement SelectorParsingFlags and use it to pass info around
2023-03-12 07:09:22 +08:00
FranklinDM
82fa9fb80b
Issue #2137 - Part 1: Modify :not() selector to accept a complex selector list
2023-03-12 07:09:00 +08:00
Moonchild
2249fbdf49
Issue #2135 - Follow-up: Check for aElement not being null
...
This was introduced to Make <link rel="stylesheet"> work in shadow trees.
eElement can, however, be `null` here and if so, it would crash.
2023-03-12 07:07:25 +08:00
roytam1
8a4c2cbeff
Merge remote-tracking branch 'origin/tracking' into custom
2023-03-07 11:18:03 +08:00
Martok
2b903a20b3
Issue #2143 - Implement CSS env() Environment Variables
2023-03-07 11:17:39 +08:00
roytam1
eb8748c537
Merge remote-tracking branch 'origin/tracking' into custom
2023-03-06 16:29:00 +08:00
FranklinDM
21d468ee65
Issue #2136 - Part 1: Implement CSS inset property
2023-03-06 16:27:53 +08:00
FranklinDM
7924a2f60d
Issue #2135 - Bug 1329877: Optimize AncestorFilter usage in lazy frame construction
2023-03-06 16:20:24 +08:00
FranklinDM
588c2154a5
Issue #2135 - Bug 1410578: Make <link rel="stylesheet"> work in shadow trees
2023-03-06 16:17:01 +08:00
FranklinDM
45c179d01b
Issue #2135 - Bug 1453789: Remove Element.createShadowRoot
2023-03-06 16:16:40 +08:00
FranklinDM
010db07bf3
Issue #2135 - Bug 1066965: Make contentEditable and spellchecking to work in Shadow DOM
2023-03-06 16:16:21 +08:00
roytam1
713dd244b9
Merge remote-tracking branch 'origin/tracking' into custom
2023-02-28 10:46:33 +08:00
FranklinDM
b40c87a59a
Issue #1375 - Follow-up: Get the insertion point right when reconstructing direct children of a shadow root
...
This should've been changed alongside bug 1404789 when it landed.
2023-02-28 10:45:05 +08:00
FranklinDM
6a26ce3455
Issue #1375 - Follow-up: Remove shadow tree hacks in the frame constructor
...
This should've been removed alongside bug 1404789 when it landed.
2023-02-28 10:44:45 +08:00
roytam1
4ef2722f89
Merge remote-tracking branch 'origin/tracking' into custom
2023-02-27 11:09:21 +08:00
FranklinDM
edc45f6849
Issue #1593 - Follow-up: Fix :host selector matching
...
Previously, we would match `:host` if:
(a) we don't have any arguments and our parent is the shadow root, or;
(b) if any of the arguments match, then reject if we don't have a containing shadow
Revised, we would match `:host` if:
(Preconditions) The element must have a shadow root, the selector must not have any feature selectors, and it is not blocked from matching `:host` (e.g. .matches outside of the shadow root context)
(a) The selector does not have any arguments, or;
(b) It matches any of its arguments in the functional part of the pseudo-class
With this, we now pass these tests that were previously failing:
http://wpt.live/css/css-scoping/css-scoping-shadow-host-rule.html
http://wpt.live/css/css-scoping/host-descendant-002.html
http://wpt.live/css/css-scoping/host-multiple-001.html
Improved (1 less red box):
http://wpt.live/css/css-scoping/css-scoping-shadow-host-namespace.html
2023-02-27 11:03:50 +08:00
FranklinDM
ebe27baa23
Issue #1382 - Part 2: Add crash test
...
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=842114
2023-02-27 11:03:31 +08:00
FranklinDM
691afc8c8b
Issue #1382 - Part 1: Remove assertion that GetPreEffectsVisualOverflowRect is called only by frames whose parent is an anonymous block
...
This is always hit if an SVG effect is applied on other frame types.
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1340257
2023-02-27 11:03:05 +08:00
roytam1
ba020f4a76
Merge remote-tracking branch 'origin/tracking' into custom
2023-02-23 21:16:30 +08:00