mirror of
https://github.com/roytam1/palemoon27.git
synced 2026-05-26 13:23:07 +00:00
import changes from `dev' branch of rmottola/Arctic-Fox:
- fix patch ordering coming from PM repo (3a8768f44) - Bug 1119074 - If we're stopping event propagation from XUL popups, also stop them from crossing process boundaries r=smaug,felipe (965e2193e) - Bug 1082145 - |js::WatchGuts| can leak |wpmap|. r=erahm (12c86f3d3) - No Bug - Improve Interpreter stack accessor assertions. (rs=Waldo) (8ba7a702c) - Bug 874842 - Return Event instead of nsIDOMEvent (748b57fd2) - Bug 1165966 - Add test cases r=terrence (79a909d5b) - Bug 1167025: Do not mix bool and int in bitwise-or in blendpsMask; r=sunfish (f0f23c0c4) - Bug 1158323 - Make sure we set a base rect on document elements that have margins set. r=tn (c253a2ef8) - Bug 1178847 - Move the code from ChromeProcessController::InitializeRoot to APZCCallbackHelper so it can be reused in the child process. r=botond (16d539bcb) - Bug 1165966 - Add error checking when populating safepoints r=bhackett (c66d249d1) - spacing and pointer style (cddc1bac4) - Bug 1196027 - check the actual current marking mode instead of the permanent intention, r=terrence (eddcfd7fb) - Bug 1206590: Move gcWeakMapList from JSCompartment to JS::Zone. r=terrence (7e5e0d505) - Bug 1181908 part 1. Fix support for JSOP_OBJECT in scripts parsed on background threads by clearing the unboxedLayouts list on the background thread parsing compartment when merging the parse result to the target compartment. r=jandem (25c6a3b01) - Bug 1163207 - Make RematerializedFrame store the real callee. (r=shu) (ce276e91c) - Bug 1164448 - Handle unwound rectifier frames as exit frames in JitProfilingFrameIterator. r=jandem (bb639b4e2) - Bug 1164448 - Add test. r=jandem (83f5cc608) - Bug 1196497 - Don't assert that the replacer continues to pass IsArray during JSON.stringify. (If the replacer was a revocable proxy to an array, revoking the proxy would make the replacer no longer IsArray.) r=evilpie (442c3823f) - Bug 1177247 - Prevent HandlePossibleViewportChange from clobbering a restored scroll position from forward/back navigation. r=botond (4202ac757) - Bug 1182772, optimize ProcessGlobal out from CC graph (and also TabChild's EventListeners), r=mccr8 (ccb2278bf) - Bug 1139155 - Add a mechanism to know when the APZ is done processing. r=botond (17328e5be) - Bug 1171537 - Allow URIs to be the empty string in TabParent::RecvCreateWindow. r=billm. (e280e994c) - Bug 1173219 - Return nsresults from TabParent::RecvCreateWindow to make opening windows more robust. r=billm (9f0633b15) - Bug 1142817 - Use UniquePtr in testXDR_sourceMap. r=erahm (7ec437162)
This commit is contained in:
@@ -9,8 +9,8 @@
|
||||
#include "DOMError.h"
|
||||
#include "nsThreadUtils.h"
|
||||
#include "DOMCursor.h"
|
||||
#include "nsIDOMEvent.h"
|
||||
#include "mozilla/ErrorResult.h"
|
||||
#include "mozilla/dom/Event.h"
|
||||
#include "mozilla/dom/Promise.h"
|
||||
#include "mozilla/dom/ScriptSettings.h"
|
||||
|
||||
@@ -185,8 +185,7 @@ DOMRequest::FireEvent(const nsAString& aType, bool aBubble, bool aCancelable)
|
||||
return;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
nsresult rv = event->InitEvent(aType, aBubble, aCancelable);
|
||||
if (NS_FAILED(rv)) {
|
||||
return;
|
||||
|
||||
+10
-32
@@ -847,12 +847,7 @@ EventSource::AnnounceConnection()
|
||||
return;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
rv = NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
if (NS_FAILED(rv)) {
|
||||
NS_WARNING("Failed to create the open event!!!");
|
||||
return;
|
||||
}
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
|
||||
// it doesn't bubble, and it isn't cancelable
|
||||
rv = event->InitEvent(NS_LITERAL_STRING("open"), false, false);
|
||||
@@ -912,12 +907,7 @@ EventSource::ReestablishConnection()
|
||||
return;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
rv = NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
if (NS_FAILED(rv)) {
|
||||
NS_WARNING("Failed to create the error event!!!");
|
||||
return;
|
||||
}
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
|
||||
// it doesn't bubble, and it isn't cancelable
|
||||
rv = event->InitEvent(NS_LITERAL_STRING("error"), false, false);
|
||||
@@ -1068,12 +1058,7 @@ EventSource::FailConnection()
|
||||
return;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
rv = NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
if (NS_FAILED(rv)) {
|
||||
NS_WARNING("Failed to create the error event!!!");
|
||||
return;
|
||||
}
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
|
||||
// it doesn't bubble, and it isn't cancelable
|
||||
rv = event->InitEvent(NS_LITERAL_STRING("error"), false, false);
|
||||
@@ -1236,27 +1221,20 @@ EventSource::DispatchAllMessageEvents()
|
||||
// create an event that uses the MessageEvent interface,
|
||||
// which does not bubble, is not cancelable, and has no default action
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
rv = NS_NewDOMMessageEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
if (NS_FAILED(rv)) {
|
||||
NS_WARNING("Failed to create the message event!!!");
|
||||
return;
|
||||
}
|
||||
nsRefPtr<MessageEvent> event =
|
||||
NS_NewDOMMessageEvent(this, nullptr, nullptr);
|
||||
|
||||
nsCOMPtr<nsIDOMMessageEvent> messageEvent = do_QueryInterface(event);
|
||||
rv = messageEvent->InitMessageEvent(message->mEventName,
|
||||
false, false,
|
||||
jsData,
|
||||
mOrigin,
|
||||
message->mLastEventID, nullptr);
|
||||
rv = event->InitMessageEvent(message->mEventName, false, false, jsData,
|
||||
mOrigin, message->mLastEventID, nullptr);
|
||||
if (NS_FAILED(rv)) {
|
||||
NS_WARNING("Failed to init the message event!!!");
|
||||
return;
|
||||
}
|
||||
|
||||
messageEvent->SetTrusted(true);
|
||||
event->SetTrusted(true);
|
||||
|
||||
rv = DispatchDOMEvent(nullptr, event, nullptr, nullptr);
|
||||
rv = DispatchDOMEvent(nullptr, static_cast<Event*>(event), nullptr,
|
||||
nullptr);
|
||||
if (NS_FAILED(rv)) {
|
||||
NS_WARNING("Failed to dispatch the message event!!!");
|
||||
return;
|
||||
|
||||
+8
-14
@@ -14,6 +14,7 @@
|
||||
#include "mozilla/DOMEventTargetHelper.h"
|
||||
#include "mozilla/net/WebSocketChannel.h"
|
||||
#include "mozilla/dom/File.h"
|
||||
#include "mozilla/dom/MessageEvent.h"
|
||||
#include "mozilla/dom/nsCSPContext.h"
|
||||
#include "mozilla/dom/nsCSPUtils.h"
|
||||
#include "mozilla/dom/ScriptSettings.h"
|
||||
@@ -31,7 +32,6 @@
|
||||
#include "nsIURL.h"
|
||||
#include "nsIUnicodeEncoder.h"
|
||||
#include "nsThreadUtils.h"
|
||||
#include "nsIDOMMessageEvent.h"
|
||||
#include "nsIPromptFactory.h"
|
||||
#include "nsIWindowWatcher.h"
|
||||
#include "nsIPrompt.h"
|
||||
@@ -1799,9 +1799,7 @@ WebSocket::CreateAndDispatchSimpleEvent(const nsAString& aName)
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
rv = NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
|
||||
// it doesn't bubble, and it isn't cancelable
|
||||
rv = event->InitEvent(aName, false, false);
|
||||
@@ -1879,21 +1877,17 @@ WebSocket::CreateAndDispatchMessageEvent(JSContext* aCx,
|
||||
// create an event that uses the MessageEvent interface,
|
||||
// which does not bubble, is not cancelable, and has no default action
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
rv = NS_NewDOMMessageEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
nsRefPtr<MessageEvent> event = NS_NewDOMMessageEvent(this, nullptr, nullptr);
|
||||
|
||||
nsCOMPtr<nsIDOMMessageEvent> messageEvent = do_QueryInterface(event);
|
||||
rv = messageEvent->InitMessageEvent(NS_LITERAL_STRING("message"),
|
||||
false, false,
|
||||
jsData,
|
||||
mImpl->mUTF16Origin,
|
||||
EmptyString(), nullptr);
|
||||
rv = event->InitMessageEvent(NS_LITERAL_STRING("message"), false, false,
|
||||
jsData, mImpl->mUTF16Origin, EmptyString(),
|
||||
nullptr);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
|
||||
event->SetTrusted(true);
|
||||
|
||||
return DispatchDOMEvent(nullptr, event, nullptr, nullptr);
|
||||
return DispatchDOMEvent(nullptr, static_cast<Event*>(event), nullptr,
|
||||
nullptr);
|
||||
}
|
||||
|
||||
nsresult
|
||||
|
||||
@@ -30,6 +30,7 @@
|
||||
#include "nsFrameLoader.h"
|
||||
#include "mozilla/EventListenerManager.h"
|
||||
#include "mozilla/dom/Element.h"
|
||||
#include "mozilla/dom/ProcessGlobal.h"
|
||||
#include "xpcpublic.h"
|
||||
#include "nsObserverService.h"
|
||||
#include "nsFocusManager.h"
|
||||
@@ -139,6 +140,14 @@ MarkChildMessageManagers(nsIMessageBroadcaster* aMM)
|
||||
static void
|
||||
MarkMessageManagers()
|
||||
{
|
||||
if (nsFrameMessageManager::GetChildProcessManager()) {
|
||||
// ProcessGlobal's MarkForCC marks also ChildProcessManager.
|
||||
ProcessGlobal* pg = ProcessGlobal::Get();
|
||||
if (pg) {
|
||||
pg->MarkForCC();
|
||||
}
|
||||
}
|
||||
|
||||
// The global message manager only exists in the root process.
|
||||
if (!XRE_IsParentProcess()) {
|
||||
return;
|
||||
@@ -171,9 +180,6 @@ MarkMessageManagers()
|
||||
if (nsFrameMessageManager::sSameProcessParentManager) {
|
||||
nsFrameMessageManager::sSameProcessParentManager->MarkForCC();
|
||||
}
|
||||
if (nsFrameMessageManager::GetChildProcessManager()) {
|
||||
nsFrameMessageManager::GetChildProcessManager()->MarkForCC();
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
@@ -17,9 +17,9 @@ extern PRLogModuleInfo* GetDataChannelLog();
|
||||
#include "nsDOMDataChannelDeclarations.h"
|
||||
#include "nsDOMDataChannel.h"
|
||||
#include "nsIDOMDataChannel.h"
|
||||
#include "nsIDOMMessageEvent.h"
|
||||
#include "mozilla/DOMEventTargetHelper.h"
|
||||
#include "mozilla/dom/File.h"
|
||||
#include "mozilla/dom/MessageEvent.h"
|
||||
#include "mozilla/dom/ScriptSettings.h"
|
||||
|
||||
#include "nsError.h"
|
||||
@@ -401,20 +401,15 @@ nsDOMDataChannel::DoOnMessageAvailable(const nsACString& aData,
|
||||
jsData.setString(jsString);
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
rv = NS_NewDOMMessageEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
NS_ENSURE_SUCCESS(rv,rv);
|
||||
nsRefPtr<MessageEvent> event = NS_NewDOMMessageEvent(this, nullptr, nullptr);
|
||||
|
||||
nsCOMPtr<nsIDOMMessageEvent> messageEvent = do_QueryInterface(event);
|
||||
rv = messageEvent->InitMessageEvent(NS_LITERAL_STRING("message"),
|
||||
false, false,
|
||||
jsData, mOrigin, EmptyString(),
|
||||
nullptr);
|
||||
rv = event->InitMessageEvent(NS_LITERAL_STRING("message"), false, false,
|
||||
jsData, mOrigin, EmptyString(), nullptr);
|
||||
NS_ENSURE_SUCCESS(rv,rv);
|
||||
event->SetTrusted(true);
|
||||
|
||||
LOG(("%p(%p): %s - Dispatching\n",this,(void*)mDataChannel,__FUNCTION__));
|
||||
rv = DispatchDOMEvent(nullptr, event, nullptr, nullptr);
|
||||
rv = DispatchDOMEvent(nullptr, static_cast<Event*>(event), nullptr, nullptr);
|
||||
if (NS_FAILED(rv)) {
|
||||
NS_WARNING("Failed to dispatch the message event!!!");
|
||||
}
|
||||
@@ -447,9 +442,7 @@ nsDOMDataChannel::OnSimpleEvent(nsISupports* aContext, const nsAString& aName)
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
rv = NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
NS_ENSURE_SUCCESS(rv,rv);
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
|
||||
rv = event->InitEvent(aName, false, false);
|
||||
NS_ENSURE_SUCCESS(rv,rv);
|
||||
|
||||
@@ -8160,17 +8160,17 @@ nsIDocument::CreateEvent(const nsAString& aEventType, ErrorResult& rv) const
|
||||
}
|
||||
|
||||
// Create event even without presContext.
|
||||
nsCOMPtr<nsIDOMEvent> ev;
|
||||
rv = EventDispatcher::CreateEvent(const_cast<nsIDocument*>(this),
|
||||
presContext, nullptr, aEventType,
|
||||
getter_AddRefs(ev));
|
||||
nsRefPtr<Event> ev =
|
||||
EventDispatcher::CreateEvent(const_cast<nsIDocument*>(this), presContext,
|
||||
nullptr, aEventType);
|
||||
if (!ev) {
|
||||
rv.Throw(NS_ERROR_DOM_NOT_SUPPORTED_ERR);
|
||||
return nullptr;
|
||||
}
|
||||
WidgetEvent* e = ev->GetInternalNSEvent();
|
||||
e->mFlags.mBubbles = false;
|
||||
e->mFlags.mCancelable = false;
|
||||
return dont_AddRef(ev.forget().take()->InternalDOMEvent());
|
||||
return ev.forget();
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
@@ -8824,8 +8824,7 @@ nsGlobalWindow::LeaveModalState()
|
||||
inner->mLastDialogQuitTime = TimeStamp::Now();
|
||||
|
||||
if (topWin->mModalStateDepth == 0) {
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
NS_NewDOMEvent(getter_AddRefs(event), topWin, nullptr, nullptr);
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(topWin, nullptr, nullptr);
|
||||
event->InitEvent(NS_LITERAL_STRING("endmodalstate"), true, false);
|
||||
event->SetTrusted(true);
|
||||
event->GetInternalNSEvent()->mFlags.mOnlyChromeDispatch = true;
|
||||
@@ -11632,8 +11631,7 @@ nsGlobalWindow::Observe(nsISupports* aSubject, const char* aTopic,
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
nsresult rv = event->InitEvent(
|
||||
!nsCRT::strcmp(aTopic, NS_NETWORK_ACTIVITY_BLIP_UPLOAD_TOPIC)
|
||||
? NETWORK_UPLOAD_EVENT_NAME
|
||||
@@ -11669,8 +11667,7 @@ nsGlobalWindow::Observe(nsISupports* aSubject, const char* aTopic,
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
nsresult rv = event->InitEvent(NS_LITERAL_STRING("languagechange"), false, false);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
|
||||
|
||||
@@ -477,16 +477,15 @@ nsPerformance::Timing()
|
||||
void
|
||||
nsPerformance::DispatchBufferFullEvent()
|
||||
{
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
nsresult rv = NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
if (NS_SUCCEEDED(rv)) {
|
||||
// it bubbles, and it isn't cancelable
|
||||
rv = event->InitEvent(NS_LITERAL_STRING("resourcetimingbufferfull"), true, false);
|
||||
if (NS_SUCCEEDED(rv)) {
|
||||
event->SetTrusted(true);
|
||||
DispatchDOMEvent(nullptr, event, nullptr, nullptr);
|
||||
}
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
// it bubbles, and it isn't cancelable
|
||||
nsresult rv = event->InitEvent(NS_LITERAL_STRING("resourcetimingbufferfull"),
|
||||
true, false);
|
||||
if (NS_FAILED(rv)) {
|
||||
return;
|
||||
}
|
||||
event->SetTrusted(true);
|
||||
DispatchDOMEvent(nullptr, event, nullptr, nullptr);
|
||||
}
|
||||
|
||||
nsPerformanceNavigation*
|
||||
|
||||
@@ -1468,12 +1468,8 @@ nsXMLHttpRequest::GetLoadGroup() const
|
||||
nsresult
|
||||
nsXMLHttpRequest::CreateReadystatechangeEvent(nsIDOMEvent** aDOMEvent)
|
||||
{
|
||||
nsresult rv = EventDispatcher::CreateEvent(this, nullptr, nullptr,
|
||||
NS_LITERAL_STRING("Events"),
|
||||
aDOMEvent);
|
||||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
event.forget(aDOMEvent);
|
||||
|
||||
(*aDOMEvent)->InitEvent(NS_LITERAL_STRING(READYSTATE_STR),
|
||||
false, false);
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
#include "mozilla/dom/BluetoothDiscoveryStateChangedEvent.h"
|
||||
#include "mozilla/dom/BluetoothStatusChangedEvent.h"
|
||||
#include "mozilla/dom/ContentChild.h"
|
||||
#include "mozilla/dom/Event.h"
|
||||
#include "mozilla/dom/File.h"
|
||||
#include "mozilla/dom/ScriptSettings.h"
|
||||
#include "mozilla/LazyIdleThread.h"
|
||||
@@ -361,11 +362,9 @@ BluetoothAdapter::Notify(const BluetoothSignal& aData)
|
||||
BluetoothStatusChangedEvent::Constructor(this, aData.name(), init);
|
||||
DispatchTrustedEvent(event);
|
||||
} else if (aData.name().EqualsLiteral(REQUEST_MEDIA_PLAYSTATUS_ID)) {
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
nsresult rv = NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
NS_ENSURE_SUCCESS_VOID(rv);
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
|
||||
rv = event->InitEvent(aData.name(), false, false);
|
||||
nsresult rv = event->InitEvent(aData.name(), false, false);
|
||||
NS_ENSURE_SUCCESS_VOID(rv);
|
||||
|
||||
DispatchTrustedEvent(event);
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
#include "mozilla/dom/BluetoothAttributeEvent.h"
|
||||
#include "mozilla/dom/BluetoothStatusChangedEvent.h"
|
||||
#include "mozilla/dom/ContentChild.h"
|
||||
#include "mozilla/dom/Event.h"
|
||||
#include "mozilla/dom/File.h"
|
||||
|
||||
#include "mozilla/dom/bluetooth/BluetoothAdapter.h"
|
||||
@@ -1220,11 +1221,9 @@ BluetoothAdapter::DispatchDeviceEvent(const nsAString& aType,
|
||||
void
|
||||
BluetoothAdapter::DispatchEmptyEvent(const nsAString& aType)
|
||||
{
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
nsresult rv = NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
NS_ENSURE_SUCCESS_VOID(rv);
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
|
||||
rv = event->InitEvent(aType, false, false);
|
||||
nsresult rv = event->InitEvent(aType, false, false);
|
||||
NS_ENSURE_SUCCESS_VOID(rv);
|
||||
|
||||
DispatchTrustedEvent(event);
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
#include "mozilla/dom/bluetooth/BluetoothTypes.h"
|
||||
#include "mozilla/dom/BluetoothGattBinding.h"
|
||||
#include "mozilla/dom/BluetoothGattCharacteristicEvent.h"
|
||||
#include "mozilla/dom/Event.h"
|
||||
#include "mozilla/dom/Promise.h"
|
||||
#include "nsServiceManagerUtils.h"
|
||||
|
||||
@@ -240,13 +241,12 @@ BluetoothGatt::UpdateConnectionState(BluetoothConnectionState aState)
|
||||
mConnectionState = aState;
|
||||
|
||||
// Dispatch connectionstatechanged event to application
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
nsresult rv = NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
NS_ENSURE_SUCCESS_VOID(rv);
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
|
||||
rv = event->InitEvent(NS_LITERAL_STRING(GATT_CONNECTION_STATE_CHANGED_ID),
|
||||
false,
|
||||
false);
|
||||
nsresult rv =
|
||||
event->InitEvent(NS_LITERAL_STRING(GATT_CONNECTION_STATE_CHANGED_ID),
|
||||
false,
|
||||
false);
|
||||
NS_ENSURE_SUCCESS_VOID(rv);
|
||||
|
||||
DispatchTrustedEvent(event);
|
||||
|
||||
@@ -102,16 +102,10 @@ DispatchCustomDOMEvent(Element* aFrameElement, const nsAString& aEventName,
|
||||
presContext = shell->GetPresContext();
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> domEvent;
|
||||
EventDispatcher::CreateEvent(aFrameElement, presContext, nullptr,
|
||||
NS_LITERAL_STRING("customevent"),
|
||||
getter_AddRefs(domEvent));
|
||||
NS_ENSURE_TRUE(domEvent, false);
|
||||
nsRefPtr<CustomEvent> event =
|
||||
NS_NewDOMCustomEvent(aFrameElement, presContext, nullptr);
|
||||
|
||||
nsCOMPtr<nsIDOMCustomEvent> customEvent = do_QueryInterface(domEvent);
|
||||
NS_ENSURE_TRUE(customEvent, false);
|
||||
ErrorResult res;
|
||||
CustomEvent* event = static_cast<CustomEvent*>(customEvent.get());
|
||||
event->InitCustomEvent(cx,
|
||||
aEventName,
|
||||
/* bubbles = */ true,
|
||||
@@ -121,12 +115,13 @@ DispatchCustomDOMEvent(Element* aFrameElement, const nsAString& aEventName,
|
||||
if (res.Failed()) {
|
||||
return false;
|
||||
}
|
||||
customEvent->SetTrusted(true);
|
||||
event->SetTrusted(true);
|
||||
// Dispatch the event.
|
||||
*aStatus = nsEventStatus_eConsumeNoDefault;
|
||||
nsresult rv =
|
||||
EventDispatcher::DispatchDOMEvent(aFrameElement, nullptr,
|
||||
domEvent, presContext, aStatus);
|
||||
static_cast<Event*>(event),
|
||||
presContext, aStatus);
|
||||
return NS_SUCCEEDED(rv);
|
||||
}
|
||||
|
||||
|
||||
@@ -88,14 +88,12 @@ AnimationEvent::GetPseudoElement(nsAString& aPseudoElement)
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMAnimationEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<AnimationEvent>
|
||||
NS_NewDOMAnimationEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
InternalAnimationEvent* aEvent)
|
||||
{
|
||||
AnimationEvent* it = new AnimationEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<AnimationEvent> it =
|
||||
new AnimationEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -52,4 +52,9 @@ protected:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::AnimationEvent>
|
||||
NS_NewDOMAnimationEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalAnimationEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_AnimationEvent_h_
|
||||
|
||||
@@ -25,8 +25,9 @@ AsyncEventDispatcher::AsyncEventDispatcher(EventTarget* aTarget,
|
||||
: mTarget(aTarget)
|
||||
{
|
||||
MOZ_ASSERT(mTarget);
|
||||
EventDispatcher::CreateEvent(aTarget, nullptr, &aEvent, EmptyString(),
|
||||
getter_AddRefs(mEvent));
|
||||
nsRefPtr<Event> event =
|
||||
EventDispatcher::CreateEvent(aTarget, nullptr, &aEvent, EmptyString());
|
||||
mEvent = do_QueryInterface(event);
|
||||
NS_ASSERTION(mEvent, "Should never fail to create an event");
|
||||
mEvent->DuplicatePrivateData();
|
||||
mEvent->SetTrusted(aEvent.mFlags.mIsTrusted);
|
||||
@@ -38,15 +39,15 @@ AsyncEventDispatcher::Run()
|
||||
if (mCanceled) {
|
||||
return NS_OK;
|
||||
}
|
||||
nsCOMPtr<nsIDOMEvent> event = mEvent;
|
||||
nsRefPtr<Event> event = mEvent ? mEvent->InternalDOMEvent() : nullptr;
|
||||
if (!event) {
|
||||
NS_NewDOMEvent(getter_AddRefs(event), mTarget, nullptr, nullptr);
|
||||
event = NS_NewDOMEvent(mTarget, nullptr, nullptr);
|
||||
nsresult rv = event->InitEvent(mEventType, mBubbles, false);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
event->SetTrusted(true);
|
||||
}
|
||||
if (mOnlyChromeDispatch) {
|
||||
MOZ_ASSERT(event->InternalDOMEvent()->IsTrusted());
|
||||
MOZ_ASSERT(event->IsTrusted());
|
||||
event->GetInternalNSEvent()->mFlags.mOnlyChromeDispatch = true;
|
||||
}
|
||||
bool dummy;
|
||||
|
||||
@@ -78,16 +78,12 @@ BeforeAfterKeyboardEvent::GetEmbeddedCancelled()
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMBeforeAfterKeyboardEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<BeforeAfterKeyboardEvent>
|
||||
NS_NewDOMBeforeAfterKeyboardEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
InternalBeforeAfterKeyboardEvent* aEvent)
|
||||
{
|
||||
BeforeAfterKeyboardEvent* it =
|
||||
nsRefPtr<BeforeAfterKeyboardEvent> it =
|
||||
new BeforeAfterKeyboardEvent(aOwner, aPresContext, aEvent);
|
||||
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -43,4 +43,9 @@ public:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::BeforeAfterKeyboardEvent>
|
||||
NS_NewDOMBeforeAfterKeyboardEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalBeforeAfterKeyboardEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_BeforeAfterKeyboardEvent_h_
|
||||
|
||||
@@ -36,14 +36,12 @@ BeforeUnloadEvent::GetReturnValue(nsAString& aReturnValue)
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMBeforeUnloadEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<BeforeUnloadEvent>
|
||||
NS_NewDOMBeforeUnloadEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetEvent* aEvent)
|
||||
{
|
||||
BeforeUnloadEvent* it = new BeforeUnloadEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<BeforeUnloadEvent> it =
|
||||
new BeforeUnloadEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -47,4 +47,9 @@ protected:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::BeforeUnloadEvent>
|
||||
NS_NewDOMBeforeUnloadEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_BeforeUnloadEvent_h_
|
||||
|
||||
@@ -123,14 +123,12 @@ ClipboardEvent::GetClipboardData()
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMClipboardEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<ClipboardEvent>
|
||||
NS_NewDOMClipboardEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
InternalClipboardEvent* aEvent)
|
||||
{
|
||||
ClipboardEvent* it = new ClipboardEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<ClipboardEvent> it =
|
||||
new ClipboardEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -56,4 +56,9 @@ protected:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::ClipboardEvent>
|
||||
NS_NewDOMClipboardEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalClipboardEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_ClipboardEvent_h_
|
||||
|
||||
@@ -64,14 +64,12 @@ CommandEvent::InitCommandEvent(const nsAString& aTypeArg,
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMCommandEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<CommandEvent>
|
||||
NS_NewDOMCommandEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetCommandEvent* aEvent)
|
||||
{
|
||||
CommandEvent* it = new CommandEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<CommandEvent> it =
|
||||
new CommandEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -51,4 +51,9 @@ protected:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::CommandEvent>
|
||||
NS_NewDOMCommandEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetCommandEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_CommandEvent_h_
|
||||
|
||||
@@ -80,12 +80,12 @@ CompositionEvent::InitCompositionEvent(const nsAString& aType,
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMCompositionEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<CompositionEvent>
|
||||
NS_NewDOMCompositionEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetCompositionEvent* aEvent)
|
||||
{
|
||||
CompositionEvent* event = new CompositionEvent(aOwner, aPresContext, aEvent);
|
||||
return CallQueryInterface(event, aInstancePtrResult);
|
||||
nsRefPtr<CompositionEvent> event =
|
||||
new CompositionEvent(aOwner, aPresContext, aEvent);
|
||||
return event.forget();
|
||||
}
|
||||
|
||||
@@ -54,4 +54,9 @@ protected:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::CompositionEvent>
|
||||
NS_NewDOMCompositionEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetCompositionEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_CompositionEvent_h_
|
||||
|
||||
@@ -111,14 +111,12 @@ CustomEvent::GetDetail(JSContext* aCx,
|
||||
VariantToJsval(aCx, mDetail, aRetval);
|
||||
}
|
||||
|
||||
nsresult
|
||||
NS_NewDOMCustomEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
already_AddRefed<CustomEvent>
|
||||
NS_NewDOMCustomEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetEvent* aEvent)
|
||||
{
|
||||
CustomEvent* it = new CustomEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<CustomEvent> it =
|
||||
new CustomEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -58,4 +58,9 @@ public:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::CustomEvent>
|
||||
NS_NewDOMCustomEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetEvent* aEvent);
|
||||
|
||||
#endif // CustomEvent_h__
|
||||
|
||||
@@ -258,8 +258,7 @@ DOMEventTargetHelper::DispatchEvent(nsIDOMEvent* aEvent, bool* aRetVal)
|
||||
nsresult
|
||||
DOMEventTargetHelper::DispatchTrustedEvent(const nsAString& aEventName)
|
||||
{
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
nsresult rv = event->InitEvent(aEventName, false, false);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
|
||||
|
||||
@@ -87,15 +87,13 @@ DataContainerEvent::SetData(JSContext* aCx, const nsAString& aKey,
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMDataContainerEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<DataContainerEvent>
|
||||
NS_NewDOMDataContainerEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetEvent* aEvent)
|
||||
{
|
||||
DataContainerEvent* it = new DataContainerEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<DataContainerEvent> it =
|
||||
new DataContainerEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
|
||||
@@ -57,4 +57,9 @@ private:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::DataContainerEvent>
|
||||
NS_NewDOMDataContainerEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_DataContainerEvent_h_
|
||||
|
||||
@@ -145,16 +145,12 @@ DeviceRotationRate::~DeviceRotationRate()
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMDeviceMotionEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<DeviceMotionEvent>
|
||||
NS_NewDOMDeviceMotionEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetEvent* aEvent)
|
||||
{
|
||||
NS_ENSURE_ARG_POINTER(aInstancePtrResult);
|
||||
|
||||
DeviceMotionEvent* it = new DeviceMotionEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<DeviceMotionEvent> it =
|
||||
new DeviceMotionEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -149,4 +149,9 @@ protected:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::DeviceMotionEvent>
|
||||
NS_NewDOMDeviceMotionEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_DeviceMotionEvent_h_
|
||||
|
||||
@@ -158,12 +158,12 @@ DragEvent::Constructor(const GlobalObject& aGlobal,
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMDragEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<DragEvent>
|
||||
NS_NewDOMDragEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetDragEvent* aEvent)
|
||||
{
|
||||
DragEvent* event = new DragEvent(aOwner, aPresContext, aEvent);
|
||||
return CallQueryInterface(event, aInstancePtrResult);
|
||||
nsRefPtr<DragEvent> event =
|
||||
new DragEvent(aOwner, aPresContext, aEvent);
|
||||
return event.forget();
|
||||
}
|
||||
|
||||
@@ -61,4 +61,9 @@ protected:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::DragEvent>
|
||||
NS_NewDOMDragEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetDragEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_DragEvent_h_
|
||||
|
||||
+11
-7
@@ -481,6 +481,13 @@ Event::StopImmediatePropagation()
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
Event::StopCrossProcessForwarding()
|
||||
{
|
||||
mEvent->mFlags.mNoCrossProcessBoundaryForwarding = true;
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
Event::GetIsTrusted(bool* aIsTrusted)
|
||||
{
|
||||
@@ -1277,14 +1284,11 @@ Event::SetCancelBubble(bool aCancelBubble)
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<Event>
|
||||
NS_NewDOMEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetEvent* aEvent)
|
||||
{
|
||||
Event* it = new Event(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<Event> it = new Event(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -314,6 +314,7 @@ private:
|
||||
NS_IMETHOD GetCancelable(bool* aCancelable) override { return _to GetCancelable(aCancelable); } \
|
||||
NS_IMETHOD GetTimeStamp(DOMTimeStamp* aTimeStamp) override { return _to GetTimeStamp(aTimeStamp); } \
|
||||
NS_IMETHOD StopPropagation(void) override { return _to StopPropagation(); } \
|
||||
NS_IMETHOD StopCrossProcessForwarding(void) override { return _to StopCrossProcessForwarding(); } \
|
||||
NS_IMETHOD PreventDefault(void) override { return _to PreventDefault(); } \
|
||||
NS_IMETHOD InitEvent(const nsAString& eventTypeArg, bool canBubbleArg, bool cancelableArg) override { return _to InitEvent(eventTypeArg, canBubbleArg, cancelableArg); } \
|
||||
NS_IMETHOD GetDefaultPrevented(bool* aDefaultPrevented) override { return _to GetDefaultPrevented(aDefaultPrevented); } \
|
||||
@@ -346,4 +347,9 @@ ToCanonicalSupports(mozilla::dom::Event* e)
|
||||
return static_cast<nsIDOMEvent*>(e);
|
||||
}
|
||||
|
||||
already_AddRefed<mozilla::dom::Event>
|
||||
NS_NewDOMEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_Event_h_
|
||||
|
||||
@@ -15,13 +15,28 @@
|
||||
#include "GeckoProfiler.h"
|
||||
#include "mozilla/ContentEvents.h"
|
||||
#include "mozilla/dom/CloseEvent.h"
|
||||
#include "mozilla/dom/CustomEvent.h"
|
||||
#include "mozilla/dom/DeviceOrientationEvent.h"
|
||||
#include "mozilla/dom/EventTarget.h"
|
||||
#include "mozilla/dom/FocusEvent.h"
|
||||
#include "mozilla/dom/HashChangeEvent.h"
|
||||
#include "mozilla/dom/InputEvent.h"
|
||||
#include "mozilla/dom/MessageEvent.h"
|
||||
#include "mozilla/dom/MouseScrollEvent.h"
|
||||
#include "mozilla/dom/MutationEvent.h"
|
||||
#include "mozilla/dom/NotifyPaintEvent.h"
|
||||
#include "mozilla/dom/PageTransitionEvent.h"
|
||||
#include "mozilla/dom/PointerEvent.h"
|
||||
#include "mozilla/dom/PopStateEvent.h"
|
||||
#include "mozilla/dom/ScrollAreaEvent.h"
|
||||
#include "mozilla/dom/SimpleGestureEvent.h"
|
||||
#include "mozilla/dom/StorageEvent.h"
|
||||
#include "mozilla/dom/SVGZoomEvent.h"
|
||||
#include "mozilla/dom/TimeEvent.h"
|
||||
#include "mozilla/dom/TouchEvent.h"
|
||||
#include "mozilla/dom/TransitionEvent.h"
|
||||
#include "mozilla/dom/WheelEvent.h"
|
||||
#include "mozilla/dom/XULCommandEvent.h"
|
||||
#include "mozilla/EventDispatcher.h"
|
||||
#include "mozilla/EventListenerManager.h"
|
||||
#include "mozilla/InternalMutationEvent.h"
|
||||
@@ -705,85 +720,76 @@ EventDispatcher::DispatchDOMEvent(nsISupports* aTarget,
|
||||
return NS_ERROR_ILLEGAL_VALUE;
|
||||
}
|
||||
|
||||
/* static */ nsresult
|
||||
/* static */ already_AddRefed<dom::Event>
|
||||
EventDispatcher::CreateEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetEvent* aEvent,
|
||||
const nsAString& aEventType,
|
||||
nsIDOMEvent** aDOMEvent)
|
||||
const nsAString& aEventType)
|
||||
{
|
||||
*aDOMEvent = nullptr;
|
||||
|
||||
if (aEvent) {
|
||||
switch(aEvent->mClass) {
|
||||
case eMutationEventClass:
|
||||
return NS_NewDOMMutationEvent(aDOMEvent, aOwner, aPresContext,
|
||||
return NS_NewDOMMutationEvent(aOwner, aPresContext,
|
||||
aEvent->AsMutationEvent());
|
||||
case eGUIEventClass:
|
||||
case eScrollPortEventClass:
|
||||
case eUIEventClass:
|
||||
return NS_NewDOMUIEvent(aDOMEvent, aOwner, aPresContext,
|
||||
aEvent->AsGUIEvent());
|
||||
return NS_NewDOMUIEvent(aOwner, aPresContext, aEvent->AsGUIEvent());
|
||||
case eScrollAreaEventClass:
|
||||
return NS_NewDOMScrollAreaEvent(aDOMEvent, aOwner, aPresContext,
|
||||
return NS_NewDOMScrollAreaEvent(aOwner, aPresContext,
|
||||
aEvent->AsScrollAreaEvent());
|
||||
case eKeyboardEventClass:
|
||||
return NS_NewDOMKeyboardEvent(aDOMEvent, aOwner, aPresContext,
|
||||
return NS_NewDOMKeyboardEvent(aOwner, aPresContext,
|
||||
aEvent->AsKeyboardEvent());
|
||||
case eBeforeAfterKeyboardEventClass:
|
||||
return NS_NewDOMBeforeAfterKeyboardEvent(aDOMEvent, aOwner, aPresContext,
|
||||
return NS_NewDOMBeforeAfterKeyboardEvent(aOwner, aPresContext,
|
||||
aEvent->AsBeforeAfterKeyboardEvent());
|
||||
case eCompositionEventClass:
|
||||
return NS_NewDOMCompositionEvent(aDOMEvent, aOwner, aPresContext,
|
||||
return NS_NewDOMCompositionEvent(aOwner, aPresContext,
|
||||
aEvent->AsCompositionEvent());
|
||||
case eMouseEventClass:
|
||||
return NS_NewDOMMouseEvent(aDOMEvent, aOwner, aPresContext,
|
||||
aEvent->AsMouseEvent());
|
||||
return NS_NewDOMMouseEvent(aOwner, aPresContext, aEvent->AsMouseEvent());
|
||||
case eFocusEventClass:
|
||||
return NS_NewDOMFocusEvent(aDOMEvent, aOwner, aPresContext,
|
||||
aEvent->AsFocusEvent());
|
||||
return NS_NewDOMFocusEvent(aOwner, aPresContext, aEvent->AsFocusEvent());
|
||||
case eMouseScrollEventClass:
|
||||
return NS_NewDOMMouseScrollEvent(aDOMEvent, aOwner, aPresContext,
|
||||
return NS_NewDOMMouseScrollEvent(aOwner, aPresContext,
|
||||
aEvent->AsMouseScrollEvent());
|
||||
case eWheelEventClass:
|
||||
return NS_NewDOMWheelEvent(aDOMEvent, aOwner, aPresContext,
|
||||
aEvent->AsWheelEvent());
|
||||
return NS_NewDOMWheelEvent(aOwner, aPresContext, aEvent->AsWheelEvent());
|
||||
case eEditorInputEventClass:
|
||||
return NS_NewDOMInputEvent(aDOMEvent, aOwner, aPresContext,
|
||||
return NS_NewDOMInputEvent(aOwner, aPresContext,
|
||||
aEvent->AsEditorInputEvent());
|
||||
case eDragEventClass:
|
||||
return NS_NewDOMDragEvent(aDOMEvent, aOwner, aPresContext,
|
||||
aEvent->AsDragEvent());
|
||||
return NS_NewDOMDragEvent(aOwner, aPresContext, aEvent->AsDragEvent());
|
||||
case eClipboardEventClass:
|
||||
return NS_NewDOMClipboardEvent(aDOMEvent, aOwner, aPresContext,
|
||||
return NS_NewDOMClipboardEvent(aOwner, aPresContext,
|
||||
aEvent->AsClipboardEvent());
|
||||
case eSVGZoomEventClass:
|
||||
return NS_NewDOMSVGZoomEvent(aDOMEvent, aOwner, aPresContext,
|
||||
return NS_NewDOMSVGZoomEvent(aOwner, aPresContext,
|
||||
aEvent->AsSVGZoomEvent());
|
||||
case eSMILTimeEventClass:
|
||||
return NS_NewDOMTimeEvent(aDOMEvent, aOwner, aPresContext,
|
||||
return NS_NewDOMTimeEvent(aOwner, aPresContext,
|
||||
aEvent->AsSMILTimeEvent());
|
||||
case eCommandEventClass:
|
||||
return NS_NewDOMCommandEvent(aDOMEvent, aOwner, aPresContext,
|
||||
return NS_NewDOMCommandEvent(aOwner, aPresContext,
|
||||
aEvent->AsCommandEvent());
|
||||
case eSimpleGestureEventClass:
|
||||
return NS_NewDOMSimpleGestureEvent(aDOMEvent, aOwner, aPresContext,
|
||||
return NS_NewDOMSimpleGestureEvent(aOwner, aPresContext,
|
||||
aEvent->AsSimpleGestureEvent());
|
||||
case ePointerEventClass:
|
||||
return NS_NewDOMPointerEvent(aDOMEvent, aOwner, aPresContext,
|
||||
return NS_NewDOMPointerEvent(aOwner, aPresContext,
|
||||
aEvent->AsPointerEvent());
|
||||
case eTouchEventClass:
|
||||
return NS_NewDOMTouchEvent(aDOMEvent, aOwner, aPresContext,
|
||||
aEvent->AsTouchEvent());
|
||||
return NS_NewDOMTouchEvent(aOwner, aPresContext, aEvent->AsTouchEvent());
|
||||
case eTransitionEventClass:
|
||||
return NS_NewDOMTransitionEvent(aDOMEvent, aOwner, aPresContext,
|
||||
return NS_NewDOMTransitionEvent(aOwner, aPresContext,
|
||||
aEvent->AsTransitionEvent());
|
||||
case eAnimationEventClass:
|
||||
return NS_NewDOMAnimationEvent(aDOMEvent, aOwner, aPresContext,
|
||||
return NS_NewDOMAnimationEvent(aOwner, aPresContext,
|
||||
aEvent->AsAnimationEvent());
|
||||
default:
|
||||
// For all other types of events, create a vanilla event object.
|
||||
return NS_NewDOMEvent(aDOMEvent, aOwner, aPresContext, aEvent);
|
||||
return NS_NewDOMEvent(aOwner, aPresContext, aEvent);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -792,106 +798,94 @@ EventDispatcher::CreateEvent(EventTarget* aOwner,
|
||||
if (aEventType.LowerCaseEqualsLiteral("mouseevent") ||
|
||||
aEventType.LowerCaseEqualsLiteral("mouseevents") ||
|
||||
aEventType.LowerCaseEqualsLiteral("popupevents"))
|
||||
return NS_NewDOMMouseEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMMouseEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("mousescrollevents"))
|
||||
return NS_NewDOMMouseScrollEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMMouseScrollEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("dragevent") ||
|
||||
aEventType.LowerCaseEqualsLiteral("dragevents"))
|
||||
return NS_NewDOMDragEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMDragEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("keyboardevent") ||
|
||||
aEventType.LowerCaseEqualsLiteral("keyevents"))
|
||||
return NS_NewDOMKeyboardEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMKeyboardEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("compositionevent") ||
|
||||
aEventType.LowerCaseEqualsLiteral("textevent") ||
|
||||
aEventType.LowerCaseEqualsLiteral("textevents")) {
|
||||
return NS_NewDOMCompositionEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMCompositionEvent(aOwner, aPresContext, nullptr);
|
||||
}
|
||||
if (aEventType.LowerCaseEqualsLiteral("mutationevent") ||
|
||||
aEventType.LowerCaseEqualsLiteral("mutationevents"))
|
||||
return NS_NewDOMMutationEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMMutationEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("deviceorientationevent")) {
|
||||
DeviceOrientationEventInit init;
|
||||
nsRefPtr<DeviceOrientationEvent> event =
|
||||
DeviceOrientationEvent::Constructor(aOwner, EmptyString(), init);
|
||||
event.forget(aDOMEvent);
|
||||
return NS_OK;
|
||||
return DeviceOrientationEvent::Constructor(aOwner, EmptyString(), init);
|
||||
}
|
||||
if (aEventType.LowerCaseEqualsLiteral("devicemotionevent"))
|
||||
return NS_NewDOMDeviceMotionEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMDeviceMotionEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("uievent") ||
|
||||
aEventType.LowerCaseEqualsLiteral("uievents"))
|
||||
return NS_NewDOMUIEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMUIEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("event") ||
|
||||
aEventType.LowerCaseEqualsLiteral("events") ||
|
||||
aEventType.LowerCaseEqualsLiteral("htmlevents") ||
|
||||
aEventType.LowerCaseEqualsLiteral("svgevent") ||
|
||||
aEventType.LowerCaseEqualsLiteral("svgevents"))
|
||||
return NS_NewDOMEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("svgzoomevent") ||
|
||||
aEventType.LowerCaseEqualsLiteral("svgzoomevents"))
|
||||
return NS_NewDOMSVGZoomEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMSVGZoomEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("timeevent") ||
|
||||
aEventType.LowerCaseEqualsLiteral("timeevents"))
|
||||
return NS_NewDOMTimeEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMTimeEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("xulcommandevent") ||
|
||||
aEventType.LowerCaseEqualsLiteral("xulcommandevents"))
|
||||
return NS_NewDOMXULCommandEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMXULCommandEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("commandevent") ||
|
||||
aEventType.LowerCaseEqualsLiteral("commandevents"))
|
||||
return NS_NewDOMCommandEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMCommandEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("datacontainerevent") ||
|
||||
aEventType.LowerCaseEqualsLiteral("datacontainerevents"))
|
||||
return NS_NewDOMDataContainerEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMDataContainerEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("messageevent"))
|
||||
return NS_NewDOMMessageEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMMessageEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("notifypaintevent"))
|
||||
return NS_NewDOMNotifyPaintEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMNotifyPaintEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("simplegestureevent"))
|
||||
return NS_NewDOMSimpleGestureEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMSimpleGestureEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("beforeunloadevent"))
|
||||
return NS_NewDOMBeforeUnloadEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMBeforeUnloadEvent(aOwner, aPresContext, nullptr);
|
||||
// XXXkhuey this is broken
|
||||
if (aEventType.LowerCaseEqualsLiteral("pagetransition")) {
|
||||
PageTransitionEventInit init;
|
||||
nsRefPtr<PageTransitionEvent> event =
|
||||
PageTransitionEvent::Constructor(aOwner, EmptyString(), init);
|
||||
event.forget(aDOMEvent);
|
||||
return NS_OK;
|
||||
return PageTransitionEvent::Constructor(aOwner, EmptyString(), init);
|
||||
}
|
||||
if (aEventType.LowerCaseEqualsLiteral("scrollareaevent"))
|
||||
return NS_NewDOMScrollAreaEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMScrollAreaEvent(aOwner, aPresContext, nullptr);
|
||||
// XXXkhuey Chrome supports popstateevent here, even though it provides no
|
||||
// initPopStateEvent method. This is nuts ... but copying it is unlikely to
|
||||
// break the web.
|
||||
if (aEventType.LowerCaseEqualsLiteral("popstateevent")) {
|
||||
AutoJSContext cx;
|
||||
RootedDictionary<PopStateEventInit> init(cx);
|
||||
nsRefPtr<PopStateEvent> event =
|
||||
PopStateEvent::Constructor(aOwner, EmptyString(), init);
|
||||
event.forget(aDOMEvent);
|
||||
return NS_OK;
|
||||
return PopStateEvent::Constructor(aOwner, EmptyString(), init);
|
||||
}
|
||||
if (aEventType.LowerCaseEqualsLiteral("touchevent") &&
|
||||
TouchEvent::PrefEnabled())
|
||||
return NS_NewDOMTouchEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMTouchEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("hashchangeevent")) {
|
||||
HashChangeEventInit init;
|
||||
nsRefPtr<HashChangeEvent> event =
|
||||
HashChangeEvent::Constructor(aOwner, EmptyString(), init);
|
||||
event.forget(aDOMEvent);
|
||||
return NS_OK;
|
||||
return HashChangeEvent::Constructor(aOwner, EmptyString(), init);
|
||||
}
|
||||
if (aEventType.LowerCaseEqualsLiteral("customevent"))
|
||||
return NS_NewDOMCustomEvent(aDOMEvent, aOwner, aPresContext, nullptr);
|
||||
return NS_NewDOMCustomEvent(aOwner, aPresContext, nullptr);
|
||||
if (aEventType.LowerCaseEqualsLiteral("storageevent")) {
|
||||
return NS_NewDOMStorageEvent(aDOMEvent, aOwner);
|
||||
return NS_NewDOMStorageEvent(aOwner);
|
||||
}
|
||||
|
||||
|
||||
// NEW EVENT TYPES SHOULD NOT BE ADDED HERE; THEY SHOULD USE ONLY EVENT
|
||||
// CONSTRUCTORS
|
||||
|
||||
return NS_ERROR_DOM_NOT_SUPPORTED_ERR;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
} // namespace mozilla
|
||||
|
||||
@@ -23,6 +23,7 @@ template<class E> class nsCOMArray;
|
||||
|
||||
namespace mozilla {
|
||||
namespace dom {
|
||||
class Event;
|
||||
class EventTarget;
|
||||
} // namespace dom
|
||||
|
||||
@@ -272,13 +273,12 @@ public:
|
||||
nsEventStatus* aEventStatus);
|
||||
|
||||
/**
|
||||
* Creates a DOM Event.
|
||||
* Creates a DOM Event. Returns null if the event type is unsupported.
|
||||
*/
|
||||
static nsresult CreateEvent(dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetEvent* aEvent,
|
||||
const nsAString& aEventType,
|
||||
nsIDOMEvent** aDOMEvent);
|
||||
static already_AddRefed<dom::Event> CreateEvent(dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetEvent* aEvent,
|
||||
const nsAString& aEventType);
|
||||
|
||||
/**
|
||||
* Called at shutting down.
|
||||
|
||||
@@ -1106,8 +1106,10 @@ EventListenerManager::HandleEventInternal(nsPresContext* aPresContext,
|
||||
// This is tiny bit slow, but happens only once per event.
|
||||
nsCOMPtr<EventTarget> et =
|
||||
do_QueryInterface(aEvent->originalTarget);
|
||||
EventDispatcher::CreateEvent(et, aPresContext,
|
||||
aEvent, EmptyString(), aDOMEvent);
|
||||
nsRefPtr<Event> event = EventDispatcher::CreateEvent(et, aPresContext,
|
||||
aEvent,
|
||||
EmptyString());
|
||||
event.forget(aDOMEvent);
|
||||
}
|
||||
if (*aDOMEvent) {
|
||||
if (!aEvent->currentTarget) {
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
#include "mozilla/TextEvents.h"
|
||||
#include "mozilla/TouchEvents.h"
|
||||
#include "mozilla/dom/ContentChild.h"
|
||||
#include "mozilla/dom/DragEvent.h"
|
||||
#include "mozilla/dom/Event.h"
|
||||
#include "mozilla/dom/TabParent.h"
|
||||
#include "mozilla/dom/UIEvent.h"
|
||||
@@ -54,7 +55,6 @@
|
||||
#include "nsIObserverService.h"
|
||||
#include "nsIDocShell.h"
|
||||
#include "nsIDOMWheelEvent.h"
|
||||
#include "nsIDOMDragEvent.h"
|
||||
#include "nsIDOMUIEvent.h"
|
||||
#include "nsIMozBrowserFrame.h"
|
||||
|
||||
@@ -1894,13 +1894,8 @@ EventStateManager::DoDefaultDragStart(nsPresContext* aPresContext,
|
||||
// XXXndeakin don't really want to create a new drag DOM event
|
||||
// here, but we need something to pass to the InvokeDragSession
|
||||
// methods.
|
||||
nsCOMPtr<nsIDOMEvent> domEvent;
|
||||
NS_NewDOMDragEvent(getter_AddRefs(domEvent), dragTarget,
|
||||
aPresContext, aDragEvent);
|
||||
|
||||
nsCOMPtr<nsIDOMDragEvent> domDragEvent = do_QueryInterface(domEvent);
|
||||
// if creating a drag event failed, starting a drag session will
|
||||
// just fail.
|
||||
nsRefPtr<DragEvent> event =
|
||||
NS_NewDOMDragEvent(dragTarget, aPresContext, aDragEvent);
|
||||
|
||||
// Use InvokeDragSessionWithSelection if a selection is being dragged,
|
||||
// such that the image can be generated from the selected text. However,
|
||||
@@ -1908,8 +1903,7 @@ EventStateManager::DoDefaultDragStart(nsPresContext* aPresContext,
|
||||
// other than a selection is being dragged.
|
||||
if (!dragImage && aSelection) {
|
||||
dragService->InvokeDragSessionWithSelection(aSelection, transArray,
|
||||
action, domDragEvent,
|
||||
aDataTransfer);
|
||||
action, event, aDataTransfer);
|
||||
}
|
||||
else {
|
||||
// if dragging within a XUL tree and no custom drag image was
|
||||
@@ -1935,8 +1929,7 @@ EventStateManager::DoDefaultDragStart(nsPresContext* aPresContext,
|
||||
region, action,
|
||||
dragImage ? dragImage->AsDOMNode() :
|
||||
nullptr,
|
||||
imageX,
|
||||
imageY, domDragEvent,
|
||||
imageX, imageY, event,
|
||||
aDataTransfer);
|
||||
}
|
||||
|
||||
|
||||
@@ -77,14 +77,11 @@ FocusEvent::Constructor(const GlobalObject& aGlobal,
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMFocusEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<FocusEvent>
|
||||
NS_NewDOMFocusEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
InternalFocusEvent* aEvent)
|
||||
{
|
||||
FocusEvent* it = new FocusEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<FocusEvent> it = new FocusEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -53,4 +53,9 @@ protected:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::FocusEvent>
|
||||
NS_NewDOMFocusEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalFocusEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_FocusEvent_h_
|
||||
|
||||
@@ -63,14 +63,11 @@ InputEvent::Constructor(const GlobalObject& aGlobal,
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMInputEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<InputEvent>
|
||||
NS_NewDOMInputEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
InternalEditorInputEvent* aEvent)
|
||||
{
|
||||
InputEvent* it = new InputEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<InputEvent> it = new InputEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -46,4 +46,9 @@ protected:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::InputEvent>
|
||||
NS_NewDOMInputEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalEditorInputEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_InputEvent_h_
|
||||
|
||||
@@ -309,14 +309,11 @@ KeyboardEvent::InitKeyEvent(const nsAString& aType,
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMKeyboardEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<KeyboardEvent>
|
||||
NS_NewDOMKeyboardEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetKeyboardEvent* aEvent)
|
||||
{
|
||||
KeyboardEvent* it = new KeyboardEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<KeyboardEvent> it = new KeyboardEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -93,4 +93,9 @@ private:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::KeyboardEvent>
|
||||
NS_NewDOMKeyboardEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetKeyboardEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_KeyboardEvent_h_
|
||||
|
||||
@@ -172,7 +172,7 @@ MessageEvent::Constructor(EventTarget* aEventTarget,
|
||||
ports.AppendElement(aParam.mPorts.Value().Value()[i].get());
|
||||
}
|
||||
|
||||
event->mPorts = new MessagePortList(static_cast<EventBase*>(event), ports);
|
||||
event->mPorts = new MessagePortList(static_cast<Event*>(event), ports);
|
||||
}
|
||||
|
||||
return event.forget();
|
||||
@@ -224,14 +224,11 @@ MessageEvent::SetSource(mozilla::dom::workers::ServiceWorkerClient* aClient)
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMMessageEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<MessageEvent>
|
||||
NS_NewDOMMessageEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetEvent* aEvent)
|
||||
{
|
||||
MessageEvent* it = new MessageEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<MessageEvent> it = new MessageEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -99,4 +99,9 @@ private:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::MessageEvent>
|
||||
NS_NewDOMMessageEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_MessageEvent_h_
|
||||
|
||||
@@ -507,14 +507,11 @@ MouseEvent::GetMozInputSource(uint16_t* aInputSource)
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMMouseEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<MouseEvent>
|
||||
NS_NewDOMMouseEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetMouseEvent* aEvent)
|
||||
{
|
||||
MouseEvent* it = new MouseEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<MouseEvent> it = new MouseEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -129,4 +129,9 @@ protected:
|
||||
NS_FORWARD_NSIDOMMOUSEEVENT(MouseEvent::) \
|
||||
NS_FORWARD_TO_UIEVENT
|
||||
|
||||
already_AddRefed<mozilla::dom::MouseEvent>
|
||||
NS_NewDOMMouseEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetMouseEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_MouseEvent_h_
|
||||
|
||||
@@ -88,14 +88,12 @@ MouseScrollEvent::Axis()
|
||||
using namespace mozilla;
|
||||
using namespace dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMMouseScrollEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<MouseScrollEvent>
|
||||
NS_NewDOMMouseScrollEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetMouseScrollEvent* aEvent)
|
||||
{
|
||||
MouseScrollEvent* it = new MouseScrollEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<MouseScrollEvent> it =
|
||||
new MouseScrollEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -59,4 +59,9 @@ protected:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::MouseScrollEvent>
|
||||
NS_NewDOMMouseScrollEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetMouseScrollEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_MouseScrollEvent_h_
|
||||
|
||||
@@ -119,14 +119,11 @@ MutationEvent::InitMutationEvent(const nsAString& aTypeArg,
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMMutationEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<MutationEvent>
|
||||
NS_NewDOMMutationEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
InternalMutationEvent* aEvent)
|
||||
{
|
||||
MutationEvent* it = new MutationEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<MutationEvent> it = new MutationEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -65,4 +65,9 @@ protected:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::MutationEvent>
|
||||
NS_NewDOMMutationEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalMutationEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_MutationEvent_h_
|
||||
|
||||
@@ -162,17 +162,15 @@ NotifyPaintEvent::Deserialize(const IPC::Message* aMsg, void** aIter)
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMNotifyPaintEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<NotifyPaintEvent>
|
||||
NS_NewDOMNotifyPaintEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetEvent* aEvent,
|
||||
uint32_t aEventType,
|
||||
nsInvalidateRequestList* aInvalidateRequests)
|
||||
{
|
||||
NotifyPaintEvent* it = new NotifyPaintEvent(aOwner, aPresContext, aEvent,
|
||||
aEventType, aInvalidateRequests);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<NotifyPaintEvent> it =
|
||||
new NotifyPaintEvent(aOwner, aPresContext, aEvent, aEventType,
|
||||
aInvalidateRequests);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -67,4 +67,12 @@ private:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
// This empties aInvalidateRequests.
|
||||
already_AddRefed<mozilla::dom::NotifyPaintEvent>
|
||||
NS_NewDOMNotifyPaintEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetEvent* aEvent,
|
||||
uint32_t aEventType = 0,
|
||||
nsInvalidateRequestList* aInvalidateRequests = nullptr);
|
||||
|
||||
#endif // mozilla_dom_NotifyPaintEvent_h_
|
||||
|
||||
@@ -164,14 +164,11 @@ PointerEvent::IsPrimary()
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMPointerEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<PointerEvent>
|
||||
NS_NewDOMPointerEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetPointerEvent *aEvent)
|
||||
{
|
||||
PointerEvent *it = new PointerEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<PointerEvent> it = new PointerEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -55,4 +55,9 @@ void ConvertPointerTypeToString(uint16_t aPointerTypeSrc, nsAString& aPointerTyp
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::PointerEvent>
|
||||
NS_NewDOMPointerEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetPointerEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_PointerEvent_h_
|
||||
|
||||
@@ -100,12 +100,12 @@ ScrollAreaEvent::Deserialize(const IPC::Message* aMsg, void** aIter)
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMScrollAreaEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<ScrollAreaEvent>
|
||||
NS_NewDOMScrollAreaEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
InternalScrollAreaEvent* aEvent)
|
||||
{
|
||||
ScrollAreaEvent* ev = new ScrollAreaEvent(aOwner, aPresContext, aEvent);
|
||||
return CallQueryInterface(ev, aInstancePtrResult);
|
||||
nsRefPtr<ScrollAreaEvent> ev =
|
||||
new ScrollAreaEvent(aOwner, aPresContext, aEvent);
|
||||
return ev.forget();
|
||||
}
|
||||
|
||||
@@ -86,4 +86,9 @@ protected:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::ScrollAreaEvent>
|
||||
NS_NewDOMScrollAreaEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalScrollAreaEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_ScrollAreaEvent_h_
|
||||
|
||||
@@ -146,14 +146,12 @@ SimpleGestureEvent::InitSimpleGestureEvent(const nsAString& aTypeArg,
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMSimpleGestureEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<SimpleGestureEvent>
|
||||
NS_NewDOMSimpleGestureEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetSimpleGestureEvent* aEvent)
|
||||
{
|
||||
SimpleGestureEvent* it = new SimpleGestureEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<SimpleGestureEvent> it =
|
||||
new SimpleGestureEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -78,4 +78,9 @@ protected:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::SimpleGestureEvent>
|
||||
NS_NewDOMSimpleGestureEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetSimpleGestureEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_SimpleGestureEvent_h_
|
||||
|
||||
@@ -103,16 +103,15 @@ StorageEvent::InitStorageEvent(const nsAString& aType, bool aCanBubble,
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
nsresult
|
||||
NS_NewDOMStorageEvent(nsIDOMEvent** aDOMEvent,
|
||||
mozilla::dom::EventTarget* aOwner)
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
already_AddRefed<StorageEvent>
|
||||
NS_NewDOMStorageEvent(EventTarget* aOwner)
|
||||
{
|
||||
nsRefPtr<mozilla::dom::StorageEvent> e =
|
||||
new mozilla::dom::StorageEvent(aOwner);
|
||||
nsRefPtr<StorageEvent> e = new StorageEvent(aOwner);
|
||||
|
||||
e->SetTrusted(e->Init(aOwner));
|
||||
e.forget(aDOMEvent);
|
||||
|
||||
return NS_OK;
|
||||
return e.forget();
|
||||
}
|
||||
|
||||
|
||||
@@ -14,8 +14,8 @@
|
||||
#include "mozilla/dom/StorageEventBinding.h"
|
||||
|
||||
// Helper for EventDispatcher.
|
||||
nsresult NS_NewDOMStorageEvent(nsIDOMEvent** aDOMEvent,
|
||||
mozilla::dom::EventTarget* aOwner);
|
||||
already_AddRefed<mozilla::dom::StorageEvent>
|
||||
NS_NewDOMStorageEvent(mozilla::dom::EventTarget* aOwner);
|
||||
|
||||
namespace mozilla {
|
||||
namespace dom {
|
||||
|
||||
@@ -238,14 +238,11 @@ TouchEvent::ShiftKey()
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMTouchEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<TouchEvent>
|
||||
NS_NewDOMTouchEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetTouchEvent* aEvent)
|
||||
{
|
||||
TouchEvent* it = new TouchEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<TouchEvent> it = new TouchEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -132,4 +132,9 @@ protected:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::TouchEvent>
|
||||
NS_NewDOMTouchEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetTouchEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_TouchEvent_h_
|
||||
|
||||
@@ -88,14 +88,12 @@ TransitionEvent::GetPseudoElement(nsAString& aPseudoElement)
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMTransitionEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<TransitionEvent>
|
||||
NS_NewDOMTransitionEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
InternalTransitionEvent* aEvent)
|
||||
{
|
||||
TransitionEvent *it = new TransitionEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<TransitionEvent> it =
|
||||
new TransitionEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -52,4 +52,9 @@ protected:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::TransitionEvent>
|
||||
NS_NewDOMTransitionEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalTransitionEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_TransitionEvent_h_
|
||||
|
||||
@@ -447,14 +447,11 @@ UIEvent::GetModifierStateInternal(const nsAString& aKey)
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMUIEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<UIEvent>
|
||||
NS_NewDOMUIEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetGUIEvent* aEvent)
|
||||
{
|
||||
UIEvent* it = new UIEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<UIEvent> it = new UIEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -188,4 +188,9 @@ protected:
|
||||
return UIEvent::Deserialize(aMsg, aIter); \
|
||||
}
|
||||
|
||||
already_AddRefed<mozilla::dom::UIEvent>
|
||||
NS_NewDOMUIEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetGUIEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_UIEvent_h_
|
||||
|
||||
@@ -206,14 +206,11 @@ WheelEvent::Constructor(const GlobalObject& aGlobal,
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMWheelEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<WheelEvent>
|
||||
NS_NewDOMWheelEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetWheelEvent* aEvent)
|
||||
{
|
||||
WheelEvent* it = new WheelEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<WheelEvent> it = new WheelEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -60,4 +60,9 @@ private:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::WheelEvent>
|
||||
NS_NewDOMWheelEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetWheelEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_WheelEvent_h_
|
||||
|
||||
@@ -129,14 +129,12 @@ XULCommandEvent::InitCommandEvent(const nsAString& aType,
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMXULCommandEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<XULCommandEvent>
|
||||
NS_NewDOMXULCommandEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
WidgetInputEvent* aEvent)
|
||||
{
|
||||
XULCommandEvent* it = new XULCommandEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<XULCommandEvent> it =
|
||||
new XULCommandEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -71,4 +71,9 @@ protected:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::XULCommandEvent>
|
||||
NS_NewDOMXULCommandEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetInputEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_XULCommandEvent_h_
|
||||
|
||||
@@ -133,6 +133,7 @@ LOCAL_INCLUDES += [
|
||||
'/dom/html',
|
||||
'/dom/settings',
|
||||
'/dom/storage',
|
||||
'/dom/svg',
|
||||
'/dom/workers',
|
||||
'/dom/xml',
|
||||
'/dom/xul',
|
||||
|
||||
@@ -5369,17 +5369,13 @@ FireEventForAccessibility(nsIDOMHTMLInputElement* aTarget,
|
||||
nsPresContext* aPresContext,
|
||||
const nsAString& aEventType)
|
||||
{
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
nsCOMPtr<mozilla::dom::Element> element = do_QueryInterface(aTarget);
|
||||
if (NS_SUCCEEDED(EventDispatcher::CreateEvent(element, aPresContext, nullptr,
|
||||
NS_LITERAL_STRING("Events"),
|
||||
getter_AddRefs(event)))) {
|
||||
event->InitEvent(aEventType, true, true);
|
||||
event->SetTrusted(true);
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(element, aPresContext, nullptr);
|
||||
event->InitEvent(aEventType, true, true);
|
||||
event->SetTrusted(true);
|
||||
|
||||
EventDispatcher::DispatchDOMEvent(aTarget, nullptr, event, aPresContext,
|
||||
nullptr);
|
||||
}
|
||||
EventDispatcher::DispatchDOMEvent(aTarget, nullptr, event, aPresContext,
|
||||
nullptr);
|
||||
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
@@ -40,7 +40,7 @@ class EventTarget;
|
||||
* http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html
|
||||
*/
|
||||
|
||||
[builtinclass, uuid(02d54f52-a1f5-4ad2-b560-36f14012935e)]
|
||||
[builtinclass, uuid(63857daf-c084-4ea6-a8b9-6812e3176991)]
|
||||
interface nsIDOMEvent : nsISupports
|
||||
{
|
||||
// PhaseType
|
||||
@@ -214,163 +214,5 @@ interface nsIDOMEvent : nsISupports
|
||||
[notxpcom] boolean Deserialize(in ConstIPCMessagePtr aMsg, out voidPtr aIter);
|
||||
[noscript,notxpcom] void SetOwner(in EventTargetPtr aOwner);
|
||||
[notxpcom] DOMEventPtr InternalDOMEvent();
|
||||
[noscript] void stopCrossProcessForwarding();
|
||||
};
|
||||
|
||||
%{C++
|
||||
|
||||
nsresult
|
||||
NS_NewDOMEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMDataContainerEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMUIEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetGUIEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMMouseEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetMouseEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMFocusEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalFocusEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMMouseScrollEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetMouseScrollEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMWheelEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetWheelEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMDragEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetDragEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMClipboardEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalClipboardEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMInputEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalEditorInputEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMKeyboardEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetKeyboardEvent* aEvent);
|
||||
|
||||
nsresult
|
||||
NS_NewDOMBeforeAfterKeyboardEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalBeforeAfterKeyboardEvent* aEvent);
|
||||
|
||||
nsresult
|
||||
NS_NewDOMCompositionEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetCompositionEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMMutationEvent(nsIDOMEvent** aResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalMutationEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMDeviceMotionEvent(nsIDOMEvent** aResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMBeforeUnloadEvent(nsIDOMEvent** aResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMSVGEvent(nsIDOMEvent** aResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMSVGZoomEvent(nsIDOMEvent** aResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalSVGZoomEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMTimeEvent(nsIDOMEvent** aResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalSMILTimeEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMXULCommandEvent(nsIDOMEvent** aResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetInputEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMCommandEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetCommandEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMMessageEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetEvent* aEvent);
|
||||
// This empties aInvalidateRequests.
|
||||
nsresult
|
||||
NS_NewDOMNotifyPaintEvent(nsIDOMEvent** aResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetEvent* aEvent,
|
||||
uint32_t aEventType = 0,
|
||||
nsInvalidateRequestList* aInvalidateRequests = nullptr);
|
||||
nsresult
|
||||
NS_NewDOMSimpleGestureEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetSimpleGestureEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMScrollAreaEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalScrollAreaEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMTransitionEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalTransitionEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMAnimationEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalAnimationEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMPointerEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetPointerEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMTouchEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetTouchEvent* aEvent);
|
||||
nsresult
|
||||
NS_NewDOMCustomEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::WidgetEvent* aEvent);
|
||||
%}
|
||||
|
||||
@@ -158,7 +158,10 @@ parent:
|
||||
nsString aName,
|
||||
nsString aFeatures,
|
||||
nsString aBaseURI)
|
||||
returns (bool windowOpened, FrameScriptInfo[] frameScripts, nsCString urlToLoad);
|
||||
returns (nsresult rv,
|
||||
bool windowOpened,
|
||||
FrameScriptInfo[] frameScripts,
|
||||
nsCString urlToLoad);
|
||||
|
||||
sync SyncMessage(nsString aMessage, ClonedMessageData aData,
|
||||
CpowEntry[] aCpows, Principal aPrincipal)
|
||||
|
||||
+28
-1
@@ -249,7 +249,16 @@ TabChildBase::InitializeRootMetrics()
|
||||
// This is the root layer, so the cumulative resolution is the same
|
||||
// as the resolution.
|
||||
mLastRootMetrics.SetPresShellResolution(mLastRootMetrics.GetCumulativeResolution().ToScaleFactor().scale);
|
||||
mLastRootMetrics.SetScrollOffset(CSSPoint(0, 0));
|
||||
|
||||
nsCOMPtr<nsIPresShell> shell = GetPresShell();
|
||||
if (shell && shell->GetRootScrollFrameAsScrollable()) {
|
||||
// The session history code might restore a scroll position when navigating
|
||||
// back or forward, and we don't want to clobber that.
|
||||
nsPoint pos = shell->GetRootScrollFrameAsScrollable()->GetScrollPosition();
|
||||
mLastRootMetrics.SetScrollOffset(CSSPoint::FromAppUnits(pos));
|
||||
} else {
|
||||
mLastRootMetrics.SetScrollOffset(CSSPoint(0, 0));
|
||||
}
|
||||
|
||||
TABC_LOG("After InitializeRootMetrics, mLastRootMetrics is %s\n",
|
||||
Stringify(mLastRootMetrics).c_str());
|
||||
@@ -1592,16 +1601,23 @@ TabChild::ProvideWindowCommon(nsIDOMWindow* aOpener,
|
||||
// tab, then we want to enforce that the new window is also a remote tab.
|
||||
features.AppendLiteral(",remote");
|
||||
|
||||
nsresult rv;
|
||||
|
||||
if (!SendCreateWindow(newChild,
|
||||
aChromeFlags, aCalledFromJS, aPositionSpecified,
|
||||
aSizeSpecified, url,
|
||||
name, NS_ConvertUTF8toUTF16(features),
|
||||
NS_ConvertUTF8toUTF16(baseURIString),
|
||||
&rv,
|
||||
aWindowIsNew,
|
||||
&frameScripts,
|
||||
&urlToLoad)) {
|
||||
return NS_ERROR_NOT_AVAILABLE;
|
||||
}
|
||||
|
||||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
}
|
||||
if (!*aWindowIsNew) {
|
||||
PBrowserChild::Send__delete__(newChild);
|
||||
@@ -2210,6 +2226,13 @@ TabChild::RecvNotifyAPZStateChange(const ViewID& aViewId,
|
||||
const int& aArg)
|
||||
{
|
||||
mAPZEventState->ProcessAPZStateChange(GetDocument(), aViewId, aChange, aArg);
|
||||
if (aChange == APZStateChange::TransformEnd) {
|
||||
// This is used by tests to determine when the APZ is done doing whatever
|
||||
// it's doing. XXX generify this as needed when writing additional tests.
|
||||
DispatchMessageManagerMessage(
|
||||
NS_LITERAL_STRING("APZ:TransformEnd"),
|
||||
NS_LITERAL_STRING("{}"));
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -3509,6 +3532,10 @@ TabChildGlobal::MarkForCC()
|
||||
if (mTabChild) {
|
||||
mTabChild->MarkScopesForCC();
|
||||
}
|
||||
EventListenerManager* elm = GetExistingListenerManager();
|
||||
if (elm) {
|
||||
elm->MarkForCC();
|
||||
}
|
||||
return mMessageManager ? mMessageManager->MarkForCC() : false;
|
||||
}
|
||||
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
#include "mozilla/EventDispatcher.h"
|
||||
#include "mozilla/dom/Event.h"
|
||||
#include "mozilla/dom/TabMessageUtils.h"
|
||||
#include "nsCOMPtr.h"
|
||||
#include "nsIDOMEvent.h"
|
||||
|
||||
namespace mozilla {
|
||||
namespace dom {
|
||||
@@ -20,11 +20,8 @@ ReadRemoteEvent(const IPC::Message* aMsg, void** aIter,
|
||||
nsString type;
|
||||
NS_ENSURE_TRUE(ReadParam(aMsg, aIter, &type), false);
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
EventDispatcher::CreateEvent(nullptr, nullptr, nullptr, type,
|
||||
getter_AddRefs(event));
|
||||
aResult->mEvent = do_QueryInterface(event);
|
||||
NS_ENSURE_TRUE(aResult->mEvent, false);
|
||||
aResult->mEvent = EventDispatcher::CreateEvent(nullptr, nullptr, nullptr,
|
||||
type);
|
||||
|
||||
return aResult->mEvent->Deserialize(aMsg, aIter);
|
||||
}
|
||||
|
||||
+52
-29
@@ -648,6 +648,7 @@ TabParent::RecvCreateWindow(PBrowserParent* aNewTab,
|
||||
const nsString& aName,
|
||||
const nsString& aFeatures,
|
||||
const nsString& aBaseURI,
|
||||
nsresult* aResult,
|
||||
bool* aWindowIsNew,
|
||||
InfallibleTArray<FrameScriptInfo>* aFrameScripts,
|
||||
nsCString* aURLToLoad)
|
||||
@@ -655,14 +656,14 @@ TabParent::RecvCreateWindow(PBrowserParent* aNewTab,
|
||||
// We always expect to open a new window here. If we don't, it's an error.
|
||||
*aWindowIsNew = true;
|
||||
|
||||
if (IsBrowserOrApp()) {
|
||||
if (NS_WARN_IF(IsBrowserOrApp()))
|
||||
return false;
|
||||
}
|
||||
|
||||
nsresult rv;
|
||||
nsCOMPtr<nsPIWindowWatcher> pwwatch =
|
||||
do_GetService(NS_WINDOWWATCHER_CONTRACTID, &rv);
|
||||
NS_ENSURE_SUCCESS(rv, false);
|
||||
do_GetService(NS_WINDOWWATCHER_CONTRACTID, aResult);
|
||||
|
||||
if (NS_WARN_IF(NS_FAILED(*aResult)))
|
||||
return true;
|
||||
|
||||
TabParent* newTab = TabParent::GetFrom(aNewTab);
|
||||
MOZ_ASSERT(newTab);
|
||||
@@ -693,8 +694,9 @@ TabParent::RecvCreateWindow(PBrowserParent* aNewTab,
|
||||
// opened one.
|
||||
if (!parent) {
|
||||
parent = FindMostRecentOpenWindow();
|
||||
if (!parent) {
|
||||
return false;
|
||||
if (NS_WARN_IF(!parent)) {
|
||||
*aResult = NS_ERROR_FAILURE;
|
||||
return true;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMChromeWindow> rootChromeWin = do_QueryInterface(parent);
|
||||
@@ -712,7 +714,10 @@ TabParent::RecvCreateWindow(PBrowserParent* aNewTab,
|
||||
|
||||
// Opening new tabs is the easy case...
|
||||
if (openLocation == nsIBrowserDOMWindow::OPEN_NEWTAB) {
|
||||
NS_ENSURE_TRUE(browserDOMWin, false);
|
||||
if (NS_WARN_IF(!browserDOMWin)) {
|
||||
*aResult = NS_ERROR_FAILURE;
|
||||
return true;
|
||||
}
|
||||
|
||||
bool isPrivate;
|
||||
nsCOMPtr<nsILoadContext> loadContext = GetLoadContext();
|
||||
@@ -744,45 +749,65 @@ TabParent::RecvCreateWindow(PBrowserParent* aNewTab,
|
||||
// TabChild has sent us a baseURI with which we can ensure that
|
||||
// the URI we pass to WindowWatcher is valid.
|
||||
nsCOMPtr<nsIURI> baseURI;
|
||||
rv = NS_NewURI(getter_AddRefs(baseURI), aBaseURI);
|
||||
NS_ENSURE_SUCCESS(rv, false);
|
||||
*aResult = NS_NewURI(getter_AddRefs(baseURI), aBaseURI);
|
||||
|
||||
nsCOMPtr<nsIURI> finalURI;
|
||||
rv = NS_NewURI(getter_AddRefs(finalURI), NS_ConvertUTF16toUTF8(aURI).get(), baseURI);
|
||||
NS_ENSURE_SUCCESS(rv, false);
|
||||
if (NS_WARN_IF(NS_FAILED(*aResult)))
|
||||
return true;
|
||||
|
||||
nsAutoCString finalURIString;
|
||||
finalURI->GetSpec(finalURIString);
|
||||
if (!aURI.IsEmpty()) {
|
||||
nsCOMPtr<nsIURI> finalURI;
|
||||
*aResult = NS_NewURI(getter_AddRefs(finalURI), NS_ConvertUTF16toUTF8(aURI).get(), baseURI);
|
||||
|
||||
if (NS_WARN_IF(NS_FAILED(*aResult)))
|
||||
return true;
|
||||
|
||||
finalURI->GetSpec(finalURIString);
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMWindow> window;
|
||||
|
||||
AutoUseNewTab aunt(newTab, aWindowIsNew, aURLToLoad);
|
||||
|
||||
rv = pwwatch->OpenWindow2(parent, finalURIString.get(),
|
||||
NS_ConvertUTF16toUTF8(aName).get(),
|
||||
NS_ConvertUTF16toUTF8(aFeatures).get(), aCalledFromJS,
|
||||
false, false, this, nullptr, nullptr, getter_AddRefs(window));
|
||||
NS_ENSURE_SUCCESS(rv, false);
|
||||
*aResult = pwwatch->OpenWindow2(parent, finalURIString.get(),
|
||||
NS_ConvertUTF16toUTF8(aName).get(),
|
||||
NS_ConvertUTF16toUTF8(aFeatures).get(), aCalledFromJS,
|
||||
false, false, this, nullptr, nullptr, getter_AddRefs(window));
|
||||
|
||||
if (NS_WARN_IF(NS_FAILED(*aResult)))
|
||||
return true;
|
||||
|
||||
*aResult = NS_ERROR_FAILURE;
|
||||
|
||||
nsCOMPtr<nsPIDOMWindow> pwindow = do_QueryInterface(window);
|
||||
NS_ENSURE_TRUE(pwindow, false);
|
||||
if (NS_WARN_IF(!pwindow)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDocShell> windowDocShell = pwindow->GetDocShell();
|
||||
NS_ENSURE_TRUE(windowDocShell, false);
|
||||
if (NS_WARN_IF(!windowDocShell)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDocShellTreeOwner> treeOwner;
|
||||
windowDocShell->GetTreeOwner(getter_AddRefs(treeOwner));
|
||||
|
||||
nsCOMPtr<nsIXULWindow> xulWin = do_GetInterface(treeOwner);
|
||||
NS_ENSURE_TRUE(xulWin, false);
|
||||
if (NS_WARN_IF(!xulWin)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIXULBrowserWindow> xulBrowserWin;
|
||||
xulWin->GetXULBrowserWindow(getter_AddRefs(xulBrowserWin));
|
||||
NS_ENSURE_TRUE(xulBrowserWin, false);
|
||||
if (NS_WARN_IF(!xulBrowserWin)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsITabParent> newRemoteTab;
|
||||
rv = xulBrowserWin->ForceInitialBrowserRemote(getter_AddRefs(newRemoteTab));
|
||||
NS_ENSURE_SUCCESS(rv, false);
|
||||
*aResult = xulBrowserWin->ForceInitialBrowserRemote(getter_AddRefs(newRemoteTab));
|
||||
|
||||
if (NS_WARN_IF(NS_FAILED(*aResult)))
|
||||
return true;
|
||||
|
||||
MOZ_ASSERT(TabParent::GetFrom(newRemoteTab) == newTab);
|
||||
|
||||
@@ -2996,8 +3021,7 @@ TabParent::LayerTreeUpdate(bool aActive)
|
||||
return true;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
NS_NewDOMEvent(getter_AddRefs(event), mFrameElement, nullptr, nullptr);
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(mFrameElement, nullptr, nullptr);
|
||||
if (aActive) {
|
||||
event->InitEvent(NS_LITERAL_STRING("MozLayerTreeReady"), true, false);
|
||||
} else {
|
||||
@@ -3036,8 +3060,7 @@ TabParent::RecvRemotePaintIsReady()
|
||||
return true;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
NS_NewDOMEvent(getter_AddRefs(event), mFrameElement, nullptr, nullptr);
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(mFrameElement, nullptr, nullptr);
|
||||
event->InitEvent(NS_LITERAL_STRING("MozAfterRemotePaint"), false, false);
|
||||
event->SetTrusted(true);
|
||||
event->GetInternalNSEvent()->mFlags.mOnlyChromeDispatch = true;
|
||||
|
||||
@@ -144,6 +144,7 @@ public:
|
||||
const nsString& aName,
|
||||
const nsString& aFeatures,
|
||||
const nsString& aBaseURI,
|
||||
nsresult* aResult,
|
||||
bool* aWindowIsNew,
|
||||
InfallibleTArray<FrameScriptInfo>* aFrameScripts,
|
||||
nsCString* aURLToLoad) override;
|
||||
|
||||
@@ -1043,12 +1043,7 @@ MediaRecorder::DispatchSimpleEvent(const nsAString & aStr)
|
||||
return;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
rv = NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
if (NS_FAILED(rv)) {
|
||||
NS_WARNING("Failed to create the error event!!!");
|
||||
return;
|
||||
}
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
rv = event->InitEvent(aStr, false, false);
|
||||
|
||||
if (NS_FAILED(rv)) {
|
||||
|
||||
@@ -163,14 +163,9 @@ TextTrackList::DispatchTrackEvent(nsIDOMEvent* aEvent)
|
||||
void
|
||||
TextTrackList::CreateAndDispatchChangeEvent()
|
||||
{
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
nsresult rv = NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
if (NS_FAILED(rv)) {
|
||||
NS_WARNING("Failed to create the error event!");
|
||||
return;
|
||||
}
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
|
||||
rv = event->InitEvent(NS_LITERAL_STRING("change"), false, false);
|
||||
nsresult rv = event->InitEvent(NS_LITERAL_STRING("change"), false, false);
|
||||
if (NS_FAILED(rv)) {
|
||||
NS_WARNING("Failed to init the change event!");
|
||||
return;
|
||||
|
||||
@@ -173,16 +173,14 @@ DesktopNotification::DispatchNotificationEvent(const nsString& aName)
|
||||
return;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
nsresult rv = NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
if (NS_SUCCEEDED(rv)) {
|
||||
// it doesn't bubble, and it isn't cancelable
|
||||
rv = event->InitEvent(aName, false, false);
|
||||
if (NS_SUCCEEDED(rv)) {
|
||||
event->SetTrusted(true);
|
||||
DispatchDOMEvent(nullptr, event, nullptr, nullptr);
|
||||
}
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
// it doesn't bubble, and it isn't cancelable
|
||||
nsresult rv = event->InitEvent(aName, false, false);
|
||||
if (NS_FAILED(rv)) {
|
||||
return;
|
||||
}
|
||||
event->SetTrusted(true);
|
||||
DispatchDOMEvent(nullptr, event, nullptr, nullptr);
|
||||
}
|
||||
|
||||
nsresult
|
||||
|
||||
@@ -1080,8 +1080,7 @@ bool
|
||||
Notification::DispatchClickEvent()
|
||||
{
|
||||
AssertIsOnTargetThread();
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
nsresult rv = event->InitEvent(NS_LITERAL_STRING("click"), false, true);
|
||||
NS_ENSURE_SUCCESS(rv, false);
|
||||
event->SetTrusted(true);
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
#include "nsIObserverService.h"
|
||||
#include "nsIScriptGlobalObject.h"
|
||||
#include "nsIWebNavigation.h"
|
||||
#include "mozilla/dom/Event.h"
|
||||
#include "mozilla/dom/OfflineResourceListBinding.h"
|
||||
#include "mozilla/EventDispatcher.h"
|
||||
#include "mozilla/Preferences.h"
|
||||
@@ -547,11 +548,7 @@ nsDOMOfflineResourceList::SendEvent(const nsAString &aEventName)
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
nsresult rv = EventDispatcher::CreateEvent(this, nullptr, nullptr,
|
||||
NS_LITERAL_STRING("Events"),
|
||||
getter_AddRefs(event));
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
event->InitEvent(aEventName, false, true);
|
||||
|
||||
// We assume anyone that managed to call SendEvent is trusted
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
#include "mozilla/AsyncEventDispatcher.h"
|
||||
#include "mozilla/dom/MessageEvent.h"
|
||||
#include "nsCycleCollectionParticipant.h"
|
||||
#include "nsIDOMMessageEvent.h"
|
||||
#include "nsIPresentationService.h"
|
||||
#include "nsServiceManagerUtils.h"
|
||||
#include "nsStringStream.h"
|
||||
@@ -260,13 +260,9 @@ PresentationSession::DispatchMessageEvent(JS::Handle<JS::Value> aData)
|
||||
return rv;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
rv = NS_NewDOMMessageEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
if (NS_WARN_IF(NS_FAILED(rv))) {
|
||||
return rv;
|
||||
}
|
||||
nsRefPtr<MessageEvent> messageEvent =
|
||||
NS_NewDOMMessageEvent(this, nullptr, nullptr);
|
||||
|
||||
nsCOMPtr<nsIDOMMessageEvent> messageEvent = do_QueryInterface(event);
|
||||
rv = messageEvent->InitMessageEvent(NS_LITERAL_STRING("message"),
|
||||
false, false,
|
||||
aData,
|
||||
@@ -276,9 +272,9 @@ PresentationSession::DispatchMessageEvent(JS::Handle<JS::Value> aData)
|
||||
return rv;
|
||||
}
|
||||
|
||||
event->SetTrusted(true);
|
||||
messageEvent->SetTrusted(true);
|
||||
|
||||
nsRefPtr<AsyncEventDispatcher> asyncDispatcher =
|
||||
new AsyncEventDispatcher(this, event);
|
||||
new AsyncEventDispatcher(this, static_cast<Event*>(messageEvent));
|
||||
return asyncDispatcher->PostDOMEvent();
|
||||
}
|
||||
|
||||
@@ -80,14 +80,11 @@ TimeEvent::InitTimeEvent(const nsAString& aTypeArg,
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
nsresult
|
||||
NS_NewDOMTimeEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
EventTarget* aOwner,
|
||||
already_AddRefed<TimeEvent>
|
||||
NS_NewDOMTimeEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
InternalSMILTimeEvent* aEvent)
|
||||
{
|
||||
TimeEvent* it = new TimeEvent(aOwner, aPresContext, aEvent);
|
||||
NS_ADDREF(it);
|
||||
*aInstancePtrResult = static_cast<Event*>(it);
|
||||
return NS_OK;
|
||||
nsRefPtr<TimeEvent> it = new TimeEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -63,4 +63,9 @@ private:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::TimeEvent>
|
||||
NS_NewDOMTimeEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalSMILTimeEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_TimeEvent_h_
|
||||
|
||||
@@ -5,16 +5,19 @@
|
||||
* You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
#include "SpeakerManager.h"
|
||||
#include "nsIDOMClassInfo.h"
|
||||
#include "nsIDOMEvent.h"
|
||||
#include "nsIDOMEventListener.h"
|
||||
#include "SpeakerManagerService.h"
|
||||
#include "nsIPermissionManager.h"
|
||||
#include "nsIInterfaceRequestorUtils.h"
|
||||
#include "nsIDocShell.h"
|
||||
#include "AudioChannelService.h"
|
||||
|
||||
#include "mozilla/Services.h"
|
||||
|
||||
#include "mozilla/dom/Event.h"
|
||||
|
||||
#include "AudioChannelService.h"
|
||||
#include "nsIDocShell.h"
|
||||
#include "nsIDOMClassInfo.h"
|
||||
#include "nsIDOMEventListener.h"
|
||||
#include "nsIInterfaceRequestorUtils.h"
|
||||
#include "nsIPermissionManager.h"
|
||||
#include "SpeakerManagerService.h"
|
||||
|
||||
namespace mozilla {
|
||||
namespace dom {
|
||||
|
||||
@@ -86,12 +89,7 @@ SpeakerManager::DispatchSimpleEvent(const nsAString& aStr)
|
||||
return;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
rv = NS_NewDOMEvent(getter_AddRefs(event), this, nullptr, nullptr);
|
||||
if (NS_FAILED(rv)) {
|
||||
NS_WARNING("Failed to create the error event!!!");
|
||||
return;
|
||||
}
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(this, nullptr, nullptr);
|
||||
rv = event->InitEvent(aStr, false, false);
|
||||
|
||||
if (NS_FAILED(rv)) {
|
||||
|
||||
@@ -90,13 +90,14 @@ SVGZoomEvent::~SVGZoomEvent()
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
// Exported creation functions:
|
||||
|
||||
nsresult
|
||||
NS_NewDOMSVGZoomEvent(nsIDOMEvent** aInstancePtrResult,
|
||||
mozilla::dom::EventTarget* aOwner,
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
||||
already_AddRefed<SVGZoomEvent>
|
||||
NS_NewDOMSVGZoomEvent(EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalSVGZoomEvent* aEvent)
|
||||
{
|
||||
mozilla::dom::SVGZoomEvent* it =
|
||||
new mozilla::dom::SVGZoomEvent(aOwner, aPresContext, aEvent);
|
||||
return CallQueryInterface(it, aInstancePtrResult);
|
||||
nsRefPtr<SVGZoomEvent> it = new SVGZoomEvent(aOwner, aPresContext, aEvent);
|
||||
return it.forget();
|
||||
}
|
||||
|
||||
@@ -71,4 +71,9 @@ private:
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
|
||||
already_AddRefed<mozilla::dom::SVGZoomEvent>
|
||||
NS_NewDOMSVGZoomEvent(mozilla::dom::EventTarget* aOwner,
|
||||
nsPresContext* aPresContext,
|
||||
mozilla::InternalSVGZoomEvent* aEvent);
|
||||
|
||||
#endif // mozilla_dom_SVGZoomEvent_h
|
||||
|
||||
@@ -2216,14 +2216,10 @@ public:
|
||||
|
||||
WorkerGlobalScope* globalScope = aWorkerPrivate->GlobalScope();
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
nsresult rv =
|
||||
NS_NewDOMEvent(getter_AddRefs(event), globalScope, nullptr, nullptr);
|
||||
if (NS_WARN_IF(NS_FAILED(rv))) {
|
||||
return false;
|
||||
}
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(globalScope, nullptr, nullptr);
|
||||
|
||||
rv = event->InitEvent(NS_LITERAL_STRING("pushsubscriptionchange"), false, false);
|
||||
nsresult rv = event->InitEvent(NS_LITERAL_STRING("pushsubscriptionchange"),
|
||||
false, false);
|
||||
if (NS_WARN_IF(NS_FAILED(rv))) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -1258,15 +1258,9 @@ private:
|
||||
|
||||
WorkerGlobalScope* globalScope = aWorkerPrivate->GlobalScope();
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
nsresult rv =
|
||||
NS_NewDOMEvent(getter_AddRefs(event), globalScope, nullptr, nullptr);
|
||||
if (NS_FAILED(rv)) {
|
||||
Throw(aCx, rv);
|
||||
return false;
|
||||
}
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(globalScope, nullptr, nullptr);
|
||||
|
||||
rv = event->InitEvent(NS_LITERAL_STRING("close"), false, false);
|
||||
nsresult rv = event->InitEvent(NS_LITERAL_STRING("close"), false, false);
|
||||
if (NS_FAILED(rv)) {
|
||||
Throw(aCx, rv);
|
||||
return false;
|
||||
@@ -3848,12 +3842,9 @@ WorkerPrivate::OfflineStatusChangeEventInternal(JSContext* aCx, bool aIsOffline)
|
||||
eventType.AssignLiteral("online");
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
nsresult rv =
|
||||
NS_NewDOMEvent(getter_AddRefs(event), globalScope, nullptr, nullptr);
|
||||
NS_ENSURE_SUCCESS_VOID(rv);
|
||||
nsRefPtr<Event> event = NS_NewDOMEvent(globalScope, nullptr, nullptr);
|
||||
|
||||
rv = event->InitEvent(eventType, false, false);
|
||||
nsresult rv = event->InitEvent(eventType, false, false);
|
||||
NS_ENSURE_SUCCESS_VOID(rv);
|
||||
|
||||
event->SetTrusted(true);
|
||||
|
||||
@@ -1399,7 +1399,7 @@ EventRunnable::WorkerRun(JSContext* aCx, WorkerPrivate* aWorkerPrivate)
|
||||
|
||||
MOZ_ASSERT(target);
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
nsRefPtr<Event> event;
|
||||
if (mProgressEvent) {
|
||||
ProgressEventInit init;
|
||||
init.mBubbles = false;
|
||||
@@ -1411,7 +1411,7 @@ EventRunnable::WorkerRun(JSContext* aCx, WorkerPrivate* aWorkerPrivate)
|
||||
event = ProgressEvent::Constructor(target, mType, init);
|
||||
}
|
||||
else {
|
||||
NS_NewDOMEvent(getter_AddRefs(event), target, nullptr, nullptr);
|
||||
event = NS_NewDOMEvent(target, nullptr, nullptr);
|
||||
|
||||
if (event) {
|
||||
event->InitEvent(mType, false, false);
|
||||
@@ -1802,13 +1802,10 @@ XMLHttpRequest::DispatchPrematureAbortEvent(EventTarget* aTarget,
|
||||
return;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIDOMEvent> event;
|
||||
nsRefPtr<Event> event;
|
||||
if (aEventType.EqualsLiteral("readystatechange")) {
|
||||
NS_NewDOMEvent(getter_AddRefs(event), aTarget, nullptr, nullptr);
|
||||
|
||||
if (event) {
|
||||
event->InitEvent(aEventType, false, false);
|
||||
}
|
||||
event = NS_NewDOMEvent(aTarget, nullptr, nullptr);
|
||||
event->InitEvent(aEventType, false, false);
|
||||
}
|
||||
else {
|
||||
ProgressEventInit init;
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
#include "mozilla/Preferences.h"
|
||||
#include "nsIDocument.h"
|
||||
#include "nsVariant.h"
|
||||
#include "nsIDOMCustomEvent.h"
|
||||
#include "mozilla/dom/CustomEvent.h"
|
||||
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
@@ -156,22 +156,19 @@ nsXMLPrettyPrinter::PrettyPrint(nsIDocument* aDocument,
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
|
||||
// Fire an event at the bound element to pass it |resultFragment|.
|
||||
nsCOMPtr<nsIDOMEvent> domEvent;
|
||||
rv = NS_NewDOMCustomEvent(getter_AddRefs(domEvent), rootCont,
|
||||
nullptr, nullptr);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
nsCOMPtr<nsIDOMCustomEvent> customEvent = do_QueryInterface(domEvent);
|
||||
MOZ_ASSERT(customEvent);
|
||||
nsRefPtr<CustomEvent> event =
|
||||
NS_NewDOMCustomEvent(rootCont, nullptr, nullptr);
|
||||
MOZ_ASSERT(event);
|
||||
nsCOMPtr<nsIWritableVariant> resultFragmentVariant = new nsVariant();
|
||||
rv = resultFragmentVariant->SetAsISupports(resultFragment);
|
||||
MOZ_ASSERT(NS_SUCCEEDED(rv));
|
||||
rv = customEvent->InitCustomEvent(NS_LITERAL_STRING("prettyprint-dom-created"),
|
||||
/* bubbles = */ false, /* cancelable = */ false,
|
||||
/* detail = */ resultFragmentVariant);
|
||||
rv = event->InitCustomEvent(NS_LITERAL_STRING("prettyprint-dom-created"),
|
||||
/* bubbles = */ false, /* cancelable = */ false,
|
||||
/* detail = */ resultFragmentVariant);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
customEvent->SetTrusted(true);
|
||||
event->SetTrusted(true);
|
||||
bool dummy;
|
||||
rv = rootCont->DispatchEvent(domEvent, &dummy);
|
||||
rv = rootCont->DispatchEvent(static_cast<Event*>(event), &dummy);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
|
||||
// Observe the document so we know when to switch to "normal" view
|
||||
|
||||
@@ -3097,6 +3097,7 @@ void AsyncPanZoomController::SetState(PanZoomState aNewState)
|
||||
// Intentional scoping for mutex
|
||||
{
|
||||
ReentrantMonitorAutoEnter lock(mMonitor);
|
||||
APZC_LOG("%p changing from state %d to %d\n", this, mState, aNewState);
|
||||
oldState = mState;
|
||||
mState = aNewState;
|
||||
}
|
||||
|
||||
@@ -266,6 +266,36 @@ APZCCallbackHelper::GetOrCreateScrollIdentifiers(nsIContent* aContent,
|
||||
return false;
|
||||
}
|
||||
|
||||
void
|
||||
APZCCallbackHelper::InitializeRootDisplayport(nsIPresShell* aPresShell)
|
||||
{
|
||||
// Create a view-id and set a zero-margin displayport for the root element
|
||||
// of the root document in the chrome process. This ensures that the scroll
|
||||
// frame for this element gets an APZC, which in turn ensures that all content
|
||||
// in the chrome processes is covered by an APZC.
|
||||
// The displayport is zero-margin because this element is generally not
|
||||
// actually scrollable (if it is, APZC will set proper margins when it's
|
||||
// scrolled).
|
||||
if (!aPresShell) {
|
||||
return;
|
||||
}
|
||||
|
||||
MOZ_ASSERT(aPresShell->GetDocument());
|
||||
nsIContent* content = aPresShell->GetDocument()->GetDocumentElement();
|
||||
if (!content) {
|
||||
return;
|
||||
}
|
||||
|
||||
uint32_t presShellId;
|
||||
FrameMetrics::ViewID viewId;
|
||||
if (APZCCallbackHelper::GetOrCreateScrollIdentifiers(content, &presShellId, &viewId)) {
|
||||
// Note that the base rect that goes with these margins is set in
|
||||
// nsRootBoxFrame::BuildDisplayList.
|
||||
nsLayoutUtils::SetDisplayPortMargins(content, aPresShell, ScreenMargin(), 0,
|
||||
nsLayoutUtils::RepaintMode::DoNotRepaint);
|
||||
}
|
||||
}
|
||||
|
||||
class FlingSnapEvent : public nsRunnable
|
||||
{
|
||||
typedef mozilla::layers::FrameMetrics::ViewID ViewID;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user