feat: complete custom app icon integration#220
Open
RONAK-AI647 wants to merge 9 commits into
Open
Conversation
Contributor
Author
|
App Color:
Customization
Color palette:
@mrspence DO test once regarding this feature!! Any if any color , grpahic or font is breaking the global theme/UI , do let me know !! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Overview
This PR completes the custom app icon settings feature, integrates a premium "Customize" tile directly into the icon selection grid, refactors data presets to be config-driven, and aligns the layout style to match the pre-existing Chat Background settings screen.
Changes
1. App Icon Customization Screen & Layout Alignment
app/settings/customize-icon.tsxto use local component state.PREVIEW), and divider lines (<Separator />) withapp/settings/background.tsx.CORNERS,HEIGHT) fromtheme/globals.tsto give the apply gradient button and standard "Reset to Default" button matching pill-shaped styles.2. Live Icon Customization Picker & Modal
components/icon-customizer/color-palette-modal.tsxso hue/saturation handles align correctly when the picker is opened.FONT_SIZEtoken.3. Icon Selection Grid & Alternate App Icons
app/settings/app-icon.tsx.components/app-icon-grid.tsx), styled with a brand blue-to-purple gradient.src/actions/app-icon.tsto prevent runtime crashes in Expo Go environments.4. Dynamic Preset Mapping
src/data/icon-customizer-presets.tswith a map that dynamically derives preset swatches fromscripts/icon-config.ts(ICON_VARIANTS), creating a single source of truth.Testing & Verification
npm run test-> Passed all 601 tests across 31 suites.npm run lint-> Passed cleanly with zero syntax or format warnings.Closes #172