--- a/eric6/WebBrowser/WebBrowserView.py Fri Apr 02 11:59:41 2021 +0200 +++ b/eric6/WebBrowser/WebBrowserView.py Sat May 01 14:27:20 2021 +0200 @@ -10,6 +10,7 @@ import os import functools +import contextlib from PyQt5.QtCore import ( pyqtSignal, pyqtSlot, Qt, QUrl, QFileInfo, QTimer, QEvent, QPoint, @@ -84,7 +85,7 @@ @param parent parent widget of this window (QWidget) @param name name of this window (string) """ - super(WebBrowserView, self).__init__(parent) + super().__init__(parent) self.setObjectName(name) self.__rwhvqt = None @@ -149,28 +150,18 @@ self.__page.safeBrowsingAbort.connect(self.safeBrowsingAbort) self.__page.safeBrowsingBad.connect(self.safeBrowsingBad) self.__page.printPageRequested.connect(self.__printPage) - try: - self.__page.quotaRequested.connect(self.__quotaRequested) - # The registerProtocolHandlerRequested signal is handled in - # WebBrowserPage. - except AttributeError: - # pre Qt 5.11 - pass - try: - self.__page.selectClientCertificate.connect( - self.__selectClientCertificate) - except AttributeError: - # pre Qt 5.12 - pass - try: + self.__page.quotaRequested.connect(self.__quotaRequested) + # The registerProtocolHandlerRequested signal is handled in + # WebBrowserPage. + self.__page.selectClientCertificate.connect( + self.__selectClientCertificate) + with contextlib.suppress(AttributeError, ImportError): + #- Qt >= 5.14 from PyQt5.QtWebEngineCore import QWebEngineFindTextResult # __IGNORE_WARNING__ self.__page.findTextFinished.connect( self.__findTextFinished) - except (AttributeError, ImportError): - # pre Qt 5.14 - pass def __setRwhvqt(self): """ @@ -224,7 +215,7 @@ ): return - super(WebBrowserView, self).load(url) + super().load(url) if not self.__firstLoad: self.__firstLoad = True @@ -1264,10 +1255,11 @@ return engineName = act.data() - if engineName: - engine = self.__mw.openSearchManager().engine(engineName) - else: - engine = self.__mw.openSearchManager().currentEngine() + engine = ( + self.__mw.openSearchManager().engine(engineName) + if engineName else + self.__mw.openSearchManager().currentEngine() + ) if engine: self.search.emit(engine.searchUrl(searchText)) @@ -1362,7 +1354,7 @@ evt.acceptProposedAction() if not evt.isAccepted(): - super(WebBrowserView, self).dragMoveEvent(evt) + super().dragMoveEvent(evt) def dropEvent(self, evt): """ @@ -1370,7 +1362,7 @@ @param evt reference to the drop event (QDropEvent) """ - super(WebBrowserView, self).dropEvent(evt) + super().dropEvent(evt) if ( not evt.isAccepted() and evt.source() != self and @@ -1521,11 +1513,10 @@ @param evt reference to the key event (QKeyEvent) """ - if evt.key() == Qt.Key.Key_Escape: - if self.isFullScreen(): - self.triggerPageAction(QWebEnginePage.WebAction.ExitFullScreen) - evt.accept() - self.requestFullScreen(False) + if evt.key() == Qt.Key.Key_Escape and self.isFullScreen(): + self.triggerPageAction(QWebEnginePage.WebAction.ExitFullScreen) + evt.accept() + self.requestFullScreen(False) def _gestureEvent(self, evt): """ @@ -1620,12 +1611,10 @@ QEvent.Type.Gesture]: return True - elif evt.type() == QEvent.Type.Hide: - if self.isFullScreen(): - self.triggerPageAction( - QWebEnginePage.WebAction.ExitFullScreen) + elif evt.type() == QEvent.Type.Hide and self.isFullScreen(): + self.triggerPageAction(QWebEnginePage.WebAction.ExitFullScreen) - return super(WebBrowserView, self).eventFilter(obj, evt) + return super().eventFilter(obj, evt) def event(self, evt): """ @@ -1638,7 +1627,7 @@ self._gestureEvent(evt) return True - return super(WebBrowserView, self).event(evt) + return super().event(evt) def inputWidget(self): """ @@ -1683,14 +1672,11 @@ self.__siteIconLoader.deleteLater() self.__siteIconLoader = WebIconLoader(url, self) self.__siteIconLoader.iconLoaded.connect(self.__iconLoaded) - try: + with contextlib.suppress(AttributeError): self.__siteIconLoader.sslConfiguration.connect( self.page().setSslConfiguration) self.__siteIconLoader.clearSslConfiguration.connect( self.page().clearSslConfiguration) - except AttributeError: - # no SSL available - pass def __iconLoaded(self, icon): """ @@ -1726,7 +1712,7 @@ @return view title @rtype str """ - titleStr = super(WebBrowserView, self).title() + titleStr = super().title() if not titleStr: if self.url().isEmpty(): url = self.__page.requestedUrl() @@ -2143,7 +2129,7 @@ @param evt reference to the show event object @type QShowEvent """ - super(WebBrowserView, self).showEvent(evt) + super().showEvent(evt) self.activateSession() def activateSession(self): @@ -2243,15 +2229,8 @@ @return tuple containing the title, URL and web icon @rtype tuple of (str, str, QIcon) """ - if "Title" in sessionData: - title = sessionData["Title"] - else: - title = "" - - if "Url" in sessionData: - urlStr = sessionData["Url"] - else: - urlStr = "" + title = sessionData.get("Title", "") + urlStr = sessionData.get("Url", "") if "Icon" in sessionData: iconArray = QByteArray.fromBase64(