- Add WidgetRegistry for automatic widget registration via REGISTER_DOCK_WIDGET macro
- Implement per-widget notification enable/disable in Settings dialog
- Store widget notification preferences in JSON format in database
- Use C++ RTTI for class name detection (no Q_OBJECT required in widgets)
- Cache class name in AbstractDock::getClassName() for performance
- Sort widget checkboxes alphabetically with proper spacing in UI
- Lazy initialization of DialogSettings to avoid static init order issues
- Tab blinks when content changes while inactive
- Notification clears when user scrolls to see new content
- Auto-detection for QTableWidget, QTableView, QTreeWidget, QTreeView, QTextEdit, QPlainTextEdit
- Support for manual enable/disable via setAutoNotifyEnabled()
- RAII guard (AutoNotifyGuard) for bulk data loading
- Fix tab overlap with float/close buttons using corner widget
- Add scroll buttons with proper styling
- Implement smooth mouse wheel scrolling with animation
- Hide title bar buttons when tabs visible (avoid duplication)
- Set tabs to not shrink (full text visible)
Introduced TitleBarStyle utility to set window title bar color scheme according to the selected theme (light or dark). Updated KDDockWidgets TitleBar to support QSS-based styling and improved QSS for all themes to style title bars and tabs. Applied title bar style changes in MainAdaptix and DialogSettings to ensure consistency when themes are changed.
- Add version detection via JWT token claims
- Support both legacy (v0.10) and optimized (v0.11+) sync modes
- Default to legacy mode for old clients (supportsBatchSync=false)
- Enable batch sync for clients version >= 0.11.0
- Add version field to Client, Credentials, and JWT Claims
- Implement automatic fallback to individual packet transmission
- Update client login to send FRAMEWORK_VERSION
Server changes:
- ts_clients.go: Add version detection and supportsBatchSync flag
- ts_sync.go: Add legacy fallback for old clients
- utils.go: Add version field to Client struct
- jwt.go: Add version to JWT claims
- tc_client.go: Extract and propagate version from credentials
- connector.go: Update interface signature
Client changes:
- Requestor.cpp: Send version in login request
This ensures zero-downtime deployment with mixed client versions.