Various fixes

This commit is contained in:
Ilya Laktyushin 2022-10-23 21:42:56 +03:00
parent 9e01a4fa23
commit 2a703ff52a
2 changed files with 9 additions and 2 deletions

View File

@ -338,4 +338,11 @@ public enum DeviceMetrics: CaseIterable, Equatable {
return false
}
}
public var showAppBadge: Bool {
if case .iPhoneX = self {
return false
}
return self.hasTopNotch
}
}

View File

@ -683,10 +683,10 @@ public class Window1 {
}
private func updateBadgeVisibility() {
let badgeIsHidden = !self.deviceMetrics.hasTopNotch || self.deviceMetrics.hasDynamicIsland || self.forceBadgeHidden || self.windowLayout.size.width > self.windowLayout.size.height
let badgeIsHidden = !self.deviceMetrics.showAppBadge || self.forceBadgeHidden || self.windowLayout.size.width > self.windowLayout.size.height
if badgeIsHidden != self.badgeView.isHidden && !badgeIsHidden {
Queue.mainQueue().after(0.4) {
let badgeShouldBeHidden = !self.deviceMetrics.hasTopNotch || self.deviceMetrics.hasDynamicIsland || self.forceBadgeHidden || self.windowLayout.size.width > self.windowLayout.size.height
let badgeShouldBeHidden = !self.deviceMetrics.showAppBadge || self.forceBadgeHidden || self.windowLayout.size.width > self.windowLayout.size.height
if badgeShouldBeHidden == badgeIsHidden {
self.badgeView.isHidden = badgeIsHidden
}