feat(client-linux): log the release/disconnect keyboard chords
The Ctrl+Alt+Shift+Q/D handlers had no tracing, so a report of "the disconnect shortcut doesn't work" was unverifiable from logs alone — live tracing (added temporarily, then trimmed to these two lines) showed the chord, `disconnect_quit()`, and the session teardown all firing correctly and instantly every time; the confusion traced back to the (now-fixed) FlowBox click crash having kept everyone from ever reaching a live session to test the shortcut with in the first place. Keep the two low-noise, deliberate-action log lines for the next time this comes up; drop the per-keystroke debug trace used to diagnose it, which would otherwise fire on every key during a stream. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -806,6 +806,7 @@ fn attach_keyboard(
|
||||
| gdk::ModifierType::ALT_MASK
|
||||
| gdk::ModifierType::SHIFT_MASK;
|
||||
if state.contains(chord) && keyval.to_lower() == gdk::Key::q {
|
||||
tracing::info!(captured = cap.captured.get(), "chord: Ctrl+Alt+Shift+Q (release/engage)");
|
||||
if cap.captured.get() {
|
||||
cap.release();
|
||||
} else {
|
||||
@@ -816,6 +817,7 @@ fn attach_keyboard(
|
||||
// Ctrl+Alt+Shift+D — leave the session. Now that Steam / QAM pass through to the host,
|
||||
// the capture toggle alone can't end a stream, so this is the keyboard's explicit exit.
|
||||
if state.contains(chord) && keyval.to_lower() == gdk::Key::d {
|
||||
tracing::info!("chord: Ctrl+Alt+Shift+D (disconnect) — releasing capture + quitting");
|
||||
cap.release();
|
||||
// Deliberate user exit → close with QUIT_CLOSE_CODE so the host tears the session down
|
||||
// immediately instead of holding the keep-alive linger for a reconnect.
|
||||
|
||||
Reference in New Issue
Block a user