Merge commit '07cd1ec4f5' into traffic

# Conflicts:
#	libs/indexer/ftypes_matcher.hpp

Bug: boost/regex.hpp may not be found
Workaround: remove `if` in CMakeLists.txt:226, leave `include_directories`
This commit is contained in:
mvglasow
2025-11-23 17:04:45 +02:00
684 changed files with 15498 additions and 4773 deletions

View File

@@ -40,6 +40,10 @@ struct SettingsNavigationView: View {
@State var shouldAvoidUnpavedRoadsWhileRouting: Bool = false
/// If paved roads should be avoided during routing
@State var shouldAvoidPavedRoadsWhileRouting: Bool = false
/// If ferries should be avoided during routing
@State var shouldAvoidFerriesWhileRouting: Bool = false
@@ -152,20 +156,67 @@ struct SettingsNavigationView: View {
.id(forceRefreshDate)
Section {
Toggle("avoid_tolls", isOn: $shouldAvoidTollRoadsWhileRouting)
.tint(.accent)
Toggle(isOn: $shouldAvoidTollRoadsWhileRouting) {
Label {
Text("avoid_tolls")
} icon: {
Image(shouldAvoidTollRoadsWhileRouting ? "tolls.slash" : "tolls")
.foregroundStyle(.secondary)
}
}
.tint(.accent)
Toggle("avoid_unpaved", isOn: $shouldAvoidUnpavedRoadsWhileRouting)
.tint(.accent)
Toggle(isOn: $shouldAvoidUnpavedRoadsWhileRouting) {
Label {
Text("avoid_unpaved")
} icon: {
Image(shouldAvoidUnpavedRoadsWhileRouting ? "unpaved.slash" : "unpaved")
.foregroundStyle(.secondary)
}
}
.tint(.accent)
.disabled(shouldAvoidPavedRoadsWhileRouting)
Toggle("avoid_ferry", isOn: $shouldAvoidFerriesWhileRouting)
.tint(.accent)
Toggle(isOn: $shouldAvoidPavedRoadsWhileRouting) {
Label {
Text("avoid_paved")
} icon: {
Image(shouldAvoidPavedRoadsWhileRouting ? "paved.slash" : "paved")
.foregroundStyle(.secondary)
}
}
.tint(.accent)
.disabled(shouldAvoidUnpavedRoadsWhileRouting)
Toggle("avoid_motorways", isOn: $shouldAvoidMotorwaysWhileRouting)
.tint(.accent)
Toggle(isOn: $shouldAvoidMotorwaysWhileRouting) {
Label {
Text("avoid_motorways")
} icon: {
Image(shouldAvoidMotorwaysWhileRouting ? "motorways.slash" : "motorways")
.foregroundStyle(.secondary)
}
}
.tint(.accent)
Toggle("avoid_steps", isOn: $shouldAvoidStepsWhileRouting)
.tint(.accent)
Toggle(isOn: $shouldAvoidFerriesWhileRouting) {
Label {
Text("avoid_ferry")
} icon: {
Image(shouldAvoidFerriesWhileRouting ? "ferries.slash" : "ferries")
.foregroundStyle(.secondary)
}
}
.tint(.accent)
Toggle(isOn: $shouldAvoidStepsWhileRouting) {
Label {
Text("avoid_steps")
} icon: {
Image(shouldAvoidStepsWhileRouting ? "steps.slash" : "steps")
.foregroundStyle(.secondary)
}
}
.tint(.accent)
} header: {
Text("driving_options_title")
}
@@ -200,6 +251,7 @@ struct SettingsNavigationView: View {
selectedAnnouncingSpeedTrapsWhileVoiceRouting = Settings.announcingSpeedTrapsWhileVoiceRouting
shouldAvoidTollRoadsWhileRouting = Settings.shouldAvoidTollRoadsWhileRouting
shouldAvoidUnpavedRoadsWhileRouting = Settings.shouldAvoidUnpavedRoadsWhileRouting
shouldAvoidPavedRoadsWhileRouting = Settings.shouldAvoidPavedRoadsWhileRouting
shouldAvoidFerriesWhileRouting = Settings.shouldAvoidFerriesWhileRouting
shouldAvoidMotorwaysWhileRouting = Settings.shouldAvoidMotorwaysWhileRouting
shouldAvoidStepsWhileRouting = Settings.shouldAvoidStepsWhileRouting
@@ -234,9 +286,15 @@ struct SettingsNavigationView: View {
}
.onChange(of: shouldAvoidUnpavedRoadsWhileRouting) { changedShouldAvoidUnpavedRoadsWhileRouting in
Settings.shouldAvoidUnpavedRoadsWhileRouting = changedShouldAvoidUnpavedRoadsWhileRouting
if changedShouldAvoidUnpavedRoadsWhileRouting {
shouldAvoidPavedRoadsWhileRouting = false
}
}
.onChange(of: shouldAvoidUnpavedRoadsWhileRouting) { changedShouldAvoidUnpavedRoadsWhileRouting in
Settings.shouldAvoidUnpavedRoadsWhileRouting = changedShouldAvoidUnpavedRoadsWhileRouting
.onChange(of: shouldAvoidPavedRoadsWhileRouting) { changedShouldAvoidPavedRoadsWhileRouting in
Settings.shouldAvoidPavedRoadsWhileRouting = changedShouldAvoidPavedRoadsWhileRouting
if changedShouldAvoidPavedRoadsWhileRouting {
shouldAvoidUnpavedRoadsWhileRouting = false
}
}
.onChange(of: shouldAvoidFerriesWhileRouting) { changedShouldAvoidFerriesWhileRouting in
Settings.shouldAvoidFerriesWhileRouting = changedShouldAvoidFerriesWhileRouting