Skip to content

feat: allow selecting specific pending Reown request from carousel overlay #858

Description

@andreabadesso

Context

PR #857 added a global overlay with a carousel of pending dApp requests and a "Reject All" button. The carousel currently lets users browse pending requests but they can only reject all — they can't select a specific request to review/respond to.

Desired Behavior

When the user swipes through the carousel and taps a specific request card, the app should:

  1. Skip/reject all requests before the selected one in the queue
  2. Navigate to the detail screen for the selected request
  3. The user can then accept or reject that specific request

Technical Considerations

  • The unifiedReownFlowListener saga processes requests sequentially from an action channel
  • The current request is mid-flight in handleRpcRequestpromptHandler (Promise-based)
  • To "jump" to a selected request, we'd need to:
    • Reject the current request (dispatch reownReject())
    • Auto-reject queued requests before the selected one via walletKit.respondSessionRequest()
    • Let the queue naturally reach the selected request (it already skips already-responded requests)

Alternative Approach

Add per-card "Accept" / "Reject" / "Review" buttons directly on the carousel cards:

  • Read-only requests (Get Balance, Get Address, Get UTXOs): Show "Accept" / "Reject" buttons that respond directly via WalletKit, bypassing the saga queue
  • Write operations (Send Transaction, Create Token, Nano Contract): Show "Review" button that navigates to the detail screen

This would be more powerful but requires handling responses outside the saga queue.

Related

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions