eric6/WebBrowser/WebBrowserView.py

branch
maintenance
changeset 8273
698ae46f40a4
parent 8176
31965986ecd1
parent 8260
2161475d9639
--- 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(

eric ide

mercurial