Added documentation to web_view.js/web_view_experimental.js regarding the webview...
[chromium-blink-merge.git] / chrome / renderer / extensions / send_request_natives.h
blob115e0bcf41f661d023f09a9421830afd7e31077c
1 // Copyright (c) 2012 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.
5 #ifndef CHROME_RENDERER_EXTENSIONS_SEND_REQUEST_NATIVES_H_
6 #define CHROME_RENDERER_EXTENSIONS_SEND_REQUEST_NATIVES_H_
8 #include "chrome/renderer/extensions/chrome_v8_extension.h"
9 #include "chrome/renderer/extensions/dispatcher.h"
11 #include "v8/include/v8.h"
13 namespace extensions {
14 class ChromeV8Context;
15 class RequestSender;
17 // Native functions exposed to extensions via JS for calling API functions in
18 // the browser.
19 class SendRequestNatives : public ChromeV8Extension {
20 public:
21 SendRequestNatives(Dispatcher* dispatcher,
22 RequestSender* request_sender,
23 ChromeV8Context* context);
25 private:
26 void GetNextRequestId(const v8::FunctionCallbackInfo<v8::Value>& args);
28 // Starts an API request to the browser, with an optional callback. The
29 // callback will be dispatched to EventBindings::HandleResponse.
30 void StartRequest(const v8::FunctionCallbackInfo<v8::Value>& args);
32 // Gets a reference to an object's global object.
33 void GetGlobal(const v8::FunctionCallbackInfo<v8::Value>& args);
35 RequestSender* request_sender_;
37 DISALLOW_COPY_AND_ASSIGN(SendRequestNatives);
40 } // namespace extensions
42 #endif // CHROME_RENDERER_EXTENSIONS_SEND_REQUEST_NATIVES_H_