### Preflight Checklist

- [X] I have read the [Contributing Guidelines](https://github.com/electron/electron/blob/main/CONTRIBUTING.md) for this project.
- [X] I agree to follow the [Code of Conduct](https://github.com/electron/electron/blob/main/CODE_OF_CONDUCT.md) that this project adheres to.
- [X] I have searched the [issue tracker](https://www.github.com/electron/electron/issues) for a feature request that matches the one I want to file, without success.

### Electron Version

15.1.0 / and all 16.0.0-alpha.x

### What operating system are you using?

Other Linux

### Operating System Version

kernel 5.14.7-2

### What arch are you using?

x64

### Last Known Working Electron version

15.0.0

### Expected Behavior

No error occurs.

### Actual Behavior

The `Failed to serialize arguments` error occurs on right mouse click on the webview's content.

### Testcase Gist URL

_No response_

### Additional Information

Notice there is no error when you do the right mouse click on the browserwindow's content but on webview's.

Notice that adding the "context-menu" handler is not even required.

The "input" controls were  added to the snippet just for the convenience of testing. The right mouse click on any area of webview triggers the error.

To reproduce:
```javascript
const {app, BrowserWindow} = require("electron")

app.whenReady().then(() => {
  //  app.on("web-contents-created", (...[/* event */, webContents]) => {
  //    webContents.on("context-menu", () => {/* NOOP */})
  //  })
  new BrowserWindow({webPreferences: {webviewTag: true}}).loadURL(`data:text/html,
    <html><body>
    <input type='text' value='input'>
    <webview src="data:text/html,<input type='text' value='webview input'>"></webview>
    </body></html>`,
  )
})
```
shell/common/gin_converters/content_converter.cc
v8::Isolate* isolate,
    const content::PermissionType& val) {
  using PermissionType = electron::WebContentsPermissionHelper::PermissionType;
  
  
  
  switch (val) {
    case content::PermissionType::ACCESSIBILITY_EVENTS:
      return StringToV8(isolate, "accessibility-events");
    case content::PermissionType::AR:
      return StringToV8(isolate, "ar");
    case content::PermissionType::BACKGROUND_FETCH:
      return StringToV8(isolate, "background-fetch");
    case content::PermissionType::BACKGROUND_SYNC:
      return StringToV8(isolate, "background-sync");
    case content::PermissionType::CLIPBOARD_READ_WRITE:
      return StringToV8(isolate, "clipboard-read");
    case content::PermissionType::CLIPBOARD_SANITIZED_WRITE:
      return StringToV8(isolate, "clipboard-sanitized-write");
    case content::PermissionType::FILE_HANDLING: