1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
|
// Copyright 2015 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Mime handler API.
[nodoc] namespace mimeHandlerPrivate {
dictionary StreamInfo {
// The MIME type of the intercepted URL request.
DOMString mimeType;
// The original URL that was intercepted.
DOMString originalUrl;
// The URL that the stream can be read from.
DOMString streamUrl;
// The ID of the tab that opened the stream. If the stream is not opened in
// a tab, it will be -1.
long tabId;
// The HTTP response headers of the intercepted request stored as a
// dictionary mapping header name to header value. If a header name appears
// multiple times, the header values are merged in the dictionary and
// separated by a ", ". Non-ASCII headers are dropped.
object responseHeaders;
// Whether the stream is embedded within another document.
boolean embedded;
};
dictionary PdfPluginAttributes {
// The background color in ARGB format for painting. Since the background
// color is an unsigned 32-bit integer which can be outside the range of
// "long" type, define it as a "double" type here.
double backgroundColor;
// Indicates whether the plugin allows to execute JavaScript and maybe XFA.
// Loading XFA for PDF forms will automatically be disabled if this flag is
// false.
boolean allowJavascript;
};
callback GetStreamDetailsCallback = void (StreamInfo streamInfo);
callback SetShowBeforeUnloadDialogCallback = void ();
interface Functions {
// Returns the StreamInfo for the stream for this context if there is one.
[nocompile, doesNotSupportPromises=
"Custom hook sets lastError crbug.com/1504349"]
static void getStreamInfo(GetStreamDetailsCallback callback);
// Sets PDF plugin attributes in the stream for this context if there is
// one.
[nocompile] static void setPdfPluginAttributes(
PdfPluginAttributes pdfPluginAttributes);
// Instructs the PluginDocument, if running in one, to show a dialog in
// response to beforeunload events.
[nocompile, doesNotSupportPromises=
"Custom hook sets lastError crbug.com/1504349"]
static void setShowBeforeUnloadDialog(
boolean showDialog,
optional SetShowBeforeUnloadDialogCallback callback);
};
interface Events {
// Fired when the browser wants the listener to perform a save.
// |streamUrl|: Unique ID for the instance that should perform the save.
static void onSave(DOMString streamUrl);
};
};
|