Add v0.9.5 features: minimize to tray, settings, relay support

## New Features

### Minimize to Tray
- Window minimizes to system tray instead of taskbar
- Tray notification shown when minimized
- Double-click tray icon to restore

### Settings System
- New settings dialog (Edit > Settings or Ctrl+,)
- JSON-based settings persistence
- General tab: minimize to tray toggle
- Relay Server tab: enable/configure relay connection

### Relay Server Support
- New relay_client.py for connecting to relay server
- WebSocket client with auto-reconnection
- Forwards API requests to local server
- Updates QR code/URL when relay connected

### PWA Updates
- Added relay mode detection and authentication
- Password passed via header for API requests
- WebSocket authentication for relay connections
- Desktop status handling (connected/disconnected)
- Wake lock icon now always visible with status indicator

## Files Added
- gui/settings_manager.py
- gui/settings_dialog.py
- relay_client.py

## Dependencies
- Added aiohttp>=3.9.0 for relay client

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-05 19:33:07 -08:00
parent 6974947028
commit 8e4c32fea4
8 changed files with 1103 additions and 18 deletions

View File

@@ -1,6 +1,6 @@
[project]
name = "macropad-server"
version = "0.9.0"
version = "0.9.5"
description = "A cross-platform macro management application with desktop and web interfaces"
readme = "README.md"
requires-python = ">=3.11"
@@ -29,6 +29,8 @@ dependencies = [
"qrcode>=7.4.2",
# Desktop GUI
"PySide6>=6.6.0",
# Relay client
"aiohttp>=3.9.0",
]
[project.optional-dependencies]