Features: - Custom layouts now saved to ~/.local/share/gridsnap/layouts.json - Layouts automatically loaded on extension initialization - Layouts persist across Cinnamon restarts and extension reloads - Only custom layouts saved to file (default layouts remain in code) - Added GLib and Gio imports for file operations - Error handling for file read/write operations Technical implementation: - _loadLayouts(): Merges default layouts with saved custom layouts on startup - _saveLayouts(): Extracts and saves only custom-* layouts to JSON file - Automatically creates storage directory if it doesn't exist - Called when user saves a layout in the graphical editor Fixes TODO item #1 - Custom Layout Persistence Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
23 KiB
23 KiB