diff -r f0d60c3de700 -r 5ed91fe54bc9 WebBrowser/SafeBrowsing/SafeBrowsingManager.py --- a/WebBrowser/SafeBrowsing/SafeBrowsingManager.py Thu Jan 25 17:47:09 2018 +0100 +++ b/WebBrowser/SafeBrowsing/SafeBrowsingManager.py Thu Jan 25 18:50:49 2018 +0100 @@ -44,6 +44,11 @@ progressMessage = pyqtSignal(str, int) progress = pyqtSignal(int) + enabled = ( + Preferences.getWebBrowser("SafeBrowsingEnabled") and + bool(Preferences.getWebBrowser("SafeBrowsingApiKey")) + ) + def __init__(self): """ Constructor @@ -57,10 +62,6 @@ else: self.__apiClient = None - self.__enabled = ( - Preferences.getWebBrowser("SafeBrowsingEnabled") and - bool(self.__apiKey)) - gsbCachePath = os.path.join( Utilities.getConfigDir(), "web_browser", "safe_browsing") self.__cache = SafeBrowsingCache(gsbCachePath, self) @@ -89,7 +90,7 @@ self.__apiClient = SafeBrowsingAPIClient(self.__apiKey, parent=self) - self.__enabled = ( + SafeBrowsingManager.enabled = ( Preferences.getWebBrowser("SafeBrowsingEnabled") and bool(self.__apiKey)) @@ -111,14 +112,15 @@ platform = "linux" self.__platforms = SafeBrowsingAPIClient.getPlatformTypes(platform) - def isEnabled(self): + @classmethod + def isEnabled(cls): """ - Public method to check, if safe browsing is enabled. + Class method to check, if safe browsing is enabled. @return flag indicating the enabled state @rtype bool """ - return self.__enabled + return cls.enabled def close(self): """ @@ -133,7 +135,7 @@ @return flag indicating expiration @rtype bool """ - return self.__enabled and self.__apiClient.fairUseDelayExpired() + return self.isEnabled() and self.__apiClient.fairUseDelayExpired() def __showNotificationMessage(self, message, timeout=5): """ @@ -168,7 +170,7 @@ Private method to set auto update for the threat lists. """ autoUpdateEnabled = Preferences.getWebBrowser("SafeBrowsingAutoUpdate") - if autoUpdateEnabled and self.__enabled: + if autoUpdateEnabled and self.isEnabled(): nextUpdateDateTime = Preferences.getWebBrowser( "SafeBrowsingUpdateDateTime") if nextUpdateDateTime.isValid(): @@ -193,7 +195,7 @@ Private slot to perform the auto update of the threat lists. """ ok = False - if self.__enabled: + if self.isEnabled(): self.__showNotificationMessage( self.tr("Updating threat lists..."), 0) ok = self.updateHashPrefixCache()[0] @@ -224,7 +226,7 @@ @return flag indicating success and an error message @rtype tuple of (bool, str) """ - if not self.__enabled: + if not self.isEnabled(): return False, self.tr("Safe Browsing is disabled.") if not self.__apiClient.fairUseDelayExpired(): @@ -369,7 +371,7 @@ @rtype list of ThreatList @exception ValueError raised for an invalid URL """ - if self.__enabled: + if self.isEnabled(): if isinstance(url, QUrl): urlStr = url.toString().strip() else: