-
Notifications
You must be signed in to change notification settings - Fork 48
feat: improve UI theming consistency across components #19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
- Replace hardcoded colors with semantic color names for better theming - Update text colors to use .primaryText and .secondaryText - Replace Color.bodyText with Color.primaryText throughout - Update Color.tintColor usage for better consistency - Improve MultilineTextField placeholder color theming - Standardize color usage in FeedDetail, UserDetail, UserFeed pages - Enhance RichText component color consistency These changes improve the overall visual consistency and prepare the app for better theme support in the future. 🤖 Generated with Claude Code (https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR improves UI theming consistency by replacing hardcoded colors with semantic color names across various SwiftUI components.
Key changes include:
- Standardized text colors using
.primaryTextand.secondaryTextinstead of hardcoded colors - Updated interactive elements to use
.tintColorfor better semantic consistency - Enhanced placeholder text theming with semantic color usage
Reviewed Changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| RichText.swift | Updated base text style from Color.bodyText to Color.primaryText |
| MultilineTextField.swift | Enhanced text and placeholder color theming with semantic colors |
| OtherSettingsView.swift | Updated chevron icon to use .secondaryText instead of hardcoded gray |
| UserFeedPage.swift | Standardized text colors across user feed items with semantic colors |
| UserDetailPage.swift | Improved color consistency for reply items and content display |
| ReplyItemView.swift | Added proper color theming for username and timestamp text |
| FeedDetailPage.swift | Updated reply button color from Color.bodyText to Color.tintColor |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| uiView.text = self.text | ||
| } | ||
| // Update text color to ensure it responds to theme changes | ||
| uiView.textColor = Color.primaryText.uiColor |
Copilot
AI
Sep 14, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Setting textColor on every updateUIView call may cause unnecessary UI updates. Consider checking if the color has actually changed before setting it to avoid redundant operations.
| uiView.textColor = Color.primaryText.uiColor | |
| let desiredColor = Color.primaryText.uiColor | |
| if uiView.textColor != desiredColor { | |
| uiView.textColor = desiredColor | |
| } |
Code Coverage Report ❌Current coverage: 0% |
- Add conditional check before setting textColor in updateUIView - Prevents unnecessary UI updates when color hasn't changed - Addresses Copilot review feedback for performance optimization Co-Authored-By: GitHub Copilot <noreply@github.com>
Code Coverage Report ❌Current coverage: 0% |
Summary
This PR improves UI theming consistency across multiple components by replacing hardcoded colors with semantic color names.
Changes Made
Color.bodyTexttoColor.tintColorColor.bodyTextwithColor.primaryTextfor consistencyBenefits
Testing
🤖 Generated with Claude Code