fix(perps): make market detail price/change row scroll instead of sticky#33408
Conversation
Move the live price + 24h change summary row (and fullscreen chart button) out of the fixed area between the header and the ScrollView and into the ScrollView as its first child. It is no longer part of/pinned below the header and now scrolls with the content. No visual change at rest.
|
CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes. |
PR template — items to address before "Ready for review"Warnings — informational, address before merging:
See docs/readme/ready-for-review.md for the full Definition of Ready for Review. |
🔍 Smart E2E Test Selection
click to see 🤖 AI reasoning detailsE2E Test Selection: SmokePerps is selected because this is the primary Perps market details view — the layout change could affect how elements are found/interacted with in E2E tests (e.g., if elements are now scrolled off-screen). Multiple smoke specs (perps-position.spec.ts, perps-position-liquidation.spec.ts, perps-limit-long-fill.spec.ts, perps-position-stop-loss.spec.ts) use PerpsMarketDetailsView and should be validated. SmokeWalletPlatform is selected per the tag description: "Perps is also a section inside the Trending tab (SmokeWalletPlatform); changes to Perps views affect Trending." SmokeConfirmations is selected per the SmokePerps tag description: "When selecting SmokePerps, also select SmokeConfirmations (Add Funds deposits are on-chain transactions)." Performance Test Selection: |
|
⚡ Performance Test Results
✅ All tests passed · 2 tests · 1 device 📱 Devices tested (1)Android: Google Pixel 8 Pro (v14.0) ✅ Passed Tests (2)
Branch: |



Description
On the Perps market detail screen, the live price and 24h price-change row (together with the fullscreen chart button) was rendered in the fixed area between the header and the
ScrollView, which made it "sticky" — it stayed pinned below the header while the rest of the content scrolled, effectively behaving like part of the header.This PR moves that summary row into the
ScrollViewas its first child so it is no longer part of/pinned to the header and now scrolls together with the page content. There is no visual change at rest (initial scroll position): the row keeps itspx-4 pb-2spacing and the chart section keeps itsmarginTop, so ordering and spacing are identical — only the stickiness behavior changes.MARKET_SUMMARY) from outside theScrollViewto inside it, above the chart section, so it scrolls with the content.Changelog
CHANGELOG entry: Fixed the Perps market detail screen so the live price and 24h change row scrolls with the page instead of staying stuck below the header.
Related issues
Fixes: https://consensyssoftware.atlassian.net/browse/TAT-3348
Manual testing steps
Screenshots/Recordings
Before
After
Simulator.Screen.Recording.-.iPhone.17.-.2026-07-16.at.12.54.29.mov
Pre-merge author checklist
Performance checks (if applicable)
trace()for usage andaddTokenfor an exampleFor performance guidelines and tooling, see the Performance Guide.
Pre-merge reviewer checklist
Note
Low Risk
Single layout-tree move in one Perps screen with no logic, API, or test ID changes—low regression risk beyond scroll UX.
Overview
On Perps market details, the row with live price, 24h change, and the fullscreen chart control was sitting in the fixed gap between
PerpsMarketInlineHeaderand theScrollView, so it stayed pinned under the header while the chart and rest of the page scrolled.This change relocates that
MARKET_SUMMARYblock to the first child insideScrollView(still above the chart section). Layout, spacing (px-4 pb-2), and test IDs are unchanged; only scroll behavior changes so the price row moves with the content instead of acting like part of the header.Reviewed by Cursor Bugbot for commit d4c1b4b. Bugbot is set up for automated code reviews on this repo. Configure here.