QWebEngineProfile Class | Qt WebEngine | Qt 6.10.3
Description: The QWebEngineProfile class provides a web engine profile shared by multiple pages.

- Qt 6.10
- Qt WebEngine
- C++ Classes
- QtWebEngineCore
- QWebEngineProfile
- Qt 6.10.3 Reference Documentation

# QWebEngineProfile Class

The QWebEngineProfile class provides a web engine profile shared by multiple pages. More...

Header: | `#include <QWebEngineProfile>`
CMake: | `find_package(Qt6 REQUIRED COMPONENTS WebEngineCore)` `target_link_libraries(mytarget PRIVATE Qt6::WebEngineCore)`
qmake: | `QT += webenginecore`
Inherits: | QObject

- List of all members, including inherited members

## Public Types

enum | HttpCacheType { MemoryHttpCache, DiskHttpCache, NoCache }
enum | PersistentCookiesPolicy { NoPersistentCookies, AllowPersistentCookies, ForcePersistentCookies }
`(since 6.8)` enum class | PersistentPermissionsPolicy { AskEveryTime, StoreInMemory, StoreOnDisk }

## Public Functions

| QWebEngineProfile(QObject *parent = nullptr)
| QWebEngineProfile(const QString &storageName, QObject *parent = nullptr)
`(since 6.10)` QList<QSslCertificate> | additionalTrustedCertificates() const
QString | cachePath() const
void | clearAllVisitedLinks()
void | clearHttpCache()
void | clearVisitedLinks(const QList<QUrl> &urls)
QWebEngineClientCertificateStore * | clientCertificateStore()
`(since 6.8)` QWebEngineClientHints * | clientHints() const
QWebEngineCookieStore * | cookieStore()
QString | downloadPath() const
`(since 6.10)` QWebEngineExtensionManager * | extensionManager() const
QString | httpAcceptLanguage() const
int | httpCacheMaximumSize() const
QWebEngineProfile::HttpCacheType | httpCacheType() const
QString | httpUserAgent() const
void | installUrlSchemeHandler(const QByteArray &scheme, QWebEngineUrlSchemeHandler *handler)
bool | isOffTheRecord() const
`(since 6.5)` bool | isPushServiceEnabled() const
bool | isSpellCheckEnabled() const
`(since 6.8)` QList<QWebEnginePermission> | listAllPermissions() const
`(since 6.8)` QList<QWebEnginePermission> | listPermissionsForOrigin(const QUrl &securityOrigin) const
`(since 6.8)` QList<QWebEnginePermission> | listPermissionsForPermissionType(QWebEnginePermission::PermissionType permissionType) const
QWebEngineProfile::PersistentCookiesPolicy | persistentCookiesPolicy() const
`(since 6.8)` QWebEngineProfile::PersistentPermissionsPolicy | persistentPermissionsPolicy() const
QString | persistentStoragePath() const
`(since 6.8)` QWebEnginePermission | queryPermission(const QUrl &securityOrigin, QWebEnginePermission::PermissionType permissionType) const
void | removeAllUrlSchemeHandlers()
void | removeUrlScheme(const QByteArray &scheme)
void | removeUrlSchemeHandler(QWebEngineUrlSchemeHandler *handler)
`(since 6.2)` void | requestIconForIconURL(const QUrl &url, int desiredSizeInPixel, std::function<void (const QIcon &, const QUrl &)> iconAvailableCallback) const
`(since 6.2)` void | requestIconForPageURL(const QUrl &url, int desiredSizeInPixel, std::function<void (const QIcon &, const QUrl &, const QUrl &)> iconAvailableCallback) const
QWebEngineScriptCollection * | scripts() const
void | setCachePath(const QString &path)
void | setDownloadPath(const QString &path)
void | setHttpAcceptLanguage(const QString &httpAcceptLanguage)
void | setHttpCacheMaximumSize(int maxSize)
void | setHttpCacheType(QWebEngineProfile::HttpCacheType httpCacheType)
void | setHttpUserAgent(const QString &userAgent)
void | setNotificationPresenter(std::function<void (std::unique_ptr<QWebEngineNotification>)> notificationPresenter)
void | setPersistentCookiesPolicy(QWebEngineProfile::PersistentCookiesPolicy newPersistentCookiesPolicy)
`(since 6.8)` void | setPersistentPermissionsPolicy(QWebEngineProfile::PersistentPermissionsPolicy newPersistentPermissionsPolicy)
void | setPersistentStoragePath(const QString &path)
`(since 6.5)` void | setPushServiceEnabled(bool enable)
void | setSpellCheckEnabled(bool enable)
void | setSpellCheckLanguages(const QStringList &languages)
void | setUrlRequestInterceptor(QWebEngineUrlRequestInterceptor *interceptor)
QWebEngineSettings * | settings() const
QStringList | spellCheckLanguages() const
QString | storageName() const
const QWebEngineUrlSchemeHandler * | urlSchemeHandler(const QByteArray &scheme) const
bool | visitedLinksContainsUrl(const QUrl &url) const

## Signals

`(since 6.7)` void | clearHttpCacheCompleted()
void | downloadRequested(QWebEngineDownloadRequest *download)

## Static Public Members

QWebEngineProfile * | defaultProfile()

## Detailed Description

A web engine profile contains settings, scripts, persistent cookie policy, and the list of visited links shared by all web engine pages that belong to the profile.

All pages that belong to the profile share a common QWebEngineSettings instance, which can be accessed with the settings() method. Likewise, the scripts() method provides access to a common QWebEngineScriptCollection instance.

Information about visited links is stored together with persistent cookies and other persistent data in a storage returned by storageName(). Persistent data is stored in a subdirectory set by calling setPersistentStoragePath(), and the cache is located in a subdirectory set by calling setCachePath(). The cache type can be set to in-memory or on-disk by calling setHttpCacheType(). If only the storage name is set, the subdirectories are created and named automatically. If you set any of the values manually, you should do it before creating any pages that belong to the profile.

The cache can be cleared of links by calling clearVisitedLinks() or clearAllVisitedLinks(). PersistentCookiesPolicy describes whether session and persistent cookies are saved to and restored from memory or disk.

Profiles can be used to isolate pages from each other. A typical use case is a dedicated off-the-record profile for a private browsing mode. Using QWebEngineProfile() without defining a storage name constructs a new off-the-record profile that leaves no record on the local machine, and has no persistent data or cache. The isOffTheRecord() method can be used to check whether a profile is off-the-record.

The default profile can be accessed by defaultProfile(). It is a built-in profile that all web pages not specifically created with another profile belong to.

Implementing the QWebEngineUrlRequestInterceptor interface and registering the interceptor on a profile by setUrlRequestInterceptor() enables intercepting, blocking, and modifying URL requests (QWebEngineUrlRequestInfo) before they reach the networking stack of Chromium.

A QWebEngineUrlSchemeHandler can be registered for a profile by installUrlSchemeHandler() to add support for custom URL schemes. Requests for the scheme are then issued to QWebEngineUrlSchemeHandler::requestStarted() as QWebEngineUrlRequestJob objects.

Spellchecking HTML form fields can be enabled per profile by using the setSpellCheckEnabled() method and the current languages used for spellchecking can be set by using the setSpellCheckLanguages() method.

## Member Type Documentation

### enum QWebEngineProfile::HttpCacheType

This enum describes the HTTP cache type:

Constant | Value | Description
--- | --- | ---
`QWebEngineProfile::MemoryHttpCache` | `0` | Use an in-memory cache. This is the default if `off-the-record` is set.
`QWebEngineProfile::DiskHttpCache` | `1` | Use a disk cache. This is the default if the profile is not `off-the-record`. If set on an `off-the-record` profile will instead set `MemoryHttpCache`.
`QWebEngineProfile::NoCache (since Qt 5.7)` | `2` | Disable both in-memory and disk caching.

### enum QWebEngineProfile::PersistentCookiesPolicy

This enum describes policy for cookie persistence:

Constant | Value | Description
--- | --- | ---
`QWebEngineProfile::NoPersistentCookies` | `0` | Both session and persistent cookies are stored in memory. This is the only setting possible if `off-the-record` is set or no persistent data path is available.
`QWebEngineProfile::AllowPersistentCookies` | `1` | Cookies marked persistent are saved to and restored from disk, whereas session cookies are only stored to disk for crash recovery. This is the default setting.
`QWebEngineProfile::ForcePersistentCookies` | `2` | Both session and persistent cookies are saved to and restored from disk.

### `[since 6.8]` enum class QWebEngineProfile::PersistentPermissionsPolicy

This enum describes the policy for permission persistence:

Constant | Value | Description
--- | --- | ---
`QWebEngineProfile::PersistentPermissionsPolicy::AskEveryTime` | `0` | The application will ask for permissions every time they're needed, regardless of whether they've been granted before or not. This is intended for backwards compatibility with existing applications, and otherwise not recommended.
`QWebEngineProfile::PersistentPermissionsPolicy::StoreInMemory` | `1` | A request will be made only the first time a permission is needed. Any subsequent requests will be automatically granted or denied, depending on the initial user choice. This carries over to all pages that use the same QWebEngineProfile instance, until the application is shut down. This is the setting applied if `off-the-record` is set or no persistent data path is available.
`QWebEngineProfile::PersistentPermissionsPolicy::StoreOnDisk` | `2` | Works the same way as `StoreInMemory`, but the permissions are saved to and restored from disk. This is the default setting.

This enum was introduced in Qt 6.8.

## Member Function Documentation

### `[explicit]` QWebEngineProfile::QWebEngineProfile(QObject *parent = nullptr)

Constructs a new off-the-record profile with the parent parent.

An off-the-record profile leaves no record on the local machine, and has no persistent data or cache. Thus, the HTTP cache can only be in memory and the cookies can only be non-persistent. Trying to change these settings will have no effect.

See also isOffTheRecord().

### `[explicit]` QWebEngineProfile::QWebEngineProfile(const QString &storageName, QObject *parent = nullptr)

Constructs a new profile with the storage name storageName and parent parent.

The storage name must be unique.

A disk-based QWebEngineProfile should be destroyed on or before application exit, otherwise the cache and persistent data may not be fully flushed to disk.

See also storageName().

### `[since 6.10]` QList<QSslCertificate> QWebEngineProfile::additionalTrustedCertificates() const

Returns additional trusted certificates in this profile's CA certificate database.

This function was introduced in Qt 6.10.

See also QWebEngineProfileBuilder::setAdditionalTrustedCertificates().

### QString QWebEngineProfile::cachePath() const

Returns the path used for caches.

By default, this is below StandardPaths::CacheLocation in a QtWebengine/StorageName specific subdirectory.

Note: Use QStandardPaths::writableLocation(QStandardPaths::CacheLocation) to obtain the QStandardPaths::CacheLocation path.

See also setCachePath(), storageName(), and QStandardPaths::writableLocation().

### void QWebEngineProfile::clearAllVisitedLinks()

Clears all links from the visited links database.

See also clearVisitedLinks().

### void QWebEngineProfile::clearHttpCache()

Removes the profile's cache entries.

Note: Make sure that you do not start new navigation or any operation on the profile while the clear operation is in progress. The clearHttpCacheCompleted() signal notifies about the completion.

See also QWebEngineProfile::clearHttpCacheCompleted().

### `[signal, since 6.7]` void QWebEngineProfile::clearHttpCacheCompleted()

This signal is emitted when the clearHttpCache() operation is completed.

This function was introduced in Qt 6.7.

See also QWebEngineProfile::clearHttpCache().

### void QWebEngineProfile::clearVisitedLinks(const QList<QUrl> &urls)

Clears the links in urls from the visited links database.

See also clearAllVisitedLinks().

### QWebEngineClientCertificateStore *QWebEngineProfile::clientCertificateStore()

Returns the profile's client certificate store.

### `[since 6.8]` QWebEngineClientHints *QWebEngineProfile::clientHints() const

Return the Client Hints settings associated with this browsing context.

This function was introduced in Qt 6.8.

See also QWebEngineClientHints.

### QWebEngineCookieStore *QWebEngineProfile::cookieStore()

Returns the cookie store for this profile.

### `[static]` QWebEngineProfile *QWebEngineProfile::defaultProfile()

Returns the default profile.

The default profile is off-the-record.

See also storageName().

### QString QWebEngineProfile::downloadPath() const

The path to the location where the downloaded files are stored.

Note: By default, the download path is QStandardPaths::DownloadLocation.

See also setDownloadPath() and QStandardPaths::writableLocation().

### `[signal]` void QWebEngineProfile::downloadRequested(QWebEngineDownloadRequest *download)

This signal is emitted whenever a download has been triggered. The download argument holds the state of the download. The download has to be explicitly accepted with QWebEngineDownloadRequest::accept() or it will be cancelled by default. The download item is parented by the profile. If it is not accepted, it will be deleted immediately after the signal emission. This signal cannot be used with a queued connection.

See also QWebEngineDownloadRequest and QWebEnginePage::download().

### `[since 6.10]` QWebEngineExtensionManager *QWebEngineProfile::extensionManager() const

Returns the extension manager associated with this browsing context.

This function was introduced in Qt 6.10.

See also QWebEngineExtensionManager.

### QString QWebEngineProfile::httpAcceptLanguage() const

Returns the value of the Accept-Language HTTP request-header field.

See also setHttpAcceptLanguage().

### int QWebEngineProfile::httpCacheMaximumSize() const

Returns the maximum size of the HTTP cache in bytes.

Will return `0` if the size is automatically controlled by QtWebEngine.

See also setHttpCacheMaximumSize() and httpCacheType().

### QWebEngineProfile::HttpCacheType QWebEngineProfile::httpCacheType() const

Returns the type of HTTP cache used.

If the profile is off-the-record, MemoryHttpCache is returned.

See also setHttpCacheType() and cachePath().

### QString QWebEngineProfile::httpUserAgent() const

Returns the user-agent string sent with HTTP to identify the browser.

Note: On Windows 8.1 and newer, the default user agent will always report "Windows NT 6.2" (Windows 8), unless the application does contain a manifest that declares newer Windows versions as supported.

See also setHttpUserAgent() and Windows Application Manifest.

### void QWebEngineProfile::installUrlSchemeHandler(const QByteArray &scheme, QWebEngineUrlSchemeHandler *handler)

Registers a handler handler for custom URL scheme scheme in the profile.

It is necessary to first register the scheme with QWebEngineUrlScheme::registerScheme at application startup.

### bool QWebEngineProfile::isOffTheRecord() const

Returns `true` if this is an off-the-record profile that leaves no record on the computer.

This will force cookies and HTTP cache to be in memory, but also force all other normally persistent data to be stored in memory.

### `[since 6.5]` bool QWebEngineProfile::isPushServiceEnabled() const

Returns `true` if the push messaging service is enabled.

Note: By default, the push messaging service is disabled.

This function was introduced in Qt 6.5.

See also setPushServiceEnabled().

### bool QWebEngineProfile::isSpellCheckEnabled() const

Returns `true` if the spell checker is enabled; otherwise returns `false`.

See also setSpellCheckEnabled().

### `[since 6.8]` QList<QWebEnginePermission> QWebEngineProfile::listAllPermissions() const

Returns a QList of QWebEnginePermission objects, each one representing a single permission currently present in the permissions store. The returned list contains all previously granted/denied permissions for this profile, provided they are of a persistent type.

Note: When persistentPermissionPolicy() is set to `AskEveryTime`, this will return an empty list.

This function was introduced in Qt 6.8.

See also queryPermission(), QWebEnginePermission::PermissionType, and QWebEnginePermission::isPersistent().

### `[since 6.8]` QList<QWebEnginePermission> QWebEngineProfile::listPermissionsForOrigin(const QUrl &securityOrigin) const

Returns a QList of QWebEnginePermission objects, each one representing a single permission currently present in the permissions store. The returned list contains all previously granted/denied permissions associated with a specific securityOrigin for this profile, provided they are of a persistent type.

Note: Since permissions are granted on a per-origin basis, the provided securityOrigin will be stripped to its origin form, and the returned list will contain all permissions for the origin. Thus, passing https://www.example.com/some/page.html is the same as passing just https://www.example.com/.

Note: When persistentPermissionPolicy() is set to `AskEveryTime`, this will return an empty list.

This function was introduced in Qt 6.8.

See also queryPermission(), QWebEnginePermission::PermissionType, and QWebEnginePermission::isPersistent().

### `[since 6.8]` QList<QWebEnginePermission> QWebEngineProfile::listPermissionsForPermissionType(QWebEnginePermission::PermissionType permissionType) const

Returns a QList of QWebEnginePermission objects, each one representing a single permission currently present in the permissions store. The returned list contains all previously granted/denied permissions of the provided permissionType. If the permissionType is non-persistent, the list will be empty.

Note: When persistentPermissionPolicy() is set to `AskEveryTime`, this will return an empty list.

This function was introduced in Qt 6.8.

See also queryPermission(), QWebEnginePermission::PermissionType, and QWebEnginePermission::isPersistent().

### QWebEngineProfile::PersistentCookiesPolicy QWebEngineProfile::persistentCookiesPolicy() const

Returns the current policy for persistent cookies.

If the profile is off-the-record, NoPersistentCookies is returned.

See also setPersistentCookiesPolicy().

### `[since 6.8]` QWebEngineProfile::PersistentPermissionsPolicy QWebEngineProfile::persistentPermissionsPolicy() const

Returns the current policy for persistent permissions.

Off-the-record profiles are not allowed to save data to the disk, so they can only return `StoreInMemory` or `AskEveryTime`.

This function was introduced in Qt 6.8.

See also QWebEngineProfile::PersistentPermissionsPolicy and setPersistentPermissionsPolicy().

### QString QWebEngineProfile::persistentStoragePath() const

Returns the path used to store persistent data for the browser and web content.

Persistent data includes persistent cookies, HTML5 local storage, and visited links.

By default, this is below QStandardPaths::DataLocation in a QtWebengine/StorageName specific subdirectory.

Note: Use QStandardPaths::writableLocation(QStandardPaths::DataLocation) to obtain the QStandardPaths::DataLocation path.

See also setPersistentStoragePath(), storageName(), and QStandardPaths::writableLocation().

### `[since 6.8]` QWebEnginePermission QWebEngineProfile::queryPermission(const QUrl &securityOrigin, QWebEnginePermission::PermissionType permissionType) const

Returns a QWebEnginePermission object corresponding to a single permission for the provided securityOrigin and permissionType. The object may be used to query for the current state of the permission, or to change it. It is not required for a permission to already exist; the returned object may also be used to pre-grant a permission if a website is known to use it.

You may use this to pre-grant a permission of a non-persistent type. Doing so will keep the permission in the granted (or denied) state until the next time a website with the associated origin requests it. At that point, the permission's lifetime will be tied to that specific web page's lifetime, and navigating away will invalidate the permission.

This function was introduced in Qt 6.8.

See also listAllPermissions(), listPermissionsForOrigin(), listPermissionsForPermissionType(), and QWebEnginePermission::PermissionType.

### void QWebEngineProfile::removeAllUrlSchemeHandlers()

Removes all custom URL scheme handlers installed in the profile.

### void QWebEngineProfile::removeUrlScheme(const QByteArray &scheme)

Removes the custom URL scheme scheme from the profile.

See also removeUrlSchemeHandler().

### void QWebEngineProfile::removeUrlSchemeHandler(QWebEngineUrlSchemeHandler *handler)

Removes the custom URL scheme handler handler from the profile.

See also removeUrlScheme().

### `[since 6.2]` void QWebEngineProfile::requestIconForIconURL(const QUrl &url, int desiredSizeInPixel, std::function<void (const QIcon &, const QUrl &)> iconAvailableCallback) const

Requests an icon with the specified url from the database. Each profile has its own icon database and it is stored in the persistent storage thus the stored icons can be accessed without network connection too. The icon must be previously loaded to be stored in the database.

url specifies the URL of the icon. In case of more than one available icons the one with the size closest to desiredSizeInPixel will be returned. The result icon is resized to desiredSizeInPixel. If desiredSizeInPixel is 0 the largest available icon is returned.

This function is asynchronous and the result is returned by iconAvailableCallback. The callback is called if a request for an icon is performed. If the requested icon is available, the first parameter (with type QIcon) is the result. Otherwise, it is null.

The second parameter stores the URL of the requested icon. It is empty if the icon can't be fetched.

Note: Icons can't be requested with an off-the-record profile.

This function was introduced in Qt 6.2.

See also requestIconForPageURL().

### `[since 6.2]` void QWebEngineProfile::requestIconForPageURL(const QUrl &url, int desiredSizeInPixel, std::function<void (const QIcon &, const QUrl &, const QUrl &)> iconAvailableCallback) const

Requests an icon for a previously loaded page with this profile from the database. Each profile has its own icon database and it is stored in the persistent storage thus the stored icons can be accessed without network connection too. The icon must be previously loaded to be stored in the database.

url specifies the URL of the page what the icon is requested for. In case of more than one available icons the one with the size closest to desiredSizeInPixel will be returned. The result icon is resized to desiredSizeInPixel. If desiredSizeInPixel is 0 the largest available icon is returned.

This function is asynchronous and the result is returned by iconAvailableCallback. The callback is called if a request for an icon is performed. If the requested icon is available, the first parameter (with type QIcon) is the result. Otherwise, it is null.

The second parameter stores the URL of the requested icon. It is empty if the icon can't be fetched.

The third parameter stores the URL of the page which the icon is assigned.

Note: Icons can't be requested with an off-the-record profile.

This function was introduced in Qt 6.2.

See also requestIconForIconURL().

### QWebEngineScriptCollection *QWebEngineProfile::scripts() const

Returns the collection of scripts that are injected into all pages that share this profile.

See also QWebEngineScriptCollection, QWebEngineScript, QWebEnginePage::scripts(), and Script Injection.

### void QWebEngineProfile::setCachePath(const QString &path)

Overrides the default path used for disk caches, setting it to path.

If set to the null string, the default path is restored.

See also cachePath().

### void QWebEngineProfile::setDownloadPath(const QString &path)

Overrides the default path used for download location, setting it to path.

If set to the null string, the default path is restored.

See also downloadPath().

### void QWebEngineProfile::setHttpAcceptLanguage(const QString &httpAcceptLanguage)

Sets the value of the Accept-Language HTTP request-header field to httpAcceptLanguage.

See also httpAcceptLanguage().

### void QWebEngineProfile::setHttpCacheMaximumSize(int maxSize)

Sets the maximum size of the HTTP cache to maxSize bytes.

Setting it to `0` means the size will be controlled automatically by QtWebEngine.

See also httpCacheMaximumSize() and setHttpCacheType().

### void QWebEngineProfile::setHttpCacheType(QWebEngineProfile::HttpCacheType httpCacheType)

Sets the HTTP cache type to httpCacheType.

Note: Setting the httpCacheType to NoCache on the profile, which has already some cache entries does not trigger the removal of those entries.

See also httpCacheType(), setCachePath(), and clearHttpCache().

### void QWebEngineProfile::setHttpUserAgent(const QString &userAgent)

Overrides the default user-agent string, setting it to userAgent.

See also httpUserAgent().

### void QWebEngineProfile::setNotificationPresenter(std::function<void (std::unique_ptr<QWebEngineNotification>)> notificationPresenter)

Sets the function notificationPresenter as responsible for presenting sent notifications.

See also QWebEngineNotification.

### void QWebEngineProfile::setPersistentCookiesPolicy(QWebEngineProfile::PersistentCookiesPolicy newPersistentCookiesPolicy)

Sets the policy for persistent cookies to newPersistentCookiesPolicy.

See also persistentCookiesPolicy().

### `[since 6.8]` void QWebEngineProfile::setPersistentPermissionsPolicy(QWebEngineProfile::PersistentPermissionsPolicy newPersistentPermissionsPolicy)

Sets the policy for persistent permissions to newPersistentPermissionsPolicy.

This function was introduced in Qt 6.8.

See also QWebEngineProfile::PersistentPermissionsPolicy and persistentPermissionsPolicy().

### void QWebEngineProfile::setPersistentStoragePath(const QString &path)

Overrides the default path used to store persistent web engine data.

If path is set to the null string, the default path is restored.

See also persistentStoragePath().

### `[since 6.5]` void QWebEngineProfile::setPushServiceEnabled(bool enable)

Enables the push messaging service if enable is `true`, otherwise disables it.

Note: Qt WebEngine uses Firebase Cloud Messaging (FCM) as a browser push service. Therefore, all push messages will go through the Google push service and its respective servers.

This function was introduced in Qt 6.5.

See also isPushServiceEnabled().

### void QWebEngineProfile::setSpellCheckEnabled(bool enable)

Enables spell checker if enable is `true`, otherwise disables it.

See also isSpellCheckEnabled().

### void QWebEngineProfile::setSpellCheckLanguages(const QStringList &languages)

Sets the current list of languages for the spell checker. Each language should match the name of the `.bdic` dictionary. For example, the language `en-US` will load the `en-US.bdic` dictionary file.

See the Spellchecker feature documentation for how dictionary files are searched.

For more information about how to compile `.bdic` dictionaries, see the Spellchecker Example.

See also spellCheckLanguages().

### void QWebEngineProfile::setUrlRequestInterceptor(QWebEngineUrlRequestInterceptor *interceptor)

Registers a request interceptor singleton interceptor to intercept URL requests.

The profile does not take ownership of the pointer.

See also QWebEngineUrlRequestInfo and QWebEngineUrlRequestInterceptor.

### QWebEngineSettings *QWebEngineProfile::settings() const

Returns the default settings for all pages in this profile.

### QStringList QWebEngineProfile::spellCheckLanguages() const

Returns the list of languages used by the spell checker.

See also setSpellCheckLanguages().

### QString QWebEngineProfile::storageName() const

Returns the storage name for the profile.

The storage name is used to give each profile that uses the disk separate subdirectories for persistent data and cache.

### const QWebEngineUrlSchemeHandler *QWebEngineProfile::urlSchemeHandler(const QByteArray &scheme) const

Returns the custom URL scheme handler register for the URL scheme scheme.

### bool QWebEngineProfile::visitedLinksContainsUrl(const QUrl &url) const

Returns `true` if url is considered a visited link by this profile.