From 26a029d407be480d791972afb5975cf62c9360a6 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 02:47:55 +0200 Subject: Adding upstream version 124.0.1. Signed-off-by: Daniel Baumann --- .../extensions/webrequest/StreamFilterEvents.cpp | 53 ++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 toolkit/components/extensions/webrequest/StreamFilterEvents.cpp (limited to 'toolkit/components/extensions/webrequest/StreamFilterEvents.cpp') diff --git a/toolkit/components/extensions/webrequest/StreamFilterEvents.cpp b/toolkit/components/extensions/webrequest/StreamFilterEvents.cpp new file mode 100644 index 0000000000..02eaf80f49 --- /dev/null +++ b/toolkit/components/extensions/webrequest/StreamFilterEvents.cpp @@ -0,0 +1,53 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2; -*- */ +/* vim: set ts=8 sts=2 et sw=2 tw=80: */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "mozilla/extensions/StreamFilterEvents.h" + +namespace mozilla { +namespace extensions { + +NS_IMPL_CYCLE_COLLECTION_CLASS(StreamFilterDataEvent) + +NS_IMPL_ADDREF_INHERITED(StreamFilterDataEvent, Event) +NS_IMPL_RELEASE_INHERITED(StreamFilterDataEvent, Event) + +NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN_INHERITED(StreamFilterDataEvent, Event) +NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END + +NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INHERITED(StreamFilterDataEvent, Event) + NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mData) +NS_IMPL_CYCLE_COLLECTION_TRACE_END + +NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(StreamFilterDataEvent, Event) + tmp->mData = nullptr; +NS_IMPL_CYCLE_COLLECTION_UNLINK_END + +NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(StreamFilterDataEvent) +NS_INTERFACE_MAP_END_INHERITING(Event) + +/* static */ +already_AddRefed StreamFilterDataEvent::Constructor( + dom::EventTarget* aEventTarget, const nsAString& aType, + const dom::StreamFilterDataEventInit& aParam) { + RefPtr event = new StreamFilterDataEvent(aEventTarget); + + bool trusted = event->Init(aEventTarget); + event->InitEvent(aType, aParam.mBubbles, aParam.mCancelable); + event->SetTrusted(trusted); + event->SetComposed(aParam.mComposed); + + event->SetData(aParam.mData); + + return event.forget(); +} + +JSObject* StreamFilterDataEvent::WrapObjectInternal( + JSContext* aCx, JS::Handle aGivenProto) { + return dom::StreamFilterDataEvent_Binding::Wrap(aCx, this, aGivenProto); +} + +} // namespace extensions +} // namespace mozilla -- cgit v1.2.3