foXaCe 24cb0d46e1 feat(about): add "View changes" button with detailed commit history (#5711)
* feat(about): add "View changes" button with detailed commit history

Add a new "View changes" button in the About screen that displays a detailed
changelog dialog when updates are available. This provides users with better
visibility into what changes they will receive when updating.

Features added:
- New "View changes" button in update section (Available/Downloaded states)
- ChangesDialog component showing commit history since current version
- Clickable commit cards that open GitHub commit pages in browser
- Relative time display (5m, 2h, 3d, etc.) following GitHub's format
- Full internationalization support for time strings
- Fetches commits using GitHub API and compares with current build
- Clean Material 3 UI with proper styling and animations

Technical changes:
- Extended GitHubService with commits and compare endpoints
- Added GitHubCommit and GitHubCompareResponse data models
- Enhanced NightlyBuildsRepository with commit fetching capabilities
- Added time-relative string resources (time_minutes_ago, time_hours_ago, etc.)
- Updated AboutViewModel to handle changes dialog state
- Modified UpdateState models to include build numbers
- Renamed getCommits to getRepositoryCommits for API consistency
- Replaced all hardcoded strings with proper internationalized resources

All strings are now properly internationalized to ensure translatability
across all supported languages.

* style: apply spotless code formatting

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* refactor(updater): move changelog logic to ViewModel

* feat(updater): improve UI and UX

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: SuperDragonXD <70206496+SuperDragonXD@users.noreply.github.com>
2025-08-07 19:35:54 +08:00
2024-09-14 10:49:35 +08:00
2024-10-06 17:33:30 +08:00
2025-01-12 01:49:28 +00:00
2024-12-04 12:47:47 +08:00
2024-11-03 18:45:48 +08:00
2022-05-17 23:14:06 +07:00
2025-01-08 09:50:43 +00:00
2022-08-10 15:07:14 +05:30
2024-04-30 10:03:35 +08:00
2021-10-06 09:43:50 +07:00
Fix
2024-09-15 08:50:28 +08:00
Fix
2024-09-15 08:50:28 +08:00
2024-12-19 07:57:45 +08:00
2019-11-25 20:24:07 +09:00
2025-07-14 14:20:16 +08:00
2024-03-22 15:45:32 -07:00
2024-11-03 20:03:46 +08:00
2025-07-14 14:20:16 +08:00

Lawnchair 15

Build debug APK Build release APK Crowdin OpenCollective Telegram Discord GitHub Downloads Play Store Installs

Google Pixel running Lawnchair Launcher with green wallpaper

Lawnchair is a free, open-source home app for Android. Taking Launcher3—Androids default home app—as a starting point, it ports Pixel Launcher features and introduces rich customization options.

This branch houses the codebase of Lawnchair 15, which is currently in beta and is based on Launcher3 from Android 15. For Lawnchair 9 to 14, see the branches with the 9- to 14- prefixes, respectively.

Features

  • Material You Theming: Adapts to your wallpaper and system theme.
  • At a Glance Widget: Displays information at a glance with support for Smartspacer.
  • QuickSwitch Support: Integrates with Android Recents on Android 10 and newer. (requires root)
  • Global Search: Allows quick access to apps, contacts, and web results from the home screen.
  • Customization Options: Provides options to tweak icons, fonts, and colors to your liking.
  • And more!

Download

Get it on Google Play Get it on IzzyOnDroid Get it on Obtainium Get it on GitHub

Lawnchair on Play Store will install as a different app from other sources. Some features may be restricted to comply with Google Play's publishing rules.

Development builds

Interested in keeping yourself up-to-date with every Lawnchair development? Try our development builds!

These builds offer the latest features and bug fixes at a cost of being slower and introducing new bugs. Ensure that you make backups before installing.

Download: ObtainiumGitHubnightly.link

Verification

Verify the integrity of your Lawnchair download using these SHA-256 hashes:

Google Play
47:AC:92:63:1C:60:35:13:CC:8D:26:DD:9C:FF:E0:71:9A:8B:36:55:44:DC:CE:C2:09:58:24:EC:25:61:20:A7
Elsewhere
74:7C:36:45:B3:57:25:8B:2E:23:E8:51:E5:3C:96:74:7F:E0:AD:D0:07:E5:BA:2C:D9:7E:8C:85:57:2E:4D:C5

Contributing

Please visit the Lawnchair Contributing Guidelines for information and tips on contributing to Lawnchair.

Supporting Lawnchair

If you love what we do, consider supporting us on Open Collective! Your contributions help keep Lawnchair independent and enable us to develop faster.

A huge thank you to our Core Backers ($5+): (These backers directly fund our Project Velocity Fund)

Core Backers

Become a supporter to help us cover our operational costs, or become a Core Backer to be featured here!

You can view all our links in the Lawnchair Wiki.

Description
Languages
Java 73.1%
Kotlin 26.5%
AIDL 0.3%
Python 0.1%