Skip to content

refactor: UI/UX#47

Merged
aiko-chan-ai merged 7 commits into
masterfrom
refactor-ui
Jul 17, 2026
Merged

refactor: UI/UX#47
aiko-chan-ai merged 7 commits into
masterfrom
refactor-ui

Conversation

@aiko-chan-ai

Copy link
Copy Markdown

TL;DR:

Partially backported PR 1878 (upstream), including Modal refactoring, WebViewReader modularization, ColorPickerModal updates, UI fixes, and more.


This pull request introduces a major refactor of the ColorPickerModal component, replacing the previous implementation with a modern, accessible color picker powered by the reanimated-color-picker library. It also adds comprehensive tests, improves the flexibility of the Row component, and enhances the ToggleButton with a disabled state. Additionally, several dependency and style updates ensure better compatibility and UI consistency.

Summary of most important changes:

Color Picker Modal Refactor and Enhancements

  • Completely rewrote ColorPickerModal to use the reanimated-color-picker library, providing a circular color picker, HEX input, and improved accessibility, while removing the old accent color grid and manual validation logic. The modal now normalizes all colors to opaque HEX6 and synchronizes state on open/close.
  • Added a comprehensive test suite for ColorPickerModal, covering color normalization, UI rendering, input handling, and contract behaviors.

Dependency Updates

  • Added reanimated-color-picker as a new dependency in package.json and updated pnpm-lock.yaml accordingly. [1] [2] [3] [4]

UI Component Improvements

  • Updated the Row component to accept horizontalSpacing and verticalSpacing props for more flexible layout control.
  • Enhanced the ToggleButton component to support a disabled state, visually indicating and preventing interaction when disabled. [1] [2] [3]

Style Adjustments

  • Modified toolWrapper.css to use a CSS variable for the bottom inset, improving compatibility with devices that have variable safe area insets. [1] [2]

These changes collectively modernize the color picker experience, improve test coverage, and enhance UI flexibility and accessibility.

aiko-chan-ai and others added 7 commits July 17, 2026 16:53
- add reusable KeyboardAwareModal primitive
- support async confirmation, loading and validation
- migrate common form modals to the new API
- prevent duplicate submissions and redundant dismissals
- remove unused TextInput and keyboard height hook
- add modal and category form tests

Co-authored-by: OpenAI Codex <codex@openai.com>
@aiko-chan-ai
aiko-chan-ai requested a review from Copilot July 17, 2026 16:33

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@aiko-chan-ai
aiko-chan-ai merged commit aa0bd19 into master Jul 17, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants