Задать вопрос
@WD_KMS

Как разрешить веб-уведомления в QtWebEngine?

from PyQt5.QtWebEngineWidgets import QWebEngineView, QWebEnginePage

Загружаю HTML, которая при открытии в браузере запрашивает разрешение на отправку веб-уведомлений.
self.page = QWebEnginePage()
        self.page.Notifications = True
        self.page.setHtml(html)

используя
messaging.requestPermission

Но если запускать html-ку в WebEngine, то страница сама со скриптами грузится, но запрос не отобразить.

Как установить разрешение это со стороны бэка?
Notification.permission
выдает denied.
  • Вопрос задан
  • 142 просмотра
Подписаться 1 Средний Комментировать
Решения вопроса 1
@WD_KMS Автор вопроса
class WebEnginePage(QWebEnginePage):
    def __init__(self, *args, **kwargs):
        QWebEnginePage.__init__(self, *args, **kwargs)
        self.featurePermissionRequested.connect(self.onFeaturePermissionRequested)

    def onFeaturePermissionRequested(self, url, feature):
        if feature == WebEnginePage.Notifications:
            self.setFeaturePermission(url, feature, QWebEnginePage.PermissionGrantedByUser)
        else:
            self.setFeaturePermission(url, feature, QWebEnginePage.PermissionDeniedByUser)

view = QWebEngineView()
page = WebEnginePage()
view.setPage(page)
view.load(QUrl("https://"))
page.setHtml(html)
view.show()
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы