mirror of
https://github.com/FBukovina/Atoll.git
synced 2026-10-28 15:44:32 +00:00
Update stuff
This commit is contained in:
parent
1d6946134c
commit
9214c61544
18 changed files with 985 additions and 118 deletions
|
|
@ -22,13 +22,16 @@ final class ExtensionAuthorizationManager: ObservableObject {
|
|||
var isExtensionsFeatureEnabled: Bool { Defaults[.enableThirdPartyExtensions] }
|
||||
var areLiveActivitiesEnabled: Bool { Defaults[.enableExtensionLiveActivities] }
|
||||
var areLockScreenWidgetsEnabled: Bool { Defaults[.enableExtensionLockScreenWidgets] }
|
||||
var areNotchExperiencesEnabled: Bool { Defaults[.enableExtensionNotchExperiences] }
|
||||
|
||||
func updateFeatureToggles(extensionsEnabled: Bool? = nil,
|
||||
liveActivitiesEnabled: Bool? = nil,
|
||||
lockScreenWidgetsEnabled: Bool? = nil) {
|
||||
lockScreenWidgetsEnabled: Bool? = nil,
|
||||
notchExperiencesEnabled: Bool? = nil) {
|
||||
if let extensionsEnabled { Defaults[.enableThirdPartyExtensions] = extensionsEnabled }
|
||||
if let liveActivitiesEnabled { Defaults[.enableExtensionLiveActivities] = liveActivitiesEnabled }
|
||||
if let lockScreenWidgetsEnabled { Defaults[.enableExtensionLockScreenWidgets] = lockScreenWidgetsEnabled }
|
||||
if let notchExperiencesEnabled { Defaults[.enableExtensionNotchExperiences] = notchExperiencesEnabled }
|
||||
objectWillChange.send()
|
||||
}
|
||||
|
||||
|
|
@ -88,9 +91,12 @@ final class ExtensionAuthorizationManager: ObservableObject {
|
|||
record.activityTimestamps.append(now)
|
||||
case .lockScreenWidgets:
|
||||
record.widgetTimestamps.append(now)
|
||||
case .notchExperiences:
|
||||
record.notchExperienceTimestamps.append(now)
|
||||
}
|
||||
record.activityTimestamps = flushOldTimestamps(record.activityTimestamps)
|
||||
record.widgetTimestamps = flushOldTimestamps(record.widgetTimestamps)
|
||||
record.notchExperienceTimestamps = flushOldTimestamps(record.notchExperienceTimestamps)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -126,6 +132,12 @@ final class ExtensionAuthorizationManager: ObservableObject {
|
|||
return true
|
||||
}
|
||||
|
||||
func canProcessNotchExperienceRequest(from bundleIdentifier: String) -> Bool {
|
||||
guard preflight(bundleIdentifier: bundleIdentifier, scope: .notchExperiences) else { return false }
|
||||
guard areNotchExperiencesEnabled else { return false }
|
||||
return true
|
||||
}
|
||||
|
||||
func recordDeniedRequest(bundleIdentifier: String, reason: String) {
|
||||
updateEntry(bundleIdentifier: bundleIdentifier) { entry in
|
||||
entry.lastDeniedReason = reason
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue