eric6/WebBrowser/Sync/SyncManager.py

branch
maintenance
changeset 8273
698ae46f40a4
parent 8043
0acf98cd089a
parent 8240
93b8a353c4bf
equal deleted inserted replaced
8190:fb0ef164f536 8273:698ae46f40a4
4 # 4 #
5 5
6 """ 6 """
7 Module implementing the synchronization manager class. 7 Module implementing the synchronization manager class.
8 """ 8 """
9
10 import contextlib
9 11
10 from PyQt5.QtCore import QObject, pyqtSignal 12 from PyQt5.QtCore import QObject, pyqtSignal
11 13
12 import Preferences 14 import Preferences
13 15
38 """ 40 """
39 Constructor 41 Constructor
40 42
41 @param parent reference to the parent object (QObject) 43 @param parent reference to the parent object (QObject)
42 """ 44 """
43 super(SyncManager, self).__init__(parent) 45 super().__init__(parent)
44 46
45 self.__handler = None 47 self.__handler = None
46 48
47 def handler(self): 49 def handler(self):
48 """ 50 """
100 ( 102 (
101 WebBrowserWindow.bookmarksManager() 103 WebBrowserWindow.bookmarksManager()
102 .bookmarksSaved.connect(self.__syncBookmarks) 104 .bookmarksSaved.connect(self.__syncBookmarks)
103 ) 105 )
104 else: 106 else:
105 try: 107 with contextlib.suppress(TypeError):
106 ( 108 (
107 WebBrowserWindow.bookmarksManager() 109 WebBrowserWindow.bookmarksManager()
108 .bookmarksSaved.disconnect(self.__syncBookmarks) 110 .bookmarksSaved.disconnect(self.__syncBookmarks)
109 ) 111 )
110 except TypeError:
111 pass
112 112
113 # connect sync manager to history manager 113 # connect sync manager to history manager
114 if Preferences.getWebBrowser("SyncHistory"): 114 if Preferences.getWebBrowser("SyncHistory"):
115 ( 115 (
116 WebBrowserWindow.historyManager().historySaved 116 WebBrowserWindow.historyManager().historySaved
117 .connect(self.__syncHistory) 117 .connect(self.__syncHistory)
118 ) 118 )
119 else: 119 else:
120 try: 120 with contextlib.suppress(TypeError):
121 ( 121 (
122 WebBrowserWindow.historyManager() 122 WebBrowserWindow.historyManager()
123 .historySaved.disconnect(self.__syncHistory) 123 .historySaved.disconnect(self.__syncHistory)
124 ) 124 )
125 except TypeError:
126 pass
127 125
128 # connect sync manager to passwords manager 126 # connect sync manager to passwords manager
129 if Preferences.getWebBrowser("SyncPasswords"): 127 if Preferences.getWebBrowser("SyncPasswords"):
130 ( 128 (
131 WebBrowserWindow.passwordManager() 129 WebBrowserWindow.passwordManager()
132 .passwordsSaved.connect(self.__syncPasswords) 130 .passwordsSaved.connect(self.__syncPasswords)
133 ) 131 )
134 else: 132 else:
135 try: 133 with contextlib.suppress(TypeError):
136 ( 134 (
137 WebBrowserWindow.passwordManager() 135 WebBrowserWindow.passwordManager()
138 .passwordsSaved.disconnect(self.__syncPasswords) 136 .passwordsSaved.disconnect(self.__syncPasswords)
139 ) 137 )
140 except TypeError:
141 pass
142 138
143 # connect sync manager to user agent manager 139 # connect sync manager to user agent manager
144 if Preferences.getWebBrowser("SyncUserAgents"): 140 if Preferences.getWebBrowser("SyncUserAgents"):
145 ( 141 (
146 WebBrowserWindow.userAgentsManager() 142 WebBrowserWindow.userAgentsManager()
147 .userAgentSettingsSaved.connect(self.__syncUserAgents) 143 .userAgentSettingsSaved.connect(self.__syncUserAgents)
148 ) 144 )
149 else: 145 else:
150 try: 146 with contextlib.suppress(TypeError):
151 ( 147 (
152 WebBrowserWindow.userAgentsManager() 148 WebBrowserWindow.userAgentsManager()
153 .userAgentSettingsSaved.disconnect( 149 .userAgentSettingsSaved.disconnect(
154 self.__syncUserAgents) 150 self.__syncUserAgents)
155 ) 151 )
156 except TypeError:
157 pass
158 152
159 # connect sync manager to speed dial 153 # connect sync manager to speed dial
160 if Preferences.getWebBrowser("SyncSpeedDial"): 154 if Preferences.getWebBrowser("SyncSpeedDial"):
161 ( 155 (
162 WebBrowserWindow.speedDial() 156 WebBrowserWindow.speedDial()
163 .speedDialSaved.connect(self.__syncSpeedDial) 157 .speedDialSaved.connect(self.__syncSpeedDial)
164 ) 158 )
165 else: 159 else:
166 try: 160 with contextlib.suppress(TypeError):
167 ( 161 (
168 WebBrowserWindow.speedDial() 162 WebBrowserWindow.speedDial()
169 .speedDialSaved.disconnect(self.__syncSpeedDial) 163 .speedDialSaved.disconnect(self.__syncSpeedDial)
170 ) 164 )
171 except TypeError:
172 pass
173 else: 165 else:
174 self.__handler = None 166 self.__handler = None
175 167
176 try: 168 with contextlib.suppress(TypeError):
177 ( 169 (
178 WebBrowserWindow.bookmarksManager() 170 WebBrowserWindow.bookmarksManager()
179 .bookmarksSaved.disconnect(self.__syncBookmarks) 171 .bookmarksSaved.disconnect(self.__syncBookmarks)
180 ) 172 )
181 except TypeError: 173 with contextlib.suppress(TypeError):
182 pass
183 try:
184 ( 174 (
185 WebBrowserWindow.historyManager().historySaved 175 WebBrowserWindow.historyManager().historySaved
186 .disconnect(self.__syncHistory) 176 .disconnect(self.__syncHistory)
187 ) 177 )
188 except TypeError: 178 with contextlib.suppress(TypeError):
189 pass
190 try:
191 ( 179 (
192 WebBrowserWindow.passwordManager() 180 WebBrowserWindow.passwordManager()
193 .passwordsSaved.disconnect(self.__syncPasswords) 181 .passwordsSaved.disconnect(self.__syncPasswords)
194 ) 182 )
195 except TypeError: 183 with contextlib.suppress(TypeError):
196 pass
197 try:
198 ( 184 (
199 WebBrowserWindow.userAgentsManager() 185 WebBrowserWindow.userAgentsManager()
200 .userAgentSettingsSaved.disconnect(self.__syncUserAgents) 186 .userAgentSettingsSaved.disconnect(self.__syncUserAgents)
201 ) 187 )
202 except TypeError: 188 with contextlib.suppress(TypeError):
203 pass
204 try:
205 WebBrowserWindow.speedDial().speedDialSaved.disconnect( 189 WebBrowserWindow.speedDial().speedDialSaved.disconnect(
206 self.__syncSpeedDial) 190 self.__syncSpeedDial)
207 except TypeError:
208 pass
209 191
210 def syncEnabled(self): 192 def syncEnabled(self):
211 """ 193 """
212 Public method to check, if synchronization is enabled. 194 Public method to check, if synchronization is enabled.
213 195

eric ide

mercurial