blob: 02595356c4b1c48290cf6ff8457d050b71d35421 [file] [log] [blame]
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Use the <code>chrome.shell</code> API to create windows. The
// <code>createWindow</code> API is a subset of
// <code>chrome.app.window.create</code>.
namespace shell {
// Called in the creating window (parent) before the load event is called in
// the created window (child). The parent can set fields or functions on the
// child usable from onload. E.g. background.js:<br>
// <code>function(createdWindow) { createdWindow.contentWindow.foo =
// function () { }; };</code>
// <br>window.js:<br>
// <code>window.onload = function () { foo(); }</code>
callback CreateWindowCallback =
void ([instanceOf=AppWindow] object createdWindow);
[noinline_doc] dictionary AppWindow {
// The JavaScript 'window' object for the created child.
[instanceOf=Window] object contentWindow;
};
interface Functions {
// Creates a fullscreen window on the default display. Options are ignored.
static void createWindow(DOMString url,
optional object optionsPlaceholder,
optional CreateWindowCallback callback);
// Returns an $(ref:AppWindow) object for the current script context
// (i.e. JavaScript 'window' object).
[nocompile] static AppWindow currentWindow();
[nocompile, nodoc] static void initializeAppWindow();
};
};