Sat, 05 Mar 2016 19:52:00 +0100
Continued porting the web browser.
- added web engine version info to the About dialog
--- a/UI/UserInterface.py Sat Mar 05 18:40:16 2016 +0100 +++ b/UI/UserInterface.py Sat Mar 05 19:52:00 2016 +0100 @@ -3023,6 +3023,7 @@ .format(qWebKitVersion()) except ImportError: pass + # TODO: add QtWebEngine version info versionText += """<tr><td><b>{0}</b></td><td>{1}</td></tr>"""\ .format(Program, Version) versionText += self.tr("""</table>""")
--- a/WebBrowser/Tools/WebBrowserTools.py Sat Mar 05 18:40:16 2016 +0100 +++ b/WebBrowser/Tools/WebBrowserTools.py Sat Mar 05 19:52:00 2016 +0100 @@ -14,8 +14,9 @@ pass import os +import re -from PyQt5.QtCore import QFile, QByteArray, QUrl +from PyQt5.QtCore import QFile, QByteArray, QUrl, QCoreApplication from PyQt5.QtGui import QPixmap @@ -149,3 +150,28 @@ pixmap.loadFromData(barray) return pixmap + + +def getWebEngineVersions(): + """ + Module function to extract the web engine version from the default user + agent string. + + @return tuple containing the Chrome version and the QtWebEngine version + @rtype tuple of str + """ + from WebBrowser.WebBrowserWindow import WebBrowserWindow + useragent = WebBrowserWindow.webProfile().defaultUserAgent + match = re.search(r"""Chrome/([\d.]+)""", useragent) + if match: + chromeVersion = match.group(1) + else: + chromeVersion = QCoreApplication.translate( + "WebBrowserTools", "<unknown>") + match = re.search(r"""QtWebEngine/([\d.]+)""", useragent) + if match: + webengineVersion = match.group(1) + else: + webengineVersion = QCoreApplication.translate( + "WebBrowserTools", "<unknown>") + return (chromeVersion, webengineVersion)
--- a/WebBrowser/WebBrowserWindow.py Sat Mar 05 18:40:16 2016 +0100 +++ b/WebBrowser/WebBrowserWindow.py Sat Mar 05 19:52:00 2016 +0100 @@ -2267,6 +2267,8 @@ """ Private slot to show the about information. """ + chromeVersion, webengineVersion = \ + WebBrowserTools.getWebEngineVersions() E5MessageBox.about( self, self.tr("eric6 Web Browser"), @@ -2275,7 +2277,8 @@ """<p>The eric6 Web Browser is a combined help file and HTML""" """ browser. It is part of the eric6 development""" """ toolset.</p>""" - ).format(Version)) + """<p>It is based on QtWebEngine {1} and Chrome {2}.</p>""" + ).format(Version, webengineVersion, chromeVersion)) def __aboutQt(self): """