@@ -34,6 +34,10 @@ final class GeneralSettings: ObservableObject {
3434 /// in a separate bar below the menu bar.
3535 @Published var useIceBar = false
3636
37+ /// A Boolean value that indicates whether to use the Ice Bar
38+ /// only on displays with a notch.
39+ @Published var useIceBarOnlyOnNotchedDisplay = false
40+
3741 /// The location where the Ice Bar appears.
3842 @Published var iceBarLocation : IceBarLocation = . dynamic
3943
@@ -90,6 +94,7 @@ final class GeneralSettings: ObservableObject {
9094 Defaults . ifPresent ( key: . showIceIcon, assign: & showIceIcon)
9195 Defaults . ifPresent ( key: . customIceIconIsTemplate, assign: & customIceIconIsTemplate)
9296 Defaults . ifPresent ( key: . useIceBar, assign: & useIceBar)
97+ Defaults . ifPresent ( key: . useIceBarOnlyOnNotchedDisplay, assign: & useIceBarOnlyOnNotchedDisplay)
9398 Defaults . ifPresent ( key: . showOnClick, assign: & showOnClick)
9499 Defaults . ifPresent ( key: . showOnHover, assign: & showOnHover)
95100 Defaults . ifPresent ( key: . showOnScroll, assign: & showOnScroll)
@@ -163,6 +168,13 @@ final class GeneralSettings: ObservableObject {
163168 }
164169 . store ( in: & c)
165170
171+ $useIceBarOnlyOnNotchedDisplay
172+ . receive ( on: DispatchQueue . main)
173+ . sink { useIceBarOnlyOnNotchedDisplay in
174+ Defaults . set ( useIceBarOnlyOnNotchedDisplay, forKey: . useIceBarOnlyOnNotchedDisplay)
175+ }
176+ . store ( in: & c)
177+
166178 $iceBarLocation
167179 . receive ( on: DispatchQueue . main)
168180 . sink { location in
0 commit comments