customize text color

This commit is contained in:
Trey t
2022-03-06 11:25:05 -06:00
parent 6ec0a9bb99
commit 7692f455c8
22 changed files with 225 additions and 92 deletions

View File

@@ -23,6 +23,7 @@ struct HomeView: View {
@AppStorage(UserDefaultsStore.Keys.moodImages.rawValue, store: GroupUserDefaults.groupDefaults) private var imagePack: MoodImages = .FontAwesome
@AppStorage(UserDefaultsStore.Keys.moodTint.rawValue, store: GroupUserDefaults.groupDefaults) private var moodTint: MoodTints = .Default
@AppStorage(UserDefaultsStore.Keys.textColor.rawValue, store: GroupUserDefaults.groupDefaults) private var textColor: Color = .black
// store a value that gets changed when user updates custom colors to update the view since the moodTint doesn't change
@AppStorage(UserDefaultsStore.Keys.customMoodTintUpdateNumber.rawValue, store: GroupUserDefaults.groupDefaults) private var customMoodTintUpdateNumber: Int = 0
@@ -280,7 +281,7 @@ extension HomeView {
private func SectionHeaderView(month: Int, year: Int) -> some View {
Text("\(Random.monthName(fromMonthInt: month)) \(String(year))")
.font(.title)
.foregroundColor(theme.currentTheme.labelColor)
.foregroundColor(textColor)
.frame(maxWidth: .infinity, alignment: .leading)
.padding()
.background(
@@ -294,7 +295,7 @@ extension HomeView {
ForEach(entries.sorted(by: {
return $0.forDate! > $1.forDate!
}), id: \.self) { entry in
entryListView(entry: entry)
EntryListView(entry: entry)
.contentShape(Rectangle())
.onTapGesture(perform: {
selectedEntry = entry
@@ -303,38 +304,6 @@ extension HomeView {
}
}
}
private func entryListView(entry: MoodEntry) -> some View {
HStack {
imagePack.icon(forMood: entry.mood)
.resizable()
.aspectRatio(contentMode: .fit)
.frame(width: 40, height: 40, alignment: .center)
.foregroundColor(moodTint.color(forMood: entry.mood))
.padding(.leading, 5)
VStack {
HStack {
Text(Random.weekdayName(fromDate:entry.forDate!))
.font(.title3)
.foregroundColor(theme.currentTheme.labelColor)
Text(" - ")
.padding([.leading, .trailing], -10)
.foregroundColor(theme.currentTheme.labelColor)
Text(Random.dayFormat(fromDate:entry.forDate!))
.font(.title3)
.foregroundColor(theme.currentTheme.labelColor)
Spacer()
}
.multilineTextAlignment(.leading)
Text(entry.moodValue == Mood.missing.rawValue ? String(localized: "mood_value_missing_tap_to_add") : "\(entry.moodString)")
.font(.body)
.foregroundColor(Color(UIColor.systemGray))
.frame(maxWidth: .infinity, alignment: .leading)
}
}
}
}
struct ViewOffsetKey: PreferenceKey {