Skip to content

Conversation

@MARMdeveloper
Copy link
Collaborator

@MARMdeveloper MARMdeveloper commented Jan 26, 2026

Summary

Refactored scroll state persistence and loading logic in Charges and Drives modules to eliminate UI flickering and incorrect scroll restoration during data filtering.

Changes

  • ViewModel State: Forced explicit scroll resets (scrollPosition = 0, scrollOffset = 0) when updating filter criteria to ensure a clean list view.
  • Non-destructive Recomposition: Modified UI screens to keep the list in the composition during data fetches, preventing LazyListState disposal and screen flickering.
  • Visual Feedback: Implemented GPU-accelerated alpha transitions using animateFloatAsState and graphicsLayer to provide subtle feedback during background updates.
  • Smart Loading: Optimized the loading logic to show a full-screen spinner only during initial empty-state loads, maintaining the existing list during subsequent refreshes.

fixes #117

@MARMdeveloper MARMdeveloper force-pushed the fix/flickering-when-filtering branch from 4bdf670 to 142fb49 Compare January 26, 2026 19:00
@MARMdeveloper MARMdeveloper force-pushed the fix/flickering-when-filtering branch from 142fb49 to 4826f48 Compare January 27, 2026 20:41
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.

Flickering screen on filtering

3 participants