Helpviewer/HelpBrowserWV.py

branch
5_0_x
changeset 756
49b238881de5
parent 652
ea67a963d7f6
child 792
a13346916170
diff -r 35c614c84e23 -r 49b238881de5 Helpviewer/HelpBrowserWV.py
--- a/Helpviewer/HelpBrowserWV.py	Sun Dec 12 17:22:55 2010 +0100
+++ b/Helpviewer/HelpBrowserWV.py	Sun Dec 19 13:17:35 2010 +0100
@@ -164,6 +164,11 @@
         self.__lastRequest = request
         self.__lastRequestType = type_
         
+        scheme = request.url().scheme()
+        if scheme in ["mailto", "ftp"]:
+            QDesktopServices.openUrl(request.url())
+            return False
+        
         return QWebPage.acceptNavigationRequest(self, frame, request, type_)
     
     def populateNetworkRequest(self, request):
@@ -441,10 +446,9 @@
                     """ for URL <b>{0}</b>.</p>""").format(name.toString()))
             return
         elif name.scheme() == "javascript":
-            scriptSource = name.toString()[11:]
-            res = self.page().mainFrame().evaluateJavaScript(scriptSource)
-            if res:
-                self.setHtml(res)
+            scriptSource = QUrl.fromPercentEncoding(name.toString(
+                QUrl.FormattingOptions(QUrl.TolerantMode | QUrl.RemoveScheme)))
+            self.page().mainFrame().evaluateJavaScript(scriptSource)
             return
         else:
             if name.toString().endswith(".pdf") or \

eric ide

mercurial