diff --git a/src/lib/tools/html5permissions/html5permissionsnotification.cpp b/src/lib/tools/html5permissions/html5permissionsnotification.cpp
index ebca9f968..b0483d2f2 100644
--- a/src/lib/tools/html5permissions/html5permissionsnotification.cpp
+++ b/src/lib/tools/html5permissions/html5permissionsnotification.cpp
@@ -81,7 +81,15 @@ void HTML5PermissionsNotification::grantPermissions()
return;
}
- m_page->setFeaturePermission(m_origin, m_feature, QWebEnginePage::PermissionGrantedByUser);
+ QTimer::singleShot(0, this, [this]() {
+ // We need to have cursor inside view to correctly grab mouse
+ if (m_feature == QWebEnginePage::MouseLock) {
+ QWidget *view = m_page->view();
+ QCursor::setPos(view->mapToGlobal(view->rect().center()));
+ }
+
+ m_page->setFeaturePermission(m_origin, m_feature, QWebEnginePage::PermissionGrantedByUser);
+ });
if (ui->remember->isChecked()) {
mApp->html5PermissionsManager()->rememberPermissions(m_origin, m_feature, QWebEnginePage::PermissionGrantedByUser);