Skip to content

Hotfix positioning - #333

Merged
bordalix merged 9 commits into
masterfrom
hotfix_positioning
Feb 27, 2026
Merged

bordalix merged 9 commits into
masterfrom
hotfix_positioning

Conversation

@bordalix

@bordalix bordalix commented Feb 26, 2026 •

Copy link
Copy Markdown
Collaborator

Fixes positioning errors introduced by page animations.

Summary by CodeRabbit

  • Bug Fixes

    • Keyboard now appears immediately when activated, bypassing overlay paths.
    • QR display now shows immediately when an existing invoice is present.
  • Style

    • Removed button small-size variant and standardized label rendering.
    • Onboarding elements occupy full width with improved spacing and alignment.
  • Refactor

    • Connection status simplified to an icon-only indicator.
    • Adjusted onboarding stagger wrappers for smoother visual flow.

@coderabbitai

coderabbitai Bot commented Feb 26, 2026 •

Copy link
Copy Markdown
Contributor

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

Walkthrough

Removed Button's small prop and centralized label rendering into an internal Label component; adjusted onboarding motion/layout (child width, stagger wrappers moved/added, container animation/layout tweaks); simplified Boltz status to icon-only; added early-return Keyboard rendering in Receive Amount; QR/invoice handling tied to existing recvInfo.

Changes

Cohort / File(s) Summary
Button Component
src/components/Button.tsx
Removed small?: boolean from ButtonProps; removed size handling on IonButton; introduced internal Label component and replaced direct {label} rendering with <Label />.
Onboard motion helper
src/components/OnboardLoadIn.tsx
Added width: '100%' to non-reduced-motion motion.div style.
Success component UI
src/components/Success.tsx
Wrapped existing icon/headline/text in OnboardStaggerContainer → OnboardStaggerChild and moved content into FlexCol with vertical gap.
Init Success screen
src/screens/Init/Success.tsx
Removed OnboardStaggerContainer/OnboardStaggerChild wrappers; now renders <Success> directly inside <Content>.
Onboard screen layout & animation
src/screens/Wallet/Onboard.tsx
Updated exit animation easing to explicit array from EASE_OUT_QUINT; expanded inline container styles (justifyContent, alignItems, gap) while keeping duration.
Boltz connection UI
src/screens/Apps/Boltz/Index.tsx
Removed inline "Connected"/"Disconnected" text and color logic; component now renders only the status icon.
Receive Amount keyboard & QR
src/screens/Wallet/Receive/Amount.tsx, src/screens/Wallet/Receive/QrCode.tsx
Added early-return rendering of Keyboard when showKeys is true (bypasses faucet/standard UI); QrCode now initializes invoice from recvInfo.invoice ?? '', shows QR immediately if invoice exists, and guards reverse-swap creation when invoice present.

Sequence Diagram(s)

sequenceDiagram
  participant User
  participant AmountScreen as Amount.tsx
  participant Keyboard
  participant FaucetFlow as Faucet/Receive UI

  User->>AmountScreen: open / interact
  AmountScreen->>AmountScreen: check showKeys
  alt showKeys == true
    AmountScreen->>Keyboard: render Keyboard (early return)
    Keyboard-->>User: collect input / back
  else showKeys == false
    AmountScreen->>FaucetFlow: proceed with faucet / invoice / QR flow
    FaucetFlow-->>User: render receive UI or QR
  end
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested reviewers

  • tiero
  • pietro909
🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'Hotfix positioning' is directly related to the main changes, which focus on fixing layout and positioning issues across multiple components (Button sizing, OnboardLoadIn width, Success layout restructuring, Onboard screen layout adjustments, and ConnectionStatus simplification). The PR description confirms it fixes 'positioning errors introduced by page animations.' The title is specific and accurately represents the primary change.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch hotfix_positioning

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Feb 26, 2026 •

Copy link
Copy Markdown

Deploying wallet-bitcoin with  Cloudflare Pages  Cloudflare Pages

Latest commit: 7ff9d44
Status: ✅  Deploy successful!
Preview URL: https://446b7d32.wallet-bitcoin.pages.dev
Branch Preview URL: https://hotfix-positioning.wallet-bitcoin.pages.dev

View logs

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Feb 26, 2026 •

Copy link
Copy Markdown

Deploying wallet-mutinynet with  Cloudflare Pages  Cloudflare Pages

Latest commit: 7ff9d44
Status: ✅  Deploy successful!
Preview URL: https://f01a2019.arkade-wallet.pages.dev
Branch Preview URL: https://hotfix-positioning.arkade-wallet.pages.dev

View logs

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
src/screens/Wallet/Receive/Amount.tsx (1)

132-134: Remove duplicated showKeys branching to eliminate dead code.

Line 132 introduces an early return for showKeys, so the later if (showKeys) block at Lines 159-161 is unreachable. Keep a single branch to avoid stale logic paths.

♻️ Proposed cleanup
   if (showKeys) {
     return <Keyboard back={() => setShowKeys(false)} hideBalance onSats={handleChange} value={satoshis} />
   }

@@
-  if (showKeys) {
-    return <Keyboard back={() => setShowKeys(false)} hideBalance onSats={handleChange} value={satoshis} />
-  }
-
   return (
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@src/screens/Wallet/Receive/Amount.tsx` around lines 132 - 134, There are two
separate `if (showKeys)` branches in the Receive Amount component causing dead
code; keep a single branch by removing the later unreachable block. Locate the
early return that renders <Keyboard back={() => setShowKeys(false)} hideBalance
onSats={handleChange} value={satoshis} /> and delete the subsequent duplicate
`if (showKeys)` block (the later rendering of Keyboard/related logic) so the
component only uses the initial `showKeys` branch and no stale logic remains.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@src/screens/Wallet/Receive/Amount.tsx`:
- Around line 132-134: There are two separate `if (showKeys)` branches in the
Receive Amount component causing dead code; keep a single branch by removing the
later unreachable block. Locate the early return that renders <Keyboard back={()
=> setShowKeys(false)} hideBalance onSats={handleChange} value={satoshis} /> and
delete the subsequent duplicate `if (showKeys)` block (the later rendering of
Keyboard/related logic) so the component only uses the initial `showKeys` branch
and no stale logic remains.

ℹ️ Review info

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 681dd38 and b02017f.

📒 Files selected for processing (1)
  • src/screens/Wallet/Receive/Amount.tsx

@bordalix
bordalix merged commit d4d6c1d into master Feb 27, 2026
5 checks passed
@bordalix
bordalix deleted the hotfix_positioning branch March 4, 2026 10:12
@coderabbitai coderabbitai Bot mentioned this pull request Apr 6, 2026
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.

1 participant