roytam1
f4d2bf6c3d
Merge remote-tracking branch 'origin/tracking' into custom
2025-06-27 23:33:55 +08:00
Francis Dominic Fajardo
3ba0b10bb4
Issue #2765 - Part 3: Make scrollbar width checks use the originating non-NAC style context
2025-06-27 23:32:50 +08:00
Francis Dominic Fajardo
8236eec152
Issue #2765 - Part 1: Scrollbar width should be treated as a non-inherited property
...
Note: non-inherited properties are stored in "reset" style structs.
Previous implementation treats it as an inherited property, which
doesn't match the spec.
This also fixes the incorrect behavior when using the `unset` value
for this property by specifying SETVAL_UNSET_INITIAL in the mask.
2025-06-27 23:31:38 +08:00
roytam1
6414271c91
Merge remote-tracking branch 'origin/tracking' into custom
2025-06-17 09:32:50 +08:00
Moonchild
37de431ac0
Issue #2721 - Create special case exception for <A>.Click() outside of DOM
...
This removes the requirement for there to be a non-null PresShell to
dispatch `Click()` events on `<A>` elements (only), since the exception
to the rule has propagated to the spec.
With these changes it should now be possible do create an anchor and
`Click()` on it from JS without actually first attaching it to the DOM
of the presented document, as abused by scripted downloads in pages
(instead of using the A attribute to custom-name downloads).
2025-06-17 09:24:44 +08:00
roytam1
6792dc4b66
Merge remote-tracking branch 'origin/tracking' into custom
2025-04-30 23:06:47 +08:00
Moonchild
fd4a224d1d
Issue #2737 - Part 1: Base implementation of SVGGeometryElement.
...
Mostly mechanical changes to generalize path geometry for all SVG draw
elements. No user-exposed changes.
2025-04-30 23:02:16 +08:00
Moonchild
8ae2b45691
Issue #2732 - Part 3: Explicitly search for <area> only.
...
Relying on the implicit conversion by `::FromContent` doesn't work for
us because we inherit that from `nsGenericHTMLElement` and isn't specific
to `HTMLAreaElement`, so it would accept other elements.
This also updates the Attribute changed event handler to exclude `<a>`
elements and cleans up an unused variable from the old code.
2025-04-30 23:00:35 +08:00
Moonchild
8a21d95ea3
No issue - restore nullptr-check
2025-04-30 23:00:04 +08:00
Moonchild
8db40dbbb5
No Issue - Modernize nsImageFrame/nsImageMap
...
Primarily flow control improvements, and removing unused `nsresults`.
2025-04-30 22:59:45 +08:00
Moonchild
9f64d0f4b0
Issue #2732 - Part 2: Stop accepting <a> as a valid image map <area>
...
This was part of the HTML4 standard but only ever implemented by Mozilla
and removed again in HTML5 due to lack of adoption. Retaining this could
cause web compat issues and unspecified behavior in the layout engine.
2025-04-30 22:59:26 +08:00
Moonchild
2ef82632d4
Issue #2732 - Part 1: Rename mContainsBlockContents to mConsiderWholeSubtree
...
It is more descriptive of what it actually does.
2025-04-30 22:59:06 +08:00
Moonchild
cc8e336172
[layout] Always reserve 64 bits for frame property value
...
This ensures frame property values can always be stored even in edge cases
on 32-bit machines (where a void ptr is half the width).
2025-02-19 07:10:18 +08:00
roytam1
97534886ae
import from mozilla: Bug 1591366 - Always reserve 64 bits for frame property value r=dholbert (19499821190)
2025-02-19 01:15:45 +08:00
roytam1
6073fac18f
Merge remote-tracking branch 'origin/tracking' into custom
2025-02-19 01:14:59 +08:00
Moonchild
25570dc572
Issue #2694 - Improve nested grid layout performance by caching.
...
This improves performance by caching the grid items' block axis
measurement, avoiding potentially exponential calculations and reflows.
Resolves #2694
2025-02-19 00:34:42 +08:00
Moonchild
2da039daac
Revert "Issue #2693 - Don't reflow children if they have 0 width."
...
This reverts commit 61a19f00f72598510ca8991a0831c82a09faa7be.
2025-02-19 00:34:27 +08:00
roytam1
594a360cbf
Revert "Issue #2693 - Don't reflow children if they have 0 width."
...
This reverts commit cb233feea0 .
2025-02-18 20:18:13 +08:00
roytam1
d4f1c1faed
Merge remote-tracking branch 'origin/tracking' into custom
2025-02-18 19:13:36 +08:00
Moonchild
cb233feea0
Issue #2693 - Don't reflow children if they have 0 width.
...
This seems to be the main reason for the reflow storm.
2025-02-18 19:11:56 +08:00
roytam1
d7396f6886
import from mozilla: Bug 1350925 part 2 - Assert that we're given clean ReflowOutput overflow areas in ReflowChild. rs=dholbert a=gchang (5763b4d39e4)
2025-02-13 21:02:55 +08:00
roytam1
7f4a92ec55
import from mozilla: Bug 1350925 part 1 - Reset the scrolled frame's ReflowOutput overflow areas before re-using it for another child reflow. r=dholbert a=gchang (8c70d11ecd1)
2025-02-13 21:02:15 +08:00
roytam1
bf90272692
Merge remote-tracking branch 'origin/tracking' into custom
2025-01-29 12:26:22 +08:00
Moonchild
0849deeacf
Issue #2688 - Don't apply auto min-sizing when flex max-sizing.
...
A grid item spanning multiple grid rows/columns which include a flexible
track should not participate in the auto min-sizing calculation.
Resolves #2688
2025-01-29 12:24:07 +08:00
roytam1
310c05b97a
Merge remote-tracking branch 'origin/tracking' into custom
2024-11-21 21:09:29 +08:00
Moonchild
7b6e3a2d4a
Issue #2653 - Part 1: Initial cleanup of AppId and isolated mozbrowser.
...
This removes a lot of the plumbing for having the platform embed itself
through IPC which was required for B2G running the browser as both
shell and browser application.
2024-11-21 21:01:27 +08:00
roytam1
d27ddaffd7
Merge remote-tracking branch 'origin/tracking' into custom
2024-08-05 10:39:53 +08:00
Moonchild
c096b46278
Issue #1925 - Convert NS_SIDE_TO_HALF_CORNER to a constexpr function.
2024-08-05 10:38:32 +08:00
Moonchild
b0b13b8719
Issue #1925 - Convert NS_SIDE_IS_VERTICAL to a constexpr function.
2024-08-05 10:38:00 +08:00
Moonchild
f507d2cdbc
Issue #1925 - Convert NS_HALF_CORNER_IS_X to a constexpr function.
2024-08-05 10:35:13 +08:00
Moonchild
8dc8875db6
Issue #1925 - Convert half-corner index macros to an enum.
2024-08-05 10:34:31 +08:00
Moonchild
ec7351a5d4
Issue #1925 - Remove use of NS_SIDE_* macros.
2024-08-05 10:31:46 +08:00
Moonchild
e6e2796541
Issue #1925 - Remove mozilla::css::Side typedef.
2024-08-05 10:30:50 +08:00
roytam1
5134d40d65
Revert "ported from mozilla: Bug 1819025 - Don't consider following join-controls when determining whether a space is collapsible. r=emilio (fad4426b7b)"
...
This reverts commit 854fac5c4c .
2024-06-28 22:10:57 +08:00
roytam1
d835b252d7
Merge remote-tracking branch 'origin/tracking' into custom
2024-06-13 11:32:08 +08:00
Daniel Holbert
0e05cb9630
[layout] Initialize PerSpanData members mBaseline and mReflowInput.
...
We null-initialize all of the other pointer members in NewPerSpanData; we should
do the same for these ones, for consistency & robustness.
(In practice, the callers end up initializing these members before reading them
anyway, so it's been benign that we weren't initializing them. But better for
safety & futureproofing to have them reliably initialized.)
2024-06-13 11:31:46 +08:00
roytam1
36bc963804
layout: fix corrupted unicode in comments, no code change
2024-06-11 10:43:29 +08:00
roytam1
854fac5c4c
ported from mozilla: Bug 1819025 - Don't consider following join-controls when determining whether a space is collapsible. r=emilio (fad4426b7b)
2024-06-08 12:10:00 +08:00
Moonchild
79c7489bb0
Issue #2472 - Part 3: Refactor Fullscreen stack to Top Layer stack
...
Fullscreen stack isn't part of the spec anymore; it's been changed to a more
generic version called Top Layer stack, which is being used by both full-screen
APIs and dialog elements.
This patch refactors it to Top Layer stack so that it can be reused for dialog
elements.
Top Layer stack spec: https://fullscreen.spec.whatwg.org/#new-stacking-layer
2024-05-08 09:55:18 +08:00
FranklinDM
6803c1f710
Issue #2488 - Part 4: Remove the RestyleManagerHandle smart pointer class
2024-04-02 22:50:07 +08:00
FranklinDM
4bf43b8fb4
Issue #2488 - Part 3: Remove the StyleSetHandle smart pointer class
2024-04-02 22:49:48 +08:00
FranklinDM
d6852b3170
Issue #2112 - Part 10: Remove remaining Stylo/Servo includes and code
...
Some classes have been marked for removal/merging, macros used for forwarding/casting were moved to DeprecatedUtils.h.
2024-04-02 22:44:24 +08:00
FranklinDM
10bf8705d0
Issue #2112 - Part 6: Remove IsStyledByServo function and callers
2024-04-02 22:41:54 +08:00
FranklinDM
a93a7bed47
Issue #2112 - Part 5: Remove Servo from forwarding code used by magic pointer classes
2024-04-02 22:41:34 +08:00
Eitan Isaacson
2eea07fc65
[layout] Process pairs in coord list in PolyArea.
...
Range -1 assures the array is even with a step size of 2, avoiding lone
value processing.
2024-02-23 10:52:22 +08:00
Moonchild
47ebb88310
Issue #2388 - Part 5: Make Selection::ToString flush frames
2024-01-18 10:16:36 +08:00
Moonchild
4a438e6607
Issue #2388 - Part 4: Align focus behavior more with Blink/Gecko
2024-01-18 10:16:05 +08:00
Moonchild
681193a256
Issue #2388 - Part 2: move focus at every selection change when it's called by JS
2024-01-18 10:15:43 +08:00
Moonchild
a83e4b6a34
Issue #2388 - Part 1: Mark Selection as "called by JS" when caused by a JS call to the selection API
2024-01-18 10:15:26 +08:00
Moonchild
8fe53f59d0
[layout] Always check against fragment length in nsTextFrame
2023-12-21 10:16:53 +08:00