src/eric7/WebBrowser/UserAgent/UserAgentMenu.py

branch
eric7
changeset 9221
bf71ee032bb4
parent 9209
b99e7fd55fd3
child 9413
80c06d472826
--- a/src/eric7/WebBrowser/UserAgent/UserAgentMenu.py	Wed Jul 13 11:16:20 2022 +0200
+++ b/src/eric7/WebBrowser/UserAgent/UserAgentMenu.py	Wed Jul 13 14:55:47 2022 +0200
@@ -21,66 +21,67 @@
     """
     Class implementing a menu to select the user agent string.
     """
+
     def __init__(self, title, url=None, parent=None):
         """
         Constructor
-        
+
         @param title title of the menu (string)
         @param url URL to set user agent for (QUrl)
         @param parent reference to the parent widget (QWidget)
         """
         super().__init__(title, parent)
-        
+
         self.__manager = None
         self.__url = url
         if self.__url:
             if self.__url.isValid():
                 from WebBrowser.WebBrowserWindow import WebBrowserWindow
+
                 self.__manager = WebBrowserWindow.userAgentsManager()
             else:
                 self.__url = None
-        
+
         self.aboutToShow.connect(self.__populateMenu)
-    
+
     def __populateMenu(self):
         """
         Private slot to populate the menu.
         """
         self.aboutToShow.disconnect(self.__populateMenu)
-        
+
         self.__actionGroup = QActionGroup(self)
-        
+
         # add default action
         self.__defaultUserAgent = QAction(self)
         self.__defaultUserAgent.setText(self.tr("Default"))
         self.__defaultUserAgent.setCheckable(True)
-        self.__defaultUserAgent.triggered.connect(
-            self.__switchToDefaultUserAgent)
+        self.__defaultUserAgent.triggered.connect(self.__switchToDefaultUserAgent)
         if self.__url:
             self.__defaultUserAgent.setChecked(
-                self.__manager.userAgentForUrl(self.__url) == "")
+                self.__manager.userAgentForUrl(self.__url) == ""
+            )
         else:
             from WebBrowser.WebBrowserPage import WebBrowserPage
-            self.__defaultUserAgent.setChecked(
-                WebBrowserPage.userAgent() == "")
+
+            self.__defaultUserAgent.setChecked(WebBrowserPage.userAgent() == "")
         self.addAction(self.__defaultUserAgent)
         self.__actionGroup.addAction(self.__defaultUserAgent)
         isChecked = self.__defaultUserAgent.isChecked()
-        
+
         # add default extra user agents
         isChecked = self.__addDefaultActions() or isChecked
-        
+
         # add other action
         self.addSeparator()
         self.__otherUserAgent = QAction(self)
         self.__otherUserAgent.setText(self.tr("Other..."))
         self.__otherUserAgent.setCheckable(True)
-        self.__otherUserAgent.triggered.connect(
-            self.__switchToOtherUserAgent)
+        self.__otherUserAgent.triggered.connect(self.__switchToOtherUserAgent)
         self.addAction(self.__otherUserAgent)
         self.__actionGroup.addAction(self.__otherUserAgent)
         self.__otherUserAgent.setChecked(not isChecked)
-    
+
     def __switchToDefaultUserAgent(self):
         """
         Private slot to set the default user agent.
@@ -89,29 +90,32 @@
             self.__manager.removeUserAgent(self.__url.host())
         else:
             from WebBrowser.WebBrowserPage import WebBrowserPage
+
             WebBrowserPage.setUserAgent("")
-    
+
     def __switchToOtherUserAgent(self):
         """
         Private slot to set a custom user agent string.
         """
         from WebBrowser.WebBrowserPage import WebBrowserPage
+
         userAgent, ok = QInputDialog.getText(
             self,
             self.tr("Custom user agent"),
             self.tr("User agent:"),
             QLineEdit.EchoMode.Normal,
-            WebBrowserPage.userAgent(resolveEmpty=True))
+            WebBrowserPage.userAgent(resolveEmpty=True),
+        )
         if ok:
             if self.__url:
                 self.__manager.setUserAgentForUrl(self.__url, userAgent)
             else:
                 WebBrowserPage.setUserAgent(userAgent)
-    
+
     def __changeUserAgent(self, act):
         """
         Private slot to change the user agent.
-        
+
         @param act reference to the action that triggered
         @type QAction
         """
@@ -119,25 +123,28 @@
             self.__manager.setUserAgentForUrl(self.__url, act.data())
         else:
             from WebBrowser.WebBrowserPage import WebBrowserPage
+
             WebBrowserPage.setUserAgent(act.data())
-    
+
     def __addDefaultActions(self):
         """
         Private slot to add the default user agent entries.
-        
+
         @return flag indicating that a user agent entry is checked (boolean)
         """
-        defaultUserAgents = QFile(os.path.join(
-            os.path.dirname(__file__), "UserAgentDefaults.xml"))
+        defaultUserAgents = QFile(
+            os.path.join(os.path.dirname(__file__), "UserAgentDefaults.xml")
+        )
         defaultUserAgents.open(QIODevice.OpenModeFlag.ReadOnly)
-        
+
         menuStack = []
         isChecked = False
-        
+
         if self.__url:
             currentUserAgentString = self.__manager.userAgentForUrl(self.__url)
         else:
             from WebBrowser.WebBrowserPage import WebBrowserPage
+
             currentUserAgentString = WebBrowserPage.userAgent()
         xml = QXmlStreamReader(defaultUserAgents)
         while not xml.atEnd():
@@ -148,47 +155,47 @@
                 else:
                     self.addSeparator()
                 continue
-            
+
             if xml.isStartElement() and xml.name() == "useragent":
                 attributes = xml.attributes()
                 title = attributes.value("description")
                 userAgent = attributes.value("useragent")
-                
+
                 act = QAction(self)
                 act.setText(title)
                 act.setData(userAgent)
                 act.setToolTip(userAgent)
                 act.setCheckable(True)
                 act.setChecked(userAgent == currentUserAgentString)
-                act.triggered.connect(
-                    functools.partial(self.__changeUserAgent, act))
+                act.triggered.connect(functools.partial(self.__changeUserAgent, act))
                 if menuStack:
                     menuStack[-1].addAction(act)
                 else:
                     self.addAction(act)
                 self.__actionGroup.addAction(act)
                 isChecked = isChecked or act.isChecked()
-            
+
             if xml.isStartElement() and xml.name() == "useragentmenu":
                 attributes = xml.attributes()
                 title = attributes.value("title")
                 if title == "v_a_r_i_o_u_s":
                     title = self.tr("Various")
-                
+
                 menu = QMenu(self)
                 menu.setTitle(title)
                 self.addMenu(menu)
                 menuStack.append(menu)
-            
+
             if xml.isEndElement() and xml.name() == "useragentmenu":
                 menuStack.pop()
-        
+
         if xml.hasError():
             EricMessageBox.critical(
                 self,
                 self.tr("Parsing default user agents"),
                 self.tr(
-                    """<p>Error parsing default user agents.</p><p>{0}</p>""")
-                .format(xml.errorString()))
-        
+                    """<p>Error parsing default user agents.</p><p>{0}</p>"""
+                ).format(xml.errorString()),
+            )
+
         return isChecked

eric ide

mercurial