electron/shell/common/gin_converters/content_converter.h
electron-roller[bot] 48801be8e9
chore: bump chromium to 132.0.6807.0 (main) (#44360)
* chore: bump chromium in DEPS to 132.0.6791.0

* 5804481: [UI] Migrate remaining clients of `MenuSourceType`

https://chromium-review.googlesource.com/c/chromium/src/+/5804481

* chore: try revert PA CL

* chore: bump chromium in DEPS to 132.0.6793.0

* chore: bump chromium in DEPS to 132.0.6794.0

* 5952404: Clean up //ui/base/resource from Lacros code.

https://chromium-review.googlesource.com/c/chromium/src/+/5952404

* 5920842: Generate combined grd for PEPC strings and use them in the element

https://chromium-review.googlesource.com/c/chromium/src/+/5920842

* 5943708: Enable DynamicSafeAreaInsets for eligible users only

https://chromium-review.googlesource.com/c/chromium/src/+/5943708

* chore: fixup patch indices

* 5937004: Remove components/services/language_detection

https://chromium-review.googlesource.com/c/chromium/src/+/5937004

* 5920322: [UI] Use mojo enum for `MenuSourceType` in ui/views/controls/

https://chromium-review.googlesource.com/c/chromium/src/+/5920322

* chore: bump chromium in DEPS to 132.0.6797.0

* 5947724: [ui] Add missing shortcut text for VKEY_COMMAND on linux

https://chromium-review.googlesource.com/c/chromium/src/+/5947724

* chore: fixup patch indices

* 5948024: [DNT] Fix NavigationController raw_ptr during WebContents destruction

https://chromium-review.googlesource.com/c/chromium/src/+/5948024

* 5945209: Roll libc++ from c8eec3629a9e to e2c39ff9388b (1 revision)

https://chromium-review.googlesource.com/c/chromium/src/+/5945209

* chore: bump chromium in DEPS to 132.0.6799.0

* chore: bump chromium in DEPS to 132.0.6801.0

* chore: bump chromium in DEPS to 132.0.6803.0

* 5942398: Remove some chrome:: namespace from chrome/browser/win/*

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5942398

* 5963016: FSA: Use the profile path for base::DIR_HOME on ChromeOS

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5963016

* chore: fixup patch indices

* chore: bump chromium in DEPS to 132.0.6805.0

* 5924816: [macOS][FSA] Block Access to Application Bundle Path

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5924816

* 5962517: [media] Apply inside blink to renderer/platform/media

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5962517

* 5829616: MPArch based GuestViews basic implementation

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5829616

* 5953710: Expose a rust_static_library instead of raw rs file from rust_bindgen

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5953710

* chore: fixup patch indices

* chore:  disable ELF CREL on Linux Arm

5938657: Reapply "Enable ELF CREL, which reduces the size of ELF relocatable object files." | https://chromium-review.googlesource.com/c/chromium/src/+/5938657

* chore: bump chromium in DEPS to 132.0.6807.0

* 5868889: Shared Storage: Support saved queries in selectURL

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5868889

* Revert "5956408: [fastapi] Promote deprecation of FastApiTypedArray"

Refs: https://chromium-review.googlesource.com/c/v8/v8/+/5956408

* Revert "5962696: [mojo] Force blink headers to only be included in blink"

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5962696

* chore: update patches

* 5973073: [Extensions] Improve warnings parsing (host) permissions in MV3

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5973073

* chore: update filenames.libcxx.gni

* Apply suggestions from code review

Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2024-11-04 09:10:00 -05:00

104 lines
3.3 KiB
C++

// 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 ELECTRON_SHELL_COMMON_GIN_CONVERTERS_CONTENT_CONVERTER_H_
#define ELECTRON_SHELL_COMMON_GIN_CONVERTERS_CONTENT_CONVERTER_H_
#include <utility>
#include "content/public/common/referrer.h"
#include "content/public/common/stop_find_action.h"
#include "gin/converter.h"
#include "third_party/blink/public/common/permissions/permission_utils.h"
#include "third_party/blink/public/mojom/choosers/popup_menu.mojom.h"
#include "third_party/blink/public/mojom/permissions/permission_status.mojom-forward.h"
#include "ui/base/mojom/menu_source_type.mojom-forward.h"
namespace content {
struct ContextMenuParams;
class RenderFrameHost;
class WebContents;
} // namespace content
namespace input {
struct NativeWebKeyboardEvent;
}
using ContextMenuParamsWithRenderFrameHost =
std::pair<content::ContextMenuParams, content::RenderFrameHost*>;
namespace gin {
template <>
struct Converter<blink::mojom::MenuItem::Type> {
static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
const blink::mojom::MenuItem::Type& val);
};
template <>
struct Converter<ContextMenuParamsWithRenderFrameHost> {
static v8::Local<v8::Value> ToV8(
v8::Isolate* isolate,
const ContextMenuParamsWithRenderFrameHost& val);
};
template <>
struct Converter<ui::mojom::MenuSourceType> {
static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
const ui::mojom::MenuSourceType& val);
static bool FromV8(v8::Isolate* isolate,
v8::Local<v8::Value> val,
ui::mojom::MenuSourceType* out);
};
template <>
struct Converter<blink::mojom::PermissionStatus> {
static bool FromV8(v8::Isolate* isolate,
v8::Local<v8::Value> val,
blink::mojom::PermissionStatus* out);
};
template <>
struct Converter<blink::PermissionType> {
static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
const blink::PermissionType& val);
};
template <>
struct Converter<content::StopFindAction> {
static bool FromV8(v8::Isolate* isolate,
v8::Local<v8::Value> val,
content::StopFindAction* out);
};
template <>
struct Converter<content::WebContents*> {
static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
content::WebContents* val);
static bool FromV8(v8::Isolate* isolate,
v8::Local<v8::Value> val,
content::WebContents** out);
};
template <>
struct Converter<content::Referrer> {
static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
const content::Referrer& val);
static bool FromV8(v8::Isolate* isolate,
v8::Local<v8::Value> val,
content::Referrer* out);
};
template <>
struct Converter<input::NativeWebKeyboardEvent> {
static bool FromV8(v8::Isolate* isolate,
v8::Local<v8::Value> val,
input::NativeWebKeyboardEvent* out);
static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
const input::NativeWebKeyboardEvent& in);
};
} // namespace gin
#endif // ELECTRON_SHELL_COMMON_GIN_CONVERTERS_CONTENT_CONVERTER_H_