Skip to content

feat: QoL pass — overlay bar, broadcast mode, auto-refresh, layout ma…#22

Open
Kr4t0S-X wants to merge 1 commit into
LuframeCode:mainfrom
Kr4t0S-X:claude/happy-bhabha-1ac8a2
Open

feat: QoL pass — overlay bar, broadcast mode, auto-refresh, layout ma…#22
Kr4t0S-X wants to merge 1 commit into
LuframeCode:mainfrom
Kr4t0S-X:claude/happy-bhabha-1ac8a2

Conversation

@Kr4t0S-X
Copy link
Copy Markdown

@Kr4t0S-X Kr4t0S-X commented May 8, 2026

…nager, and 10+ improvements

P1 – Core

  • Add overlay_bar.py: frameless always-on-top strip showing all active accounts with class icons, name labels, and green highlight on the focused account. Draggable, position persisted in config. Shows when main window is hidden, hides when it reopens.
  • Redesign system tray icon: programmatic navy/green "D" circle via Pillow; tooltip now shows live account count ("DOSOFT — N comptes actifs").
  • Per-account icons: overlay uses skin/ class sprites; account_icons config key allows custom override per account.

P2 – Gameplay

  • Broadcast mode (logic.py): broadcast_keypress() loops PostMessage(WM_KEYDOWN/UP) over all active windows. Disabled by default with orange ToU warning toggle.
  • Auto-refresh (main.py): _winevent_thread() uses SetWinEventHook EVENT_OBJECT_CREATE/DESTROY — debounced 2s to avoid spam on login screens.
  • Close with confirmation: both close-account and close-all now show yes/no dialog.
  • Minimize all / Restore all: two new buttons in the actions bar.

P3 – Organisation

  • Window layout manager: save/restore named layouts via GetWindowRect/MoveWindow; three built-in grid presets (2×2, 1+3, 3+1).
  • Settings export/import: JSON file dialog for full config backup/restore.
  • Focus history: prev_idx tracking + focus_prev() + configurable back_key hotkey.
  • AFK timer: "Xm ago" label per account, updated every 60 s via root.after.
  • Custom team names: per-team display rename; internal keys unchanged.
  • More teams (up to 4): dynamic team count selector; 4 distinct team colors.
  • Per-account custom label: click subtitle area to inline-edit a short note.
  • Fix: remove leftover merge-conflict markers (<<<<<<< / >>>>>>>) from main.py.
  • i18n: add all new keys to fr/en/pt translation files.

Summary

Closes #

Type of change

  • feat — new feature
  • fix — bug fix
  • refactor — code change without behavior change
  • docs — documentation only
  • chore — maintenance (build, deps, config…)

Changes

How was it tested?

  • Tested on Unity
  • Tested on Rétro
  • Tested with multiple accounts open simultaneously

Screenshots (if applicable)

Checklist

  • My branch is up to date with main
  • My commits follow the commit convention
  • I haven't introduced new external dependencies without prior discussion
  • The behavior I changed is covered in the description above

…nager, and 10+ improvements

P1 – Core
- Add overlay_bar.py: frameless always-on-top strip showing all active accounts
  with class icons, name labels, and green highlight on the focused account.
  Draggable, position persisted in config. Shows when main window is hidden,
  hides when it reopens.
- Redesign system tray icon: programmatic navy/green "D" circle via Pillow;
  tooltip now shows live account count ("DOSOFT — N comptes actifs").
- Per-account icons: overlay uses skin/ class sprites; account_icons config key
  allows custom override per account.

P2 – Gameplay
- Broadcast mode (logic.py): broadcast_keypress() loops PostMessage(WM_KEYDOWN/UP)
  over all active windows. Disabled by default with orange ToU warning toggle.
- Auto-refresh (main.py): _winevent_thread() uses SetWinEventHook
  EVENT_OBJECT_CREATE/DESTROY — debounced 2s to avoid spam on login screens.
- Close with confirmation: both close-account and close-all now show yes/no dialog.
- Minimize all / Restore all: two new buttons in the actions bar.

P3 – Organisation
- Window layout manager: save/restore named layouts via GetWindowRect/MoveWindow;
  three built-in grid presets (2×2, 1+3, 3+1).
- Settings export/import: JSON file dialog for full config backup/restore.
- Focus history: prev_idx tracking + focus_prev() + configurable back_key hotkey.
- AFK timer: "Xm ago" label per account, updated every 60 s via root.after.
- Custom team names: per-team display rename; internal keys unchanged.
- More teams (up to 4): dynamic team count selector; 4 distinct team colors.
- Per-account custom label: click subtitle area to inline-edit a short note.
- Fix: remove leftover merge-conflict markers (<<<<<<< / >>>>>>>) from main.py.
- i18n: add all new keys to fr/en/pt translation files.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
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