啓用HTML5通知
的WebKit有一個插件系統,有點晦澀,但QupZilla傢伙做了一個插件來獲得與QWebView工作的通知。
他們的源代碼在QupZilla plugins project。只需使用項目中提供的簡單步驟進行編譯和安裝即可完成:現在,您的webkit將能夠顯示通知。
但是你的應用默認不能使用它們。
只有當網頁請求通知時,您的應用才能使用。你的應用程序無法強制它。
一個簡單的例子:
class Wrapper(QWebView):
def __init__(self, window):
QWebView.__init__(self)
# Other stuff here, like load URL, etc
self.page().featurePermissionRequested.connect(self.permissionRequested)
def permissionRequested(self, frame, feature):
self.page().setFeaturePermission(frame, feature, QWebPage.PermissionGrantedByUser)
這將捕獲的JavaScript請求允許啓用通知。
替代解決方案
我的第一個解決方案之前找到QupZilla插件是使用qtwebkit-bridge
,所以不是使用HTML5的通知,我已經注入的JavaScript頁面捉對通知的電話,然後使用原生系統通知。
我想到了一種可能的解決方法:使用qtwebkit-bridge並構建本機Notification對象。但我不知道我是否可以重寫webkit通知。 – 2015-02-08 15:31:47