eric6/WebBrowser/Sync/SyncManager.py

changeset 8240
93b8a353c4bf
parent 8218
7c09585bd960
child 8273
698ae46f40a4
equal deleted inserted replaced
8239:59a9a658618c 8240:93b8a353c4bf
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
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