Below are the build errors fixed here.
layout/svg/SVGFEUnstyledLeafFrame.cpp:75:33: error: no type named 'SVGFEUnstyledElement' in namespace 'mozilla::dom'
* Fixed this by including SVGFilters.h (which defines this type).
layout/svg/SVGFEContainerFrame.cpp:83:12: error: unknown type name 'SVGFE'; did you mean 'dom::SVGFE'?
layout/svg/SVGFELeafFrame.cpp:80:12: error: unknown type name 'SVGFE'; did you mean 'dom::SVGFE'?
* Fixed these with a 'using' statement for the namespace.
layout/svg/SVGGFrame.cpp:34:32: error: unknown type name 'SVGElement'
* Fixed by including this type's header.
layout/svg/FilterInstance.cpp:873:9: error: use of undeclared identifier 'nsLayoutUtils'
layout/svg/SVGOuterSVGFrame.cpp:623:29: error: incomplete type 'nsLayoutUtils' named in nested name specifier
layout/svg/SVGUseFrame.cpp:84:5: error: use of undeclared identifier 'nsLayoutUtils
layout/svg/SVGViewportFrame.cpp:207:9: error: use of undeclared identifier 'nsLayoutUtils'
* Fixed these by including this header.
layout/svg/SVGOuterSVGFrame.cpp:88:20: error: unused function 'DependsOnIntrinsicSize' [-Werror,-Wunused-function]
* Fixed by removing the unused function.
layout/svg/SVGStopFrame.cpp:86:21: error: unknown type name 'SVGGradientFrame'
* Fixed this by including this header.
Differential Revision: https://phabricator.services.mozilla.com/D138187
Build errors being fixed here:
layout/xul/nsDeckFrame.cpp:164:43: error: unknown type name 'nsSetAttrRunnable'
layout/xul/nsMenuBarListener.cpp:45:7: error: cannot initialize a member subobject of type 'mozilla::dom::EventTarget *' with an rvalue of type 'nsINode::Document *' (aka 'mozilla::dom::Document *')
(...where "Document" is not defined; this patch includes the header that defines it, which fixes this.)
layout/xul/nsBoxFrame.cpp:270:10: error: 'return' will never be executed [-Werror,-Wunreachable-code-return]
dist/include/nsIRollupListener.h:36:38: error: no type named 'LayoutDeviceIntPoint' in namespace 'mozilla'
(For this error, this patch is changing a header outside of layout/xul, but
it's still required in order for layout/xul to build properly, since it's
#included by layout/xul/nsXULPopupManager.cpp (indirectly, via its .h file).
Differential Revision: https://phabricator.services.mozilla.com/D138092
We use a HashMap to keep the ScrollTimeline, and use scroll-direction as
the key, so a specific Element and a fixed scroll direction map to a specific
ScrollTimeline object. This means a maximum of one ScrollTimeline objects per
@scroll-timeline declaration.
If @scroll-timeline rule gets updated, we rebuild all the CSS
animations, and then re-check their ScrollTimeline objects. If there are
any unused old ScrollTimeline objects, their ref-counts will be zero
because only Animation object holds the strong reference,
so they will be removed from the associated ScrollTimelineSet and be
deleted automatically.
Note: We may have to update this once we support more descriptors in
@scroll-timeline. However, the syntax update is to obsolute @scroll-timeline,
so we don't have to address too many cases for now. This should be enough.
This is an internal optimization, and we can probably just rely on the existing
WPTs to test this without any memory leaks.
Differential Revision: https://phabricator.services.mozilla.com/D137236
Currently using the pricinpal of InternalRequest to create the channel for NavigationPreload.
However, it is not a correct principal and makes NavigationPreload stop with channel security checking.
Instead of using the principal of InternalRequest, this patch uses the loadingPrincipal of InterceptedHttpChannel to create the channel.
Differential Revision: https://phabricator.services.mozilla.com/D137594
isTopLevel is used for ENV_TYPE_CONTENT_SCRIPT to let embedders know if an
iframe is sending messages to the app. For extension environments we don't need
this extra check so we can always set the value to true.
Differential Revision: https://phabricator.services.mozilla.com/D137776
This adds a new `check-umask` command to `TestAUSHelper`. For
convenience, we invoke the new command with the umask from before the
update but have the command output its current umask (i.e., from when
it is launched). This allows to reuse the existing `checkCallbackLog`
function, which verifies that the arguments and the callback log
output are the same. The callback log file is the given argument, so
we prefix with "umask" to avoid conflicting with existing numeric
files and directories in the test data.
Differential Revision: https://phabricator.services.mozilla.com/D133804