fix: align profile screens with Figma - #781
Conversation
Match the v62 handoff for the create and edit profile screens: header spacing and inset divider, pubky key font, section dividers, bio and link input styling, brand-coloured delete button, image-square avatar placeholder, and a gradient footer that lets the form scroll behind the Cancel/Save buttons. Names render in display caps and skip autocorrect. Count the hardware wallets row in the home activity slot budget and top-align the wallet page so extra content no longer pushes the balance up under the header. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
No findings on the reviewed head. The earlier hardware-row finding is fixed. Current unit and integration checks are running; E2E is queued. An older E2E status failure belongs to the superseded run. Pending manual checks. |
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- Letter avatar ("Y") for the home header before a profile exists
- Choice screen copy from Figma and illustration placement/order
- Auto-focus the name on Create Profile; Continue stays behind the keyboard
- Pay Contacts layout matches the onboarding pattern
- Profile header uses uniform 16pt gaps and an inset bio; copy icon sized like the others
- Edit Profile: 3-line bio, Tags caption, footer hidden while typing
- Small pill buttons use 13pt text and 16pt icons; suggestion sheets use them and pad the back button
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
Thanks for the review. Addressed in b63aa14; screenshots of each screen next to its Figma frame are in the PR description under "Design review follow-up". The Figma file only has "Bitkit - Handoff v62", so I compared against v62. Home
Create Profile (choice)
Create Profile
Contact onboarding (Pay Contacts)
Profile
Edit Profile
Add Tag/Link
|
- Copy icon on Contact Detail matches edit and share - No divider under the bio on Add Contact - Edit Contact labels the notes field "Notes" Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
QA reviewed on Reviewed the profile, contact, choice, Pay Contacts, and home-header layout against the v62 frames. Twin bitkit-android#1332 at No findings on this pull request. The visual list in the changes-requested review is in this head: “Y” avatar, choice copy, empty-create focus, Continue behind the keyboard, Pay Contacts spacing, 18pt copy icon, three-line bio, Tags caption, Cancel/Save hidden while the keyboard is up, and suggestion pills. Manual tests 6–16 are still unchecked, so the pixel match is not confirmed. The hardware-row comment matches On the twin, restoring a profile that already has a name still focuses the field and opens the keyboard. iOS focuses only when the name is empty. Run Tests and Run Integration Tests passed. Local E2E passed and does not run |
|
Staging suite dispatched against https://github.com/synonymdev/bitkit-ios/actions/runs/35972162770 E2E specs use |
|
Staging was re-run against The https://github.com/synonymdev/bitkit-ios/actions/runs/35988071715 |
Adds the 24pt Phosphor regular pencil, copy and share icons from Figma for the profile actions and replaces the circle button's full outline with the top highlight used by the other buttons. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- Own profile shows only name, avatar, bio, QR and actions, per the Profile + QR design notes; links stay on contact details and Edit Profile - QR uses the Figma side padding instead of a fixed 279pt width - Multi-line text fields no longer set a submit label, so Return inserts a line break Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The QR view's own tap gesture swallowed the wrapping button's tap, so nothing was copied and no toast appeared. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Adds 24pt coins, activity and trash icons alongside the pencil, copy and share ones so the contact actions match Figma, and drops the per-icon size override the old copy asset needed. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- Contact link rows open web addresses, emails and phone numbers; plain text values stay as text - Add Tag sits below the existing tags on contact details - Bio uses NoteTextEditor with line breaks enabled; a vertical TextField ended editing on Return instead of inserting a new line Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Ports the bitkit-android#1332 review finding: tel: links with spaces or brackets were rejected by the whitespace check before the scheme check. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Bare numbers open as tel: links only in international format or under a phone label, and web links need a top-level domain with letters, so IP addresses and dates stay plain text. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…eader Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
Addressed in 6686718:
The Add Link base-URL prefill is left out of scope as noted. |
|
Found a bug with the capitalization of the name: Simulator.Screen.Recording.-.iPhone.17.-.2026-09-24.at.23.09.59.movFigma shows the name on the profile screens in uppercase, while on the home screen I believe it should not be transformed |
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
The name field had On Home, the name keeps its saved casing, with the first letter of each word capitalized: "apple tree" shows as "Apple Tree", and "McDonald" stays as is. Checked on the simulator: saved "apple tree", then Home shows "Apple Tree" and Profile shows "APPLE TREE". |






This PR aligns the create and edit profile screens and the home header spacing with the v62 Figma handoff.
Description
InsetHeaderScrollView, as Settings and Support already do.Out of Scope
Views/Profile/PubkyChoiceView: the "New pubky" caption on the create card and the "use existing" Pubky Ring identity list come with feat: use pubky ring keys via shared keychain #774, so this PR keeps the existing cards and the Pubky Ring import option.Design
Preview
Figma frames from Handoff v62. Before is master; After is this branch.
QA Notes
Manual Tests
regression:Profile → Edit → append text to an existing mixed-case name → Save: the existing part keeps its casing (e.g. "Apple" + " tree" saves as "Apple tree").regression:Home without a hardware wallet: 4 activities show.regression:Contacts → contact → Edit: form renders and saves.regression:Send → LNURL pay comment and Trezor xpub input: Return still dismisses the keyboard.Automated Checks
ProfileLinkRowTests.swift(9 tests, passing locally).🤖 Generated with Claude Code