PySide6.QtWebEngineCore.QWebEnginePermission¶
- class QWebEnginePermission¶
- A - QWebEnginePermissionis an object used to access and modify the state of a single permission that’s been granted or denied to a specific origin URL.- Details- The typical usage pattern is as follows: - A website requests a specific permission, triggering the - permissionRequested()signal;
- The signal handler triggers a prompt asking the user whether they want to grant the permission; 
- When the user has made their decision, the application calls - grant()or- deny();
 - Alternatively, an application interested in modifying already granted permissions may use - listAllPermissions()to get a list of existing permissions associated with a profile, or- queryPermission()to get a- QWebEnginePermissionobject for a specific permission.- The - origin()property can be used to query which origin the- QWebEnginePermissionis associated with, while the- permissionType()property describes the type of the requested permission. A website origin is the combination of its scheme, hostname, and port. Permissions are granted on a per-origin basis; thus, if the web page- https://www.example.com:12345/some/page.htmlrequests a permission, it will be granted to the origin- https://www.example.com:12345/.- PermissionTypedescribes all the permission types Qt WebEngine supports. Only some permission types are remembered between browsing sessions; they are persistent. Non-persistent permissions query the user every time a website requests them. You can check whether a permission type is persistent at runtime using the static method- isPersistent().- Persistent permissions are stored inside the active - QWebEngineProfile, and their lifetime depends on the value of- persistentPermissionsPolicy(). By default, named profiles store their permissions on disk, whereas off-the-record ones store them in memory (and destroy them when the profile is destroyed). A stored permission will not query the user the next time a website requests it; instead it will be automatically granted or denied, depending on the resolution the user picked initially. To erase a stored permission, call- reset()on it.- A non-persistent permission, on the other hand, is only usable until the related - QWebEnginePageperforms a navigation to a different URL, or is destroyed.- You can check whether a - QWebEnginePermissionis in a valid state using its- isValid()property. For invalid objects, calls to- grant(),- deny(), or- reset()will do nothing, while calls to- state()will always return- Invalid.- Added in version 6.8. - Synopsis¶- Properties¶- isValidᅟ- Indicates whether attempts to change the permission’s state will be successful
- originᅟ- URL of the permission’s associated origin
- permissionTypeᅟ- Permission type associated with this permission
- stateᅟ- Current state of the permission
 - Methods¶- Static functions¶- def - isPersistent()
 - Note - This documentation may contain snippets that were automatically translated from C++ to Python. We always welcome contributions to the snippet translation. If you see an issue with the translation, you can also let us know by creating a ticket on https:/bugreports.qt.io/projects/PYSIDE - class PermissionType¶
- This enum type holds the type of the requested permission type: - Constant - Description - QWebEnginePermission.PermissionType.PermissionType.MediaAudioCapture - Access to a microphone, or another audio source. This permission is not persistent. - QWebEnginePermission.PermissionType.PermissionType.MediaVideoCapture - Access to a webcam, or another video source. This permission is not persistent. - QWebEnginePermission.PermissionType.PermissionType.MediaAudioVideoCapture - Combination of MediaAudioCapture and MediaVideoCapture. This permission is not persistent. - QWebEnginePermission.PermissionType.PermissionType.DesktopVideoCapture - Access to the contents of the user’s screen. This permission is not persistent. - QWebEnginePermission.PermissionType.PermissionType.DesktopAudioVideoCapture - Access to the contents of the user’s screen, and application audio. This permission is not persistent. - QWebEnginePermission.PermissionType.PermissionType.MouseLock - Locks the pointer inside an element on the web page. This permission is not persistent. - QWebEnginePermission.PermissionType.PermissionType.Notifications - Allows the website to send notifications to the user. This permission is persistent. - QWebEnginePermission.PermissionType.PermissionType.Geolocation - Access to the user’s physical location. This permission is persistent. - QWebEnginePermission.PermissionType.PermissionType.ClipboardReadWrite - Access to the user’s clipboard. This permission is persistent. - QWebEnginePermission.PermissionType.PermissionType.LocalFontsAccess - Access to the fonts installed on the user’s machine. Only available on desktops. This permission is persistent. - QWebEnginePermission.PermissionType.PermissionType.Unsupported - An unsupported permission type. - Note - Non-persistent permission types are ones that will never be remembered by the underlying storage, and will trigger a permission request every time a website tries to use them. 
 - class State¶
- This enum type holds the current state of the requested permission: - Constant - Description - QWebEnginePermission.State.State.Invalid - Object is in an invalid state, and any attempts to modify the described permission will fail. - QWebEnginePermission.State.State.Ask - Either the permission has not been requested before, or the - permissionType()is not persistent.- QWebEnginePermission.State.State.Granted - Permission has already been granted. - QWebEnginePermission.State.State.Denied - Permission has already been denied. 
 - Note - Properties can be used directly when - from __feature__ import true_propertyis used or via accessor functions otherwise.- property isValidᅟ: bool¶
 - This property holds Indicates whether attempts to change the permission’s state will be successful.. - An invalid - QWebEnginePermissionis either:- One whose - permissionType()is unsupported;
- One whose - origin()is invalid;
- One whose associated profile has been destroyed 
 - See also - Access functions:
 - This property holds The URL of the permission’s associated origin.. - A website origin is the combination of its scheme, hostname, and port. Permissions are granted on a per-origin basis; thus, if the web page - https://www.example.com:12345/some/page.htmlrequests a permission, it will be granted to the origin- https://www.example.com:12345/.- Access functions:
 - property permissionTypeᅟ: QWebEnginePermission.PermissionType¶
 - This property holds The permission type associated with this permission.. - Access functions:
 - property stateᅟ: QWebEnginePermission.State¶
 - This property holds The current state of the permission.. - If a permission for the specified - permissionType()and- origin()has already been granted or denied, the return value is- Granted, or- Denied, respectively. When this is the first time the permission is requested, the return value is- Ask. If the object is in an invalid state, the returned value is- Invalid.- See also - Access functions:
 - __init__()¶
 - __init__(other)
- Parameters:
- other – - QWebEnginePermission
 
 - deny()¶
 - Stops the associated origin from accessing the requested - permissionType. Does nothing when- isValid()evaluates to false.- grant()¶
 - Allows the associated origin to access the requested - permissionType. Does nothing when- isValid()evaluates to false.- static isPersistent(permissionType)¶
- Parameters:
- permissionType – - PermissionType
- Return type:
- bool 
 
 - Returns whether a - permissionTypeis persistent, meaning that a permission’s state will be remembered and the user will not be queried the next time the website requests the same permission.- isValid()¶
- Return type:
- bool 
 
 - Getter of property - isValidᅟ.- __ne__(rhs)¶
- Parameters:
- rhs – - QWebEnginePermission
- Return type:
- bool 
 
 - __eq__(rhs)¶
- Parameters:
- rhs – - QWebEnginePermission
- Return type:
- bool 
 
 - Getter of property - originᅟ.- permissionType()¶
- Return type:
 
 - Getter of property - permissionTypeᅟ.- reset()¶
 - Removes the permission from the profile’s underlying storage. By default, permissions are stored on disk (except for off-the-record profiles, where permissions are stored in memory and are destroyed with the profile). This means that an already granted/denied permission will not be requested twice, but will get automatically granted/denied every subsequent time a website requests it. Calling reset() allows the query to be displayed again the next time the website requests it. - Does nothing when - isValid()evaluates to false.- Getter of property - stateᅟ.- swap(other)¶
- Parameters:
- other – - QWebEnginePermission