Graphical updates and stats are hidden

main
Laurent 2 years ago
parent 4ab4d3df70
commit 0659a607fc
  1. 2
      LaunchIntents/IntentHandler.swift
  2. 9
      LaunchWidget/DefaultView.swift
  3. 7
      LaunchWidget/LaunchWidget.swift
  4. 20
      LaunchWidget/SingleTimerView.swift
  5. 89
      LeCountdown.xcodeproj/project.pbxproj
  6. 42
      LeCountdown.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
  7. 2
      LeCountdown.xcodeproj/xcshareddata/xcschemes/LaunchIntents.xcscheme
  8. 2
      LeCountdown.xcodeproj/xcshareddata/xcschemes/LaunchWidgetExtension.xcscheme
  9. 2
      LeCountdown.xcodeproj/xcshareddata/xcschemes/LeCountdown.xcscheme
  10. 3
      LeCountdown/AppDelegate.swift
  11. 2
      LeCountdown/CountdownScheduler.swift
  12. 3
      LeCountdown/Utils/Logger.swift
  13. 28
      LeCountdown/Views/ContentView.swift

@ -58,7 +58,7 @@ class IntentHandler: INExtension, SelectTimerIntentHandling {
let displayName: String
switch timer {
case let countdown as Countdown:
let formattedDuration = countdown.duration.minuteSecond
let formattedDuration = countdown.duration.hourMinuteSecond
if let name = timer.activity?.name, !name.isEmpty {
displayName = "\(name) (\(formattedDuration))"
} else {

@ -14,6 +14,7 @@ struct DefaultView: View {
var body: some View {
Group {
switch family {
case .accessoryCorner, .accessoryCircular, .accessoryRectangular, .accessoryInline:
VStack {
@ -25,9 +26,13 @@ struct DefaultView: View {
Text("Tea".uppercased()).monospaced()
Text("4:00").monospaced()
}
.frame(maxWidth: .infinity, maxHeight: .infinity)
.background(GradientView())
// .frame(maxWidth: .infinity, maxHeight: .infinity)
}
}
.frame(maxWidth: .infinity, maxHeight: .infinity)
.background(.black.opacity(0.5))
.foregroundColor(.white)
// .background(Color.white.opacity(0.5))
}

@ -81,6 +81,8 @@ struct LaunchWidgetEntryView : View {
var entry: Provider.Entry
let backgroundOpacity = 0.3
@ViewBuilder
var body: some View {
switch family {
@ -99,7 +101,8 @@ struct LaunchWidgetEntryView : View {
}
}
.frame(maxWidth: .infinity, maxHeight: .infinity)
.background(Color.white.opacity(0.2))
.background(Color.white.opacity(backgroundOpacity))
.cornerRadius(16.0)
case .accessoryRectangular:
Group {
if let timer = entry.timers.first {
@ -109,7 +112,7 @@ struct LaunchWidgetEntryView : View {
}
}
.frame(maxWidth: .infinity, maxHeight: .infinity)
.background(Color.white.opacity(0.2))
.background(Color.white.opacity(backgroundOpacity))
.cornerRadius(16.0)
default:
MultiCountdownView(timers: entry.timers)

@ -58,7 +58,7 @@ struct SingleTimerView: View {
VStack(alignment: .leading) {
Text(timer.displayName.uppercased())
if let countdown = timer as? Countdown {
Text(countdown.duration.minuteSecond)
Text(countdown.duration.hourMinuteSecond)
}
}
Spacer()
@ -69,6 +69,7 @@ struct SingleTimerView: View {
.monospaced()
.foregroundColor(.white)
.background(GradientView())
// .background(.white.opacity(0.5))
.font(self.font)
.widgetURL(timer.url)
}
@ -101,7 +102,7 @@ struct LockScreenCountdownView: View {
default:
Text(title)
if let countdown = self.timer as? Countdown {
Text(countdown.duration.minuteSecond)
Text(countdown.duration.hourMinuteSecond)
.monospaced()
}
}
@ -128,7 +129,9 @@ struct LockScreenCountdownView: View {
}
private var font: Font {
return .body
return .system(size: 14.0, weight: .medium)
// return .body
// switch self.family {
// case .systemSmall, .systemMedium, .systemLarge, .systemExtraLarge:
// return .body
@ -172,16 +175,16 @@ struct MultiCountdownView: View {
Spacer()
Text(timer.displayName.uppercased()).lineLimit(1)
if let countdown = timer as? Countdown {
Text(countdown.duration.minuteSecond)
Text(countdown.duration.hourMinuteSecond)
}
Spacer()
}
Spacer()
}
.padding(.horizontal, 12.0)
.font(.callout)
.background(Color.white.opacity(0.2))
// .background(Image(timer.imageName))
.padding(.vertical, 4.0)
.font(.footnote)
.background(Color.white.opacity(0.1))
.foregroundColor(.white)
.monospaced()
.cornerRadius(16.0)
@ -193,6 +196,7 @@ struct MultiCountdownView: View {
.padding(.vertical, 16.0)
.frame(maxWidth: .infinity, maxHeight: .infinity)
.background(GradientView())
// .background(.white.opacity(0.5))
}
@ -213,9 +217,9 @@ struct CountdownView_Previews: PreviewProvider {
static var previews: some View {
SingleTimerView(timer: Countdown.fake(context: PersistenceController.preview.container.viewContext)).previewContext(WidgetPreviewContext(family: .systemSmall)).background(.black)
MultiCountdownView(timers: self.countdowns(context: PersistenceController.preview.container.viewContext)).previewContext(WidgetPreviewContext(family: .systemMedium))
LockScreenCountdownView(timer: Countdown.fake(context: PersistenceController.preview.container.viewContext)).previewContext(WidgetPreviewContext(family: .accessoryRectangular))
LockScreenCountdownView(timer: Countdown.fake(context: PersistenceController.preview.container.viewContext)).previewContext(WidgetPreviewContext(family: .accessoryCircular))
MultiCountdownView(timers: self.countdowns(context: PersistenceController.preview.container.viewContext)).previewContext(WidgetPreviewContext(family: .systemMedium))
}
static func countdowns(context: NSManagedObjectContext) -> [Countdown] {

@ -53,6 +53,9 @@
C42E970229E6B32B005B1B8C /* CalendarView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C42E970129E6B32B005B1B8C /* CalendarView.swift */; };
C42E970529E6E4F7005B1B8C /* ActivityView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C42E970429E6E4F7005B1B8C /* ActivityView.swift */; };
C42E970729E6EDF5005B1B8C /* StatisticsSubView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C42E970629E6EDF5005B1B8C /* StatisticsSubView.swift */; };
C436F5092AC2E55900D87651 /* FirebaseCrashlytics in Frameworks */ = {isa = PBXBuildFile; productRef = C436F5082AC2E55900D87651 /* FirebaseCrashlytics */; };
C436F50B2AC2E66700D87651 /* FirebaseCrashlytics in Frameworks */ = {isa = PBXBuildFile; productRef = C436F50A2AC2E66700D87651 /* FirebaseCrashlytics */; };
C436F50D2AC2E6B300D87651 /* FirebaseCrashlytics in Frameworks */ = {isa = PBXBuildFile; productRef = C436F50C2AC2E6B300D87651 /* FirebaseCrashlytics */; };
C438C7C12980228B00BF3EF9 /* CountdownScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = C438C7C02980228B00BF3EF9 /* CountdownScheduler.swift */; };
C438C7C5298024E900BF3EF9 /* NSManagedContext+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = C438C7C4298024E900BF3EF9 /* NSManagedContext+Extensions.swift */; };
C438C7C929803CA000BF3EF9 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C438C7C829803CA000BF3EF9 /* AppDelegate.swift */; };
@ -126,6 +129,11 @@
C47C933629F01B6600C780E2 /* FileUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4556F6E29E40BED00DEB40B /* FileUtils.swift */; };
C47C933729F01B7A00C780E2 /* Codable+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4556F7029E40DCF00DEB40B /* Codable+Extensions.swift */; };
C47C933929F13BD100C780E2 /* AppleMusicPickerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C47C933829F13BD100C780E2 /* AppleMusicPickerView.swift */; };
C48940DE2AC307860086F4FA /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = C48940DD2AC307860086F4FA /* GoogleService-Info.plist */; };
C48940DF2AC307860086F4FA /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = C48940DD2AC307860086F4FA /* GoogleService-Info.plist */; };
C48940E02AC307860086F4FA /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = C48940DD2AC307860086F4FA /* GoogleService-Info.plist */; };
C48940E12AC307860086F4FA /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = C48940DD2AC307860086F4FA /* GoogleService-Info.plist */; };
C48940E22AC307860086F4FA /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = C48940DD2AC307860086F4FA /* GoogleService-Info.plist */; };
C48ECC0829DAC45900DE5A66 /* AppGuard.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4BA2B56299FFA4F00CB4FBA /* AppGuard.swift */; };
C48ECC0929DAC47200DE5A66 /* AppGuard.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4BA2B56299FFA4F00CB4FBA /* AppGuard.swift */; };
C498E59F298D4DEA00E90DE0 /* LiveTimerListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C498E59E298D4DEA00E90DE0 /* LiveTimerListView.swift */; };
@ -134,12 +142,6 @@
C498E5A6299152C600E90DE0 /* GreenCheckmarkView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C498E5A4299152B400E90DE0 /* GreenCheckmarkView.swift */; };
C49C346929DECA4400AAC6FC /* LiveStopWatch.swift in Sources */ = {isa = PBXBuildFile; fileRef = C49C346829DECA4400AAC6FC /* LiveStopWatch.swift */; };
C49C346A29DECC7100AAC6FC /* LiveStopWatch.swift in Sources */ = {isa = PBXBuildFile; fileRef = C49C346829DECA4400AAC6FC /* LiveStopWatch.swift */; };
C4A16D8C29C4A5BA00143D5E /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = C4A16D8B29C4A5BA00143D5E /* GoogleService-Info.plist */; };
C4A16D8D29C4A5BA00143D5E /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = C4A16D8B29C4A5BA00143D5E /* GoogleService-Info.plist */; };
C4A16D8E29C4A5BA00143D5E /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = C4A16D8B29C4A5BA00143D5E /* GoogleService-Info.plist */; };
C4A16D8F29C4A5BA00143D5E /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = C4A16D8B29C4A5BA00143D5E /* GoogleService-Info.plist */; };
C4A16D9029C4A5BA00143D5E /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = C4A16D8B29C4A5BA00143D5E /* GoogleService-Info.plist */; };
C4A16D9329C4A6DD00143D5E /* FirebaseCrashlytics in Frameworks */ = {isa = PBXBuildFile; productRef = C4A16D9229C4A6DD00143D5E /* FirebaseCrashlytics */; };
C4A16D9529C4B06400143D5E /* StatePlayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4A16D9429C4B06400143D5E /* StatePlayer.swift */; };
C4A16D9629C4B06400143D5E /* StatePlayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4A16D9429C4B06400143D5E /* StatePlayer.swift */; };
C4A16D9729C4B06400143D5E /* StatePlayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4A16D9429C4B06400143D5E /* StatePlayer.swift */; };
@ -291,8 +293,6 @@
C4F8B1D2298BF646005C86A5 /* PermissionAlertView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4F8B1D1298BF646005C86A5 /* PermissionAlertView.swift */; };
C4F8B1D8298C0727005C86A5 /* TimerRouter.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4F8B1D7298C0727005C86A5 /* TimerRouter.swift */; };
C4FD90392A31C7F6006893C7 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = C473C32A29AA330E0056B38A /* Localizable.strings */; };
C4FD903D2A3229AE006893C7 /* FirebaseCrashlytics in Frameworks */ = {isa = PBXBuildFile; productRef = C4FD903C2A3229AE006893C7 /* FirebaseCrashlytics */; };
C4FD903F2A3229B7006893C7 /* FirebaseCrashlytics in Frameworks */ = {isa = PBXBuildFile; productRef = C4FD903E2A3229B7006893C7 /* FirebaseCrashlytics */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
@ -434,11 +434,11 @@
C4742B5E2984205000D5D950 /* ViewModifiers.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewModifiers.swift; sourceTree = "<group>"; };
C47C933829F13BD100C780E2 /* AppleMusicPickerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppleMusicPickerView.swift; sourceTree = "<group>"; };
C47C933C29F13DBD00C780E2 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
C48940DD2AC307860086F4FA /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
C498E59E298D4DEA00E90DE0 /* LiveTimerListView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LiveTimerListView.swift; sourceTree = "<group>"; };
C498E5A0298D543900E90DE0 /* LiveTimer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LiveTimer.swift; sourceTree = "<group>"; };
C498E5A4299152B400E90DE0 /* GreenCheckmarkView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GreenCheckmarkView.swift; sourceTree = "<group>"; };
C49C346829DECA4400AAC6FC /* LiveStopWatch.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LiveStopWatch.swift; sourceTree = "<group>"; };
C4A16D8B29C4A5BA00143D5E /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
C4A16D9429C4B06400143D5E /* StatePlayer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StatePlayer.swift; sourceTree = "<group>"; };
C4A16D9A29D0A7D300143D5E /* MRKRSTPHR_synth_one_shot_bleep_G.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = MRKRSTPHR_synth_one_shot_bleep_G.wav; sourceTree = "<group>"; };
C4A16DA029D0A7FE00143D5E /* ESM_One_Shot_FX_Interface_Glitch_Spaceship_Console_18_Interface_Button_Alert_System_Cm.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = ESM_One_Shot_FX_Interface_Glitch_Spaceship_Console_18_Interface_Button_Alert_System_Cm.wav; sourceTree = "<group>"; };
@ -539,7 +539,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
C4A16D9329C4A6DD00143D5E /* FirebaseCrashlytics in Frameworks */,
C436F5092AC2E55900D87651 /* FirebaseCrashlytics in Frameworks */,
C4636D9D29AF46D900994E31 /* WidgetKit.framework in Frameworks */,
C4636D9C29AF46BD00994E31 /* ActivityKit.framework in Frameworks */,
);
@ -563,7 +563,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
C4FD903D2A3229AE006893C7 /* FirebaseCrashlytics in Frameworks */,
C436F50D2AC2E6B300D87651 /* FirebaseCrashlytics in Frameworks */,
C438C7D32981216200BF3EF9 /* SwiftUI.framework in Frameworks */,
C438C7D12981216200BF3EF9 /* WidgetKit.framework in Frameworks */,
);
@ -574,7 +574,7 @@
buildActionMask = 2147483647;
files = (
C438C7F229812BB200BF3EF9 /* Intents.framework in Frameworks */,
C4FD903F2A3229B7006893C7 /* FirebaseCrashlytics in Frameworks */,
C436F50B2AC2E66700D87651 /* FirebaseCrashlytics in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -629,7 +629,7 @@
C415D3CA29BF6D360037B215 /* InfoPlist.strings */,
C4E5D66F29B753D7008E7465 /* AppShortcuts.strings */,
C4060DCD297AE73D003FAB80 /* Info.plist */,
C4A16D8B29C4A5BA00143D5E /* GoogleService-Info.plist */,
C48940DD2AC307860086F4FA /* GoogleService-Info.plist */,
C4060DC5297AE73D003FAB80 /* Preview Content */,
);
path = LeCountdown;
@ -988,7 +988,7 @@
C4060DB9297AE73B003FAB80 /* Frameworks */,
C4060DBA297AE73B003FAB80 /* Resources */,
C438C7E72981216300BF3EF9 /* Embed Foundation Extensions */,
C454891F2A2649DC0047D39E /* ShellScript */,
C436F50E2AC2E6F400D87651 /* Crashlytics */,
);
buildRules = (
);
@ -998,7 +998,7 @@
);
name = LeCountdown;
packageProductDependencies = (
C4A16D9229C4A6DD00143D5E /* FirebaseCrashlytics */,
C436F5082AC2E55900D87651 /* FirebaseCrashlytics */,
);
productName = LeCountdown;
productReference = C4060DBC297AE73B003FAB80 /* LeCountdown.app */;
@ -1054,7 +1054,7 @@
);
name = LaunchWidgetExtension;
packageProductDependencies = (
C4FD903C2A3229AE006893C7 /* FirebaseCrashlytics */,
C436F50C2AC2E6B300D87651 /* FirebaseCrashlytics */,
);
productName = LaunchWidgetExtension;
productReference = C438C7CE2981216200BF3EF9 /* LaunchWidgetExtension.appex */;
@ -1074,7 +1074,7 @@
);
name = LaunchIntents;
packageProductDependencies = (
C4FD903E2A3229B7006893C7 /* FirebaseCrashlytics */,
C436F50A2AC2E66700D87651 /* FirebaseCrashlytics */,
);
productName = LaunchIntents;
productReference = C438C7F029812BB200BF3EF9 /* LaunchIntents.appex */;
@ -1088,7 +1088,7 @@
attributes = {
BuildIndependentTargetsInParallel = 1;
LastSwiftUpdateCheck = 1420;
LastUpgradeCheck = 1420;
LastUpgradeCheck = 1500;
TargetAttributes = {
C4060DBB297AE73B003FAB80 = {
CreatedOnToolsVersion = 14.2;
@ -1120,7 +1120,7 @@
);
mainGroup = C4060DB3297AE73B003FAB80;
packageReferences = (
C4A16D9129C4A6DD00143D5E /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */,
C436F5072AC2E55900D87651 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */,
);
productRefGroup = C4060DBD297AE73B003FAB80 /* Products */;
projectDirPath = "";
@ -1146,8 +1146,8 @@
C415D3C829BF6D360037B215 /* InfoPlist.strings in Resources */,
C415D3F729C378D10037B215 /* QP01 0037 Tropical forest morning.wav in Resources */,
C415D3D529C0B1AB0037B215 /* EX_ATSM_160_Metal_Tonal_Percussion_Sansula_Loop_Call_Am.wav in Resources */,
C48940DE2AC307860086F4FA /* GoogleService-Info.plist in Resources */,
C4BA2AEA2995AD1C00CB4FBA /* SEM_Synths_Loop4_Nothing_Like_You.wav in Resources */,
C4A16D8C29C4A5BA00143D5E /* GoogleService-Info.plist in Resources */,
C4A67AAD29DC16890098D692 /* trancoso_bowl1.mp3 in Resources */,
C4A16D9B29D0A7D300143D5E /* MRKRSTPHR_synth_one_shot_bleep_G.wav in Resources */,
C4BCABB92A040B97009FFB0A /* QP01 0023 Surf moderate sandy.wav in Resources */,
@ -1185,8 +1185,8 @@
buildActionMask = 2147483647;
files = (
C4A16DA829D0AAA800143D5E /* ESM_Ambient_Game_Menu_Soft_Wood_Confirm_1_Notification_Button_Settings_UI.wav in Resources */,
C48940DF2AC307860086F4FA /* GoogleService-Info.plist in Resources */,
C4A16DA229D0A7FE00143D5E /* ESM_One_Shot_FX_Interface_Glitch_Spaceship_Console_18_Interface_Button_Alert_System_Cm.wav in Resources */,
C4A16D8D29C4A5BA00143D5E /* GoogleService-Info.plist in Resources */,
C4A16D9C29D0A7D300143D5E /* MRKRSTPHR_synth_one_shot_bleep_G.wav in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
@ -1196,8 +1196,8 @@
buildActionMask = 2147483647;
files = (
C4A16DA929D0AAA800143D5E /* ESM_Ambient_Game_Menu_Soft_Wood_Confirm_1_Notification_Button_Settings_UI.wav in Resources */,
C48940E02AC307860086F4FA /* GoogleService-Info.plist in Resources */,
C4A16DA329D0A7FE00143D5E /* ESM_One_Shot_FX_Interface_Glitch_Spaceship_Console_18_Interface_Button_Alert_System_Cm.wav in Resources */,
C4A16D8E29C4A5BA00143D5E /* GoogleService-Info.plist in Resources */,
C4A16D9D29D0A7D300143D5E /* MRKRSTPHR_synth_one_shot_bleep_G.wav in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
@ -1211,8 +1211,8 @@
C4A16DAA29D0AAA800143D5E /* ESM_Ambient_Game_Menu_Soft_Wood_Confirm_1_Notification_Button_Settings_UI.wav in Resources */,
C4FD90392A31C7F6006893C7 /* Localizable.strings in Resources */,
C438C7DD2981216300BF3EF9 /* Assets.xcassets in Resources */,
C4A16D8F29C4A5BA00143D5E /* GoogleService-Info.plist in Resources */,
C4A16DA429D0A7FE00143D5E /* ESM_One_Shot_FX_Interface_Glitch_Spaceship_Console_18_Interface_Button_Alert_System_Cm.wav in Resources */,
C48940E12AC307860086F4FA /* GoogleService-Info.plist in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -1221,8 +1221,8 @@
buildActionMask = 2147483647;
files = (
C473C33029ACADC80056B38A /* Localizable.strings in Resources */,
C4A16D9029C4A5BA00143D5E /* GoogleService-Info.plist in Resources */,
C4A16DA529D0A7FE00143D5E /* ESM_One_Shot_FX_Interface_Glitch_Spaceship_Console_18_Interface_Button_Alert_System_Cm.wav in Resources */,
C48940E22AC307860086F4FA /* GoogleService-Info.plist in Resources */,
C4A16D9F29D0A7D300143D5E /* MRKRSTPHR_synth_one_shot_bleep_G.wav in Resources */,
C4A16DAB29D0AAA800143D5E /* ESM_Ambient_Game_Menu_Soft_Wood_Confirm_1_Notification_Button_Settings_UI.wav in Resources */,
);
@ -1231,18 +1231,21 @@
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
C454891F2A2649DC0047D39E /* ShellScript */ = {
C436F50E2AC2E6F400D87651 /* Crashlytics */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
"${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${TARGET_NAME}",
"$(SRCROOT)/$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)",
"${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}",
"${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${PRODUCT_NAME}",
"${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Info.plist",
"$(BUILT_PRODUCTS_DIR)/$(UNLOCALIZED_RESOURCES_FOLDER_PATH)/GoogleService-Info.plist",
"$(BUILT_PRODUCTS_DIR)/$(EXECUTABLE_PATH)",
);
name = Crashlytics;
outputFileListPaths = (
);
outputPaths = (
@ -1610,6 +1613,7 @@
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
ENABLE_USER_SCRIPT_SANDBOXING = NO;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_DYNAMIC_NO_PIC = NO;
GCC_NO_COMMON_BLOCKS = YES;
@ -1671,6 +1675,7 @@
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_USER_SCRIPT_SANDBOXING = NO;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
@ -1714,7 +1719,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0.8;
MARKETING_VERSION = 1.0.13;
PRODUCT_BUNDLE_IDENTIFIER = com.staxriver.LeCountdown;
PRODUCT_NAME = "$(TARGET_NAME)";
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
@ -1751,7 +1756,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0.8;
MARKETING_VERSION = 1.0.13;
PRODUCT_BUNDLE_IDENTIFIER = com.staxriver.LeCountdown;
PRODUCT_NAME = "$(TARGET_NAME)";
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
@ -1857,7 +1862,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.0.8;
MARKETING_VERSION = 1.0.13;
PRODUCT_BUNDLE_IDENTIFIER = com.staxriver.LeCountdown.LaunchWidget;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
@ -1885,7 +1890,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.0.8;
MARKETING_VERSION = 1.0.13;
PRODUCT_BUNDLE_IDENTIFIER = com.staxriver.LeCountdown.LaunchWidget;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
@ -1912,7 +1917,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.0.8;
MARKETING_VERSION = 1.0.13;
PRODUCT_BUNDLE_IDENTIFIER = com.staxriver.LeCountdown.LaunchIntents;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
@ -1939,7 +1944,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.0.8;
MARKETING_VERSION = 1.0.13;
PRODUCT_BUNDLE_IDENTIFIER = com.staxriver.LeCountdown.LaunchIntents;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
@ -2009,30 +2014,30 @@
/* End XCConfigurationList section */
/* Begin XCRemoteSwiftPackageReference section */
C4A16D9129C4A6DD00143D5E /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */ = {
C436F5072AC2E55900D87651 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/firebase/firebase-ios-sdk";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 9.0.0;
minimumVersion = 10.15.0;
};
};
/* End XCRemoteSwiftPackageReference section */
/* Begin XCSwiftPackageProductDependency section */
C4A16D9229C4A6DD00143D5E /* FirebaseCrashlytics */ = {
C436F5082AC2E55900D87651 /* FirebaseCrashlytics */ = {
isa = XCSwiftPackageProductDependency;
package = C4A16D9129C4A6DD00143D5E /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
package = C436F5072AC2E55900D87651 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
productName = FirebaseCrashlytics;
};
C4FD903C2A3229AE006893C7 /* FirebaseCrashlytics */ = {
C436F50A2AC2E66700D87651 /* FirebaseCrashlytics */ = {
isa = XCSwiftPackageProductDependency;
package = C4A16D9129C4A6DD00143D5E /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
package = C436F5072AC2E55900D87651 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
productName = FirebaseCrashlytics;
};
C4FD903E2A3229B7006893C7 /* FirebaseCrashlytics */ = {
C436F50C2AC2E6B300D87651 /* FirebaseCrashlytics */ = {
isa = XCSwiftPackageProductDependency;
package = C4A16D9129C4A6DD00143D5E /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
package = C436F5072AC2E55900D87651 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
productName = FirebaseCrashlytics;
};
/* End XCSwiftPackageProductDependency section */

@ -1,21 +1,12 @@
{
"pins" : [
{
"identity" : "abseil-cpp-swiftpm",
"identity" : "abseil-cpp-binary",
"kind" : "remoteSourceControl",
"location" : "https://github.com/firebase/abseil-cpp-SwiftPM.git",
"location" : "https://github.com/google/abseil-cpp-binary.git",
"state" : {
"revision" : "583de9bd60f66b40e78d08599cc92036c2e7e4e1",
"version" : "0.20220203.2"
}
},
{
"identity" : "boringssl-swiftpm",
"kind" : "remoteSourceControl",
"location" : "https://github.com/firebase/boringssl-SwiftPM.git",
"state" : {
"revision" : "dd3eda2b05a3f459fc3073695ad1b28659066eab",
"version" : "0.9.1"
"revision" : "bfc0b6f81adc06ce5121eb23f628473638d67c5c",
"version" : "1.2022062300.0"
}
},
{
@ -23,8 +14,8 @@
"kind" : "remoteSourceControl",
"location" : "https://github.com/firebase/firebase-ios-sdk",
"state" : {
"revision" : "7e80c25b51c2ffa238879b07fbfc5baa54bb3050",
"version" : "9.6.0"
"revision" : "8a8ec57a272e0d31480fb0893dda0cf4f769b57e",
"version" : "10.15.0"
}
},
{
@ -32,8 +23,8 @@
"kind" : "remoteSourceControl",
"location" : "https://github.com/google/GoogleAppMeasurement.git",
"state" : {
"revision" : "c1cfde8067668027b23a42c29d11c246152fe046",
"version" : "9.6.0"
"revision" : "03b9beee1a61f62d32c521e172e192a1663a5e8b",
"version" : "10.13.0"
}
},
{
@ -55,12 +46,12 @@
}
},
{
"identity" : "grpc-ios",
"identity" : "grpc-binary",
"kind" : "remoteSourceControl",
"location" : "https://github.com/grpc/grpc-ios.git",
"location" : "https://github.com/google/grpc-binary.git",
"state" : {
"revision" : "8440b914756e0d26d4f4d054a1c1581daedfc5b6",
"version" : "1.44.3-grpc"
"revision" : "f1b366129d1125be7db83247e003fc333104b569",
"version" : "1.50.2"
}
},
{
@ -72,6 +63,15 @@
"version" : "2.3.0"
}
},
{
"identity" : "interop-ios-for-google-sdks",
"kind" : "remoteSourceControl",
"location" : "https://github.com/google/interop-ios-for-google-sdks.git",
"state" : {
"revision" : "2d12673670417654f08f5f90fdd62926dc3a2648",
"version" : "100.0.0"
}
},
{
"identity" : "leveldb",
"kind" : "remoteSourceControl",

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1420"
LastUpgradeVersion = "1500"
wasCreatedForAppExtension = "YES"
version = "2.0">
<BuildAction

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1420"
LastUpgradeVersion = "1500"
wasCreatedForAppExtension = "YES"
version = "2.0">
<BuildAction

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1420"
LastUpgradeVersion = "1500"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"

@ -8,8 +8,7 @@
import Foundation
import UIKit
import AVFoundation
import FirebaseCore
import FirebaseCrashlytics
import Firebase
class AppDelegate : NSObject, UIApplicationDelegate {

@ -33,7 +33,7 @@ class CountdownScheduler {
body = String(format: timesup, name)
} else {
let timesup = NSLocalizedString("Your %@ countdown is over!", comment: "")
body = String(format: timesup, duration.minuteSecond)
body = String(format: timesup, duration.hourMinuteSecond)
}
content.body = body

@ -6,8 +6,7 @@
//
import Foundation
import FirebaseCore
import FirebaseCrashlytics
import Firebase
@objc public class Logger : NSObject {

@ -176,20 +176,20 @@ struct MainToolbarView: ToolbarContent {
}
}
ToolbarItemGroup(placement: .navigationBarTrailing) {
if !self.records.isEmpty {
Button {
withAnimation {
self.showStatsSheet.toggle()
}
} label: {
Image(systemName: "scroll")
}
.sheet(isPresented: self.$showStatsSheet, content: {
NavigationStack {
ActivitiesView()
}
})
}
// if !self.records.isEmpty {
// Button {
// withAnimation {
// self.showStatsSheet.toggle()
// }
// } label: {
// Image(systemName: "scroll")
// }
// .sheet(isPresented: self.$showStatsSheet, content: {
// NavigationStack {
// ActivitiesView()
// }
// })
// }
if !self.timers.isEmpty {
Button {
withAnimation {

Loading…
Cancel
Save