Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 11 additions & 3 deletions Driveline.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -524,7 +524,7 @@
attributes = {
BuildIndependentTargetsInParallel = 1;
LastSwiftUpdateCheck = 2650;
LastUpgradeCheck = 2650;
LastUpgradeCheck = 2660;
TargetAttributes = {
6D47A50F2FCAD20600E6C7B7 = {
CreatedOnToolsVersion = 26.5;
Expand Down Expand Up @@ -734,6 +734,7 @@
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
Expand Down Expand Up @@ -788,6 +789,7 @@
MTL_FAST_MATH = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
STRING_CATALOG_GENERATE_SYMBOLS = YES;
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)";
SWIFT_APPROACHABLE_CONCURRENCY = YES;
SWIFT_EMIT_LOC_STRINGS = YES;
Expand All @@ -803,6 +805,7 @@
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
Expand Down Expand Up @@ -850,6 +853,7 @@
MTL_ENABLE_DEBUG_INFO = NO;
MTL_FAST_MATH = YES;
SDKROOT = iphoneos;
STRING_CATALOG_GENERATE_SYMBOLS = YES;
SWIFT_APPROACHABLE_CONCURRENCY = YES;
SWIFT_COMPILATION_MODE = wholemodule;
SWIFT_EMIT_LOC_STRINGS = YES;
Expand Down Expand Up @@ -904,7 +908,7 @@
SWIFT_EMIT_LOC_STRINGS = YES;
SWIFT_UPCOMING_FEATURE_MEMBER_IMPORT_VISIBILITY = YES;
SWIFT_VERSION = 6.0;
TARGETED_DEVICE_FAMILY = 1;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Debug;
};
Expand Down Expand Up @@ -952,7 +956,7 @@
SWIFT_EMIT_LOC_STRINGS = YES;
SWIFT_UPCOMING_FEATURE_MEMBER_IMPORT_VISIBILITY = YES;
SWIFT_VERSION = 6.0;
TARGETED_DEVICE_FAMILY = 1;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Release;
};
Expand Down Expand Up @@ -1179,6 +1183,7 @@
buildSettings = {
CODE_SIGN_IDENTITY = "-";
CODE_SIGN_STYLE = Automatic;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = 4U6275HKV3;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
MACOSX_DEPLOYMENT_TARGET = 26.0;
Expand All @@ -1194,6 +1199,7 @@
buildSettings = {
CODE_SIGN_IDENTITY = "-";
CODE_SIGN_STYLE = Automatic;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = 4U6275HKV3;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
MACOSX_DEPLOYMENT_TARGET = 26.0;
Expand All @@ -1209,6 +1215,7 @@
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = 4U6275HKV3;
GENERATE_INFOPLIST_FILE = YES;
MACOSX_DEPLOYMENT_TARGET = 26.0;
Expand All @@ -1225,6 +1232,7 @@
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = 4U6275HKV3;
GENERATE_INFOPLIST_FILE = YES;
MACOSX_DEPLOYMENT_TARGET = 26.0;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "2650"
LastUpgradeVersion = "2660"
wasCreatedForAppExtension = "YES"
version = "2.0">
<BuildAction
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "2650"
LastUpgradeVersion = "2660"
version = "1.7">
<BuildAction
parallelizeBuildables = "YES"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "2650"
LastUpgradeVersion = "2660"
version = "1.7">
<BuildAction
parallelizeBuildables = "YES"
Expand Down
2 changes: 2 additions & 0 deletions Driveline/AppLifecycle/AppBootstrap.swift
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import BackgroundTasks
import Foundation
import SwiftData
import TipKit
import UIKit

@MainActor
enum AppBootstrap {
Expand Down Expand Up @@ -131,6 +132,7 @@ enum AppBootstrap {
}

private static func registerIntentDependencies(driveService: DriveRecordingService) {
guard RecordingAvailability.isSupported(UIDevice.current.userInterfaceIdiom) else { return }
Log.lifecycle.info("Registering dependencies for App Intents")
IntentDependencyResolver.provider = { driveService }
}
Expand Down
15 changes: 1 addition & 14 deletions Driveline/AppLifecycle/Driveline.swift
Original file line number Diff line number Diff line change
Expand Up @@ -49,23 +49,10 @@ struct Driveline: App {

var body: some Scene {
WindowGroup {
HomeView()
RootView(isOnboardingPresented: $isOnboardingPresented)
.environment(locationService)
.environment(driveService)
.environment(spotlightIndexingService)
.sheet(isPresented: $isOnboardingPresented) {
OnboardingWelcomeView {
var prefs = UserPreferences()
prefs.setHasSeenWelcome(true)
isOnboardingPresented = false
}
.interactiveDismissDisabled()
}
.onChange(of: isOnboardingPresented, initial: true) { _, isPresented in
RecordButtonTip.isOnboardingPresented = isPresented
StatsPanelTip.isOnboardingPresented = isPresented
EditDriveTip.isOnboardingPresented = isPresented
}
.onChange(of: scenePhase) {
switch scenePhase {
case .active:
Expand Down
22 changes: 16 additions & 6 deletions Driveline/AppLifecycle/Localizable.xcstrings
Original file line number Diff line number Diff line change
Expand Up @@ -1721,8 +1721,7 @@
}
},
"Drives" : {
"comment" : "A title for the list of drives.",
"isCommentAutoGenerated" : true,
"comment" : "Navigation title for drives list",
"localizations" : {
"de" : {
"stringUnit" : {
Expand Down Expand Up @@ -2975,7 +2974,7 @@
}
},
"More options" : {
"comment" : "Accessibility label for the more options button on the drive detail screen\nEllipsis menu accessibility label",
"comment" : "Accessibility label for the more options button on the drive detail screen\nEllipsis menu accessibility label\nMore options button accessibility label",
"localizations" : {
"de" : {
"stringUnit" : {
Expand Down Expand Up @@ -3178,6 +3177,9 @@
}
}
},
"No Drives Yet" : {
"comment" : "iPad sidebar empty state title when no drives are synced"
},
"None" : {
"comment" : "Drive category: not categorized",
"localizations" : {
Expand Down Expand Up @@ -3499,6 +3501,9 @@
}
}
},
"Record drives on your iPhone. They'll appear here automatically via iCloud." : {
"comment" : "iPad sidebar empty state description explaining iCloud sync"
},
"Record Your First Drive" : {
"comment" : "Button on empty state to start a new drive",
"localizations" : {
Expand Down Expand Up @@ -3866,8 +3871,7 @@
}
},
"Search" : {
"comment" : "A label for a search bar.",
"isCommentAutoGenerated" : true,
"comment" : "Search field prompt",
"localizations" : {
"de" : {
"stringUnit" : {
Expand Down Expand Up @@ -3924,6 +3928,9 @@
}
}
},
"Select a Drive" : {
"comment" : "iPad placeholder when no drive is selected"
},
"Select Drives" : {
"comment" : "Menu item to enter multiselect mode",
"localizations" : {
Expand Down Expand Up @@ -4157,7 +4164,7 @@
}
},
"Share Drive" : {
"comment" : "Share button",
"comment" : "Share button\nShare button accessibility label",
"localizations" : {
"de" : {
"stringUnit" : {
Expand Down Expand Up @@ -5062,6 +5069,9 @@
}
}
},
"Toggle drive info panel" : {
"comment" : "Info panel toggle button accessibility label"
},
"Top Speed" : {
"comment" : "Metadata row",
"localizations" : {
Expand Down
14 changes: 14 additions & 0 deletions Driveline/AppLifecycle/RecordingAvailability.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
//
// RecordingAvailability.swift
// Driveline
//
// Created by Damien Glancy on 27/06/2026.
//

import UIKit

enum RecordingAvailability {
static func isSupported(_ idiom: UIUserInterfaceIdiom) -> Bool {
idiom != .pad
}
}
Loading
Loading