-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
fix(predict): predict feed animations, tab bar ui & search overlay #24337
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
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. |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #24337 +/- ##
==========================================
+ Coverage 79.28% 79.29% +0.01%
==========================================
Files 4065 4062 -3
Lines 107173 107399 +226
Branches 21830 21897 +67
==========================================
+ Hits 84971 85164 +193
- Misses 16248 16270 +22
- Partials 5954 5965 +11 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
kevinbluer
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM (other than a visual nit)...nice work!
| ); | ||
|
|
||
| return ( | ||
| <TabsBar |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch! Just updated to add that extra spacing, but still blend in while we scroll. There is no horizontal line with this tab bar AFAIK, so not adding that.
🔍 Smart E2E Test Selection
click to see 🤖 AI reasoning detailsThis PR is a significant refactoring of the Predict (Predictions) feature UI components. The changes include:
The changes are entirely isolated to the Predict feature (app/components/UI/Predict/) and don't affect any other wallet functionality. The E2E test selectors (like PredictMarketListSelectorsIDs.CONTAINER, getPredictMarketListSelector.marketCardByCategory) are maintained, but the underlying UI behavior has changed significantly. There are 7 E2E test files in e2e/specs/predict/ that use the SmokePredictions tag and test various prediction market flows (open position, cash out, claim positions, API down handling, geo restriction, etc.). These tests should be run to verify the refactored UI still works correctly. No other test tags are needed since:
|
|




Description
This PR refactors the PredictFeed component to fix critical UX issues and align with design system standards.
Why:
TabsBarcomponentWhat changed:
Fixed jittery Android animations: Replaced continuous scroll-tracking animation with a threshold-based binary show/hide animation that works smoothly on both platforms
Improved header reveal UX: Users can now reveal the header (balance card) at any scroll position by scrolling up. Previously, users had to scroll ALL THE WAY back to the top before the header would reappear - frustrating when deep in the feed
Correct design system tab bar: Migrated from custom tab implementation to the
TabsBarcomponent fromcomponent-library/components-temp/TabsFixed search overlay state preservation: When users close the search overlay, the feed now returns to its previous state instead of re-rendering from scratch. This preserves scroll position and loaded content
Changelog
CHANGELOG entry: Fix Predict feed animations, tab bar UI and search overlay
Related issues
Fixes: https://consensyssoftware.atlassian.net/browse/PRED-203
Manual testing steps
Screenshots/Recordings
Before
After
Screen.Recording.2026-01-08.at.10.20.07.AM.mov
Pre-merge author checklist
Pre-merge reviewer checklist
Technical Details
Files Changed:
hooks/useFeedScrollManager.ts- New scroll hook with threshold-based animationviews/PredictFeed/PredictFeed.tsx- PagerView + inline components + design system TabsBarviews/PredictFeed/PredictFeed.test.tsx- Updated testsroutes/index.tsx- Import path changecomponents/PredictMarketList/,components/MarketListContent/,components/SearchBox/,components/PredictFeedHeader/,hooks/useSharedScrollCoordinator.ts,types/scrollCoordinator.tsNet change: -1,865 lines (deleted fragmented components, consolidated into single file)
Note
Modernizes the predictions feed and removes legacy components.
useFeedScrollManagerwith threshold-based, binary header show/hide animation; adds comprehensive testsviews/PredictFeed/PredictFeed.tsxto useTabsBar+PagerViewtabs, per-tabFlashList, and an inline full-screen search overlayPredictMarketList,MarketListContent,PredictFeedHeader,SearchBox, anduseSharedScrollCoordinator(and related tests/types)routes/index.tsximport pathWritten by Cursor Bugbot for commit d67e199. This will update automatically on new commits. Configure here.