Philipp Hörist pushed to branch master at gajim / gajim
Commits:
3c550df0 by Philipp Hörist at 2024-02-06T19:39:36+01:00
fix: Settings: Include all default settings as fallback
- - - - -
1 changed file:
- gajim/common/settings.py
Changes:
=====================================
gajim/common/settings.py
=====================================
@@ -935,12 +935,18 @@ def get_group_chat_setting(self,
return self.get_app_setting(f'gc_{setting}_default')
if default is HAS_ACCOUNT_DEFAULT:
- context_default_setting = f'gc_{setting}_{context}_default'
- if context_default_setting in ACCOUNT_SETTINGS['account']:
- return self.get_account_setting(account,
- context_default_setting)
- return self.get_account_setting(account,
- f'gc_{setting}_default')
+ default_settings = [
+ f'gc_{setting}_{context}_default',
+ f'gc_{setting}_default',
+ f'{setting}_default',
+ ]
+
+ for default_setting in default_settings:
+ if default_setting in ACCOUNT_SETTINGS['account']:
+ return self.get_account_setting(
+ account, default_setting)
+
+ raise ValueError(f'No default setting found for {setting}')
return default
@@ -997,9 +1003,20 @@ def set_group_chat_setting(self,
if default is HAS_ACCOUNT_DEFAULT:
default_store = ACCOUNT_SETTINGS['account']
- default = default_store.get(f'gc_{setting}_{context}_default')
+ default_settings = [
+ f'gc_{setting}_{context}_default',
+ f'gc_{setting}_default',
+ f'{setting}_default',
+ ]
+
+ default = None
+ for default_setting in default_settings:
+ if default_setting in default_store:
+ default = default_store.get(default_setting)
+ break
+
if default is None:
- default = default_store.get(f'gc_{setting}_default')
+ raise ValueError(f'No default setting found for {setting}')
if not isinstance(value, type(default)) and value is not None:
raise TypeError(f'Invalid type for {setting}: '
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/commit/3c550df062a5fb4c2a9195861e87c20499cc0bca
--
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/commit/3c550df062a5fb4c2a9195861e87c20499cc0bca
You're receiving this email because of your account on dev.gajim.org.
_______________________________________________
Commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]