// Copyright (c) 2015 GitHub, Inc. // Use of this source code is governed by the MIT license that can be // found in the LICENSE file. #ifndef SHELL_COMMON_NATIVE_MATE_CONVERTERS_CONTENT_CONVERTER_H_ #define SHELL_COMMON_NATIVE_MATE_CONVERTERS_CONTENT_CONVERTER_H_ #include #include "content/public/browser/permission_type.h" #include "content/public/common/menu_item.h" #include "content/public/common/referrer.h" #include "content/public/common/stop_find_action.h" #include "native_mate/converter.h" #include "third_party/blink/public/mojom/permissions/permission_status.mojom.h" namespace content { struct ContextMenuParams; class WebContents; } // namespace content using ContextMenuParamsWithWebContents = std::pair; namespace mate { template <> struct Converter { static v8::Local ToV8(v8::Isolate* isolate, const content::MenuItem::Type& val); }; template <> struct Converter { static v8::Local ToV8(v8::Isolate* isolate, const ContextMenuParamsWithWebContents& val); }; template <> struct Converter { static bool FromV8(v8::Isolate* isolate, v8::Local val, blink::mojom::PermissionStatus* out); }; template <> struct Converter { static v8::Local ToV8(v8::Isolate* isolate, const content::PermissionType& val); }; template <> struct Converter { static bool FromV8(v8::Isolate* isolate, v8::Local val, content::StopFindAction* out); }; template <> struct Converter { static v8::Local ToV8(v8::Isolate* isolate, content::WebContents* val); static bool FromV8(v8::Isolate* isolate, v8::Local val, content::WebContents** out); }; template <> struct Converter { static v8::Local ToV8(v8::Isolate* isolate, const content::Referrer& val); static bool FromV8(v8::Isolate* isolate, v8::Local val, content::Referrer* out); }; } // namespace mate #endif // SHELL_COMMON_NATIVE_MATE_CONVERTERS_CONTENT_CONVERTER_H_