diff --git a/app/settings.py b/app/settings.py
index 7a18c524..17da7698 100644
--- a/app/settings.py
+++ b/app/settings.py
@@ -757,6 +757,14 @@ class Settings:
def is_darwin(self):
return IS_DARWIN
+ @property
+ def force_external_themes(self):
+ return self._settings.get("force_external_themes", False)
+
+ @force_external_themes.setter
+ def force_external_themes(self, value):
+ self._settings["force_external_themes"] = value
+
# *********** Download dialog *********** #
@property
diff --git a/app/ui/settings_dialog.glade b/app/ui/settings_dialog.glade
index 8673c6e2..552df5fa 100644
--- a/app/ui/settings_dialog.glade
+++ b/app/ui/settings_dialog.glade
@@ -464,6 +464,7 @@ Author: Dmitriy Yefremov
False
5
10
+ True
+
+ False
+ True
+ 2
+
+
+
+
+ False
+ Enables forced use of external themes on macOS.
+ 5
+
+
+ True
+ False
+ start
+ True
+ Force external themes on macOS
+
+
+ False
+ True
+ 0
+
+
+
+
+ True
+ True
+ end
+
+
+ False
+ True
+ end
+ 1
+
+
+
False
True
diff --git a/app/ui/settings_dialog.py b/app/ui/settings_dialog.py
index e1b7357c..29245463 100644
--- a/app/ui/settings_dialog.py
+++ b/app/ui/settings_dialog.py
@@ -216,6 +216,8 @@ class SettingsDialog:
builder.get_object("themes_support_frame").set_visible(True)
self._layout_switch = builder.get_object("layout_switch")
self._layout_switch.set_active(self._ext_settings.alternate_layout)
+ self._force_ext_themes_switch = builder.get_object("force_ext_themes_switch")
+ self._force_ext_themes_switch.set_active(self._settings.force_external_themes)
self._theme_frame = builder.get_object("theme_frame")
self._theme_frame.set_visible(True)
self._theme_thumbnail_image = builder.get_object("theme_thumbnail_image")
@@ -399,6 +401,7 @@ class SettingsDialog:
self._ext_settings.is_themes_support = self._themes_support_switch.get_active()
self._ext_settings.theme = self._theme_combo_box.get_active_id()
self._ext_settings.icon_theme = self._icon_theme_combo_box.get_active_id()
+ self._ext_settings.force_external_themes = self._force_ext_themes_switch.get_active()
if self._s_type is SettingsType.ENIGMA_2:
self._ext_settings.is_enable_experimental = self._enable_exp_switch.get_active()