Add SelfieCamTheme with branded colors and settings card containers
- Create SelfieCamTheme.swift with rose/magenta-tinted surface colors - Add AppSurface, AppAccent, AppStatus, AppBorder typealiases to avoid conflicts - Wrap settings sections in SettingsCard containers for visual grouping - Add accentColor parameter to all SegmentedPicker and SettingsToggle usages - Update all color references to use App-prefixed typealiases - Background uses AppSurface.primary, cards use AppSurface.card
This commit is contained in:
parent
255f3c2d68
commit
003d933521
@ -284,7 +284,8 @@ struct SettingsView: View {
|
|||||||
SegmentedPicker(
|
SegmentedPicker(
|
||||||
title: "",
|
title: "",
|
||||||
options: CameraFlashMode.allCases.map { ($0.displayName, $0) },
|
options: CameraFlashMode.allCases.map { ($0.displayName, $0) },
|
||||||
selection: $viewModel.flashMode
|
selection: $viewModel.flashMode,
|
||||||
|
accentColor: AppAccent.primary
|
||||||
)
|
)
|
||||||
.accessibilityLabel(String(localized: "Select flash mode"))
|
.accessibilityLabel(String(localized: "Select flash mode"))
|
||||||
}
|
}
|
||||||
@ -311,7 +312,8 @@ struct SettingsView: View {
|
|||||||
SegmentedPicker(
|
SegmentedPicker(
|
||||||
title: "",
|
title: "",
|
||||||
options: CameraHDRMode.allCases.map { ($0.displayName, $0) },
|
options: CameraHDRMode.allCases.map { ($0.displayName, $0) },
|
||||||
selection: $viewModel.hdrMode
|
selection: $viewModel.hdrMode,
|
||||||
|
accentColor: AppAccent.primary
|
||||||
)
|
)
|
||||||
.disabled(!isPremiumUnlocked)
|
.disabled(!isPremiumUnlocked)
|
||||||
.accessibilityLabel(String(localized: "Select HDR mode"))
|
.accessibilityLabel(String(localized: "Select HDR mode"))
|
||||||
@ -398,7 +400,8 @@ struct SettingsView: View {
|
|||||||
(String(localized: "Front"), CameraPosition.front),
|
(String(localized: "Front"), CameraPosition.front),
|
||||||
(String(localized: "Back"), CameraPosition.back)
|
(String(localized: "Back"), CameraPosition.back)
|
||||||
],
|
],
|
||||||
selection: $viewModel.cameraPosition
|
selection: $viewModel.cameraPosition,
|
||||||
|
accentColor: AppAccent.primary
|
||||||
)
|
)
|
||||||
.accessibilityLabel(String(localized: "Select camera position"))
|
.accessibilityLabel(String(localized: "Select camera position"))
|
||||||
}
|
}
|
||||||
@ -777,9 +780,9 @@ struct SettingsView: View {
|
|||||||
SettingsToggle(
|
SettingsToggle(
|
||||||
title: "Enable Debug Premium",
|
title: "Enable Debug Premium",
|
||||||
subtitle: "Unlock all premium features for testing",
|
subtitle: "Unlock all premium features for testing",
|
||||||
isOn: $viewModel.isDebugPremiumEnabled
|
isOn: $viewModel.isDebugPremiumEnabled,
|
||||||
|
accentColor: AppStatus.warning
|
||||||
)
|
)
|
||||||
.tint(AppStatus.warning)
|
|
||||||
// Icon Generator
|
// Icon Generator
|
||||||
NavigationLink {
|
NavigationLink {
|
||||||
IconGeneratorView(config: .selfieCam, appName: "SelfieCam")
|
IconGeneratorView(config: .selfieCam, appName: "SelfieCam")
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user