Major fixes: - Fix keybinding closure bug causing all zones to map to zone 9 - Change keybindings from Super+Numpad to Super+Ctrl+1-9 for laptop compatibility - Fix shift-drag detection by implementing continuous modifier polling during window drag - Fix window object reference by using global.display.focus_window - Fix window API compatibility (use property checks instead of get_maximized()) - Correct grab-op-begin/end signal handler parameters Technical improvements: - Add modifier polling (50ms interval) during window drag to detect Shift key press/release - Use Mainloop.idle_add to defer window resize operations - Remove debug logging for production use - Improve error handling and cleanup in destroy() method The extension now fully supports: - Shift-drag window snapping with visual zone overlay - Keyboard shortcuts for direct zone snapping (Super+Ctrl+1-9) - Zone overlay toggle (Super+Z) - Layout cycling (Super+Shift+Z) - Graphical zone editor (Super+Shift+E) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
21 KiB
21 KiB