fix(ook): fix output panel layout, persist frames, wire global status bar

- Fix double-scroll by switching ookOutputPanel to flex layout
- Keep decoded frames visible after stopping (persist for review)
- Wire global Clear/CSV/JSON status bar buttons to OOK functions
- Hide default output pane in OOK mode (uses own panel)
- Add command display showing the active rtl_433 command
- Add JSON export and auto-scroll support
- Fix 0x prefix stripping in OOK hex decoder
- Fix PWM encoding hint text

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
thatsatechnique
2026-03-04 11:51:39 -08:00
parent 0c3ccac21c
commit f771100a4c
5 changed files with 86 additions and 16 deletions

View File

@@ -45,7 +45,11 @@ def decode_ook_frame(hex_data: str) -> dict[str, Any] | None:
``byte_count``, and ``bit_count``, or ``None`` on parse failure.
"""
try:
raw = bytes.fromhex(hex_data.replace(' ', ''))
cleaned = hex_data.replace(' ', '')
# rtl_433 flex decoder prefixes hex with '0x' — strip it
if cleaned.startswith(('0x', '0X')):
cleaned = cleaned[2:]
raw = bytes.fromhex(cleaned)
except ValueError:
return None