| Index: chrome/common/extensions/api/feedback_private.idl
|
| diff --git a/chrome/common/extensions/api/feedback_private.idl b/chrome/common/extensions/api/feedback_private.idl
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..3f49a249ba239fffc2904c4a06dc6f46b1f3e92c
|
| --- /dev/null
|
| +++ b/chrome/common/extensions/api/feedback_private.idl
|
| @@ -0,0 +1,78 @@
|
| +// Copyright (c) 2013 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.
|
| +
|
| +namespace feedbackPrivate {
|
| +
|
| + dictionary AttachedFile {
|
| + DOMString name;
|
| + [instanceOf=Blob] object data;
|
| + };
|
| +
|
| + dictionary SystemInformation {
|
| + DOMString key;
|
| + DOMString value;
|
| + };
|
| +
|
| + dictionary FeedbackInfo {
|
| + // File to attach to the feedback report.
|
| + AttachedFile? attachedFile;
|
| +
|
| + // An optional tag to label what type this feedback is.
|
| + DOMString? categoryTag;
|
| +
|
| + // The feedback text describing the user issue.
|
| + DOMString description;
|
| +
|
| + // The e-mail of the user that initiated this feedback.
|
| + DOMString? email;
|
| +
|
| + // The URL of the page that this issue was being experienced on.
|
| + DOMString? pageUrl;
|
| +
|
| + // Optional product ID to override the Chrome [OS] product id that is
|
| + // usually passed to the feedback server.
|
| + DOMString? productId;
|
| +
|
| + // Screenshot to send with this feedback.
|
| + [instanceOf=Blob] object? screenshot;
|
| +
|
| + // An array of key/value pairs providing system information for this
|
| + // feedback report.
|
| + SystemInformation[]? systemInformation;
|
| +
|
| + // TODO(rkc): Remove these once we have bindings to send blobs to Chrome.
|
| + // Used internally to store the blob Url after parameter customization.
|
| + DOMString attachedFileBlobUrl;
|
| + DOMString screenshotBlobUrl;
|
| + };
|
| +
|
| + // Status of the sending of a feedback report.
|
| + enum Status {success, delayed};
|
| +
|
| + callback GetUserEmailCallback = void(DOMString email);
|
| + callback GetSystemInformationCallback =
|
| + void(SystemInformation[] systemInformation);
|
| + callback SendFeedbackCallback = void(Status status);
|
| + callback GetStringsCallback = void(object result);
|
| +
|
| + interface Functions {
|
| + // Returns the email of the currently active or logged in user.
|
| + static void getUserEmail(GetUserEmailCallback callback);
|
| +
|
| + // Returns the system information dictionary.
|
| + static void getSystemInformation(GetSystemInformationCallback callback);
|
| +
|
| + // Sends a feedback report.
|
| + static void sendFeedback(FeedbackInfo feedback,
|
| + SendFeedbackCallback callback);
|
| + };
|
| +
|
| + interface Events {
|
| + // Fired when the a user requests the launch of the feedback UI. We're
|
| + // using an event for this versus using the override API since we want
|
| + // to be invoked, but not showing a UI, so the feedback extension can
|
| + // take a screenshot of the user's desktop.
|
| + static void onFeedbackRequested(FeedbackInfo feedback);
|
| + };
|
| +};
|
|
|