1 // Copyright (c) 2015 GitHub, Inc.
2 // Use of this source code is governed by the MIT license that can be
3 // found in the LICENSE file.
5 #ifndef ATOM_COMMON_NATIVE_MATE_CONVERTERS_CONTENT_CONVERTER_H_
6 #define ATOM_COMMON_NATIVE_MATE_CONVERTERS_CONTENT_CONVERTER_H_
10 #include "content/public/browser/permission_type.h"
11 #include "content/public/common/menu_item.h"
12 #include "content/public/common/stop_find_action.h"
13 #include "third_party/WebKit/public/platform/modules/permissions/permission_status.mojom.h"
14 #include "native_mate/converter.h"
17 struct ContextMenuParams;
21 using ContextMenuParamsWithWebContents =
22 std::pair<content::ContextMenuParams, content::WebContents*>;
27 struct Converter<content::MenuItem::Type> {
28 static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
29 const content::MenuItem::Type& val);
33 struct Converter<ContextMenuParamsWithWebContents> {
34 static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
35 const ContextMenuParamsWithWebContents& val);
39 struct Converter<blink::mojom::PermissionStatus> {
40 static bool FromV8(v8::Isolate* isolate, v8::Local<v8::Value> val,
41 blink::mojom::PermissionStatus* out);
45 struct Converter<content::PermissionType> {
46 static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
47 const content::PermissionType& val);
51 struct Converter<content::StopFindAction> {
52 static bool FromV8(v8::Isolate* isolate, v8::Local<v8::Value> val,
53 content::StopFindAction* out);
57 struct Converter<content::WebContents*> {
58 static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
59 content::WebContents* val);
60 static bool FromV8(v8::Isolate* isolate, v8::Local<v8::Value> val,
61 content::WebContents** out);
66 #endif // ATOM_COMMON_NATIVE_MATE_CONVERTERS_CONTENT_CONVERTER_H_