Repository navigation
Conversation
Show a running Dock session’s friends, accept incoming invites, send join and invite commands, and let players choose their Steam presence. Pin the focused Dock Friends branch while it awaits upstream integration.
With friends off, Dock no longer opens the command file every 500 ms or answers friends-cmd-result=6, which is what its README now says. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Describe how the launch entry is picked, the chosen status and what has been tested, and stop naming a fixed Dock commit. Pin Dock's matching doc fixes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The Steam Friends commit left the menu's dimming layer in twice, which darkened the game behind the menu more than intended. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
I closed it, because I forgot to implement inviting people who are seen as offline, but then I remembered that steam doesn't allow accepting invites on the desktop client when the user is in invisible mode and in offline there is no point. If you think that it is still needed, let me know |
|
Review for today's wave (wave 7 merged the other open pull requests). This one is held: it depends on willfaust/madeira-dock#10, which is also held for a maintainer decision (self-built protocol messages, Friends on and Online by default). Once that is settled, these fixes are needed here:
Smaller points: |
An ours-strategy merge of the pull request heads squashed above, so GitHub marks them merged: #575, #574, #556, #541, #540, #568, #564, #546, #544 and #571. #567 was taken in part (its Japanese-locale files, credited to its author) and is closed with a pointer to that commit; #572 waits with madeira-dock#10. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
intraducine
left a comment
There was a problem hiding this comment.
What this change does: This adds Steam Friends to the running game menu. It is a distinct feature, so it should stay open with Dock PR #10.
Must fix before merge:
-
The app keeps a stale friends list after the feed is lost or invalid. In refresh(), available only checks whether bytes were read, and friends is only replaced on a successful parse. I compiled the production file with only its external app dependencies stubbed. After loading one valid friend, deleting the feed produced available=false with one stale friend. Replacing the feed with one invalid byte produced available=true with that same friend. An open Friends page can still show its old Join/Invite controls. Clear the list and mark it unavailable when the feed cannot be parsed, and add a regression test for valid-to-missing and valid-to-invalid transitions.
-
The app side has no regression checks and no passing current-head CI run. Please cover feed bounds, command bytes, matching command results and timeout/reset behavior. The current run requires approval; the empty check list is not a passed build.
The five Dock native suites passed at 90f967e with AddressSanitizer and UndefinedBehaviorSanitizer. That includes the new friends format suite, with no live Steam or device session. Keep the stated merge order: Dock #10 first, then restore the canonical willfaust/madeira-dock URL and pin its merged commit in this PR.
Verdict: Fix the stale feed state and add app checks before merge.
Not checked: fresh device UI, live invites, or the pinned client-layout check against a Valve DLL.
Dependency: this PR depends on willfaust/madeira-dock#10. Merge that one first. The
madeira-docksubmodule is pinned to that PR's branch, andtools/build-ipa.shbuildsdockhost.exefrom the submodule, so the Friends feature ships only with that Dock code.Before merging this PR, once the Dock PR is merged:
.gitmodulesback tohttps://github.com/willfaust/madeira-dock.git. It points at the Vuqar05 fork for now, because the pinned commit exists only there.madeira-dockpin to the merged commit onmain.Games started through Madeira Dock have no Steam overlay, so players can't see friends, invite them or join them. This adds that to the in-game menu, using the friends feed and commands from the Dock PR.
What changed
DockFriends.swift). Friends who invited you come first, then joinable friends, friends in this game, in other games, online and offline.connectstring to invite with. Each row shows the result.MADEIRA_DOCK_PERSONA_STATE. Offline turns friends off for the whole game and can only be chosen before it starts. The other three can also be changed on the Friends page.docs/MADEIRA_DOCK.mddescribes the feature, how the launch entry is picked and how the submodule is pinned.Limits
Tests
🤖 Generated with Claude Code