feat: native Qt start panel + kindred:// URL scheme #169

Merged
forbes merged 2 commits from feat/native-start-panel-167 into main 2026-02-10 16:38:51 +00:00

2 Commits

Author SHA1 Message Date
c822fad5e1 Merge branch 'main' into feat/native-start-panel-167
Some checks failed
Build and Test / build (pull_request) Has been cancelled
2026-02-10 16:38:36 +00:00
8b2ce4b73a feat: native Qt start panel + kindred:// URL scheme (#167)
Some checks failed
Build and Test / build (pull_request) Has been cancelled
Replace QWebEngineView-based start page with a rich native Qt panel.
QWebEngineView (PySide6.QtWebEngineWidgets) is not available on
conda-forge for Qt6, so the start page was always falling back to a
bare offline widget.

Start panel (silo_start.py):
- Database Items list with search from Silo REST API
- Recent Files from FreeCAD preferences
- Real-time Activity Feed via SSE (SiloEventListener)
- Context menu: Open in Create, Open in Browser, Copy Part Number
- 'Open in Browser' button via QDesktopServices
- Catppuccin Mocha dark theme

kindred:// URL scheme:
- Desktop file registers x-scheme-handler/kindred MIME type
- MainWindow::processMessages() dispatches kindred:// URLs to Python
- handle_kindred_url() in silo_commands.py opens items by part number
- InitGui.py handles kindred:// URLs on cold start via QTimer

Closes #167
2026-02-10 10:30:50 -06:00