Conversation
…yer layout When exactly 3 players are active the 2x2 grid has an empty bottom-right quadrant. A borderless black python3/tkinter window now fills that gap automatically: - showPlaceholderWindow() creates the window at the P4 coordinates - hidePlaceholderWindow() kills it cleanly - updatePlaceholderWindow() calls show or hide based on countActiveInstances() - Called after every layout change in handleControllerChange and checkForExitedInstances, and in perform_cleanup for safe teardown - Skipped entirely in gamescope (Steam Deck Game Mode) where external windows cannot be created Bumps launcher_script_generator.sh to v3.2.7. https://claude.ai/code/session_0156HqbWenksACpkAbh83nix
Removed the isSteamDeckGameMode guard from showPlaceholderWindow(). Gamescope hosts a nested X11 display — the same one Minecraft instances use — so python3/tkinter can create the black P4 window there just as it does in desktop mode. The DISPLAY/WAYLAND_DISPLAY empty-check is sufficient as a fallback for headless environments. https://claude.ai/code/session_0156HqbWenksACpkAbh83nix
- Use calculateWindowPosition(4,4) for P4 coords instead of manual
screen_width/2 arithmetic — stays in sync if layout logic changes
- Add tkinter pre-check before backgrounding python3; without this,
a missing python3-tk causes a silent dead PLACEHOLDER_PID
- Idempotency guard in updatePlaceholderWindow: skip re-spawn when
the window is already live, avoiding flicker on rapid join/leave
- Remove dead Python: root.attributes('-topmost', False) (default),
root.lift() (no-op without topmost), unused 'as e' binding
- Remove 'no title bar' what-comment on overrideredirect
- Drop redundant 2>/dev/null || true wrapper on hidePlaceholderWindow
in perform_cleanup — the function already suppresses errors
https://claude.ai/code/session_0156HqbWenksACpkAbh83nix
Critical fixes:
- install-minecraft-splitscreen.sh:251 — $REPO_BASE_URL was undefined;
replaced with $BOOTSTRAP_REPO_MODULES_URL
- mod_management.sh:1118 — CurseForge passphrase casing typo
('Steamdeck' vs 'SteamDeck') caused silent token decryption failure
- instance_creation.sh:895 — switched sed s/// delimiter from / to |
so MC_VERSION values like '1.21/patch' can't break the command
- desktop_launcher.sh:183-184 — quoted Exec= and Icon= in .desktop
heredoc so paths with spaces parse correctly
Security:
- mod_management.sh — extracted _get_curseforge_token() helper,
replacing 5 copy-pasted download/decrypt blocks; passphrase now
lives in exactly one place
- mod_management.sh:780 — rewrote double-quoted jq filter to use
--arg flags, eliminating shell variable injection into jq programs
Quality:
- version_management.sh:347 — readarray now uses process substitution
< <(...) instead of <<< "$(...)" to avoid unnecessary subshell
- add-to-steam.py:173 — exit(1) → sys.exit(1) for consistency
- cleanup-minecraft-splitscreen.sh — removed repeated 'local size'
declarations in show_detected_components(); declare once at top
- instance_creation.sh:96 — array dedup via readarray to avoid
word-splitting on element values
Dead code:
- mod_management.sh — removed resolve_mod_dependencies() which was
defined but never called anywhere in the codebase
https://claude.ai/code/session_0156HqbWenksACpkAbh83nix
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
When exactly 3 players are active the 2x2 grid has an empty bottom-right
quadrant. A borderless black python3/tkinter window now fills that gap
automatically:
checkForExitedInstances, and in perform_cleanup for safe teardown
windows cannot be created
Bumps launcher_script_generator.sh to v3.2.7.
https://claude.ai/code/session_0156HqbWenksACpkAbh83nix