summaryrefslogtreecommitdiffstats
path: root/layout/ipc/PRenderFrame.ipdl
diff options
context:
space:
mode:
Diffstat (limited to 'layout/ipc/PRenderFrame.ipdl')
-rw-r--r--layout/ipc/PRenderFrame.ipdl37
1 files changed, 37 insertions, 0 deletions
diff --git a/layout/ipc/PRenderFrame.ipdl b/layout/ipc/PRenderFrame.ipdl
new file mode 100644
index 000000000..3a1a47fe0
--- /dev/null
+++ b/layout/ipc/PRenderFrame.ipdl
@@ -0,0 +1,37 @@
+/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
+ * vim: sw=2 ts=8 et :
+ */
+/* 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 PBrowser;
+include protocol PLayerTransaction;
+
+
+using class nsRegion from "nsRegion.h";
+
+namespace mozilla {
+namespace layout {
+
+/**
+ * PRenderFrame (in the layout sense of "frame") represents one web
+ * "page". It's used to graft content processes' layer trees into
+ * chrome's rendering path. The lifetime of a PRenderFrame is tied to
+ * its PresShell in the child process.
+ *
+ * The child process conceptually "owns" a PRenderFrame, because it
+ * only makes sense wrt documents loaded by the child.
+ */
+sync protocol PRenderFrame
+{
+ manager PBrowser;
+
+parent:
+ async NotifyCompositorTransaction();
+
+ async __delete__();
+};
+
+} // namespace layout
+} // namespace mozilla