- Simplify navigation animations (slide-only, 220ms, FastOutSlowInEasing)
- Add soft refresh to prevent shimmer when returning from Settings
- Move language restoration to Application class for reliable persistence
- Fix theme parent to AppCompat.DayNight for proper locale support
- Delay refresh 250ms to complete navigation animation smoothly
Introduces a new Settings screen with language picker, contact/feedback button,
and logout functionality. All UI strings now use centralized string resources
with translations for English, Chinese, Spanish, Hindi, Arabic, Portuguese,
Bengali, Russian, Japanese, French, German, Korean, Italian, Turkish,
Vietnamese, Polish, Ukrainian, Dutch, Thai, and Indonesian.
Uses AppCompatDelegate for runtime locale switching without app restart.
Also adds CLAUDE.md for Claude Code guidance.
- Use lazy initialization for EncryptedSharedPreferences
- Defer MasterKey and crypto setup until first actual use
- Prevents ParameterizedType reflection errors during Hilt injection
- Bump version to 1.2
- Fix ParameterizedType casting error in release builds
- Add ProGuard rules for Google Tink (security-crypto dependency)
- Add dontwarn rules for Tink optional dependencies
- Bump version to 1.1
- Update README with changelog
Introduces GitHub issue and PR templates, contributing and security documentation. Adds Android 12+ splash screen support, updates theming and status color handling, and improves MaskedEmail card/detail UI with shared transitions and accessibility. Updates dependencies for Compose and Material3, and enhances README with detailed setup and contribution instructions.
Expanded .gitignore to exclude Gradle, Android, and IDE files. Added several .idea configuration files and the gradle-wrapper.jar to support project setup and development environment consistency. Updated app/build.gradle.kts and JmapModels.kt for build and API model changes.