146 Preferences.getUI("DynamicOnlineCheck") and |
146 Preferences.getUI("DynamicOnlineCheck") and |
147 QNetworkInformation.load(QNetworkInformation.Feature.Reachability) |
147 QNetworkInformation.load(QNetworkInformation.Feature.Reachability) |
148 ): |
148 ): |
149 self.__reachabilityChanged( |
149 self.__reachabilityChanged( |
150 QNetworkInformation.instance().reachability()) |
150 QNetworkInformation.instance().reachability()) |
151 QNetworkInformation.instance().reachabilityChanged.connect( |
151 # TODO: remove this 'contextlib' with official relelase |
152 self.__reachabilityChanged) |
152 import contextlib |
|
153 with contextlib.suppress(Exception): |
|
154 QNetworkInformation.instance().reachabilityChanged.connect( |
|
155 self.__reachabilityChanged) |
153 else: |
156 else: |
154 # assume to be 'always online' if no backend could be loaded or |
157 # assume to be 'always online' if no backend could be loaded or |
155 # dynamic online check is switched of |
158 # dynamic online check is switched of |
156 self.__reachabilityChanged(QNetworkInformation.Reachability.Online) |
159 self.__reachabilityChanged(QNetworkInformation.Reachability.Online) |
157 |
160 |