Skip to content

Shimmer implemented on Authenticator screen#45

Open
Sudhanshu96 wants to merge 2 commits into
mainfrom
feature/shimmer_loading_effect
Open

Shimmer implemented on Authenticator screen#45
Sudhanshu96 wants to merge 2 commits into
mainfrom
feature/shimmer_loading_effect

Conversation

@Sudhanshu96

@Sudhanshu96 Sudhanshu96 commented Jul 1, 2026

Copy link
Copy Markdown

Description

Replaces the spinner-based loading states on the auth-method card screens with a reusable, theme-aware skeleton shimmer system. Placeholders mirror the loaded layout, so there's no layout shift when data arrives, and the loading state reads more clearly than a centered spinner.

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Code refactoring
  • Performance improvement
  • Test improvement

📹 Video

Dark Mode
https://github.com/user-attachments/assets/757c4e9e-f56e-4221-8587-8d3fe96cdd4e

Light Mode
https://github.com/user-attachments/assets/3fe2c8f6-07b2-4d9f-9e7b-9333fc05b2e6

appropriate)

Checklist

@Sudhanshu96 Sudhanshu96 requested a review from a team as a code owner July 1, 2026 10:24
@pacific-ring

Copy link
Copy Markdown
Contributor

@Sudhanshu96 Detekt failed. Some Lint issues

Comment thread CHANGELOG.md Outdated
Comment thread README.md
- 💬 **SMS OTP** - Phone number verification via one-time codes
- 📧 **Email OTP** - Email-based verification
- 🔑 **Recovery Codes** - Backup authentication codes for account recovery
- ✨ **Skeleton shimmer loading** - Card screens show animated, theme-aware skeleton placeholders while data loads (light/dark mode, honours the system animation setting)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not required. Shimmer effect is more of a cosmetic change

@Composable
internal fun animationsEnabled(): Boolean {
val context = LocalContext.current
val scale = Settings.Global.getFloat(

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we avoid syncronous call to Setting.Global.getFloat

this can induce Jank. Need to check on this :

@pacific-ring

Copy link
Copy Markdown
Contributor

Also @Sudhanshu96 I think something is wrong here. I can see my commits in this PR as well. Can you check once

@Sudhanshu96 Sudhanshu96 force-pushed the feature/shimmer_loading_effect branch from 28226d9 to 724a2e1 Compare July 2, 2026 10:52
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.

3 participants