Skip to content

feat(android): Implement native splash screen#267

Merged
rainxchzed merged 1 commit into
mainfrom
splash-and-statusbar
Feb 27, 2026
Merged

feat(android): Implement native splash screen#267
rainxchzed merged 1 commit into
mainfrom
splash-and-statusbar

Conversation

@rainxchzed
Copy link
Copy Markdown
Member

@rainxchzed rainxchzed commented Feb 27, 2026

This commit introduces a native splash screen on Android using the SplashScreen API. It replaces the default blank window with a themed splash screen that displays the app logo.

  • feat(android): Added splash.xml to define the Theme.GitHubStore.Splash theme, which sets the splash screen icon and background color.
  • feat(android): Created ic_splash.xml drawable to display the app logo with appropriate insets on the splash screen.
  • style(android): Updated the ic_launcher_background color to #101010 in colors.xml.
  • refactor(android): Updated AndroidManifest.xml to apply the new Theme.GitHubStore.Splash as the application's theme.

Summary by CodeRabbit

  • Style
    • Redesigned the splash screen with an animated logo and custom visual theme
    • Updated the launcher background to a darker color scheme for improved visual harmony and enhanced contrast
    • Configured a new application theme that applies after the splash screen is dismissed, ensuring consistent appearance throughout the app

This commit introduces a native splash screen on Android using the `SplashScreen` API. It replaces the default blank window with a themed splash screen that displays the app logo.

- **feat(android)**: Added `splash.xml` to define the `Theme.GitHubStore.Splash` theme, which sets the splash screen icon and background color.
- **feat(android)**: Created `ic_splash.xml` drawable to display the app logo with appropriate insets on the splash screen.
- **style(android)**: Updated the `ic_launcher_background` color to `#101010` in `colors.xml`.
- **refactor(android)**: Updated `AndroidManifest.xml` to apply the new `Theme.GitHubStore.Splash` as the application's theme.
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Feb 27, 2026

Walkthrough

This pull request implements an Android splash screen by updating the application theme in the manifest, adding a custom splash theme configuration, and creating associated drawable and color resources for the splash screen's visual appearance.

Changes

Cohort / File(s) Summary
Manifest Theme Configuration
composeApp/src/androidMain/AndroidManifest.xml
Updated application theme from legacy Material theme to custom Theme.GitHubStore.Splash for splash screen implementation.
Splash Screen Resources
composeApp/src/androidMain/res/drawable/ic_splash.xml, composeApp/src/androidMain/res/values/colors.xml, composeApp/src/androidMain/res/values/splash.xml
Added splash drawable with inset logo, defined new Theme.GitHubStore.Splash style with animated icon and dark background color (#101010), and configured post-splash transition theme.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Poem

🐰 A splash of style, dark and grand,
Logo centered, as we planned,
Android greets with flair so bright,
Dark background, logo's light,
Welcome screens now take their stage!

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'feat(android): Implement native splash screen' directly and clearly summarizes the main change - adding a native Android splash screen implementation.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch splash-and-statusbar

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
composeApp/src/androidMain/res/values/colors.xml (1)

3-3: Consider using a dedicated color resource for the splash background.

Reusing ic_launcher_background for the splash screen couples the launcher icon background with the splash screen background. If these need to diverge in the future (e.g., different branding requirements), you'd need to update references in multiple places. Consider defining a separate splash_background color for clarity and flexibility.

That said, if the intent is to keep both synchronized, this approach is acceptable.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@composeApp/src/androidMain/res/values/colors.xml` at line 3, The splash
screen currently reuses the ic_launcher_background color resource which couples
launcher icon styling with splash branding; create a new color resource named
splash_background and set it to the desired hex value (copy current `#101010` or a
new value), then update any splash layout or theme references to use
splash_background instead of ic_launcher_background so the two can diverge
independently (look for usages of ic_launcher_background in splash/theme XML and
replace them with splash_background).
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@composeApp/src/androidMain/res/values/colors.xml`:
- Line 3: The splash screen currently reuses the ic_launcher_background color
resource which couples launcher icon styling with splash branding; create a new
color resource named splash_background and set it to the desired hex value (copy
current `#101010` or a new value), then update any splash layout or theme
references to use splash_background instead of ic_launcher_background so the two
can diverge independently (look for usages of ic_launcher_background in
splash/theme XML and replace them with splash_background).

ℹ️ Review info

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between e40f2bc and d48f6ee.

📒 Files selected for processing (4)
  • composeApp/src/androidMain/AndroidManifest.xml
  • composeApp/src/androidMain/res/drawable/ic_splash.xml
  • composeApp/src/androidMain/res/values/colors.xml
  • composeApp/src/androidMain/res/values/splash.xml

@rainxchzed rainxchzed merged commit 8f8888b into main Feb 27, 2026
2 checks passed
@rainxchzed rainxchzed deleted the splash-and-statusbar branch February 27, 2026 14:57
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.

1 participant