Skip to content

feat: macro recorder, advanced features, light theme fix (#31 #32)#37

Merged
garniergeorges merged 4 commits intomainfrom
feature/gui-v1.5
Mar 12, 2026
Merged

feat: macro recorder, advanced features, light theme fix (#31 #32)#37
garniergeorges merged 4 commits intomainfrom
feature/gui-v1.5

Conversation

@garniergeorges
Copy link
Copy Markdown
Member

Summary

Test plan

  • 359 tests (160 CLI + 199 GUI), 0 regression
  • Test macro recorder: Tools > Record Macro
  • Test statistics: Tools > Statistics
  • Test diff: Tools > Compare Scenarios
  • Test selector validator: Tools > Validate Selectors
  • Test autosave: modify, wait 60s, quit, relaunch → recovery dialog
  • Test light theme: Ctrl+T, verify all widgets

…UI (#31)

- RecorderDialog with URL input, Start/Stop, live event feed
- RecorderThread runs Playwright in-process, polls events every 500ms
- EventFeed widget with color-coded live display (click/navigate/scroll/key)
- Cleanup functions: dedup clicks, merge navigations, cap waits
- Post-recording: Open in Editor or Save as JSON
- Menu Tools > Record Macro (Ctrl+R) + toolbar button
- 34 new tests (logic-only, no Qt required)
…d states

- Force Fusion style for full QSS control (macOS native ignores QSS)
- Sync QPalette with theme colors per ColorGroup (Active/Inactive/Disabled)
- Fix pressed text: all palette text roles match theme text color
- Fix hover visibility: light hover #E2E8F0 distinct from surface_alt
- Fix item selected/hover/pressed states in list/tree/table views
- Replace hardcoded colors with QSS properties (error_label, success_label)
- Console info format inherits theme text color (no forced white)
- Editor set_dark_mode propagates to JSON view syntax highlighter
…ave (#32)

- Selector Validator: Playwright headless checks selectors against real DOM,
  live progress, found/not_found/multiple status, suggestions, double-click
  to select step in editor (Ctrl+Shift+V)
- Statistics Dialog: steps count, actions breakdown, narrated/silent ratio,
  word count, estimated duration, unique URLs/selectors
- Scenario Diff: compare two JSON files side by side, positional diff with
  added/removed/modified/unchanged status and changed fields detail
- Autosave: periodic save every 60s to ~/.neurascreen/autosave/, recovery
  prompt on startup, clear on save
- Editor: load_scenario_dict() for recovery, shortcuts list updated
- 28 new tests (stats, diff, autosave, extract_targets, imports)
@garniergeorges garniergeorges merged commit ca68a30 into main Mar 12, 2026
7 checks passed
@garniergeorges garniergeorges deleted the feature/gui-v1.5 branch March 12, 2026 18:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant