Fix permissions build issues

This commit is contained in:
Lea Anthony
2023-10-25 20:06:53 +11:00
parent 1650e26da7
commit 1ce83913bd
2 changed files with 26 additions and 6 deletions
@@ -28,6 +28,26 @@ const (
Tabbed BackdropType = 4
)
type CoreWebView2PermissionKind uint32
const (
CoreWebView2PermissionKindUnknownPermission CoreWebView2PermissionKind = iota
CoreWebView2PermissionKindMicrophone
CoreWebView2PermissionKindCamera
CoreWebView2PermissionKindGeolocation
CoreWebView2PermissionKindNotifications
CoreWebView2PermissionKindOtherSensors
CoreWebView2PermissionKindClipboardRead
)
type CoreWebView2PermissionState uint32
const (
CoreWebView2PermissionStateDefault CoreWebView2PermissionState = iota
CoreWebView2PermissionStateAllow
CoreWebView2PermissionStateDeny
)
type WindowsWindow struct {
// Select the type of translucent backdrop. Requires Windows 11 22621 or later.
// Only used when window's `BackgroundType` is set to `BackgroundTypeTranslucent`.
@@ -96,7 +116,7 @@ type WindowsWindow struct {
OnOverEffect DragEffect
// Permissions map for WebView2. If empty, default permissions will be granted.
Permissions map[uint32]uint32
Permissions map[CoreWebView2PermissionKind]CoreWebView2PermissionState
}
type Theme int
+5 -5
View File
@@ -1309,12 +1309,12 @@ func (w *windowsWebviewWindow) setupChromium() {
chromium.AdditionalBrowserArgs = append(chromium.AdditionalBrowserArgs, arg)
}
//if opts.Permissions != nil {
// for permission, state := range opts.Permissions {
// chromium.SetPermission(edge.CoreWebView2PermissionKind(permission),
if opts.Permissions != nil {
for permission, state := range opts.Permissions {
chromium.SetPermission(edge.CoreWebView2PermissionKind(permission),
edge.CoreWebView2PermissionState(state))
// }
//}
}
}
chromium.MessageCallback = w.processMessage
chromium.MessageWithAdditionalObjectsCallback = w.processMessageWithAdditionalObjects