• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2013 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5// Custom bindings for the feedbackPrivate API.
6
7var binding = require('binding').Binding.create('feedbackPrivate');
8
9var blobNatives = requireNative('blob_natives');
10
11binding.registerCustomHook(function(bindingsAPI) {
12  var apiFunctions = bindingsAPI.apiFunctions;
13  apiFunctions.setUpdateArgumentsPostValidate(
14      "sendFeedback", function(feedbackInfo, callback) {
15    var attachedFileBlobUuid = '';
16    var screenshotBlobUuid = '';
17
18    if (feedbackInfo.attachedFile)
19      attachedFileBlobUuid =
20          blobNatives.GetBlobUuid(feedbackInfo.attachedFile.data);
21    if (feedbackInfo.screenshot)
22      screenshotBlobUuid =
23          blobNatives.GetBlobUuid(feedbackInfo.screenshot);
24
25    feedbackInfo.attachedFileBlobUuid = attachedFileBlobUuid;
26    feedbackInfo.screenshotBlobUuid = screenshotBlobUuid;
27
28    return [feedbackInfo, callback];
29  });
30});
31
32exports.binding = binding.generate();
33