@@ -35,7 +35,10 @@ final class ThemeModel: ObservableObject {
3535 @Published
3636 var selectedLightTheme : Theme ? {
3737 didSet {
38- AppPreferencesModel . shared. preferences. theme. selectedLightTheme = selectedLightTheme? . name ?? " Broken "
38+ DispatchQueue . main. async {
39+ AppPreferencesModel . shared
40+ . preferences. theme. selectedLightTheme = self . selectedLightTheme? . name ?? " Broken "
41+ }
3942 }
4043 }
4144
@@ -44,7 +47,10 @@ final class ThemeModel: ObservableObject {
4447 @Published
4548 var selectedDarkTheme : Theme ? {
4649 didSet {
47- AppPreferencesModel . shared. preferences. theme. selectedDarkTheme = selectedDarkTheme? . name ?? " Broken "
50+ DispatchQueue . main. async {
51+ AppPreferencesModel . shared
52+ . preferences. theme. selectedDarkTheme = self . selectedDarkTheme? . name ?? " Broken "
53+ }
4854 }
4955 }
5056
@@ -66,15 +72,16 @@ final class ThemeModel: ObservableObject {
6672 var themes : [ Theme ] = [ ] {
6773 didSet {
6874 saveThemes ( )
69- objectWillChange. send ( )
7075 }
7176 }
7277
7378 /// The currently selected ``Theme``.
7479 @Published
7580 var selectedTheme : Theme ? {
7681 didSet {
77- AppPreferencesModel . shared. preferences. theme. selectedTheme = selectedTheme? . name
82+ DispatchQueue . main. async {
83+ AppPreferencesModel . shared. preferences. theme. selectedTheme = self . selectedTheme? . name
84+ }
7885 updateAppearanceTheme ( )
7986 }
8087 }
@@ -310,7 +317,9 @@ final class ThemeModel: ObservableObject {
310317 newAttr [ " editor " ] ? [ key] = value
311318 }
312319 }
313- AppPreferencesModel . shared. preferences. theme. overrides [ theme. name] = newAttr
320+ DispatchQueue . main. async {
321+ AppPreferencesModel . shared. preferences. theme. overrides [ theme. name] = newAttr
322+ }
314323
315324 } catch {
316325 print ( error)
0 commit comments