WebBrowser/WebBrowserWindow.py

changeset 6121
d3d64f3128b3
parent 6093
5ed91fe54bc9
child 6126
6c4509eceea2
diff -r 4c60a21ce6dd -r d3d64f3128b3 WebBrowser/WebBrowserWindow.py
--- a/WebBrowser/WebBrowserWindow.py	Wed Feb 07 18:57:46 2018 +0100
+++ b/WebBrowser/WebBrowserWindow.py	Wed Feb 07 20:14:09 2018 +0100
@@ -1914,7 +1914,8 @@
             """<p>Shows the tab manager window.</p>"""
         ))
         if not self.__initShortcutsOnly:
-            self.showTabManagerAct.triggered.connect(self.__showTabManager)
+            self.showTabManagerAct.triggered.connect(
+                lambda: self.__showTabManager(self.showTabManagerAct))
         self.__actions.append(self.showTabManagerAct)
         
         self.showSessionsManagerAct = E5Action(
@@ -2002,7 +2003,8 @@
         if not self.isPrivate():
             sessionsMenu = menu.addMenu(self.tr("Sessions"))
             sessionsMenu.aboutToShow.connect(
-                self.sessionManager().aboutToShowSessionsMenu)
+                lambda: self.sessionManager().aboutToShowSessionsMenu(
+                    sessionsMenu))
             menu.addAction(self.showSessionsManagerAct)
             menu.addSeparator()
         if self.saveAsAct is not None:
@@ -2189,7 +2191,8 @@
         if not self.isPrivate():
             sessionsMenu = self.__superMenu.addMenu(self.tr("Sessions"))
             sessionsMenu.aboutToShow.connect(
-                self.sessionManager().aboutToShowSessionsMenu)
+                lambda: self.sessionManager().aboutToShowSessionsMenu(
+                    sessionsMenu))
             self.__superMenu.addAction(self.showSessionsManagerAct)
             self.__superMenu.addSeparator()
         
@@ -3222,7 +3225,8 @@
             self, 'Configuration', True, fromEric=self.__fromEric,
             displayMode=ConfigurationDialog.WebBrowserMode)
         dlg.preferencesChanged.connect(self.preferencesChanged)
-        dlg.masterPasswordChanged.connect(self.masterPasswordChanged)
+        dlg.masterPasswordChanged.connect(
+            lambda old, new: self.masterPasswordChanged(old, new, local=True))
         dlg.show()
         if self.__lastConfigurationPageName:
             dlg.showConfigurationPageByName(self.__lastConfigurationPageName)
@@ -3290,16 +3294,20 @@
         
         self.sessionManager().preferencesChanged()
     
-    def masterPasswordChanged(self, oldPassword, newPassword):
+    def masterPasswordChanged(self, oldPassword, newPassword, local=False):
         """
         Public slot to handle the change of the master password.
         
-        @param oldPassword current master password (string)
-        @param newPassword new master password (string)
-        """
-        from Preferences.ConfigurationDialog import ConfigurationDialog
+        @param oldPassword current master password
+        @type str
+        @param newPassword new master password
+        @type str
+        @param local flag indicating being called from the local configuration
+            dialog
+        @type bool
+        """
         self.passwordManager().masterPasswordChanged(oldPassword, newPassword)
-        if self.__fromEric and isinstance(self.sender(), ConfigurationDialog):
+        if self.__fromEric and local:
             # we were called from our local configuration dialog
             Preferences.convertPasswords(oldPassword, newPassword)
             Utilities.crypto.changeRememberedMaster(newPassword)
@@ -4071,11 +4079,14 @@
         
         return cls._tabManager
     
-    def __showTabManager(self):
+    def __showTabManager(self, act):
         """
         Private method to show the tab manager window.
-        """
-        self.tabManager().raiseTabManager()
+        
+        @param act reference to the act that triggered
+        @type QAction
+        """
+        self.tabManager().raiseTabManager(act)
     
     @classmethod
     def mainWindow(cls):
@@ -4448,20 +4459,23 @@
         feedsManager.newBackgroundTab.connect(self.openUrlNewBackgroundTab)
         feedsManager.newWindow.connect(self.openUrlNewWindow)
         feedsManager.newPrivateWindow.connect(self.openUrlNewPrivateWindow)
-        feedsManager.rejected.connect(self.__feedsManagerClosed)
+        feedsManager.rejected.connect(
+            lambda fm: self.__feedsManagerClosed(fm))
         feedsManager.show()
     
-    def __feedsManagerClosed(self):
+    def __feedsManagerClosed(self, feedsManager):
         """
         Private slot to handle closing the feeds manager dialog.
-        """
-        feedsManager = self.sender()
+        
+        @param feedsManager reference to the feeds manager object
+        @type FeedsManager
+        """
         feedsManager.openUrl.disconnect(self.openUrl)
         feedsManager.newTab.disconnect(self.openUrlNewTab)
         feedsManager.newBackgroundTab.disconnect(self.openUrlNewBackgroundTab)
         feedsManager.newWindow.disconnect(self.openUrlNewWindow)
         feedsManager.newPrivateWindow.disconnect(self.openUrlNewPrivateWindow)
-        feedsManager.rejected.disconnect(self.__feedsManagerClosed)
+        feedsManager.rejected.disconnect()
     
     def __showSiteinfoDialog(self):
         """

eric ide

mercurial