200 Preferences.getUI("DynamicOnlineCheck") and |
200 Preferences.getUI("DynamicOnlineCheck") and |
201 QNetworkInformation.load(QNetworkInformation.Feature.Reachability) |
201 QNetworkInformation.load(QNetworkInformation.Feature.Reachability) |
202 ): |
202 ): |
203 self.__reachabilityChanged( |
203 self.__reachabilityChanged( |
204 QNetworkInformation.instance().reachability()) |
204 QNetworkInformation.instance().reachability()) |
205 # TODO: remove this 'contextlib' with official release |
205 QNetworkInformation.instance().reachabilityChanged.connect( |
206 import contextlib |
206 self.__reachabilityChanged) |
207 with contextlib.suppress(Exception): |
|
208 QNetworkInformation.instance().reachabilityChanged.connect( |
|
209 self.__reachabilityChanged) |
|
210 else: |
207 else: |
211 # assume to be 'always online' if no backend could be loaded or |
208 # assume to be 'always online' if no backend could be loaded or |
212 # dynamic online check is switched of |
209 # dynamic online check is switched of |
213 self.__reachabilityChanged(QNetworkInformation.Reachability.Online) |
210 self.__reachabilityChanged(QNetworkInformation.Reachability.Online) |
214 |
211 |