Skip to content

Commit 70ef4d6

Browse files
authored
fix: animation on lock screen, replace by static fox more loader (#19342)
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** Problem: LockScreen component only triggered biometrics when AppState changed During rapid background/foreground cycles during login, the component could mount when the app was already in 'active' state Since no AppState change occurs (app is already active), the listener never fires User sees FoxLoader indefinitely without biometrics being triggered Solution: Simplified the LockScreen component by replacing laggy Lottie animations with a static FoxLoader component to improve performance and user experience. **Changes Made** * Replaced laggy Lottie animations (wordmarkLight, wordmarkDark) with static FoxLoader component * Removed animation-related styling and positioning code that's no longer needed * Cleaned up unused state (ready state, animation refs, opacity Animated.Value) * Removed unnecessary Redux connection and theme imports * Simplified component structure while preserving authentication functionality * Handled race condition when the app state already changed before the listener got defined. **Impact** * Improved performance by eliminating laggy animations * Better user experience with consistent, responsive loading indicator * Reduced bundle size by removing animation assets (to do) * Authentication functionality remains unchanged * No more freezing screen at the diamong due to race condition <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Changelog** <!-- If this PR is not End-User-Facing and should not show up in the CHANGELOG, you can choose to either: 1. Write `CHANGELOG entry: null` 2. Label with `no-changelog` If this PR is End-User-Facing, please write a short User-Facing description in the past tense like: `CHANGELOG entry: Added a new tab for users to see their NFTs` `CHANGELOG entry: Fixed a bug that was causing some NFTs to flicker` (This helps the Release Engineer do their job more quickly and accurately) --> CHANGELOG entry: ## **Related issues** Fixes: ## **Manual testing steps** ```gherkin Feature: my feature name Scenario: user [verb for user action] Given [describe expected initial app state] When user [verb for user action] Then [describe expected outcome] ``` ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** https://github.com/user-attachments/assets/21d2045f-ebe2-4769-bf41-2d95cd012196 <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
1 parent faff79c commit 70ef4d6

File tree

5 files changed

+548
-16798
lines changed

5 files changed

+548
-16798
lines changed

0 commit comments

Comments
 (0)