forked from mirrors/gecko-dev
This ports the last remaining piece of WebNavigationContent.js, the DOMContentLoaded event listener, to C++ and adds IPC messages to notify the parent process of the events. Linkage between the parent IPDL endpoints and the parent WebNavigation.jsm listeners is added in a subsequent patch. Differential Revision: https://phabricator.services.mozilla.com/D103216
61 lines
1.9 KiB
C++
61 lines
1.9 KiB
C++
/* -*- Mode: C++; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 8 -*- */
|
|
/* vim: set sw=4 ts=8 et tw=80 ft=cpp : */
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
include protocol PContent;
|
|
include protocol PInProcess;
|
|
include DOMTypes;
|
|
include "mozilla/ipc/URIUtils.h";
|
|
|
|
namespace mozilla {
|
|
namespace extensions {
|
|
|
|
struct FrameTransitionData
|
|
{
|
|
bool clientRedirect;
|
|
bool formSubmit;
|
|
bool forwardBack;
|
|
bool reload;
|
|
bool serverRedirect;
|
|
};
|
|
|
|
/**
|
|
* A generic protocol used by the extension framework for process-level IPC. A
|
|
* child instance is created at startup in the parent process and each content
|
|
* child process, which can be accessed via
|
|
* `mozilla::extensions::ExtensionsChild::Get()`.
|
|
*/
|
|
refcounted protocol PExtensions
|
|
{
|
|
manager PContent or PInProcess;
|
|
|
|
parent:
|
|
async __delete__();
|
|
|
|
async DocumentChange(MaybeDiscardedBrowsingContext bc,
|
|
FrameTransitionData transitionData,
|
|
nsIURI location);
|
|
|
|
async HistoryChange(MaybeDiscardedBrowsingContext bc,
|
|
FrameTransitionData transitionData,
|
|
nsIURI location,
|
|
bool isHistoryStateUpdated,
|
|
bool isReferenceFragmentUpdated);
|
|
|
|
async StateChange(MaybeDiscardedBrowsingContext bc,
|
|
nsIURI requestURI,
|
|
nsresult status,
|
|
uint32_t stateFlags);
|
|
|
|
async CreatedNavigationTarget(MaybeDiscardedBrowsingContext bc,
|
|
MaybeDiscardedBrowsingContext sourceBC,
|
|
nsCString url);
|
|
|
|
async DOMContentLoaded(MaybeDiscardedBrowsingContext bc,
|
|
nsIURI documentURI);
|
|
};
|
|
|
|
} // namespace extensions
|
|
} // namespace mozilla
|