gamescope: hide the splash on the first committed frame, and keep Open container blue (payload 20261024.1)
Description
Hides the "Launching game" splash as soon as there is something behind it, and keeps "Open container" on the default blue desktop while it happens.
Splash hiding. With the gamescope game-window patch parked, nothing sends the daemon a game-window note, so the splash waited for a signal that no longer exists. The daemon now clears it on the session's first committed frame — the first moment there is content on the panel instead of the wine desktop — once per session. The bundled libgamenative_drm.so is that daemon (gamenative-drm#16).
Payload 20261024.1. The payload now comes from the APK when the build ships one: a build runs the gamescope and daemon it was tested with, and needs no network to launch. Only an APK without an archive falls back to the published download. The archive itself stays out of the tree (ignored), because a payload is an artefact of the branch that built it.
Desktop theme. Game sessions get a fixed black desktop (GAME_SESSION_THEME); "Open container" gets DEFAULT_DESKTOP_THEME, the blue one. Previously the game desktop was derived from the container's stored theme, and a launch could leave that value holding the game's, so opening the container afterwards drew black. Both sessions are now constants, so neither can leak into the other.
WineThemeManager:GAME_SESSION_THEMEadded,gameSessionTheme(...)removed.XServerScreen: the launch path chooses between the two constants.GamescopePayload: assets-first,VERSION20261024.1..gitignore: ignoresapp/src/main/assets/gamescope-gamenative-*.tzst.jniLibs/arm64-v8a/libgamenative_drm.so: rebuilt daemon, 936,576 → 901,760 B.
Recording
Not attached.
Type of Change
- Bug fix
Checklist
- If I have access to
#code-changes, I have discussed this change there and it has been green-lighted. If I do not have access, I have still provided clear context in this PR. If I skip both, I accept that this change may face delays in review, may not be reviewed at all, or may be closed. - This change aligns with the current project scope (core functionality, stability, or performance). If not, it has been explicitly approved beforehand.
- I have attached a recording of the change.
- I have read and agree to the contribution guidelines in
CONTRIBUTING.md.
Summary by cubic
Hides the "Launching game" splash on the first committed frame and stops a game session's black desktop from leaking into "Open container".
- The bundled daemon clears the splash as soon as content is on the panel; nothing signals a game-window note anymore (gamenative-drm#16).
- Game sessions and "Open container" now use fixed theme constants (black and default blue), so the container's stored theme can no longer end up holding the game's.
- Payload
20261024.1ships inside the APK when the build carries one and only falls back to the published download when missing; the archive is git-ignored.
Summary by CodeRabbit
- New Features
- Game sessions now use a dark, solid-black theme, while other sessions use the default desktop theme.
- Gamescope payloads can be installed from a locally available package, with online download as a fallback.
- Bug Fixes
- Theme settings are now applied on every launch, helping ensure the selected appearance and desktop options are consistent.