fix: add contentShape to all tappable rows so entire row area registers taps

Adds .contentShape(Rectangle()) or .contentShape(Capsule()) to 11 buttons,
NavigationLinks, and onTapGesture handlers across 8 files where only the
visible content (text/icons) was receiving taps instead of the full row.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Trey t
2026-02-20 13:30:41 -06:00
parent 1b05f0ebaf
commit e2d449046b
8 changed files with 11 additions and 0 deletions

View File

@@ -209,6 +209,7 @@ struct AchievementsListView: View {
) {
ForEach(filtered) { achievement in
AchievementCard(achievement: achievement)
.contentShape(Rectangle())
.onTapGesture {
selectedAchievement = achievement
}
@@ -283,6 +284,7 @@ struct SportFilterButton: View {
.background(isSelected ? color : Theme.cardBackground(colorScheme))
.foregroundStyle(isSelected ? .white : Theme.textPrimary(colorScheme))
.clipShape(Capsule())
.contentShape(Capsule())
.overlay {
Capsule()
.stroke(isSelected ? Color.clear : color.opacity(0.3), lineWidth: 1)