Bug 1855427: The DOMLinkRemoved chrome event is not used anywhere. r=emilio

The event isn't dispatched correctly for DOM manipulations anymore. It is
dispatched when swapping docshells but we don't actually use this event anywhere
except tests so we might as well just remove it entirely.

Differential Revision: https://phabricator.services.mozilla.com/D192333
This commit is contained in:
Dave Townsend 2023-10-31 15:10:43 +00:00
Родитель 9ebb7f35a4
Коммит 201e447fd0
4 изменённых файлов: 1 добавлений и 30 удалений

Просмотреть файл

@ -85,7 +85,6 @@
// which are a result of swapping the docshells.
var DOMLinkListener = {
_afterFirst: false,
_removedDispatched: false,
_addedDispatched: false,
async handleEvent(aEvent) {
if (!this._afterFirst) {
@ -134,16 +133,10 @@
is(this._addedDispatched, false);
this._addedDispatched = true;
}
else {
is(this._removedDispatched, false);
this._removedDispatched = true;
}
if (this._addedDispatched && this._removedDispatched) {
if (this._addedDispatched) {
$("f1").removeEventListener("DOMLinkAdded", this);
$("f1").removeEventListener("DOMLinkRemoved", this);
$("f3").removeEventListener("DOMLinkAdded", this);
$("f3").removeEventListener("DOMLinkRemoved", this);
window.close();
SimpleTest.finish();
}
@ -151,9 +144,7 @@
};
$("f1").addEventListener("DOMLinkAdded", DOMLinkListener);
$("f1").addEventListener("DOMLinkRemoved", DOMLinkListener);
$("f3").addEventListener("DOMLinkAdded", DOMLinkListener);
$("f3").addEventListener("DOMLinkRemoved", DOMLinkListener);
var linkElement = $("f1").contentDocument.createElement("link");
linkElement.setAttribute("rel", "alternate");

Просмотреть файл

@ -11827,19 +11827,6 @@ void Document::OnPageHide(bool aPersisted, EventTarget* aDispatchStartTarget,
inFrameLoaderSwap ==
(mDocumentContainer && mDocumentContainer->InFrameSwap()));
// Send out notifications that our <link> elements are detached,
// but only if this is not a full unload.
Element* root = GetRootElement();
if (aPersisted && root) {
RefPtr<nsContentList> links =
NS_GetContentList(root, kNameSpaceID_XHTML, u"link"_ns);
uint32_t linkCount = links->Length(true);
for (uint32_t i = 0; i < linkCount; ++i) {
static_cast<HTMLLinkElement*>(links->Item(i, false))->LinkRemoved();
}
}
if (mAnimationController) {
mAnimationController->OnPageHide();
}

Просмотреть файл

@ -108,10 +108,6 @@ void HTMLLinkElement::LinkAdded() {
CreateAndDispatchEvent(u"DOMLinkAdded"_ns);
}
void HTMLLinkElement::LinkRemoved() {
CreateAndDispatchEvent(u"DOMLinkRemoved"_ns);
}
void HTMLLinkElement::UnbindFromTree(bool aNullParent) {
CancelDNSPrefetch(*this);
CancelPrefetchOrPreload();
@ -130,8 +126,6 @@ void HTMLLinkElement::UnbindFromTree(bool aNullParent) {
eIgnoreCase)) {
oldDoc->LocalizationLinkRemoved(this);
}
CreateAndDispatchEvent(u"DOMLinkRemoved"_ns);
}
nsGenericHTMLElement::UnbindFromTree(aNullParent);

Просмотреть файл

@ -40,7 +40,6 @@ class HTMLLinkElement final : public nsGenericHTMLElement,
NS_DECL_ADDSIZEOFEXCLUDINGTHIS
void LinkAdded();
void LinkRemoved();
// nsINode
nsresult Clone(dom::NodeInfo*, nsINode** aResult) const override;