mirror of
https://github.com/electron/electron.git
synced 2026-04-10 03:01:51 -04:00
feat: add USB protected classes handler (#38498)
feat: add USB protected classes handler (#38263)
* feat: add USB protected classes handler
* chore: apply review suggestions
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* chore: update docs
* chore: apply review suggestions
* update doc per suggestion
---------
Co-authored-by: Charles Kerr <charles@charleskerr.com>
(cherry picked from commit b4ec363b3d)
This commit is contained in:
committed by
GitHub
parent
a21fa57cae
commit
18b2a4e957
@@ -71,6 +71,7 @@
|
||||
#include "shell/common/gin_converters/gurl_converter.h"
|
||||
#include "shell/common/gin_converters/media_converter.h"
|
||||
#include "shell/common/gin_converters/net_converter.h"
|
||||
#include "shell/common/gin_converters/usb_protected_classes_converter.h"
|
||||
#include "shell/common/gin_converters/value_converter.h"
|
||||
#include "shell/common/gin_helper/dictionary.h"
|
||||
#include "shell/common/gin_helper/object_template_builder.h"
|
||||
@@ -697,6 +698,18 @@ void Session::SetDevicePermissionHandler(v8::Local<v8::Value> val,
|
||||
permission_manager->SetDevicePermissionHandler(handler);
|
||||
}
|
||||
|
||||
void Session::SetUSBProtectedClassesHandler(v8::Local<v8::Value> val,
|
||||
gin::Arguments* args) {
|
||||
ElectronPermissionManager::ProtectedUSBHandler handler;
|
||||
if (!(val->IsNull() || gin::ConvertFromV8(args->isolate(), val, &handler))) {
|
||||
args->ThrowTypeError("Must pass null or function");
|
||||
return;
|
||||
}
|
||||
auto* permission_manager = static_cast<ElectronPermissionManager*>(
|
||||
browser_context()->GetPermissionControllerDelegate());
|
||||
permission_manager->SetProtectedUSBHandler(handler);
|
||||
}
|
||||
|
||||
void Session::SetBluetoothPairingHandler(v8::Local<v8::Value> val,
|
||||
gin::Arguments* args) {
|
||||
ElectronPermissionManager::BluetoothPairingHandler handler;
|
||||
@@ -1262,6 +1275,8 @@ gin::ObjectTemplateBuilder Session::GetObjectTemplateBuilder(
|
||||
&Session::SetDisplayMediaRequestHandler)
|
||||
.SetMethod("setDevicePermissionHandler",
|
||||
&Session::SetDevicePermissionHandler)
|
||||
.SetMethod("setUSBProtectedClassesHandler",
|
||||
&Session::SetUSBProtectedClassesHandler)
|
||||
.SetMethod("setBluetoothPairingHandler",
|
||||
&Session::SetBluetoothPairingHandler)
|
||||
.SetMethod("clearHostResolverCache", &Session::ClearHostResolverCache)
|
||||
|
||||
@@ -109,6 +109,8 @@ class Session : public gin::Wrappable<Session>,
|
||||
gin::Arguments* args);
|
||||
void SetDevicePermissionHandler(v8::Local<v8::Value> val,
|
||||
gin::Arguments* args);
|
||||
void SetUSBProtectedClassesHandler(v8::Local<v8::Value> val,
|
||||
gin::Arguments* args);
|
||||
void SetBluetoothPairingHandler(v8::Local<v8::Value> val,
|
||||
gin::Arguments* args);
|
||||
v8::Local<v8::Promise> ClearHostResolverCache(gin::Arguments* args);
|
||||
|
||||
Reference in New Issue
Block a user