3 Commits

Author SHA1 Message Date
hans 9bba960f52 fix: Adjust window sizes and snapping logic for better alignment and docking
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com>
2026-08-12 18:09:57 +02:00
hans 0f6c3faf6a Refactor window management and docking logic
- Update the main window close behavior to use `windowManager.destroy()` for proper app termination.
- Enhance cursor management in `SkinCursorsGate` to prevent stale cursor states during rapid enter/exit events.
- Improve sub-window control channel registration to ensure readiness before main window updates.
- Simplify the drag logic for sub-windows, ensuring only the dragged window moves independently.
- Add diagnostics for mouse events in macOS to aid in debugging drag behavior.
- Refactor docking logic to ensure proper vertical-only docking behavior and improve test coverage for window interactions.
- Update tests to reflect changes in docking behavior and ensure accurate movement tracking for main and sub-windows.

Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com>
2026-08-11 16:06:04 +02:00
hans 212f8e16d2 feat: Implement window dragging and docking functionality
- Added WindowDragController to manage custom dragging of sub-windows.
- Integrated dragging logic into EqWindow and PlWindow, allowing for smooth window movement.
- Introduced docking logic to snap windows together and maintain their positions relative to each other.
- Implemented persistence of window positions using SharedPreferences.
- Enhanced AppDelegate to support screen bounds and mouse location retrieval for accurate window positioning.
- Updated pubspec.yaml to include screen_retriever dependency.
- Added comprehensive tests for dock controller and dock logic to ensure correct behavior during window interactions.

Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com>
2026-08-10 15:53:29 +02:00