mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-09-21 17:15:09 -07:00
[Client] Make the link-connection gates port-aware and keyboard-safe
Second-pass review notes for the shared-deck link flow (Cockatrice#7244): - FlowWidget arrow-key navigation is opt-in via addNavigableWidget, so combo/spin controls on the analytics flows keep their own arrow keys - isConnectedTo and the open-deck/join-game preconditions compare the configured server port alongside the host, so a same-host/different-port link cannot resolve its share token or game id on the wrong instance - the link sign-in dialog reuses an existing server entry's saved name instead of renaming it to the raw hostname - skipStartupAutoConnect is cleared once the launch chain connects, so a later mid-session declined link cannot fire the startup fallback - the plain-launch path of SingleInstanceManager no longer blocks on the primary's ACK - link- and server-supplied text is html-escaped in the confirm prompts and shared-deck preview so markup cannot spoof the shown messages
This commit is contained in:
parent
d21dfccbef
commit
20079dc471
10 changed files with 89 additions and 23 deletions
|
|
@ -92,6 +92,14 @@ SingleInstanceManager::ForwardResult SingleInstanceManager::forwardToPrimary(con
|
|||
socket.flush();
|
||||
socket.waitForBytesWritten(1000);
|
||||
|
||||
// A plain launch has nothing for the primary to act on, so there is nothing
|
||||
// to acknowledge. Waiting here would block the new instance for seconds if
|
||||
// the primary is busy in a modal dialog, so only the activation path (which
|
||||
// needs the ACK to avoid stealing a live primary's socket) waits below.
|
||||
if (filesToSend.isEmpty()) {
|
||||
return ForwardResult::Delivered;
|
||||
}
|
||||
|
||||
// Only report a successful hand-off once the primary has acknowledged that
|
||||
// it actually read the payload. A socket that connects but is still working
|
||||
// on an earlier payload is alive but busy, not dead: give it more room
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue