Add XTerm handoff runtime diagnostics

This commit is contained in:
Storm Dragon
2026-07-28 23:33:22 -04:00
parent fd426eb274
commit 28984449e0
2 changed files with 16 additions and 0 deletions
+8
View File
@@ -227,6 +227,14 @@ class InputEventManager:
"paused": self._paused, "paused": self._paused,
"secure_input_active": self._secure_input_active, "secure_input_active": self._secure_input_active,
"suspended_xterm_script_present": self._scriptWithSuspendedGrabsForXterm is not None, "suspended_xterm_script_present": self._scriptWithSuspendedGrabsForXterm is not None,
"xterm_focus_monitor_active": self._xtermFocusHandlerId != 0,
"xterm_recovery_timer_active": self._xtermRecoverySourceId != 0,
"last_ewmh_active_window_id": (
hex(self._lastEwmhActiveWindowId)
if self._lastEwmhActiveWindowId is not None
else ""
),
"last_ewmh_xterm_match": self._lastEwmhXtermMatch,
"last_input_event_present": self._last_input_event is not None, "last_input_event_present": self._last_input_event is not None,
"last_non_modifier_key_event_present": self._last_non_modifier_key_event is not None, "last_non_modifier_key_event_present": self._last_non_modifier_key_event is not None,
} }
+8
View File
@@ -80,6 +80,10 @@ class RuntimeStateSnapshotTests(unittest.TestCase):
manager._grabbed_bindings = {10: object(), 11: object()} manager._grabbed_bindings = {10: object(), 11: object()}
manager._paused = True manager._paused = True
manager._scriptWithSuspendedGrabsForXterm = object() manager._scriptWithSuspendedGrabsForXterm = object()
manager._xtermFocusHandlerId = 17
manager._xtermRecoverySourceId = 23
manager._lastEwmhActiveWindowId = 0x1400010
manager._lastEwmhXtermMatch = False
manager._last_input_event = object() manager._last_input_event = object()
manager._last_non_modifier_key_event = None manager._last_non_modifier_key_event = None
@@ -91,6 +95,10 @@ class RuntimeStateSnapshotTests(unittest.TestCase):
self.assertEqual(1, snapshot["mapped_keysyms"]) self.assertEqual(1, snapshot["mapped_keysyms"])
self.assertEqual(2, snapshot["grabbed_bindings"]) self.assertEqual(2, snapshot["grabbed_bindings"])
self.assertTrue(snapshot["suspended_xterm_script_present"]) self.assertTrue(snapshot["suspended_xterm_script_present"])
self.assertTrue(snapshot["xterm_focus_monitor_active"])
self.assertTrue(snapshot["xterm_recovery_timer_active"])
self.assertEqual("0x1400010", snapshot["last_ewmh_active_window_id"])
self.assertFalse(snapshot["last_ewmh_xterm_match"])
self.assertFalse(snapshot["last_non_modifier_key_event_present"]) self.assertFalse(snapshot["last_non_modifier_key_event_present"])
def test_script_manager_snapshot_reports_cache_counts(self) -> None: def test_script_manager_snapshot_reports_cache_counts(self) -> None: