gecko-dev/dom/ipc/PWindowGlobal.ipdl
Brindusan Cristian ef3c975bc9 Backed out 11 changesets (bug 1578624) for build bustages. CLOSED TREE
Backed out changeset b22733eb880f (bug 1578624)
Backed out changeset cb5e15489635 (bug 1578624)
Backed out changeset f1746b2f9dec (bug 1578624)
Backed out changeset d08a099a22ff (bug 1578624)
Backed out changeset 8ebd563c72a8 (bug 1578624)
Backed out changeset d8bfec2dc9b6 (bug 1578624)
Backed out changeset 591664928bce (bug 1578624)
Backed out changeset 63f5a619b9ef (bug 1578624)
Backed out changeset ff67cc13cdf3 (bug 1578624)
Backed out changeset 43556c937a09 (bug 1578624)
Backed out changeset 49065a55694d (bug 1578624)
2019-10-09 11:50:37 +03:00

85 lines
2.7 KiB
C++

/* -*- Mode: C++; c-basic-offset: 2; indent-tabs-mode: nil; tab-width: 8 -*- */
/* vim: set sw=2 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 "mozilla/dom/DocShellMessageUtils.h";
include protocol PBrowser;
include protocol PInProcess;
include protocol PBrowserBridge;
include DOMTypes;
using JSWindowActorMessageKind from "mozilla/dom/JSWindowActor.h";
using mozilla::gfx::IntRect from "mozilla/gfx/Rect.h";
using moveonly mozilla::gfx::PaintFragment from "mozilla/gfx/CrossProcessPaint.h";
using nscolor from "nsColor.h";
using refcounted class nsDocShellLoadState from "nsDocShellLoadState.h";
namespace mozilla {
namespace dom {
struct JSWindowActorMessageMeta {
nsString actorName;
nsString messageName;
uint64_t queryId;
JSWindowActorMessageKind kind;
};
/**
* A PWindowGlobal actor has a lifetime matching that of a single Window Global,
* specifically a |nsGlobalWindowInner|. These actors will form a parent/child
* link either between the chrome/content process, or will be in-process, for
* documents which are loaded in the chrome process.
*/
async refcounted protocol PWindowGlobal
{
manager PBrowser or PInProcess;
child:
async __delete__();
async ChangeFrameRemoteness(BrowsingContext aFrameContext,
nsString aRemoteType,
uint64_t aSwitchId)
returns (nsresult rv, nullable PBrowserBridge bridge);
async DrawSnapshot(IntRect? aRect, float aScale, nscolor aBackgroundColor, uint32_t aFlags) returns (PaintFragment retval);
/**
* Returns the serialized security info associated with this window.
*/
async GetSecurityInfo() returns(nsCString? serializedSecInfo);
async LoadURIInChild(nsDocShellLoadState aLoadState);
both:
async RawMessage(JSWindowActorMessageMeta aMetadata, ClonedMessageData aData);
parent:
// Load the given URI load state into the current owner process of the given
// BrowsingContext. aTargetBC must be in the same BrowsingContextGroup as this
// window global.
async LoadURI(BrowsingContext aTargetBC, nsDocShellLoadState aLoadState);
/// Update the URI of the document in this WindowGlobal.
async UpdateDocumentURI(nsIURI aUri);
/// Send down initial document bit to the parent.
async SetIsInitialDocument(bool aIsInitialDocument);
/// Tell the parent if this WindowGlobal has any "beforeunload" event
/// listeners.
async SetHasBeforeUnload(bool aHasBeforeUnload);
/// Notify the parent that this PWindowGlobal is now the current global.
async BecomeCurrentWindowGlobal();
async Destroy();
};
} // namespace dom
} // namespace mozilla