Skeleton widget update#480
Conversation
Rewrites Skeleton to use theme-aware skeletonHighlightA/B colors, extracts TxItemSkeleton as a standalone widget, and converts skeletonHighlight to two-stop skeletonHighlightA/B in AppColorsV2. Co-authored-by: Cursor <cursoragent@cursor.com>
…into feat/skeleton-widget-update
|
I've reviewed PR #480 thoroughly. Here's my review. OverallThis is a well-scoped, low-risk UI cleanup. CI is green (Analyze, Bugbot, Security Reviewer all passing). The widget becomes simpler, more theme-driven, and removes a pre-existing footgun in What's good
Concerns / suggestions
decoration: BoxDecoration(
borderRadius: borderRadius,
color: context.colors.skeletonBase,
gradient: LinearGradient(
begin: Alignment.centerLeft,
end: Alignment.centerRight,
colors: [
context.colors.skeletonHighlightA.withValues(alpha: 0.2),
context.colors.skeletonHighlightB.withValues(alpha: 0.2),
context.colors.skeletonHighlightA.withValues(alpha: 0.2),
],
stops: const [0.0, 0.5, 1.0],
transform: _SlideGradientTransform(_animation.value),
),
),Single
final br = widget.borderRadius ??
(widget.width != null && widget.width == widget.height
? BorderRadius.circular(widget.width!)
: BorderRadius.circular(4));— but that re-introduces the heuristic from #2, so the simpler thing is to keep the current non-const constructor and accept it.
Widget build(BuildContext context) {
final double txItemHeight = 32.0;
final double txItemDetailHeight = 12.0;
return Row(Make these
VerdictLGTM with the dead V1 Want me to push the V1 dead-field cleanup and/or the |
- Dead V1 fields left behind. - Opacity widget triggers a saveLayer() - Tiny nit in TxItemSkeleton
* wip: pos flow - finish input charge screen - finish scan to pay screen * feat: finish pos screens, and formatting * feat: make charge button big in bottom of screen * chore: formatting * refresh miner balance periodically and on mining new block (#482) * refresh miner balance periodically and on mining new block * miner run script miner needs to be run in release mode, otherwise very slow * add logging with rotating logs * Miner Version 0.4.3 * Skeleton widget update (#480) * feat: update skeleton widget with improved shimmer and colors Rewrites Skeleton to use theme-aware skeletonHighlightA/B colors, extracts TxItemSkeleton as a standalone widget, and converts skeletonHighlight to two-stop skeletonHighlightA/B in AppColorsV2. Co-authored-by: Cursor <cursoragent@cursor.com> * feat: change skeleton to new one * fix: PR review issues - Dead V1 fields left behind. - Opacity widget triggers a saveLayer() - Tiny nit in TxItemSkeleton --------- Co-authored-by: Cursor <cursoragent@cursor.com> * feat: big clean up (#478) * feat: update to new graphql - comply with hasura syntax - change to new graphql url in constants - update data model construction from json to comply new hasura return value * fix: revert to parse string We have made hasura return string for number value. * chore: formatting * feat: finish mining reward screen * feat: finish proper loading state * feat: update empty state in home * feat: big clean up - Delete unused assets - Delete unused widgets * feat: update graphql wormhole to comply hasura * feat: make planck as the highlighted mined stats and earned * fix: query for transfer change toHash to to_hash * fix: import path * feat: show current testnet details and redeem button * feat: update skeleton widget with improved shimmer and colors Rewrites Skeleton to use theme-aware skeletonHighlightA/B colors, extracts TxItemSkeleton as a standalone widget, and converts skeletonHighlight to two-stop skeletonHighlightA/B in AppColorsV2. Co-authored-by: Cursor <cursoragent@cursor.com> * revert: remove skeleton widget changes (moved to feat/skeleton-widget-update) Co-authored-by: Cursor <cursoragent@cursor.com> * feat: change skeleton to new one * chore: formatting --------- Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: Cursor <cursoragent@cursor.com> Co-authored-by: Nikolaus Heger <nheger@gmail.com>
Summary
Moved skeleton update in miner reward branch to this branch.
Note
Low Risk
Low risk UI-only changes that adjust theme color fields and loading placeholders; main risk is minor visual regressions in skeleton rendering.
Overview
Updates the loading
Skeletonto use the V2 theme (context.colors) with a new base + two-tone highlight shimmer, and standardizes the animation duration.Replaces the old
Skeleton.txItemconstructor with a dedicatedTxItemSkeletonwidget and switches activity loading states to render it.Removes legacy skeleton colors from
AppColorsThemeand updatesAppColorsV2to replaceskeletonHighlightwithskeletonHighlightA/skeletonHighlightB(including new default values).Reviewed by Cursor Bugbot for commit 005bcff. Bugbot is set up for automated code reviews on this repo. Configure here.